Lapis Lazuli

technical blog for web developer

golangtokyo#29に行ってきました

以前も少し書きましたが、4月から次の会社で働く事になっています。
担当はサーバーサイドとインフラなのですが、サーバーサイドは完全にGoしか書かない予定です。
Goまみれ、いい言葉だ。

が、最近Goあまり触ってなくて、さすがにやばいな・・・って思っているのでライブラリの一つでも作っている最中です。
GoroutineやChannelをちゃんと使いこなしたいです。切実。

golangtokyoに行く

と、このタイミングで、何度か参加したことあるgolangtokyoが開催されると判明、速攻申し込みしました。
抽選落ちましたが、補欠で何とか当選。よかった・・・

今回は大崎にあるfutureさんで開催されました。駅から直結で迷うことなく会場へ。
前回の六本木も直結だったんですけどね。行ったこと無い人にとっては近くていいと思います。

そして発表を聞く

前回のLT大会とは異なり、今回は通常発表メインの回でした(LTも最後にありましたが)
その中でも一番興味深かったのが、Go言語による並行処理を読んで。でした。
並行処理という、Goで最も中心となる機能を丁寧に解説したのが印象に残りました。
特に並行処理で競合するという、おそらく一番直面しそうな問題点に言及してたこと。絶対これ遭遇するやつだ・・・と思いながら聞いていました。
競合はデータ競合が起きやすいとのことで、直列で処理を書くから、そのとおりに処理されるものと人間の頭は思ってしまいがちだという。

なるほどねー、思えば僕もDB処理を並行処理で書いて躓いた記憶があった・・・笑
PHPとか、基本的に順番に処理される言語を使っていると、そういう体になりがちですね。

余談ですが、お酒を飲みすぎて、この辺りから僕は意識がやばかったです笑
酒が目の前にあったら飲んでしまうものなのです。

あと「これは使えるかも!?」と思ったのはsync.Poolの発表。
2ヶ月後にはメモリ効率を考えないといけなくなるであろうし、何よりGoを使う意味が増えるというもの。

発表を終えて

帰り道に思ったのは、GoはWebAPIとして使うだけが用途じゃないということ。
組み込みに使っている人もいたし、ゲームに使ってる人もいました。
今までAPIという発想しかなかったので、僕的には新しい発見になりました。

よし、もっともっとGoをやるぞー!