Open Hack Day のご紹介 🛠
Tweet本記事は、弊社 Richard Ramsden のブログ記事 Introducing Open Hack Day 🛠 の翻訳です。
情熱を持ったプログラマの1人として、私のキャリアにおける多くのイノベーションは仕事以外のプロジェクトの中から生まれたことに気づきました。研究であれ個人プロジェクトの開発であれ、エンジニアには探求と発見に費やす時間が必要です。
Open Hack Day は、 Degica のエンジニアが丸1日を何の制約もなしに彼らがやりたいプロジェクトに取り組む機会です。唯一の決めごとは、1日の終わりに参加者それぞれが、その日に取り組んだことや学んだことを2-3分にまとめて発表することです。
昨年(2017年)12月13日に、我々の最初の Open Hack Day を開催しました。 総勢9名のエンジニアがそれぞれのプロジェクトをハック・発表しました。取り組まれた内容は OSSへの貢献 、 開発ツールの構築 、開発効率の向上等多岐にわたります。
1日の終わりに発表しなければならないプレッシャーもあり、この最初の Open Hack Day は「ものすごく過酷」と評されました。また、参加者にとっては、自分の個人プロジェクトに同僚と共に関われる機会であり、とてもエキサイティングなものでもありました。
このイベントから多くの興味深いアイデアが生まれました。全部のアイデアが我々の日々の仕事に直接関わるものではないですが、何か新しいことを学習、ハックすることのできる絶好の機会となりました。 以下はこのイベントの結果の一部です。
GraphQL + Komoju
By Kazunori Kajihiro (@k2nr)
かじひろさんは GraphQL を弊社の決済サービス Komoju に組み込みました。
GraphQL は我々のプラットフォームにとって、API開発をシンプルにすることができる非常に大きな可能性が秘められています。 Komojuの GraphQL エンドポイントを今年中にリリースする計画を立てているところです。
<訳注>
これは訳者である私のプロジェクトです。 この場を借りて少し補足させてください。
Komoju は既に REST 形式の HTTP API を提供しており、現在のところ、このAPIを廃止するような計画はなく今後もサポートを続けます。 一方で、rubyクライアント・webフロントエンド、あるいは将来的にはモバイルアプリケーションから Komoju の API が使用されること、それぞれが必要とする情報が異なること、スキーマの定義や API ドキュメントのメンテナンス等を考えると、現在のREST API を拡張し続けることには大きなコストが伴います。
以上のような背景があり、 GraphQL がそれらの問題を解決できるのではないかと考え、今回少し調査と実装をしました。
今後の野望として、 現存する Komoju の Controller (Komoju は Rails 製です) を、既存パラメータ⇔GraphQL クエリ 相互変換レイヤとすることで、すべての外部インタフェースは最終的に GraphQL エンジンにより処理されるような構成にすることはできないだろうかと想像しているところです。
なお、今回の実装には graphql-ruby を使用しました。
</訳注>
Rails への貢献
By Chris Salzberg (@shioyama)
Chris Salzberg は1日を使って、彼の過去の業績である The Ruby Module Builder Pattern を元にした Rails のコア部分のリファクタリング に取り組みました。
Cappuccino VSCode Extension
By Richard Ramsden (@rramsden)
現在の Cappuccino のための IDE ツールは不足しているところがあり、弊社開発チームのフラストレーションにつながっています。 Open Hack Day の中で私は独自の VSCode 拡張を開発することに決定しました。
私はこの VSCode 拡張を 公開 し、 OSS化しました。
Keisan
By Chris Locke (@project-eutopia)
Chris Locke は彼が昨年開始したサイドプロジェクト Keisan の開発に取り組みました。 Keisan は 数学の方程式を抽象構文木 (AST) に変換して評価するオープンソースのプロジェクトです。
Golang powered E-Commerce
By Taku Nakajima (@essa)
中島さんは Go言語で開発された Eコマースソリューション を試してみました。 彼は以下の複数のOSSプロジェクトについて研究しました。
- QOR - go 言語で書かれた E コマース & CMS 開発用 SDK
- GoCommerce - JAMstack サイト用のヘッドレス E コマース
- Digota - go 言語で書かれた E コマースのマイクロサービス
- CoreStore - E コマース 用の標準ライブラリ
Summary
Open Hack Day を通じて、複数の素晴らしいプロジェクトや貢献が生まれ、知ることができました。これらは、もし弊社のエンジニアたちが探求するチャンスがなければ日の目をみることがなかったものかもしれません。
この成功から、我々は Open Hack Day を毎月デジカで開催することに決定しました。 次回の Open Hack Day の開催は 1 月 25 日を予定しています。次回のレポートを楽しみにお待ちください! 😉