JavaScript Bitmap Painter

Years ago I chose JavaScript as my preferred Web development technology, for better or worse. I resigned that building certain applications would be forever outside of my universe. Seeing the latest rich Web applications (thanks to Google and others) I am often surprised that what I thought was out-of-bounds was mistaken. Discovering Ajax a few years ago revolutionized the way I think about Web applications, but recently I stumbled on a trick that could change how I develop even more profoundly.

While reading comments on the Daily WTF some users mentioned that most browsers (mainly those that aren't IE) can recognize, instead of a file path, raw data in the address. (Seriously, try it out.) The most common suggested use is for embedding images directly into html and css files. That is real neat, but my revelation was finding the power to manipulate images, sounds, and any other binary data using JavaScript alone.

Believing in theory is not good enough for me, so it inspired a late night hacking run to make a proof-of-concept prototype. I built a simple 1-bit (black or white) bitmap painter. I don't think it is useful for much in its current form. The amazing thing is that it works.

I know this does not work in IE, but if I developed something really cool, is it too much to ask people to install a free browser? Plus there is the hope that Microsoft will one day add this functionality.

I am already dreaming of a JavaScript midi editor.