Go Conference 2015 Winter に行ってきた。
Goのイベントは初めて行った。Go言語を仕事でどう利用しているかや、使っているライブラリなどを知れて大変刺激を受けたイベントだった。
基調講演 x/mobile gaming
基調講演はGoogleのGo開発チームで働いているAndrew Gerrandの発表で、Go mobileでゲームを作るデモンストレーションを行ってくれた。フラッピーバードのGopher版が作られる様子をコードと実際にどう動くかのデモを用いながら解説していたのでおもしろかった。Mac上でも動き、ビルドしてできた物をGenymotionにうつして動くのを確認するところもやっていて、ちゃんとモバイルアプリが作れるんだなと感動した。もはやAndroidのアプリ開発にJavaを使わなくなる日は近いかも知れない。
Go言語はまだ不勉強でモバイルでここまで動かせるとは知らなかったし、ゲームもあそこまできびきび動けるのが作れるとは思わなかった。2016年にはStableにしたいと言っていたので、これから先が楽しみだ。
実践へのGo入門
Songmuさんの発表はGoを実践で使っていくためのベストプラクティスを発表していた。IDEはInteliJが良いことや、$GOPATHをどこにするか、学習はまずTour of GOをやってからGoに入ってはGoに従えなどのスライドを見ていくことが良いことなどを知ることができた。
Goをはてなでどう使っているかや、Goをメジャーバージョンアップしても不具合が起こらなかったことなどを知ることができておもしろかった。
Go言語で作られたAPIレガシーと闘った話
k_yokomiさんのGoのレガシーの話はレガシーコードについての話で、レガシーコード全般に共通して言えることやGoroutineなどのGo特有の問題などをどう解決していったかの話で胃の痛くなる話が多かった。どんな言語を使ったとしても設計がちゃんとしてないと辛い思いをするというのを再確認した。新しい言語やフレームワークを使う時こそ起こしそうなことなので、焦らないで設計をやることが大事で当たり前のことをちゃんとやらないとなと思わせてくれた。
この発表でおもしろかった発言が「祈る時間が増えた」で、この場合は駄目だなと笑った。
LT
懇親会兼LT大会ではGoでのゲームの作り方やドローンをBLEで動かす話などが聞けておもしろかった。特にGoで作ったポルノフィルタの話がおもしろく、お相撲さんもポルノ判定されてしまうのが笑った。そこをうまく切り分ける方法は結構難しいのかも知れないが、結構必要とされていそう。
おわり
刺激を多く受けたのでGoをちゃんと学びたいと思わせてくれた。とりあえずbrew install go
はして環境は入れてあるのでまずは$GOPATHをどこにするかをちゃんと決めることからはじめたいと思う。InteliJは高いのでAtomを継続して利用していく感じにしていきたい。問題は何を作るかだけど、いつも画像処理をしてみたいと思っていたのでその辺からチャレンジしていきたい。