ETHSanFranciscoでつくったもの

概要

ETHGlobalという団体が主催するハッカソン、ETHSanFranciscoに一人で参加し、現地で集めたメンバーと一緒に作ったプロダクトで、スポンサーのSKALEからトップの賞をもらえました。その時にの簡単な様子や、作ったものについて紹介します。

ETHSanFrancisco

ETHSanFranciscoはETHGlobalという団体が主催するハッカソンです。ETHGlobalは世界各地で定期的にハッカソンやEthereum関連のイベントを開催しています。直近の開催は10月のETHBogota, 8月のETHMexicoでしたが、アジア・ヨーロッパ・アメリカ国内などでも定期的にイベントがあります。

ETHxxxという名前でほかの団体が開催しているイベントもあるのですが、 ETHGlobalが開催するイベントは基本的にはハッカソンのみです。ほかのイベントにありがちなカンファレンススタイルのセッション等がメインではなく、作る人だけを歓迎しているスタイルで運営しているようです。

特徴としては
・ETHGlobal財団からの賞がある
・複数のスポンサーから賞金が出る。Ethereum関連の中では高額。
・ETH払いで参加費が必要(作品を提出すれば返還される)
・ハッカソン会期外の開発は禁止
といった形です。

今回作ったもの

今回我々は、Kioku Ginkouという、位置情報付きのフォトグラメトリーのデータをSKALE Networkのチェーン上に保管し、VR/ARやブラウザの3D表示で閲覧できるサービスを作りました。

SKALEでなにかつくることと、フォトグラメトリー的なプロダクトにすることは前日におぼろげに考え、当日にメンバーを集めながら具体化していった形です。

SKALE Network

SKALE Networkはガス代がかからず、ファイルそのものを(IPFSのように別のサービスとしてではなく)SKALE Networkのチェーン上に保存できる仕組みを提供しているようです。

正直、このハッカソンでSKALE Networkの存在を初めて知ったので、どのような仕組み・思想なのかそこまでよくわかっていないません。

今回SKALEにした理由は、ETHSanFranciscoのメジャースポンサー(賞金額が大きい・かつMetaverse賞を設定していた)上に、EVM互換のチェーンであり、既存のエコシステム(ERC-721, MetaMask, OpenZeppelinなど)がそのまま使えるため、学習コストはほぼゼロでることに開発上のメリットがありました。

技術的にもSolidityでかかれ、SKALE上にデプロイされたコントラクト上に100MBまでの巨大なファイルを送り付けて保存してもらえる仕組みがおもしろいと思い、SKALE Networkで何か作ってみることにしました。

フォトグラメトリー

私が共同創業した会社でVR空間上のマーケットプレイス SnowX を作っているため、何らかの形で3DやVRを組み合わせたいな…と考えていました。

前回ETHMexicoでは、VRでLens ProtocolというSNS用のブロックチェーンを閲覧するアプリを作ったのですが、VR専用だったため、文字で説明してもどんなアプリかわかりにくかったのと、Lens Protocolが使うGraphQLとの連携などでVR開発には意外なハマりポイントが多く、プロダクトの価値に直結しないところに時間を費やしてしまった反省もあり、今回はVRはサブにしようかなというところでプロダクトを考えていました。

フォトグラメトリー成果物はTwitter等で見ていて楽しいのですが、大体の方々が動画で共有されている印象で、理由としては簡単に共有できるオンラインサービスがないからなのかな?と思っていました。

ビジュアル的にインパクトがそこそこあるものの、iPhoneなどを使って簡単に作成できるコンテンツという観点からフォトグラメトリーをSKALE Networkに保存するのがおもしろいのでは?と考えました。

チーム

以下のようなチーム構成でした

・以前一度一瞬だけ話したことがある、SF現地に赴任している日本人エンジニアの人
・CEOが見つけてきた、5年前くらいに仕事でDeFi開発をしていた、Solidityアーリーアダプター的なSF在住の人
・ETHSanFranciscoの参加者名簿から面白そうだと思って見つけた、3Dスキャンやモデリングが大好きで、スーツケース2つに3Dスキャン用機材を詰め込んでハワイから来た人
・会場を歩いていた、テキサスに住んでいて、面接が大嫌いだからフリーランスをやっている人
(メンバーの詳細は確認を取って後日更新します)

前回のETHMexicoでは、メンバーを集めてからプロダクトのアイデアだしをしていたのですが、今回の経験から、プロダクトのしっかりとしたアイデアは具体化した状態のほうがやりやすいように思いました。

全員でアイデアだしするとなると、プロダクトのアイデアが人数分発生し、プロダクトが決まった後も機能の意見出しでいろいろな機能案が出てくることになります。メンバー全員で作り上げる感を持つことが目的なら、この方法でもよいのですが、最終的にはちゃんといい感じの賞を受賞したほうがチームとしての幸福度は高まるので、今回私がしていたリーダー的な役回りで現地のメンバーを参加してもらう場合、賞を取れるようなプロダクトのアイデアと、限られた時間で実現できる技術選定を事前にしておくほうがよさげです。

開発

つくるものは大まかに気に入っていたので
A. (自分) アーキテクチャーと全体をみるひと + 3Dスキャンしてくるひと
B. ERC-721を作る仕組みを作る人
C. 3D NFTを閲覧する仕組みのフロント側を作る人
D. 上記のバックエンドを作る人
E. 閲覧サイトのデザインを作る人 + プレゼンを作る人
みたいな形で分担しようとしていました。ここまできれいには分担できなかったのですが、そこそこきれいに技術分担できていた気がします。

ものすごく簡単なアーキテクチャの図を上記に掲載していますが、これはプレゼン直前に書いたもので、開発キックオフ直後は本当に何もなく、口頭で絵をかきながら作りたいものを説明していました。

この辺もちゃんと作りたいものくらいは明確に図示しておいたほうが効率は良かったかもしれませんが、逆に何もなかったので、ゼロから作り上げた感はより増大したところもあり、難しいところです。

わりと難しかったところ

ETHMexicoも同様ですが、今回もほぼ初めて会ったメンバーだったので、それぞれのメンバーがどれくらい開発経験・知識があるのかわからず、もうちょっと違う部分をお願いすればよりよくなってたのでは?と思うところはあります。

技術的な障壁はそこまでなかったような気がします。

会場のWiFi環境が本当に不安定で、ドキュメントすら満足に読めなかったことが一番の障壁だったかもしれません。。

完成と発表

ハッカソンなので大体こうなる気はしますが、提出直前までスライドを編集し、ギリギリで提出しました。

ETHSanFranciscoでは、メインの審査員からの賞が欲しい場合はメインの審査員に、スポンサー賞が欲しい場合はスポンサーにそれぞれプレゼンしに行くスタイルです。

メインの審査員は2人組前後で、10組程度のブースがあり、1発表4分だったのですが、それでも2時間くらいの待機列になっていました。
今回のプロダクトではSKALEしか使っていなかったので、事前にスポンサーのSKALEに発表に行き、その後メインの審査員のところに持っていきました。

SKALEの審査員は、持っていった時点でかなり好感触で、興味を持って聞いてもらえました。SKALEを使うにあたり、SKALEのファイルサーバのCORSなどで頻繁にブースに行っていたので覚えてもらえたのもあるかもしれません。一通りプロダクトを説明した後、VR空間内でSKALEに保存されているのとおなじ3Dスキャンデータを体験してもらいました。

メインの審査員の反応はそこまで…といった印象でした。ETHGlobalのメインステージに残るプロダクトにするためには、まだ研究と事前準備が必要だと感じています。

結果

最終的に、SKALEから Best use of SKALEの賞をもらうことができました。もともとSKALEのMetaverse賞を狙っていたのですが、予想以上の成果でした。逆にMetaverseのほうがGaming, NFTと同じ枠になっており、賞が分散していたので、Best useが取れて本当によかったです。

今後

SKALE側からちゃんとサービスとしてローンチしないか打診されており、チームの中にもフルタイムで個のプロダクトを完成させることに興味を持っているメンバーがいるため、私も少し支援する形で携われれば、と思っています。

ETHSanFranciscoは参加者のスキルも高いので受賞は難しいかと思っていたのですが、最終的にそれなりにいい賞が取れたうえ、なんとなく未来のあるプロダクトが生まれたので、参加してとてもよかったと思っています。

そしてなにより、チームメンバもきっと参加してよかったと思ってくれているような気がするので、うまくまとめられたことは幸いでした。

つぎはSnowXのフルタイムメンバーと一緒にETHIndiaに参加予定だったのですが、なかなかメンバーのほうの参加承認がされず、未定の状態です。

EVM的にもVR的にも、技術的には全く最先端のプロダクトを作っているわけではないですが、引き続き面白いものを作れればと思っております。今後ともよろしくお願いいたします。

いいなと思ったら応援しよう!