« home

Node.js Presentations

I gave two Node.js-related talks within the past week. The first one was titled “From Java To Node.js”, at Shine Technologies’ developers meeting on August 5th, 2011. The second one was titled “JavaScript Everywhere From Nose To Tail”, at Melbourne JavaScript usergroup on August 10th, 2011, with Carl Husselbee from Sensis. Happy with the positive feedback from the audience of both talks, thanks folks, much appreciated! Update (08/09/2011): And here’s…

more »

JSGames Plugin - Play Mario Kart & Tetris On Hudson

Now you can play games on Hudson using JSGames Plugin, albeit only a cutdown version of Mario Kart and Tetris (credit goes to Jacob Seidelin of Nihilogic Games). This plugin is extensible enough, so it’s pretty easy to add new games. The winners of 10K Apart would be good additions given the right license. I wrote this plugin as an experiment on using Hudson for non-continuous integration purposes, in this case, a very minimalistic ‘games delivery platform’.…

more »

SCode Image Reload

Sometimes the numbers on SCodePlugin-generated CAPTCHA image are not easy to read. And rather than refreshing the whole page, it would be nice to reload only the image and generate a new / more readable code. In order to give this a go, I modified the comment form on Melbourne photoblog and added a short Javascript code to refresh the image source. You can try it yourself on this form, just click the text “Generate another code” and wait shortly for the image to be reloaded with a new code.…

more »

Trailing Comma Within JSON's Array

I was debugging an AJAXy app which uses JSON as the data format, and it was fine with Firefox but not with Internet Explorer. After further debugging, the culprit turned out to be trailing commas within the data. {"foo": { "bar": [ {"id": "1", "url": "http://www.hostA.com"}, {"id": "2", "url": "http://www.hostB.com"}, ] }} theObject.foo.bar.length returns 2 in Firefox, but it returns 3 in Internet Explorer. The solution was obviously to remove the last comma.…

more »