はじめに
フロント歴3ヶ月の僕が、技育CAMP名古屋キャラバンでGoに手を出して苦戦した話です。
今回の記事は「事前準備」→「キックオフ当日」→「開発期間」→「ハッカソン当日」の順で書きたいと思います。
大したことは書いてありませんが、初心者の失敗談を赤裸々に語っていますので温かい目で見ていただけるとありがたいです。
この記事の対象者
- プログラミング初心者
- ハッカソンに参加したいと思ってる人
- チーム開発してみたいと思ってる人
- 失敗談を聞きたい人
事前準備
まず事前準備として以下のものを学習しました
- Go言語
- MySQL
- Docker Desktop
友達との参加だったので「Go使ってDB叩ければなんでもいいよね」ぐらいのノリで技術選定しました。この甘い考えが後の僕たちを苦しめることになります、、、
主に、ネットの記事を見ながら学習しました。
キックオフ当日
約1か月ほど経過して、いよいよキックオフ当日です。
僕たちのチームでは、フロントとバックで分けて開発する方法にしました。
僕はフロントとバックの中継ぎを担当しました。
ここで問題発生。なんとバックエンド担当と学習していたサイトが違いました。
開発環境も大きく違い、僕の浅い知識ではほとんどわかりませんでした。
一気に雲行きが怪しくなりました、、、
開発期間
頼りになるチームメイトに環境構築は任せて、自分はせこせこと中継ぎ準備を進めます。
フロントでたたく準備ができたところでバック担当から連絡が。ローカルサーバからたたけるとのこと。
早速エラーが出ました
どちらのエラーもリクエストを拒絶するエラーでした。
原因はバック側で生成したトークンがリクエストヘッダーに設定されてないからです。
「じゃあコメントアウトしよっ」
やってしまいました。バック側のトークン認証をコメントアウトしてしまいました。
「なんか動いたわ!」
認証が必要なくなったので動きます。しかしデプロイした環境ではそうはいきません。
幸いバック担当が異変に気付き、デプロイ前にコメントアウトを元に戻してくれていました。
いざ本番環境でたたくと最初のエラーが再び発生します。
そんなこんなであっという間にハッカソン当日になりました。
ハッカソン当日
当日のことを書くと長くなってしまうので箇条書きにします。
- トークン認証が必要だということを知る
- Cookieを使ってヘッダーを設定する方法を知る
- ヘッダーを設定しても受付ないリクエスト
- なぜかひとつ前のトークンを保存するCookie
- リクエスト送りすぎてサーバサイドから弾かれる(再起動で直った)
などなど今までのツケが回ってきたような量のエラーが降りかかりました。
結局エラーの解決も間に合わず不完全燃焼のままハッカソンは幕を閉じました。
反省点
今回の反省点は以下の通りです。
連絡はこまめに
どれだけ意識していても億劫になりがちな性格なので、今回のハッカソンで大切さを再認識しました。特に開発期間が短いハッカソンにおいては、積極的に取っていかないと最終調整でとても苦労することがわかりました。
自分の力を過信しないこと
僕の場合ですが「大抵のことは何とかなるやろ」の精神で生きています。しかし頭脳労働の場合、それは成立しないことがわかりました。なれないことは、見切り発車せず計画的に行いたいと思います。
なんかできたで片づけない
今思えばあり得ませんが、チーム開発でなんかできたは絶対にタブーですよね、、、
自分のコードは論理的に説明できるように、しっかりと学習します。本当に反省しています。
技術面の反省は山の様にあるので今後学習してく中で解決していきます。
あとがき
今回のハッカソンで、多くの失敗を体験して多くのことを学べました。この経験を糧に次の挑戦につなげたいと思います。
初心者の失敗談を最後まで読んでいただきありがとうございます。