はじめに
パソコン甲子園2025 モバイル部門の本選に出場してベストアイデア賞をいただいたので、軽く振り返ります
少し長くなりましたので、前半(当日までの流れ)と後半(当日の流れ、反省点など)に分けました。ぜひ最後まで読んでいただけると嬉しいです
自己紹介
初めてのQiita記事投稿なのと、今回のアプリには私の人生が関係しているので、軽く自己紹介をさせてください
少し長めに書きますので、「パソコン甲子園のことだけ知りたい」という方は読み飛ばしちゃって大丈夫です!
- 高専に入るまで
- 小学生の頃に発達障害の診断を受ける(後述するアプリ内容に関係)
- プログラミングに興味はあったものの、なかなか手を出せずにいた
- その他は普通に過ごしていた
- 高専1年生
- プロコンに入ってハッカソンに出てみる(Chivictech Challenge Cupとか)
- 競プロも少しだけやっていたような気がしなくもない
- 高専2年生
- 引き続きハッカソンに出たり、パソコン甲子園2024モバイル部門で本選に出たりする
- 障害者として「普通じゃない自分」に悩む
- 軽度鬱につながる
- 2年後半あたりから、学校やプロコンでの活動といったありとあらゆる活動が苦しくなる
- パソコン甲子園も後半はあんまり動けなかった
- 出席・成績ともにギリギリ3年生に進級する
- 高専3年生(今ここ)
- 治療に専念するため、学校にはあんまり通っていない(プロコンの活動だけは楽しかったためやっていた)
- コンテスト出場資格を得るため、そして万全の状態で復帰するために、留年することを選択
- パソコン甲子園に出て、モバイル部門でベストアイデア賞を取る
大体こんな感じでしょうか、まだそんなに生きてないですが、なかなか異質な人生だと思います。発達障害・鬱については後述するアプリ内容につながるため、知っておいてもらえるといいかも
パソコン甲子園とは
コンピュータ理工学が専門の会津大学等によって主催・運営されるパソコン甲子園は、高校生と高等専門学校生(3年生まで)がプログラミング能力をはじめ、情報処理技術におけるアイデアや表現力等を競い合い、その経験を通して知識と技術を高めるICT分野の全国大会です。
全国の高校生、高等専門学校生等が、情報処理技術における優れたアイデアと表現力、プログラミング能力等を競い合うことにより、生徒自身のスキルアップを図るとともに、情報化社会を支える人材の裾野を広げることを目的としています。
引用:パソコン甲子園公式
パソコン甲子園には、テーマに沿ったAndroidアプリを企画・開発・発表する「モバイル部門」と、競プロ形式で問題を解く「プログラミング部門」があります。(2024と2025で私が参加してきたのはモバイル部門)
テーマ
2025大会モバイル部門のテーマは、「地域創生~アプリでささえるまち・ひと・しごと」。このテーマを軸に、"夢のあるアプリケーション"を企画・開発するのが目標でした
スケジュール
- 4月ごろ...チーム決め
- 5月ごろ...テーマ発表
- ~7/1...アイデア出し&企画書作成・提出
- 7月末...予選結果発表
- ~10/3...アプリ開発
- ~11/8...アプリ改善&発表準備
- 11/8・9...本選
詳しくは公式サイトを参考にしてください(パソコン甲子園公式サイト)。この後時系列順に振り返っていきます...
アイデア出し
先述したテーマに沿ってアイデアを出していきます。一人で考えることもあれば、チームメンバーと話し合って決めることもあり、とにかく地域・地方に存在する課題を出していきました。
...が、あんまり明確なアイデアが出て来ない状態がしばらく続きました。自分たちが「いいじゃん!」と思っていても、先生のところに持っていくと課題点が山ほど出てくるんですね..
そこで、こう思ったんです。「私は課題に対しての知識が浅すぎるのではないか」と。チームメンバーが出してくる話題も、半分近くは知らないものだったり、知っているようで実はあんまり知らないものだったりして、これではいけないと何とか改善しようとします。しかし、今から調べても時間がない、時間がなければあまり深いところまで知ることができない、そうなると平凡なアイデアしか出て来ない...
困りましたね...このままでは受賞どころか本選出場もできなくなってしまいます
「ならば、私のよく知っている分野に持ち込んで勝負しよう」そう思いました。私に関係がある分野といえば、先述した「発達障害・精神疾患」について。発達障害・精神疾患に関連する地方の課題といえば、地方の専門スタッフの不足が挙げられるので、そことつなげて何とか苦しんでいる人たちを楽にできるようなアイデアを出そうとしました。
そこでできたのが今回のアイデアです。
アイデア(概要)の紹介
発達障害や精神疾患を抱える人らは、自分の気持ちや苦痛を「伝えることができない」という課題を抱えています。そして、この課題に関係して以下の課題が絡んでおり、結果として当事者やその周りの人を苦しめています。
- 気持ちが伝わらないことにより、周囲の人(親や先生など)はどう接すればよいか分からない
- 地方専門スタッフが不足していることによって、適切な支援を行いにくくなっている
- 具体的には、定期的な面談がしずらい→体調変化に気づきにくく、早期支援が難しくなる
この課題に対して、私たちは以下の点から課題の緩和・解決を図りました。
- 気持ちや苦痛を伝える際の心理的負担を下げ、周囲の理解を得やすくする
- これによって、周りの人も接しやすくなる
- 本人の体調から、「接し方のアドバイス」を作成し提示することによって、より接しやすくなる
- 日々の体調をアプリが記録することによって、専門スタッフが体調の変化に気づきやすくする
これらの解決策を実現したのが、私たちの開発した「ひだまり」です。
体調が伝わるまでの流れとしては、
- 利用する子供が自身の体調に関する4択質問にいくつか答える
- 先生や親といった大人たちが子供の状態を確認する
といった感じ。
~企画書提出
アイデア
良い感じのアイデアが出てきました。といっても、最初の段階はこんなに課題点や解決策について整理できてなかったので、チームメンバーと認識のすり合わせや言語化を行っていきました。また、このアプリの核となる部分は、「伝える際の心理的負担を下げること」であり、UI/UXもそれに特化したものにする必要があるため、いろいろと工夫を凝らしていきました。
主な工夫点は以下の通り。
- 毎日の回答を強要せず、言わなければならないというプレッシャーを解消
- ロボットのキャラクターで、対人不安を抱えている人でも回答しやすく
- 数十秒で回答できる四択の質問により、記述式よりも回答時の負担を軽く
とにかく負担を軽く。送りやすく。かつ大人たちにとっても使いやすいようにする必要がありますから、いろいろと工夫を凝らしていきました。
技術選定
企画当時はあんまり難しい仕組みにはならないだろうと思い、
- flutter
- firebase関係のサービス(通知飛ばしたり、ユーザー認証したりとか)
この二つを中心に作って行こうか、となりました。flutterを選んだのは、クロスプラットフォームに対応していて将来的に使ってもらいやすくなるからというのと、ある程度開発に慣れているからです。
開発
無事予選を突破できたので、開発を進めていくことになりました。 UI実装や軽い機能については私ともう一人のメンバー、バックエンドはつよつよのメンバーが担当することになりました。加えて、私は当事者として苦しんできた唯一のメンバーなので、先述したようなUI/UXの改善といった部分を担当していました。ここからは時系列順にその流れを見ていきます。
8月
開発スタート!...したかったのですが、全員動けない状態にあったためあんまり開発が進みませんでした
9月
開発期間は残り一か月、8月にあまり動けなかった分ここで巻き返さないといけないため、どんどん開発を進めていくことになります
しかし、ここで企画書時点での設計が甘いことに気づきます。
- どうやって本人の体調に合わせた質問を作るのか
- どうやって接し方のヒントを作るのか
といった点を中心に、いくつか問題点が出てきました。最初は本や経験から得た知識を使って場合分けしたりするつもりだったのですが、なかなかそれでは難しいことに気づいたんですね。そこで、思い切ってAIに頼ることとなりました。
バックエンドの実装は、技術力の高いチームメンバーに一任しました。彼が選定したモダンな構成は以下の通りです。
- デプロイ
- Cloudflare Workers
- フレームワーク
- Hono
- LLM管理
- Mastra
- AI SDK
- 外部API
- OpenAI GPT-5-mini, GPT-4o-mini, GPT-4.1
これらの技術を使うことになりました。
プレゼン練習、アプリ改善
プレゼン練習
私が当事者として話すのが一番説得力があるため、プレゼン作成などは私が担当することになりました。さっそく作成して先生や先輩に発表して見せたところ、
- 説得力がない
- プレゼンではなく説明されている感じがする
- もっと実体験やカウンセラーさんの意見などを載せた方がいい
といったアドバイスをいただき、修正を重ねていきました。
アプリ改善
AIの調整やUIの改善などを主に進めていきました。あんまり事前チェックからは変えられないので、細かいところだけ修正していく感じです。実際にアプリを当事者として使ってみたり、カウンセラーさんのところに持って行ってアドバイスをもらったりして、修正の方向性を決めていきました。
前半はここまで
当日までの流れをざっと書いてみました。当日の様子や、反省点などは後半に書きましたので、そちらも見ていただけますと幸いです。