2014年4月28日月曜日

東京Node学園 12時限目 に参加してきました #tng12

東京Node学園 12時限目

http://connpass.com/event/5835/

キッカケ

今回LTをするキッカケとなったのは、日本Node.jsユーザグループ代表が次のようなツイートをしていたのを見かけたからです。



NodynVert.xで作られていたのは知っていたので、これを機にいろいろ調べてまとめておこうと思い、応募しました。

スライド

今回のスライドはこちらです。
http://www.grimrose.org/tng12/

node.jsということでbespoke.jsを使ってみました。

Jadeをテンプレートとして使っているので、すんなりと利用する事が出来ました。

bespoke.jsのいいところは、githubで公開するtaskが用意されているので、localで確認したら grunt deploy でGithub Pagesにデプロイがすぐに出来るのはありがたいです。

Node.js APIとNodynとVert.x

スライドの最後の方にあるデモのコードですが、実際に下のような感じのコードにしてみました。



このコードをvertx run demo_server.jsで動かしてみると、普通に http://localhost:1337http://localhost:8080 でアクセス出来ます。

もちろんこのコードではnodeのコマンドは動きません。

ということで、このコードが動くということは、Vert.xのmoduleが使えることが出来ると考えていいと思います。

同居は可能だとしても、「混ぜるな危険」の部類に当たるのであまりおすすめはしません。

Nodyn自体は、まだまだこれからというフレームワークです。

Nodynが全てのNode.jsのAPIを導入したとしても、既にnpmのエコシステムがこれだけ広がってしまっていると、そのままでは厳しいのではないかと思います。

ですので、NodynはVert.xがNode.jsに繋がるためのインターフェースになっていくのではないかと期待しています。

Vert.xに触れるようになってから、他のEvent-Drivenなフレームワークにも興味を持つようになったので、基礎となるNettyを本格的に学ぶ必要があると考えるようになりました。

Netty in Actionも出るみたいなので、楽しみです。

おわりに

参加者のほとんどが初参加だったということで、JVMでしかもニッチなフレームワークの話をしてしまって、本当に大丈夫だったのだろうか心配です。

しかも、LTの一番手なのにいきなり時間オーバーしてしまって申し訳ありませんでした。

東京Node学園の皆様、会場と食事まで提供して下さったDeNA様、ありがとうございました。

2014年4月21日月曜日

Agile Samurai Base Camp 2014 Re:TDD に参加してきました #agilesamurai

Agile Samurai Base Camp 2014 Re:TDD
http://agilesamurai-basecamp.doorkeeper.jp/events/9333

Agile Samurai Base Camp 2014 Re:TDD #agilesamurai
http://togetter.com/li/657283

はじめに

前回は、インセプションデッキ、TDDの同時開催でしたが、今回は、TDDのセッションだけの再公演でした。
今回新しい試みとして、Groovyのセッションをする機会をいただけることになりました。

今回、Javaを使っている人を対象としていたので、JUnitだけでもいいけど「Groovyを使うという選択肢もありますよ。」という提案が出来ればといった内容にしました。
また、アジャイルサムライを読んだ後にJUnit実践入門を読んでいただければ、実際に現場に戻っても助けになると思います。
JUnit実践入門ではGroovyの紹介がありましたが、今回はもう少し先を見せることが出来たのではないかと思います。

JavaScriptのライブコーディングは、前回の反省を踏まえた内容にしました。
Jasmineで既にあるプロダクトに対してとっかかりを見つけながら、テストコード書いていくのを見せることが出来たと思います。

Groovyセッションの補足

grimrose/asbc-2014-04-groovy

今回のデモで使用したコードです。
現在の最新コミットの状態では、デモが終わった状態のままでテストが失敗するようになっています。
デモでは動かしただけだったGebも番外編として併せてコミットいたしました。

Gradle Wrapperも併せてコミットしているので、Gradleがインストールされていなくても動かすことが出来ると思います。

おわりに

Groovyを現場で使うには色々とクリアしなければならないハードルがありますが、まずご自身でGroovyがどういったものか試せるようになれる道筋を見せることが出来たのではないかと思います。
拙い説明だったかもしれませんが、Groovyのセッションに来て下さった皆様、ありがとうございました。

ホワイトボードの付箋に気づきや目標が見つかった内容がたくさんあったので、お手伝い出来てよかったと思いました。
BaseCampなので、また現場での気づきや疑問を共有出来ればいいなと思います。

参加者の皆様、スタッフの皆様、会場を提供して下さったサイバーエージェント様、ありがとうございました。