――「またバグを直せなくて、同じ時間に会社に遅れそうだし、明日のデモも…」
そんな夜、泣きながらコードを書いたこと、ありますよね?
僕も最初の半年、ほぼ毎日それを繰り返していました。
プログラミングを始めて3ヶ月目、初めて本格的なタスクを任されました。
「ログイン画面のバグ修正」という簡単そうに聞こえる作業が、なんだかんだで1週間以上かかりました。
同じエラーを何十回も検索し、コピペしては消し、またコピペしては消し…
最終的に解決したのは、if の括弧が一つ多いというミスでした。
それに気づいた時、「あれ?これで全部終わったの?」という感情がよみがえりました。
嬉しかったけど、同時に「これが仕事の全てなのかな」という絶望感もよみがえりました。
失敗を「失敗」ではなく「データ」としてとらえるようになった日
最初のうち、僕は失敗を「自分の無能」だと思っていました。
バグを直せなくても、理解できなくても、すぐに「あたしダメかも」って自分を責めました。
でもある日、先輩に「君、こういう考え方あるといいね」って教えてもらったんです。
「失敗は悪いことじゃないよ。失敗から何を学ぶかが大事なんだ」。
それまで「失敗=自分の価値ダウン」って思考だったけど、
その言葉を聞いて、「失敗=学びのデータ」に切り替えるように心がけました。
たとえば、最近では「あのAPI呼び出しでよくハマるエラー」っていうのがあるんで、
自分のメモ帳(Notion)に「APIエラー対処法まとめ」ってページを作りました。
そこに「どんなエラーが出たか」「どう解決したか」「次に注意するポイントは?」って書いてます。
最初は「これって役に立つのかな」って思っていましたけど、
3ヶ月後には「あーこれ前にもあったな」って思えるようになりました。
それが「経験値」っていうのかなって思います。
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
最新ツール・トレンド情報をずんだもん×めたんが解説するYouTubeチャンネルを運営しています!
いいね、チャンネル登録してもらえると嬉しいです🙇♂️
ハジメル.dev: https://hajimeru-dev.vercel.app/
「ひとりで続けるのは難しい」「何から学べばいいか分からない」という方向けに、
プログラミングのマンツーマンレッスンサービス「ハジメル.dev」も運営しています。
未経験OK・オンライン完結・月額制/違約金なしなので、気軽に無料相談してみてください🙇♂️
海外テックニュースを追いたいけど、英語や情報量の多さで大変…という方向けに、
Hacker News の話題を日本語でサクッと追える「HackerNews 日本語まとめ & AI要約」
を個人開発しました!
技術トレンド収集に使ってもらえると嬉しいです🔥🙇♂️
→ HackerNews 日本語まとめ & AI要約: https://hn-matome-2ht.pages.dev/
「ニャンパイアサバイバー」というヴァンパイアサバイバーリスペクトのゲームを作成しました!
もしよろしければ遊んで頂けると嬉しいです😭
習い事教室の先生向けに、SNS 投稿・生徒募集・保護者通知の文章を AI で生成する Web サービス「おしらせAI」を個人開発しました。Next.js + Supabase + LLM で構成しており、無料で月 10 回まで試用できます。よければ触ってみてください。
→ おしらせAI: https://oshirase-ai.vercel.app/
言いたいことがうまく伝わらない…という方向けに、会話の言い方を添削する「伝え方ラボ」を開発中です。
場面を選んで自分の言葉で返すと、何が伝わっていないかの指摘と、そのまま使える言い換えが返ってきます。
ChatGPT に相談すると褒めから入って直すべきところが残りがちなので、指摘側に振り切りました。
現在は公開時にお知らせするメール登録のみ受付中です🙇♂️
→ 伝え方ラボ: https://tsutaekata-lab.pages.dev/
✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨✨
コードを書く前に、紙に書く習慣が変えたもの
僕が一番後悔しているのは、「コードを書き始める前に考えない」ってことです。
最初の頃は、「とりあえず書いてみよう」って思ってました。
それでも動くものができるまでには時間がかかりました。
でも「動く」と「理解している」は違うんですよね。
動いたからって「自分が何をしているか」わかっているわけじゃない。
ある日、先輩が「コードを書く前に、ロジックを紙に書いてみろ」って言いました。
最初は「面倒くさい」って思いました。
でもやってみると、「あ、ここでエラーが出そうだ」って気づけたり、
「この処理は不要じゃないか」って気づけたりしました。
それでからは、新しい機能を実装する前に、必ずメモ帳にロジックを書きます。
「入力 → 処理 → 出力」みたいに簡単に書くだけでいいです。
それだけで、実装時の迷いが減りました。
最近では、チームでも「ロジックを共有する時間」を設けることになりました。
「僕はこう考えた」「君はどう考えた?」って話し合う時間です。
最初は「恥ずかしい」って思っていましたけど、
意外にも「みんな同じように迷っているんだ」ってわかりました。
それで、相談するのが怖くなくなりました。
同じ失敗を繰り返さない「記録の力」
プログラミングって、同じような問題を何回も解決しないと覚えませんよね?
僕は最初、「前にも同じエラーを見たことあるけど…どうしたんだっけ?」ってことがよくありました。
それで、「失敗ノート」を始めました。
エラーメッセージ、解決方法、学びを書く簡単なノートです。
最初は「めんどくさい」って思いました。
でも、3ヶ月続けてみると「あーこれ前にもあった」って思えるようになりました。
そして、「前に解決した方法で解決できる」っていう自信がつきました。
それが「経験値」っていうのかなって思います。
最近では、チームでも「失敗ノート」を共有することになりました。
「僕がハマった問題と解決法」を週に一度シェアします。
最初は「恥ずかしい」って思いましたけど、
意外にも「みんな同じように迷っているんだ」ってわかりました。
それで、相談するのが怖くなくなりました。
成長の速度は人それぞれ。自分のペースを信じること
最初の頃、僕は「周りの人に比べて遅い」って思っていました。
同じエラーを繰り返す人、理解が遅い人、発言が少ない人…
でもある日、先輩に言われたんです。
「君は君のペースで成長してるよ。周りを気にしてないで、自分を信じてみろ」。
それまで「早く早く」って焦りがあったけど、
その言葉を聞いて、少し落ち着きました。
最近では、「1日1学習」ってルールを自分に課しています。
「今日は何を学んだか」を必ずメモします。
それが「知識の整理」っていうのかなって思います。
最初は「これって役に立つのかな」って思っていましたけど、
3ヶ月後には「あーこれ前にもあったな」って思えるようになりました。
まとめ
挫折や失敗は避けようがないものです。
でも、「それをどう受け止めるか」が成長の鍵だと思います。
僕は最初、失敗を「自分の無能」だと思っていました。
でも、失敗を「学びのデータ」としてとらえるようになって、
プログラミングが楽しくなりました。
同じ失敗を繰り返さない「記録の力」、
コードを書く前に「ロジックを考える習慣」、
そして「自分のペースを信じること」。
これらが、僕を立ち直らせてくれました。
もし今、プログラミングに挫折しそうな気がするなら、
まずは「自分を責めないこと」から始めてみてください。
そして、「学びを記録する習慣」をつけてみてください。
きっと、ある日「あーこれ前にもあったな」って思えるようになります。
その日まで、一緒に頑張っていきましょう。