メインコンテンツへスキップ

ArcBlock北京ハッカソン小記

王仕军 (ArcBlock 资深前端工程师)
ArcBlockハッカソンOCAP

著者 王仕軍(ArcBlockシニアフロントエンドエンジニア)

9月15日、優客工場酒仙橋コミュニティ。長年働いてきた私にとって、ArcBlock北京ハッカソンの運営に携わるのは初めてで、期待と緊張、興奮で胸がいっぱいでした。

ブロックチェーンに関心を持つ約80名の開発者が、面白く役立つものづくりに挑戦し始め、デモを完成させたプロジェクトは10件を超えました。満足度調査では、開発者の80%がイベント全体について期待以上だったと回答しており、ArcBlockにとって3回目となるベータ版ハッカソンは、非常に成功したイベントだったと言えます。

振り返りと総括なくして、より良い改善はありません。ここからは、ハッカソンの全過程を通じて私がエンジニアの視点から感じたことを、皆さんと共有したいと思います。

開催前:準備なしで戦いに臨まない

一見何の苦労もなく行われているように見えることにも、計画と準備には多大な労力が必要です。ArcBlockのOCAPサービスはリリースから3か月で、まだアプリケーション開発者による大規模な検証を受けたことがなく、エンジニアリングチームが自ら比較的大規模なハッカソンを開催するのも初めてでした。そのため、当然ながら十分な準備が求められました。

OCAPサービスは弾薬庫

現在ArcBlockが外部に提供している主要サービスであるOCAPは、今回のハッカソンに参加するすべてのアプリケーションのデータ需要の大部分を担います。サービス自体の安定性と正確性に加え、サービス接続用のSDKやドキュメントの使いやすさも非常に重要です。具体的には、次のような準備を行いました。

  • 「Eat Your Dog Food」の原則に従い、開発者にOCAP上でアプリケーションを構築してもらう前に、まず私たち自身がOCAP上でものを作れる必要がありました。ハッカソンに先立ち、クライアントチームはサービスとSDKの能力を検証するため、JavaScript、Android、iOSの各環境を対象にアプリケーションを開発しました。
  • ドッグフーディングの過程で遭遇した問題や発見した課題をもとに、OCAPサービスとSDKを迅速に改善しました。たとえば、iOS/Android SDKでサポートされる機能が期待どおり動作することを確認し、JS SDKにページネーション対応を追加し、JS SDKをサーバー、WEB、Nativeの3環境で動作できるようにしました。
  • 自動テストを構築し、OCAPサービスが提供するすべてのインターフェースと、サポートするすべてのフィールドが正常に返されることを確認しました。
  • ユーザーの視点で入門ドキュメントを作成し、遭遇し得るさまざまな問題をFAQとして整理しました。

開発者は戦友

ものづくりが好きな開発者にとって、ハッカソンはお祭りのようなものです。普段の仕事から解放され、自分のアイデアをもとに新しいものを生み出せるからです。質の高いアプリケーションを生み出すには、より多くの開発者の参加が必要です。できるだけ多くの適任な開発者を募るため、技術担当VPの陳天は「ArcBlock北京ハッカソン、参加しませんか?」という記事を前後3回にわたって書き直しました。興味があれば、ぜひ読んでみてください。読み終えたら、きっとあなたも参加したくなるはずです。

記事の公開からわずか数時間で60名の枠が埋まりました。当初は100名の開発者を募集する予定でしたが、利用可能な会場を慎重に評価した結果、来場する開発者の体験を確保するため、募集人数を60名に調整しました。

開発者の貴重な時間を無駄にしないよう、ハッカソン前には2つの講演を入念に準備し、ブロックチェーンやArcBlockが取り組んでいることをよりよく理解してもらえるようにしました。

会場と物資は後方支援

開発者に良好なコーディング環境を提供することは、アイデアを円滑に形にするうえでも極めて重要です。会場と物資については、具体的に次の準備を行いました。

  • 2週間前から会場への連絡と確認を始め、前日には会場内のすべての電子機器をテストしました。ネットワークやコンセントなど、問題になりそうな箇所を想定し、対応策を準備しました。
  • 半日前にハッカソンのリハーサルを行い、チーム全員がイベントの流れを理解し、自分の役割と分担を把握できるようにしました。
  • 十分な飲み物を事前に購入し、イベント開始前に会場内の手に取りやすい場所へ配置しました。唯一の不足は、ミネラルウォーターの購入量が少なかったことです。
  • 記念品としてArcBlockのロゴ入りTシャツを20枚用意しました。華やかな包装はありませんでしたが、品質はどれも良いものでした。

開催中:実践が私たちを現実の世界へ近づける

誰もが自分の認識する世界の中で生きているのだとすれば、ArcBlockにとって、より多くの開発者と接し、彼らのニーズに耳を傾け、悩みを理解することこそが、私たちを現実の世界へ近づけ、より価値のあるものを生み出すことにつながります。

技術講演は必要で、反応も良好

イベント後、多くの開発者から、事前の技術講演は非常に必要だったとの声が寄せられました。多くの開発者はさまざまな理由から、まだブロックチェーン技術に本格的に触れたことがなかったため、体系的な紹介によってより早く取り組みを始められました。たとえ何も完成させられなかったとしても、ブロックチェーンアプリケーション開発者になる道を、確かな一歩前進したのです。

講演の質に対する開発者の評価にも、私たちは大いに励まされました。バックエンドエンジニアの沛霊による講演では、UXTOについての説明が特に見事でした。UXTOはもともとビットコインにおける比較的難解な用語ですが、彼は現実世界の現金にたとえることで、ビットコインのこの設計の妙をすぐに理解できるようにしました。イーサリアムについては、データ構造をそのまま目の前に示す以上に明快な方法があるでしょうか。結局のところ、複雑なシステムを理解する鍵は、データ構造とデータの流れなのです。

ここだけの話ですが、このような評価を得たのも当然です。何しろ沛霊は、ビットコインとイーサリアムのソースコードを通読した人ですから。この2つの素晴らしい講演の録画をご覧になりたい方は、こちらへどうぞ。

これを踏まえ、私たちは開発者がブロックチェーン技術と私たちについてより深く理解できるよう、社内の技術講演と研修をすべて公開することにしました。「ArcBlock技術学習シリーズ」はすでに始動し、これまでに2回開催されています。

OCAPの製品方向性は正しく、細部には改善が必要

開発者がブロックチェーンデータを読み書きするためのハードルを下げることが、OCAPサービスの原点です。開発者からのフィードバックを見る限り、この方向性は完全に正しいものでした。最終的にデモへ参加したプロジェクトは、すべてOCAPサービスのデータを利用していました。OCAPをリアルタイムのデータ照会サービスとして利用するものもあれば、データ収集元として利用するもの、OCAPサービスにプロキシ層を設けてミニプログラムで利用できるインターフェースへ変換するものもありました。

同時に、OCAPサービスではニーズを満たせない点や、インターフェースの堅牢性が不十分な問題も見つかりました。「優れた記憶力も、書き留めることにはかなわない」と言います。私たちは、遭遇したこと、耳にしたこと、そして開発者の質問に答える過程で思いついたことをすべて記録しました。それらは最終的に社内の改善要件へと変わり、高い優先度で解決されました。

SDKとスタータープロジェクトの準備には多大な労力をかけましたが、技術研修ではこの部分の紹介があまりに簡略でした。そのため、一部の開発者は、サービスを自分の使い慣れた技術スタックと組み合わせる過程で、多くの時間を費やしました。ハッカソンに参加する開発者にとって、時間こそ最も希少な資源です。どうすればより早くアイデアの実装段階に入ってもらえるかも、私たちが改善を検討すべき点です。

チームには変化を素早く察知し、対応する力が必要

現実の世界は常に私たちの想像より複雑です。変化に素早く適応し、より良い方法を見つける力が非常に重要になります。たとえば、次のようなことがありました。

  • 受付終了後、実際の来場者数が予想を50%上回っていることが分かりました。私たちはすぐにレストランへ連絡して昼食の予約数を50%増やし、時間どおりに届くことも確認して、皆がお腹を空かせたままコーディングすることがないようにしました。
  • 会場のプロジェクターの接続端子が古いことを考慮し、開発者の意見をすぐに取り入れ、社内コミュニケーションツールのzoom.usをプロジェクトのデモ手段として利用しました。これにより、デモと審査の段階で多くの時間を節約できました。
  • 技術講演の後は昼食の時間でしたが、多くの開発者が講演者を囲んで技術的な問題を議論していました。そこで彼らの分の昼食を取り置きし、午後も引き続き取り組めるようにしました。

開催後:すべては始まったばかり

この言葉は、まさにここにぴったりです。ArcBlock北京ハッカソンから、私たちは多くのことを学び、得ました。信じられませんか?ハッカソンの参加者の中には、今週ArcBlockへ入社した人もいるのです。

実践を踏まえ、「もう一度ハッカソンを開催するなら、どうすればもっと良くできるか」という問いを中心に議論し、15ページを超える振り返りをまとめました。これらはすべて、ArcBlockが改善と前進を続けるための貴重な経験となります。

ブロックチェーンに興味があるなら、私たちに加わってみませんか?採用情報はこちらです。ぜひお話ししましょう。

このページに関わるもの

製品

  • OCAP active

    チェーンごとにクライアントを用意するのではなく、一つのインターフェースでチェーン上のデータを問い合わせるためのプロトコル。ArcBlock が関連特許を保有しています。

イベント

  • ArcBlock ハッカソン confirmed

    2018 年に開催した 3 回のハッカソン。ベルビューのオフィスで 3 週間おきに 2 回、そして米国外では初開催となる北京。