🐾

ハッカソンをしていたらいつの間にかコーディング以外のことが身についた

2022/09/02に公開

はじめに

2020年に初めてハッカソンに参加して、今までに学内・学外合わせて一応5回ハッカソンに参加した情報科 学部4年生の備忘録です。
私の情報系の能力はほとんどハッカソンで身についたと言っても過言ではない!ということで、一回整理してみようと書き始めました。
自分の脳ミソ整理用なので散文にはなりますがご了承くださいな。

ボコボコにされた第1回

時期:大学1年3月
期間:3日
チーム:寄せ集め

文字通りボコボコにされました。
大学1年の終わりに初めて参加したハッカソンでしたが、コードすら書けないのにそもそも企画の時点でボッコボコ。

理由は「既存のものを使えばいいじゃない」という部分。
私たちのチームが提案した企画は「付箋型のメモが使えるアプリ」(みたいな感じだったはず、今考えてもふわっとしてる)だったのですが、事前の調査を全く行っていませんでした。
多分理由を聞かれたら「作りたいから〜!」としか言えないような企画。

この時点でボコボコでした。
ペルソナは? どんな人が使うの?
今考えれば「そりゃあそう」となるのですが、これが当時は衝撃的でした。
それまでビジネスなんて触れたことがなかったわけですが、相手は現役エンジニア。
これが考えられていないプロダクトなんかあるはずないんですよね。

そこから企画を練り直してなんとなく固まったものの(全部で3日しかないのに2日目の朝に企画が固まる)もちろん時間不足で完成には漕ぎ着けず。
完成どころか多分1割もできず自分の力不足を痛感しました。

ハッカソンやった!という気にちょっとなった第2回

時期:大学2年冬
期間:3日
チーム:いつメン4人組

前回なんとなく固まった企画を固め直して挑んだ第2回。(大学2年生冬)
メンバーは同級生のいつメンたちでした。

詳しくはこちらをご覧ください↓
https://zenn.dev/numakei/articles/a52b97bd617b95496ac2

この回の1番の収穫は「企画プレゼン」「アセット作成」「ユーザテスト」などなど、コーディング以外の部分を知れたことかなと思います。

企画プレゼン

この回は私が前回出した案を実現させたい!と参加したハッカソンでした。
そのため、もちろん企画やプレゼンの部分を担当したのは私です。

実はこのハッカソンは企画プレゼンをして、それが通らないとそもそも作らせてもらえない!というような感じでして……。
前回ボコボコにされた原因である企画をプレゼンする。
そうなんですよ。責任重大なんですよ。
正直、めちゃくちゃ怖かったのを覚えてます。

この時作ったのは録画予約のリマインドをしてくれるアプリ。
私がオタクしてる時に困ってるから作って欲しい。
と、かなりニッチなニーズに向けて作ったアプリです。

………だから通ったのかな、と未だに思いますね。

当事者だからこそわかる悩みをひとつずつ噛み砕いてプレゼンする、という機会はこれが初めてだったと思います。
今何に困っているのか、それが困らなくなると何が嬉しいのか、どうすれば困らなくなるのか。
それの解決策としてアプリを作って、シンプルにすごいなと思った記憶があります。
あんな困ってたのに、アプリを作れば解決するんだとなんかマンガのセリフみたいなことを思いました。

結果、すぐに合格?をもらいアプリ制作に取り組むことができました。

デザイン・アセット作成

第1回の時はそもそもアセットなんて単語すら知りませんでした。
「Webデザイン」という概念も持っていませんでした。

でも他のグループ(多分参加していた教員)が完成させたアプリを見て、確かにアイコンとかOGP(当時言葉は知らなかった)とかいるなぁ…と初めて気づいたわけです。

で、その反省を生かして、今度は作ってやろうと自分でアセットを作り始めました。

他のメンバー(1番コードかけるMちゃん)にコーディングを丸投げして。

ここからデザイン担当への道を突っ走り始めます。

アイコンもOGPも完成しましたが、正直Webデザインは全然ダメでした。
当時はちょっとできたかも!なんて思っていたのですが、今見たらまぁヒドいもんです。

使いづらい、見づらいのオンパレード。
ユーザフレンドリーとは。

ユーザテスト、最終プレゼンテーション

ユーザテストという概念も第1回で初めて知りました。こう考えると第1回で色々学んでますね。

ユーザテスト、と言っても数人へのアンケートです。
確か内容も「これ、困ってますか?」「使ってみてどうですか?」という感じ。

ただ、やっているのとやっていないのでは段違いでした。
最後の発表で「自分たちだけじゃない」と根拠づけるデータがあるのはかなり大きかったと思います。
そりゃあ「みんな困ってるんです!」と言えた方がいいに決まってます。

その結果をまとめてプレゼンで発表しました。
実はこの時、プレゼン資料をエンジニアの方に見せてフィードバックをもらったのですが、これは今も役に立っている気がします。
具体的には「あとどれくらいページが残っているかわかる方がいい」とか「色の使い方」とか。

当時、プレゼンは高校までの授業でちょっとやったことあるかも…くらいのレベルにしかできず(今もできているかは分かりませんが)、資料の作り方もかなり下手くそでした。
そこを修正していただけたのはかなりありがたかったなと思います。

結果

こ〜〜んな感じで、第2回ではコーディング以外にどういう工程があるのかということを一通り実践することができました。
この経験が今後活きてきます…頑張れその時の私……。

無双した第3回

時期:大学3年前期
期間:5ヶ月
チーム:いつメン4人組

天狗になってますね。
私も思います。天狗じゃね?と。

ただ、本当に無双だったんですよねこの時。

第3回は授業内でのハッカソンでした。
「既存アプリでは解決できない」みたいなことが条件だったと思います。こちらも新規性重視。
3年の前期まるまる使ったハッカソンです。

「授業内でハッカソンするらしい」「え、じゃあ前回のメンバーで授業とろうよ」

と、また前回のメンバーでチャレンジしました。
前回使った技術を使って作る、かつ前回の反省もあり、少しずつではありますがコーディングを手伝い始めたメンバーたち。

(……白状しますが、多分7〜8割1番書けるMちゃんが書きました。)

私の役割は以前同様、企画・デザイン・アセット・ユーザテスト・プレゼン。
ただ前回より少し進化していました。
その進化した点をちょこちょこと書いていきたいと思います。

https://donuts-lp.netlify.app/

企画

我々としては進化した部分はほとんどありませんでした。
企画も、中間発表も。

ただ、これが同級生の中だとめちゃくちゃ進んでいると気づいたのがこの時です。

「ペルソナを立てろ」「目的と解決法を提示しろ」
あと実は「デモを出せ!」が担当教員の口癖だったり。

これを中間発表時にすべて提示できていたのは私たちのチームだけでした。
これはすごくすごく自信になりました。
きちんとタメになっていたな、と。

プロダクトを開発する上で基礎となる考え方を教えてもらっていたなぁと実感した第3回です。
デモ大事。

UI/UX

初めてユーザフレンドリーを意識しました。(堂々と言うことじゃない)

正直、第2回はそんなことまで気にしてる余裕がなかったんですね?
だってそもそも完成するかもわかんなかったから。

でも今回は長い。とにかく長い。
前期まるまるハッカソンなんです。長い。

デザインもちゃんとやってないと使いづらくてしゃあないな、と前回のハッカソンで気づいた筆者はやっとデザインにまともに興味を持ち始めます。

「ここはこれくらい余白あった方が見やすいよね」とか「ここにボタンつけたいね」とか。
使いやすいプロダクトを意識して作り始めたのはこの時でした。

デザイン的1番大きな成長はウォークスルーを作ったこと。
確か第2回でウォークスルーを作ったチームがあって褒められてたのを誰かが覚えてたんですよね…。

これは使いやすさに直結する!と画像を作って文言を考えました。

ユーザテスト

第2回に引き続きオタク向けだったこのアプリ。
これはオタクにアンケートを取らねば!とかなり早い段階でプロダクトを(ひとまず)完成させてユーザテストを始めました。
この辺りのスケジュール感がわかっていたのも前回までの賜物ですね。

このアンケートが90人近く集まりまして、かなり有益な意見も得られました。
この結果をまたアプリに反映させて、修正して…。

これが最終発表の時に大きな根拠になりました。

最終プレゼン

念には念をというのでしょうか。
想定Q&Aを作りました。

使用動画 ←New!!

どのように使うのか、という動画を作れというミッションが課されました。
初めてのミッションです。

実は映像編集が趣味なもので、ガッツリ作りました。
これを作る時に思ったのが「かなり使いやすいアプリなのでは」。

動画にしたときに説明するのが自分で思っていた以上に簡単だったんですよね。
デザインはなんとなく成功だったのかなぁ……。

結果

第1回と第2回でボコボコにされた甲斐がありました。
結果は1位。ハッカソンで初めての1位です、わ〜い!

ついに企画がなくなった第4回

時期:大学3年夏休み
期間:2週間
チーム:いつメン4人組

ネタ切れしました。

こちらも授業内ハッカソン。第3回が終わった直後の夏休み(3年)です。
期間は2週間。前回よりはかなりハッカソンっぽい。

ただこの時は企画がなかなか決まらず、アプリ制作への着手がかなり遅れた気がします…。
結果、作ったのはプロフィール作成アプリ。前回よりかなり根拠が弱い。
https://sharp-lp.netlify.app/
今見たらLPにOGP入れてないですね、反省。

めちゃくちゃ成長した部分は……思い当たる節がない。
前回よりコードに手を入れたのと、LP作ったくらいですね。

あとは前回の復習。
プロダクトの作り方を1から総復習していくような感覚でした。

修正した第5回

時期:大学3年夏休み
期間:多分2週間くらい
チーム:いつメン4人組

第5回は技育展です。
既存のプロダクトでも良いということで、第3回で作ったDonutsを持って意気揚々と向かって行きました。
この時の1番の成果はエンジニアの方に見ていただいてアドバイスをいただけたこと。
特にUI/UXの面ではかなりアドバイスをいただきました。

例えば

「何を入力すればいいかわからないからプレースホルダーに具体名を入れてみてもいい」
「空白の時間があるとストレス」
「リストがnullの時は『何もありません』と表示する」

急に具体的。
これはかなり勉強になりました。

その中でも1番衝撃的だったのは




「押しても意味がないボタンは表示しない」



衝撃でした。衝撃。びっくり。
でもそりゃそう

そりゃいらないんですよね。表示されてると逆に混乱を招くんですよ。
「入力されないと起動しないボタンにした方がいいよ〜」と言われたりしました。

新しいプロダクトを作ったわけではないのでハッカソン!という感じではありませんでしたが、かなり勉強になった期間でした。

現在

コーディングに自信はない

私は今まで「コーディングが苦手です」といろんな人に言い続けてきています。
実は苦手じゃないのかもしれませんが、ずっと苦手意識があります。なんなら今も。
それを特に直そうともしてきませんでした。

なぜかというとエンジニアになりたい!という希望があまりなかったから。
大学では情報科学を勉強しているけれど、エンジニアになりたいとは思っていませんでした。

デザインの人

あとはUI/UXやデザインが好きだったから。
ハッカソンではそういう部分を担当することが多かったので、どうしてもそちらに意識が向きがちになっていました。
「デザインやってみない?」と担当教員の先生から案件をいただいて勉強させていただくことがあったり。(実はこれでユーザフレンドリーにさらに力を入れたのですがそれはまた追々)
ゼミ内でもコード書かない人、デザインしてる人、みたいなポジション。
いっつもJSの表面とCSS書いてる人。

ハッカソンやっといてよかった

ただ、やっぱりエンジニアになろうとしてます。

理由はまぁ色々。

そんな私が今思うのは「ハッカソンやっといてよかった」。

1番の理由はサービスを提供する人間として必要な基礎を叩き込んでもらえたから
多分コーディングにハマっていたら私はこんなに総合的な知識を身につけていなかっただろうな、と思います。

コーディングはこれからでも勉強できるけど、この経験や基礎は普通ではなかなか得られるものじゃなかったな、と。

ハッカソンに出てなかったら就活の時期になって「サービス作る 手順」とか「アセット」とかで検索かけてた。危ない。

エンジニアの方と話すこともなかった。
プロダクトを誰が使うのか考えることもなかった。
デモが大事だって知ることもなかった。

コーディングもMちゃんの素晴らしい指導のもとなんとなく書けるっちゃ書けるようになった。

だからみんな、コード書けなくてもハッカソン出ようね。
多分私より書けるよ。

Discussion