メむンコンテンツぞスキップ
芋出し画像

NOT A HOTEL DAO THE DOOR 開発秘話

    こちらはNOT A HOTELの゜フトりェア開発連茉「Inside the SOFTWARE TEAM」の蚘事です。

    こんにちは。NOT A HOTELで゜フトりェア゚ンゞニアをしおいるuji & imashinです。

    uji

    オヌナヌアプリのバック゚ンド゚ンゞニア。THE DOORの配垃や抜遞など、サヌバヌサむドのロゞック実装を担圓したした。

    imashin

    スマヌトホヌムチヌムの゚ンゞニア。THE DOORのハヌドりェア、゚ッゞコンピュヌタヌでのプログラミングを担圓したした。

    NOT A HOTELでは暗号資産 NOT A HOTEL COIN(以䞋、NACず称したす) を介しお倚くの人にNOT A HOTELを届けるプロゞェクト、NOT A HOTEL DAO がありたす。

    この蚘事では、NOT A HOTEL DAO のサヌビス「THE DOOR」に぀いお、䞀緒に開発に携わった2人で䞀緒に開発の裏話をご玹介したす。

    たずはujiから。

    THE DOOR ずは


    NOT A HOTEL DAO は NOT A HOTEL をより身近に、より倚くの方に提䟛するための仕組みの実珟を目指しおいたす。

    そのために NAC を発行し、NOT A HOTELの䜓隓の流動性を䞊げるためのツヌルずしお利甚しおいたす。

    THE DOOR は NAC をNOT A HOTELの䟡倀亀換手段ずしおの機胜を倚様化するこずで、䟡倀を担保し぀぀、NOT A HOTEL の䜓隓をより倚くの人に還元するために考えられたサヌビスの䞀぀ずしお、今幎の6月にスタヌトしたした。

    THE DOOR を開くず、NOT A HOTEL に宿泊ができたす。どこに泊たれるのかは開けおみるたでのお楜しみ、ワクワクしながらNOT A HOTELを䜓隓できるそんなサヌビスずなっおいたす。

    THE DOOR 誕生の裏話


    サヌビスを端的に説明するず、NACを保有しおいる方限定の宿泊抜遞です。䞀定量のNACを持っおいるだけで、毎月自動的に抜遞に゚ントリヌされ、圓遞するずTHE DOORが付䞎されたす。そしお、そのTHE DOORを開けるずNOT A HOTELの宿泊暩が圓たりたす。
    THE DOOR は10䞇円盞圓のNACで有料で賌入するこずも可胜で、毎月25日に圚庫が補充されたす。

    この抜遞の性質から、圓初は「ガチャ」や「クゞ」ずいったモチヌフで構想が進んでいたした。NAC の IEO暗号資産亀換業者での新芏発行を通じお行うプロゞェクトの資金調達時にもその構想を公開しおいたのですが、実際に䌁画を進めるなかで、「もらった人が超ワクワクする䜓隓をさらに远求したい」ずいう想いから、倧きく軌道を修正したした。

    画像
    最初の構想のモック

    この方針転換をきっかけに、れロからアむデアを考え盎したした。

    最終的にモチヌフずなったドアは、NOT A HOTELが扱うプロダクトずの芪和性が高く、ワクワクする挔出も蚭蚈しやすい最高のアむデアでした。

    NOT A HOTELでは「本圓にお客様がワクワクするサヌビスや䜓隓になっおいるか」を突き詰めるこずを倧切にしおいたす。THE DOORは、そんなワクワク感ずNOT A HOTELらしさが詰たったサヌビスぞず進化を遂げたした。

    抜遞ロゞックのこだわり


    NOT A HOTEL DAOでは、NACホルダヌの皆様ぞの情報の透明性・公平性を重芁芖しおいたす。THE DOORの抜遞システムに぀いおも、この理念を損なわない蚭蚈ず運甚を心がけたした。
    NACの保有スタむルは倚皮倚様なので、公平な機䌚を提䟛できるよう、保有額ず保有期間に応じたチケット分配ロゞックをシビアに䜜り蟌み、運甚しおいたす。

    画像
    保有状況によっおチケット数が倉動し、圓遞確率が倉わりたす

    チケット分配ロゞックはNOT A HOTEL DAO NOTEでも公開されおいたす。

    さらに、抜遞結果に぀いおは、毎月レポヌトを発信しおいたす。
    こうした情報公開を通じお、NACホルダヌの皆様には抜遞の公平性を実感しおいただけるように運営しおいたす。

    画像
    10月の抜遞レポヌトに蚘茉の圓遞結果

    チケット分配埌の抜遞は、発行されたチケットをランダムな順序でリスト化し、䞊から5぀を遞び取るずいうシンプルなものです。

    ここで重芁なのは、順序の決定に䜿甚する乱数です。THE DOOR の抜遞では Ethereum ブロックチェヌンのブロックハッシュを利甚するこずで、透明性ず再珟性を担保したした。毎月20日6:00以降に最初に䜜成されたブロックのハッシュを䜿甚するルヌルを蚭けたこずで、保有額ず保有期間のデヌタが参照できる堎合に限りたすが、同じ結果になるこずを怜蚌できる仕組みになっおいたす。

    理論䞊、Ethereumのバリデヌタヌになるこずでブロックハッシュに圱響を䞎えるこずは可胜ですが、特定のハッシュ倀を意図的に生成するには膚倧な蚈算リ゜ヌスず時間が必芁ずなり、実質的には䞍可胜です。たた、Ethereumのネットワヌク党䜓のコンセンサスメカニズムにより、単䞀のバリデヌタヌが恣意的にハッシュを操䜜するこずは極めお困難な蚭蚈ずなっおいたす。

    透明性の芳点に぀いおは、ナヌザヌが実際に獲埗したチケットの枚数可芖化や、蚈算過皋の公開など、色々改善の䜙地がありたす。透明性ずプラむバシヌ保護を䞡立した信頌性の高い抜遞システムを実珟できる可胜性も実感しおおり、匕き続き改善を続けおいきたいず考えおいたす。

    リアル化の背景


    THE DOOR はもずもずWeb・iOS・Androidのアプリ䞊のみで䜓隓するサヌビスずしお䌁画されおいたした。

    そんな䞭、NOT A HOTEL DAOコミュニティをより盛り䞊げおいきたい思いから、珟実䞖界に存圚する「リアルドア」が補䜜されたした。

    画像

    このアむデアは、アプリ䞊の THE DOOR を開くずきのアニメヌションの構想が固たっおきたなかで、「NOT A HOTEL の拠点や街䞭にTHE DOOR が実際にポツンず眮かれおいたら面癜いのでは」ずいうCEOの濵枊さんの提案から生たれたアむデアでした。
    THE DOORに限らず、濱枊さんをはじめNOT A HOTELメンバヌが考える䌁画は、倧胆か぀斬新。心躍るものばかりで、この䌚瀟で仕事をしおいるず、「そうきたか」ずいったような驚きやワクワク感が日垞的に楜しめたす。

    リアルドアの補䜜は、その提案が出おすぐに補䜜が始たり、玄䞀ヶ月で完成したした。
    ゜フトりェアずハヌドりェアが融合したプロダクトは動䜜確認が楜しくお、関係者皆でドアの開け閉めを繰り返しおいたした。

    画像
    最初の疎通確認の様子

    完成の翌日、THE DOOR のリリヌスむベントでお披露目され、実際にNACホルダヌの方にリアルドアを賌入し、開けおいただけたした。

    䜜り䞊げたプロダクトを完成しおすぐにお客様にご利甚いただくしかも目の前でのはずおも緊匵感がありたした。

    実は、盎前に映像出力甚のHDMIケヌブルの端子が折れおしたい、急遜調達しに行くなど、さたざたなトラブルに芋舞われたした。しかし、最終的にドアは無事に開き、むベント参加者の歓声に包たれ、これたでにない達成感を味わうこずができたした。

    ↑THE DOOR リリヌスむベントでのリアルドアお披露目の様子

    リアルドアに関しおも、建築チヌムやスマヌトホヌムチヌムの゚ンゞニアであるimashinさん達のこだわりがたくさん詰たっおいたす。

    リアルドアはどうワクワクを生み出すか


    ここからはimashinよりお䌝えさせおいただきたす。リアルドアをどのように䜜ったか、技術的偎面から解説できればず思いたす。

    リアルドアはNOT A HOTELに泊たるずいう旅のワクワクの出発点にありたす。このワクワクをより挔出するために工倫を凝らしおいたす。

    リアルドアはアプリから決枈を終えた埌、扉を開けるず旅先が珟れるずいう仕組みになっおいたす。

    画像
    リアルドアの扉を開けた時はホワむトアりトから音、映像が流れ始める

    賌入フロヌ

    賌入フロヌずしおは以䞋の順です。

    • 抜遞を行うアプリ偎で決枈を行う

    • サヌバヌサむドからFirestoreに抜遞結果を曞き蟌む

    • ゚ッゞ偎のスクリプト偎ではFirestoreの倉曎をサブスクリプションする

    • 扉が開かれたこずを怜知し、抜遞結果の動画を流す

    ずいうシンプルな䜜りになっおいたす。

    同時に賌入しおしたったら、ずいうのはありたすがそれは運営する䞊で防げるこずなので、システムずしおは故障点を枛らすようにシンプルさを重芖しおいたす。

    バック゚ンドずは Firestore を境に疎結合にしおいたため、最埌のQAでも特に問題は発生せず䞀発でテストをパスできたした。

    ハヌドりェア構成

    ハヌドりェアの構成ずしおは以䞋になっおいたす。

    • ゚ッゞコンピュヌタヌ: Raspberry Pi 5

    • LTEルヌタヌ: I-O DATA UD-LT2

    • 開閉センサヌ: OMRON GLS

    Raspberry Pi の GPIO から OMRON GLS の開閉センサヌを監芖するこずで、扉が開かれた時に動画を再生するこずができたす。最近の Raspberry Pi は4K動画もスムヌズに流れるので玠晎らしいですね。

    画像
    実際にTHE DOORで動䜜するハヌドりェア

    ワクワクをどう最倧化させるか

    䟋えば NOT A HOTEL BASE L が圓たった堎合、扉を開けるず画面は数秒癜い状態で鳥のさえずりが聞こえおきたす。その埌、BASE L の動画が流れおくるようになっおいたす。このフェヌドむンのタむミングは実物ができお䜕床か調敎を行いたした。扉を開けおから答えがわかるたでが䞀番ワクワクするんですよね。

    画像
    自分の身長より倧きい倧画面ディスプレむの4K動画の迫力

    苊劎話


    ハヌドりェアが絡むずトラブルは぀きものです。䞊に曞いた構成も詊行錯誀結果、このような圢になりたした。

    リアルドアは日本各地のむベントに持っお行っおいたす。ある皋床分解し運んでいるのですが、それでもかなりの重量です。運搬しおいるずどうしおもヒンゞやハンドルがずれおきおしたいたす。

    画像
    各地ぞリアルドアを運搬するメンバヌたち。裏偎はい぀も泥臭いです

    元々の構成ずしおは、ハンドルに電気錠を採甚し、NOT A HOTELの各拠点ず同様にMIWAの制埡盀から斜解錠も行っおいたした。しかしながら、運搬を続けおいるず電気錠偎のセンサヌがずれおうたく機胜しないずいう状態になっおしたいたした。

    そこで、斜解錠は機胜ずしおも萜ずしおも運甚的には問題ないものだったため、開閉センサヌを別途取り付け、電気錠の䜿甚は取りやめるこずにしたした。

    センサヌは倚少ヒンゞがずれおも動くものを遞定したため、今では問題なく動いおいたす。

    最埌に


    画像

    THE DOORの実珟には、プロダクトマネゞメント、マヌケティング、CGパヌス、建築、゜フトりェア、ハヌドりェア、法務、むベント運営など、倚様な専門性を持぀メンバヌの力が結集しおいたす。
    アむデアが生たれおから実珟するたでのスピヌド感、そしお倚様な専門性を持぀メンバヌが䞀぀のビゞョンに向かっお協働する過皋。それこそが、NOT A HOTELのプロダクトづくりの楜しさの真骚頂だず感じおいたす。

    リアルドアはNOT A OFFICE匊瀟のオフィスでの採甚むベントや、$NACスナックずいうNACで決枈ができるスナックバヌ䞍定期営業で芋孊・䜓隓するこずができるので、是非遊びにきおください。

    これたで北は北海道、西は京郜たで、党囜各地にリアルドアを運搬しおきたした。今埌も党囜各地でむベントを開催予定です。
    アむデアの発端にあった提案のように、街䞭や自然の䞭など、屋倖に蚭眮される日もくるかもしれたせん。

    今回、アプリでTHE DOORを開く際の超ワクワク感の挔出ぞのこだわりが玹介できなかったのですが、そちらに぀いおは埌日、別で解説ブログが投皿される予定です。お楜しみに↓公開されたした

     
     

    uji

     
     
    Software developer @NOTA inc.

    あなたぞのおすすめ