Node.js Knockout に参加しました

http://nodeknockout.com/

要は、node.jsを使ったアプリケーションを48時間で作成してね。っていうコンテスト。コードはgithubコミットし、herokujoyentにデプロイするのがルール。

僕は1人チームで参加しました。やっぱり、node.jsの特徴であるイベント駆動I/Oを生かしたものが作りたいと思い、WebSocketを使ってリアルタイムに複数人との対戦ができるタイピングゲームを作ることにしました。

herokuは、WebSocketの使用に制限があったので(同時接続64人までとか接続時間30秒までとか)、joyentにデプロイしました。っていうかこのjoyentのnode.js用のプラットフォームはすごく使い勝手が良かった。

完成品はhttp://mesolabs.no.de/です。ぶっちゃけ、テストも不十分だしコードも汚いand拙いものなんですが、なんとか形にはなりました(Windows 7 + Google Chromeな人が参加するとバグるっぽいです。Windows 7の人は是非Safariで)。

審査員やら一般の方の投票も終わりました。http://nodeknockout.com/teams/mesolabsで点数とコメントを見ることが出来ます。点数は伸び悩んだのですが、コメントを見ると勿体無いようなありがたいコメントを多く頂けました。

他のチームのアプリケーションを見ても、やはりWebSocketを使ったリアルタイムコミュニケーションを重視したものが多く、node.jsの向いている方向性がはっきりと示唆された大会であったようにも思います。

当初はほとんど触ったこともなかった状態だったので、参加するかどうか若干迷ったりもしたのですが、思い切って参加してみて本当によかったと思います。たくさん勉強になりました。

実装よりの話は、また次回にでもまとめて書きます。