Demystifying JSCrush

Some of you may have seen Philip Buchanan’s award winning. Autumn Evening entry for JS1K 2012 Love. While skimming the source I saw that he had used Aivo Paas’s JSCrush to compress the code. The JSCrush website is intriguing with the source code minified and then passed through JSCrush itself (so it can be submitted to JS1K). The JSCrush version used in the page, in <script> tags is the JSCrushed version.

Quick and dirty Instant Messaging with Redis

(Aside: Yes this is a post after a zillion years, but I have a few more lined up, and waiting for some important stuff in about a week) Redis is a wicked cool NoSQL database, in that storing stuff is not the only thing that it does. Mathias Meyer already has a collection of Redis use cases, but this great idea is mine. Like all good ideas it emerged in the shower :) ( I was not aware of Pieter Noordhuis' MUC when I did this, in either case mine deals with one-to-one IM )


Twitter usually syncs with the (developed) world pretty fast in hashtags. But I'm surprised Copenhagen is not on it. To add some semblance of code: I've been mucking with node.js and some of the effect is simple TagLib bindings with that being used for something more important soon. Much improved ( or rather simplified ) kwin-tiling too with a few regressions like moving and resizing.

Rounded Corners

Rounded corners have become a staple of web 2.0. So I decided to write my own version. So whats special in this among all the others. Well mine is relatively customisable pertaining to the elements to round. Further it allows elements to have variable width and scales on resizing. The images used use the mountain top technique so that the same image is required, whatever the background color of the elements.

Introducing Pixelframe

In Trac(k)ing I mentioned the "secret project" I was working on. Well I have decided its time to let the world know what it is, even though its not finished yet. Its called Pixelframe. Pixelframe is meant to be a lightweight image gallery. It uses PHP for the backend and my custom javascript toolkit ( called Juice ) for frontend effects and ajax requests. Juice will also be released seperately once it is done.

Learning the hard way

I have come acrooss some rare occasions in programming in which the language/environment/common sense really wants you to learn after literally breaking you head. Thats what happened today in a javascript app I am doing (Shh! Its still a secret). For 2 days I have been trying to use everything I know to clean up a problem I was having with every node firing the event when only one should've been.


I have decided to take a break from creating software to learning some new things for a few days. So I have started learning Ruby, advanced JavaScript which I didn't know before, especially DOM scripting and Ajax. And I am also reading Beginning Algorithms which is a really good book for an introduction to algorithms in a easy to understand concrete way. That said I am starting to like Ruby and feel the same enjoyment that is felt when coding in Python.