【NeighbAc】tornado2022 優秀賞作品

 

概要

NeighbAc,身近な問題を可視化、議論・課題解決を促進するwebアプリです。

結果、tornado2022 優秀賞をいただくことが出来ました。

 エンジニア以外の役職が多いハッカソンだったため、チームメンバーの認識の共通化に苦労しましたが、開発だけでなくアイデア・市場調査等にも尽力しました。

プレゼン資料

https://docs.google.com/presentation/d/1BBrMRxgOZdomirKGO3RXXppYMOx_GbAF1bTwTM-V9Ao/edit#slide=id.g31a438ef12225976_11

GitHub

https://github.com/aohana-AO/tornado-mysite

デプロイ(一部機能非反映)

https://society-problem.herokuapp.com/

tornado2022とは

出場するには面接選考があり、面接にクリアした方達から1チーム6人でチーム構成が組まれていきます。
※エンジニアが6名中2名しかいないためかなり大変でした・・・。
10チーム・総勢60名の学生たちが約1カ月間、優勝を⽬指し競い合う形になります。

 

 

制作背景

社会問題への関心の高まる近年、身近で問題に直面した結果から社会問題に関心を持つというデータ、ユーザー獲得・競合分析・実現可能性も含め、当アプリを作成しました。

 

※企画の流れ

・近年社会問題も多く、その問題に関心を持つ人が多い(8割以上のz世代が社会問題に関心がある
・身近で問題に直面した結果関心を持つというデータの存在

・身近で問題を感じたときにそれを提起し解決仲間を募れる
・また、一定数存在する社会貢献意識の高い人に向けて課題を容易に把握でき、行動を起こすきっかけを提供
・身近な問題解決にもつながる上、需要(課題で悩み真剣に解決したいと感じている人、どんな課題があるか知りたい人)もあり競合他社とも差別化も可能

 

使用技術

django

python

jquery

javascript

css/html

bootstap


django-channels

leaflet.js

django-allauth


※選定理由 今まで使用してきた技術を応用し短時間で作成できるものだったため。

工夫点・機能

・現在、日本の社会課題の1つである地域問題の解決に着目

・市場調査、カスタマージャーニーの作成、競合分析など開発以外の部分にも尽力

・mapをクリックすることでその地点にピンを立て、地域問題を可視化

・マップ以外からも社会課題の絞り込み検索ができる、チャット機能(errorのため未実装)など・・・

大変だったこと

現実味のない企画が独り歩き

所属チームの中でエンジニアが2人しかいないハッカソンだったため、開発に関する共通認識が揃わず、開発当初は実現可能性が考えられていない企画を進めてしまう事が多々ありました。

中間発表後、開発期間のラスト1週間で企画案を根本的に変更し、結果としては優秀賞を獲得することができましたが、開発自体は3日程度しかできなかったため、完成しきれていない機能があったり、技術選定もそもそも最適なものではなかったりと、課題点は多いかなと感じました。

モダンなフロント技術を使えなかった

今までの知見をそのまま扱えるようマップにはleafletを用いましたが、リアクトの場合React Leafletというライブラリを用いる必要があり、書き方がかなり変わるとこも多く、jsやcssなどモダンとは言えない技術選定を行うに至りました。

※もし次を考えるとsupabase+リアクトとかモダンで比較的早く開発ができそう?

django-channelsでのチャット機能不完成

django-channelsの知見や参照しやすい記事も少なく、詳細を理解しながらの開発ができませんでした。

結果チャット機能は未完成の状態にし、プレゼン動画作成や資料作成に尽力する形になりました。


※元々プロダクトの開発の知識がない方も多かったため、各々の知識を十分にするためにも学習をすべきだった、全体的に知識や案の文章化をし共通認識を固めるべきだったと感じています。

また、開発知識のある方が企画の段階でもっと発言していくことで、現実味がない企画を早い段階から方向転換できた部分もあったと感じるため、今後のエンジニア人生の教訓にしていきたいと思います。

今後の課題

django-channelsを使用したリアルタイムチャットがerrorにより動かない状況を改善する必要がある
そもそも短期間で作成できるという理由から、今まで使用できる技術をそのまま流用した為、リアルタイムチャットなどの作りやすさ、UIUXの視点からも技術選定自体変更しても良い?(supabase+リアクトとか時短にもなるしよさそう?)
Herokuにデプロイしているため、無償プランが廃止されることからデプロイの見直しが必要になりそう
利用者が増えた段階で、どのカテゴリに関する問題が多いのかデータを取得し、そのユーザー層が更に使いやすいような機能を追加する
もし次があるなら、共通認識構築の為に早い段階から認識・知識の文章化、仕様書や要件定義を詳細に書いていきたい
企画がかなり長くなり開発期間が非常に短くなってしまった事から、工数は守って議論していきたい