こんにちは、はてなでアプリケーションエンジニアをしている id:lufiabb です。 2024年1月31日(水)に、 hatena.go#1 を東京オフィスで開催しました。当初想定していた以上の方に登録・参加いただけました。ありがとうございました。
このエントリーでは、当日の様子をご紹介します。
hatena.go#1について
「hatena.go」は、Go言語を普段から使っているエンジニアやWebアプリケーションを開発しているエンジニアのみなさまを対象に、Goにまつわる情報発信と情報交換を目的としたイベントです。
今回のhatena.goは、はてなのエンジニア2名による15分トークと、connpassにて公募LT枠にご応募頂いた方3名によるLTが行われました。
発表概要と資料
はてなのサービスを支えるGo はてなにおけるGo利用のこれまでとこれから
一人目は、はてなのエンジニア id:maku693 です。はてなのプロダクションでGoが採用された事例を年代ごとに俯瞰していき、次に現時点において複数のサービスにまたがってパッケージ構造や利用されているライブラリが紹介されていました。 また、後半では、プロダクトにGoを採用する動きが広がっていくにつれてプロダクトごとに知識が断片化してしまう問題があり、いまは収束するフェーズに入っていることにも言及していました。
『Goサブ会』によるチームを超えた知見展開、あるいは hatena.go に対する期待
二人目は、はてなのエンジニア id:stefafafan です。Go Conference mini 2023 Winter IN KYOTOで行われたトークのアップデート版として、Goサブ会での活動と成果内容について発表されていました。 質問にもありましたが、サブ会とは「集中して取り組み、ときには具体的なタスクを受けもつ、技術的な競争力を持つエンジニアの小集団」です。人が集りやすいように、見える場所で活動することを意識されているのがいいですね。 今後のhatena.goに対しての期待などもお話されていました。
バクラク事業部でのGoのユースケースとチームを超えたナレッジ共有
LTの一人目は@upamune様です。LayerX社ではチームを超えたナレッジ共有をどのように行っているかをお話してくださいました。 ディスカッションを目的とした「ゆるい輪読会」は、途中参加しやすそうな取り組みで興味深い内容でした。並行処理の実装はsourcegraph/concを採用して間違えを避ける試みもいいですね。
YAMLからCLIを自動生成するツール「cyamli」の複数言語サポート
LTの二人目は@Jumpaku様です。YAMLで書かれたコマンドラインパラメータの定義からGoやPythonのコードを生成するcyamliという自作のツールを紹介してくださいました。 個人的には、1つのパラメータ定義を使って、Go以外の言語コードも生成できるところは面白いなと感じました。サブコマンドなどにも対応しているようなので、何か作るときに使ってみようと思います。
リンカを変えてgo buildを 速く出来るか
最後は@nasa_desu様です。Go標準の内部リンカを別のリンカに変更して、ビルド時間を削減できるか試してみるといった内容のお話でした。 複数のリンカで実行時間を計測されていますが、とても興味深い結果になっていました。続編にも期待しております。
さいごに
ご参加いただいたみなさま、ありがとうございました。はてな技術グループでは引き続き、ブログやセミナーなどを通じた技術情報の発信に取り組んでまいります。