Before yesterday, I hadn't written any JavaScript code in a long time. So I finally decided to implement an idea that I had been thinking about for quite a while: a bookmarklet that turns any web page into a canvas that you can scribble on. I got the idea from a Firefox mouse gestures addon that can show a trail of your gesture as you draw it. I often use that "feature" to create scribbles, but unfortunately the mouse trail disappears once you release the mouse. Scribblet works exactly like that, minus the disappearing trails and plus a bunch of useful features. You can scribble on any web page and you can email your scribbles, too.

Technology wise, scribblet has been an interesting challenge. Because bookmarklets are essentially URLs containing JavaScript code, they can't be very long (they can be in most browsers, but not in Internet Explorer). To be more precise, a URL in Internet Explorer can be at most 2,083 characters long. That means the entire "program" has to fit into a little more than two kilobytes. With the use of JavaScript minfication tools this becomes somewhat easier, but you still have to think hard about every single line of code that you write.

So what would you use scribblet for? I can imagine a whole bunch of scenarios, but primarily you would use it to annotate web pages for customers, web designers that you have hired and probably your parents ("Just click the link in the left column", "There is no link in the left column", "sigh"). Also, if you encounter a web page that you don't particularly enjoy, you can use scribblet to express your dislike...