「東京Node学園祭 2013」と「Node.js Knockout」が終わりました

東京Node学園祭 2013」はもう終わってから3週間経つというのに今さらです。すみません。
Node.js Knockout」はハッカソン期間が先週頭に終わって、審査期間が今日終わったところです。

1. 東京Node学園祭 2013について

直前まで台風直撃予報があったりと、ちょっと今までにない緊張感とバタバタがありましたが、なんとか無事に終えることができました。場所を変えての懇親会ではなく、その場にピザとビールを持ち込んでの懇親会に変更したことで、LTが無限に繋がるという事象が発生するなど、目指していた参加者が「参加」するイベントにより近づけたんじゃないかと思います。

個人的には基調講演をするという経験が初めてだったので、いい経験になりました。基調講演に相応しいテーマって難しいですね。ただの事例紹介だとなんか面白みがないというか有り難みが薄いというか。しかも自社の事例を紹介するとかになると、「自分が代表をしているコミュニティ」の「自分が実行委員長を務めているカンファレンス」において「自分が行う基調講演」の中で「自分が勤めてる会社の事例を紹介」し、さらに「自分が勤めてる会社の求人をする」とかいう状態になってしまうので、傍から見ると「コミュニティ(やカンファレンス)の私物化」と言われ兼ねないなという危機感を抱いておりました。

基調講演の中で、コミュニティの代表を辞する旨を宣言したのは、それも理由の一つです。もっとも大きい理由は「関係者が固定化することによるコミュニティの硬直化を避ける」という目的があってのことですが、僕自身がドワンゴにおいて優秀なエンジニアを獲得するための仕事をしていることもあり、一切しがらみのないコミュニティである「Node.js 日本ユーザグループ」がドワンゴの影響下にあるという変な誤解を与えたくないという目的もあります。

まあそんなわけで、もう少ししたら代表の立候補と推薦の受付を開始いたします。推薦を戴いた場合は、推薦があったことをご本人に伝え、ご本人にその意思があれば立候補していただきます。候補者が出揃ったあとは普通に投票をしていただこうと思っています。連絡は全てMLにて行うのでお待ちください。

2. Node.js Knockout について

今年もドワンゴ社内でチームを組んで参加しました。また、ドワンゴのカフェテリアを開放して東京からの参加者が集まれるTokyo Campを開設しました。僕たちのチームが作ったものは Walk Sharing というサービスで、要はGoogle Street Viewで動きまわってる様子(位置と視点)を他人とチャットしながらリアルタイムに共有できるというものです。タイムシフト機能もあり、誰かが過去に動きまわった様子をそのまま再現することもできます。
Google Maps APIのundocumentedなプロパティを使って作ってしまったため、残念ながら審査期間中に入ってそのプロパティの名称が変わりタイムシフト等にバグが発生してしまったのですが、審査が終わった今はバグをFixしましたので是非体験してみてください。

あとがき

ブログ書くの久しぶりすぎました。「Node.js Advent Calendar 2013」にもエントリしたし、これからはもうちょっとちゃんと書いていきます。

Node.js Knockout 2011の参加登録が開始されました

申し込みは http://nodeknockout.com/

Node.js Knockoutとは、48時間でNode.jsを使ったアプリケーションを作成し、その出来映えを競い合うコンテストです。
去年の模様はTechcrunchの記事をどうぞ。

今年は日本からの参加チームも増えるでしょうから、Node.js日本ユーザグループとしても東京に参加者が集まれる場所を提供することを考えています。詳細は決まり次第お伝えします。

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の向いている方向性がはっきりと示唆された大会であったようにも思います。

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

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