Duane’s Quick Posts

 

Audit the Fed Bill is Making Progress

Here is an update from Ron Paul on the "Audit the Fed" bill I mentioned a few weeks ago.  We have about 39 cosponsors to the bill now which is very encouraging.  I hope that if you also want to see increased transparency in government you'll take a moment to encourage your congressperson or senator by writing to them.

Loading mentions Retweet

Comments [0]

Electoral Fraud Made Easy by Diebold

The bradblog posted today about an easy-to-use feature of the Diebold electronic voting machine: press the "Clear" button in the audit trail and you get a nice, fresh start on what happened on election day.


In addition, the software was discovered to have a "Clear" button which, when pressed, would actually delete the contents of an audit log without even asking for confirmation from the user. That, despite repeated federal and state testing and certification of the software which failed to notice the egregious programming flaws in violation of federal voting system standards requiring indestructible logs to track all system events... Bales admitted that his company had "not yet" corrected the problem, which was first implemented in the company's software more than a decade ago.

Let's put that on the top of the bug tracker, eh?  And while we're at it, can we start using secret-free (i.e. open source) software on these machines that are being used as the gateway to our democracy?

Loading mentions Retweet

Comments [0]

Haskell Pearls

I've been lurking on the Haskell mailing list recently, and occasionally asking a question or two.  I suppose you wouldn't be surprised to know that I've found a treasure-trove of Haskell-related information and resources that I hadn't been aware of.  Really though, the Haskell community has created quite a rich store of documentation for itself and others, perhaps more than I've seen in any other community (which is not to say that other communities do a poor job).  Here I've compiled a short list of these new pearls I've learned of, along with any other links that I've found useful:


1. Twin search engines Hoogle and Hayoo.  Note that you can search for type signatures as well as functions themselves.  Try searching for "(a -> Bool) -> [a] -> [b]" in Hoogle.  Hayoo covers all of the packages on hackage, while Hoogle seems to be limited to the base packages.

2. A remarkable summary of "who and what" is out there in the Haskell community.  The PDF is here.

3. The Glasgow Haskell Compiler (GHC) manual.

4. A (free) quarterly journal called the Monad.Reader that covers topics for beginners to experts.

5. "Visualizing the Haskell Universe" is a graph of all of the available (free) packages out there.  A huge SVG image is here.

6. The Haskell 98 Language Report which I wrote about last July has many answers to language-related questions.

Loading mentions Retweet

Comments [0]

Ruby Conf '09

The Mountain West Ruby Conference was a smash!  We covered a wide range of topics that really made me pleased to be a part of the community (at least in attendance!)  Some of my favorite presentations were Daniel Philpott's "Tiger Team" and Jon Crosby's introduction to Middleware (aka Rack).  It was also really cool to see James Britt's "Wii" link-up and hear him play some wild MIDI instruments on his "air wand".  I'm sure he'll be tuning it in the near future :)


Oh, and if those presentations weren't enough to make the conference worthwhile (they were!) I also discovered that everyone was Twittering there.  So I guess I know people who twitter now :)  I found out about twitterfall.com which was a great way to keep "up to date" on all things #mwrc.

I haven't had a chance to look yet, but from what I've heard the conference will be available on video at confreaks.

Loading mentions Retweet

Comments [0]

Auditing is the First Step

I like the idea of auditing the Federal Reserve: there's nothing wrong with transparency and we have everything to gain by taking a count of where our (U.S.) money has gone during this flurry of bailout and rescue activity.


If you agree, then maybe you'd also like to sign the Audit the Fed petition and see some good come of this momentum.  In an age of instantaneous communication, sometimes it still feels like it takes a long, long time to find out the truth.

Loading mentions Retweet

Comments [0]

Haque's Law

Haque’s Law: “As interaction explodes, the costs of evil [begin] to outweigh the benefits [of evil].”

Loading mentions Retweet

Comments [0]

The Haskell Rabbit Hole

As a programmer, curiosity is most often a helpful asset that leads to a grander and more unified understanding of computer science.  With Ruby, for example, I quickly learned about the usefulness of closures because the array methods like "map" and "select" were so helpful.  Closures became a new tool in my toolbox--something I could apply almost everywhere.


Haskell is teaching me things, but not in the same innocent way that Ruby did.  It is definitely pushing me to my limits--recently I feel like a wet-behind-the-ears programmer more often than I can remember.

I'm building a little game in Haskell using OpenGL.  Innocently, I found out about Functional Reactive Programming and suddenly I'm on a trail learning about a "generalization of Monads called Arrows", as well as combinators and functional composition in "lifted" spaces.  I'm not even sure I'm using the right words to describe what I don't understand :)  Next, I decided I'd try loading a VRML file that I had created in Wings3D.  Haskell doesn't have a VRML (".wrl") parser that I know of... so I started looking up parsers in Haskell.  "Hmmm," I wondered, "What's this 'parsec' thing everyone is talking about?"  Oh, it's a "monadic parser combinator in Haskell" that other languages have apparently tried to emulate.

All I can say at this point is, "Wow."  There is so much out there that I do not understand.  I thought I knew a lot about programming through 6 years of university.  It turns out I had only scratched the surface.  Beware, there's a rabbit hole underneath that grassy knoll!

Loading mentions Retweet

Comments [0]

Running Hipmunk Playground on Mac OS X

I'm experimenting with using Haskell for a 2D game project in one of my computer science classes.  It will probably involve the Chipmunk 2D physics engine (haskell has a binding to it called Hipmunk).  Hipmunk comes with a demo app called the Hipmunk Playground, and it is a wonderful little demo of OpenGL and Chipmunk in Haskell.


Unfortunately, Mac OS X has some austere requirements for graphical applications.  When I first ran Hipmunk Playground, the window would not respond properly to my keyboard and mouse inputs.  The solution, it seems, is to wrap the Haskell-generated executable inside a well-formed ".app" directory.  The (unrelated) wxHaskell library provides a nice shell script called macosx-app to generate the .app directory automatically.  Here is a sample Makefile that I now use to build Hipmunk Playground and put it inside the wrapper directory:

# Make the Hipmunk Playground application for Mac OS X
MacPlayground: Playground
utils/macosx-app Playground

Playground: Playground.hs
ghc --make Playground.hs

RunPlayground: MacPlayground
open Playground.app

Loading mentions Retweet

Comments [0]

Crisis of Credit: Visualized

Comments [0]

Can Truth and Reconciliation Begin Now?

I am deeply touched by the stories of those who have been "disappeared" by the U.S. government over the last 8 years, and hope that what they have to tell us--those who have returned to tell us--can help guide us back to a place of responsibility and strength by example.  I wrote last year to my senator about my Canadian compatriot Maher Arar who was taken from his family during a visit to the US and later tortured in Syria.  Recently, another man who is not Canadian but suffered similarly, Mohamed Bashmilah, has published a short account of his experience.  It begins:


From October 2003 until May 2005, I was illegally detained by the U.S. government and held in CIA-run "black sites" with no contact with the outside world ... never once having faced any terrorism-related charges. Since my release, the U.S. government has never explained why I was detained and has blocked all attempts to find out more about my detention.

It's quite a story, and deserves our attention first and foremost because we have to acknowledge that it happened.  I feel a little ashamed that I felt "safe" while he was captive somewhere, disconnected and silenced.  I think his reasoned appeal is also something that deserves to be heard: he is not asking for a lower standard of national security, he is hoping that America will uphold its ideals of fairness, justice, and equality under the law.

I share that ideal and hope we can begin our journey toward truth and reconciliation.  His story is available to be read here.

Loading mentions Retweet

Comments [0]