This is really neat. Scratch is a free and open-source visual programming / learning environment. It's somewhat targeted at kids but really it's good for anyone new to programming concepts. It looks like Scratch supports several USB devices now, including blink(1). Check out this blog post for more info.