Posts filled under: node knock out

Why I want to win so badly

It’s only been one weekend since the Node Knock Out finished, one might expect that coding a full application in 48 hours using a complete Node.js stack is hard work but boy.. was I wrong. The hardest part is actually winning during the Node Knock Out.

Entering Node Knockout

This is the second time that I entered the Node Knock Out competition, it’s a amazing contest that allows you to show case your skills and creativity to make the most spectacular web application you can build in 48 hours. Last year I entered with a heat mapping web service and become second in the solo category. I lost with just 0.3 points behind the first solo contestant @mape and boy, that sucks really hard, being so close to a first place, so I already made up my mind back then I would enter again.

http://dl.dropbox.com/u/1381492/nko/exampleclick.png

Preparation

I still remembered from 2010 that games seemed to be a hot topic (the winners for overall and solo where both games). But I really do not like to waste my time building games, I would rather spend my time building something that is useful for me and hopefully for other.

So I decided to create real time user tracking service that allows you to see the browser interactions of your users played on your screen, if they click on a button that animates, you will see a ghost mouse that will click that exact button does the exact animation. It should replay all common user interactions such as typing, scrolling, mouse moments, clicks, navigation and JavaScript errors.

I wanted to record all this information so you can easily see how your users are interacting with your site and see if changes to the layout need to be made. When a JavaScript error happened during the session, you would actually know and see the steps that the user made so you can easily reproduce the bug and fix it.

http://dl.dropbox.com/u/1381492/nko/exampleerror.png

About 2 weeks before the start of NKO (Node Knock Out) I started with preparations of the project, I created mind maps, started sketching the design, researching which modules I was going to need, how my database should be structured what client side modules I wanted to use and which browsers I was going to support.

One of the biggest lessons I learned from last year is to go directly with a hosted database service and don’t mess with installations during the competition. I lost about 6 hours on this last year because MongoDB kept failing.

So I had everything planned, created on big to-do list in the most optimal order I could think of so I wouldn’t be wasting time on features or design aspects that wouldn’t be needed.

Getting started

I just got home from a 8 hour drive (back from vacation) and after a quick power nap I was ready to get started. My first step was to get started on the database binding layers and implement a small CMS so I could update and add content without having to update my views (this is something I do for all the applications I build so my git project isn’t cluttered with pointless typo commits). After a few hours or so this was done and I was quite happy about it. Planning this advanced definitely helped out.

As the hours passed more and more messages started streaming in the IRC channel that Socket.IO was broken on no.de and that nobody could get Web Sockets to work. I decided to just continue with my work in the hope that Joyent would fix it..

After a day ago I had it running stable enough to deploy on my no.de host. It worked but as other had stated Web Sockets where horribly broken. After a some debugging I found out that the upgrade event was never fired on the servers. After a quick chat with the Joyent folks this fixed right away.

Finished

After staying awake for more then 72 hours, it was time to deploy the app for the last time and keep the fingers crossed that it would survive for the rest of the voting. And luckily it’s still up (it had some up and downs thanks to broken Joyent proxies but it’s mostly up now)

After a day or so the votes started streaming in.. I was overwhelmed by positive reaction of the judges and contestants.

I actually want to win, really badly

When I started in the competition I just entered because I really liked my idea and would love to have another shot in the solo category. But than I realized that a lot of users told me they loved the service so much and that it’s pure gold that I could actually try to make a small start up out of it.

Winning would allow me to use the rewards from the competition to continue the development and finish the application in the way that I envisioned it and make it a really cheap but powerful tool for usability testers and web site owners.

But winning ain’t easy

That is something that I realize now, I have gotten amazing Judge and Contestant votes, but I was no where near the first spot of a other solo contestant. So I wondered why? I noticed that almost all my scores where higher than his project, except popularity.

And that is why I need you

Popularity can only be increased using the vote button. So if you have a face book account please go to http://observer.no.de/vote and press the vote button. Alternatively you can also press the vote button here in the post (if it shows up)

It does not post anything to your Facebook wall, it just uses Facebook to record the votes.

If you want to know more about my application and see how it works, register a account at http://observer.no.de/ or checkout the demo at http://observer.no.de/demo

Top of Page