参加記録 Go Conference 2015 summer

今回は日経さんとCAさんがスポンサーとのことですが、
かなりの人がいるのにwifiが普通に繋がっていて凄かったです…
なんか機械も見たことも無い凄い奴でしたし。

実際に運用してる上での話が多く、goの時代が来ている…!
という感じを受けました。
お仕事でほぼ使ってないのでちゃんと使いたいですねー

また、みんなcode generateに走っているのはおもしろかったです。
コピペになるようなコードはgenerateするってのはほぼ統一見解ですね。

キーノート

  • go1.5凄そうです
  • go oracleのすごさ
    • 関数がどこで使われているかが調べられる
    • 関数ポインタで呼ぶ場合も大丈夫
  • gomobile、早くiOSに対応してC++を駆逐してほしいです…
  • 公式の依存管理ツールも楽しみです

発表まとめ

発表順は覚えてないので、タイムテーブルに順不同で並べられている順です。

Gaurun〜A general push notification server in Go〜

Debugging Go Code with GDB

  • http://kaneshin.hateblo.jp/entry/2015/06/21/202850
  • GDB、あんまり使いこなしてないのでもっとちゃんと使わないと…と思った。
  • Goはコンパイル早いし、落ちたときにちゃんとどの行で落ちたか出してくれるし、無くても何とかなる感はあります
    • 使った方が何倍も楽なのでちゃんと使った方が良いかと
  • go 1.5からコンパイラがgoで実装されるけど、吐き出されるバイナリにDWARFが入ってれば関係ないよね?
    • リリース直後はバグったDWARFになる可能性はありそう…
  • フォントが$300ってwwwwww

Generative programming in Go.

gore - Go で REPL のはなし

  • irbみたいにgoを対話的に実行できるやつの内部事情
  • go runしてるだけ
  • go runに失敗しないように色々前処理をがんばってるみたいです。

Goと電子工作とロボット

  • goでロボット制御できて、しかもスタンドアロンで動いていて凄いです

GoのASTをいじくって新しいツールを作る

  • http://www.slideshare.net/vvakame/gocon-2015-summer
  • go/astを使うと、コード解析した結果みたいなのをとれるみたいです。
    • 正規表現でがんばる!とかよりかは遙かに楽そう…
  • ただ、出力部分は気合いとのこと…
  • 怒りのスライドは良くわかります…
    • 1byte=1文字、再帰的なパッケージ、err!=nilめんどい…(´・_・`)

Go言語でコマンドラインツールをつくるときに僕の語ること

Patterns for building a scalable, testable web app in Go

  • https://sourcegraph.com/
    • そもそもこのサービス知りませんでしたが、めっちゃ凄いです…(o゜▽゜)

ピクシブ社内広告サーバーでのGoの開発・運用

  • http://catatsuy.hateblo.jp/entry/2015/06/21/214229
  • goのサーバを実際に運用している上での知見が詰まってました。
    • nginxをフロントに立てることで、goサーバは特定の機能を素早く処理することに集中できるとか
    • ホットデプロイするためにnginxとの間にunixソケット受付のアプリを立てておくとか
  • CPU Throttlingによって混んでないときはレスポンスが遅い話がおもしろかったです。

1binary 自己完結型の 形態素解析器 kagome を 作ってみた話

  • http://ikawaha.hateblo.jp/entry/2015/06/21/155636
  • 辞書のエンコーディングに悩まなくて良いの凄く良いと思います。
  • 形態素解析説明が凄くわかりやすかったです
    • ただ、文脈IDをどう使ってるのか良くわかりませんでした…

GOで基盤システムつくってる話

  • CAでLoL並の接続数を捌けるような基盤システムを作ってる話
  • パッケージ管理やパッケージ構成…(´・_・`)
  • 標準パッケージは宝の山。goらしさを調べるにはうってつけとのこと
    • A Tour of GoやEffective Goの後に最適

LT

Goのパッケージ構成で試行錯誤してみた話

AppEngine for Go Unittest

  • デバッグ用のサーバの立ち上げが遅いので、Unittestに時間がかかるそうです
  • 並列化しても最初の分の時間はやっぱりかかってしまうとのこと
    • 起動しっぱなしにして、そこに接続して使うとかはダメなのでしょうか?

Golangで始めるハードウェアプログラミング

メモり損ねました…(´・_・`)

vendoring @ golang

メモり損ねました…(´・_・`)

「Gopherになれ!」

Go製の拡張可能なslackbot(仮)

  • http://kyokomi.hatenablog.com/entry/2015/06/21/213610
  • pluginの拡張をどうしてるのか謎でしたが、コードを読んで納得
    • パッケージのinit関数で、pluginsパッケージが保有するプラグインのリストに自分を登録する
    • botがpluginsの中を読み込んで動作する

Goの使われ処

k0kubun/pp についてと、reflectパッケージとメタプログラミング

  • http://k0kubun.hatenablog.com/entry/2015/06/21/195229
  • ppをラップしただけの関数を定義しておくってのが凄い便利そうです
    • import書いたり消したりがとても面倒なので…
  • メタプログラミングは…やっぱり現実的じゃ無いですよね

Golangはじめて半日後に野球のアプリ書いてLTしてきた