💀

プログラミングの学習で「やってはいけないこと」

2022/05/25に公開

こんにちは!私は3月からエンジニアとして働いている新人のエンジニア(28歳)です。
私は、大学卒業から小学校の教員を6年間勤め、エンジニアへ転職しました。
今は受託開発の会社で日々勉強しながら楽しく仕事をさせていただいてます。

全5回のアジェンダはこちら!
よかったら他の記事も読んでみてください。

未経験の私がエンジニアへ転職するまで

  1. 小学校教諭からエンジニアになった理由
  2. 学習編1 ~プログラミングって何から始めたらいいの?~
  3. 学習編2 ~プログラミングの学習で「やってはいけないこと」~
  4. 転職活動編 ~内定をもらうために必要なことは?~
  5. 入社編 ~実務についていくために必要なこと~

それでは早速今回の本題に参りたいと思います。

前回はプログラミング学習の始め方について記事を書きました。詳しくは前回の記事学習編1 ~プログラミングって何から始めたらいいの?~をご参照ください。

今回は、プログラミングの学習においてついついやってしまいがちな「やってはいけないこと」をお伝えしようと思います!

目次

1. ノートに一生懸命メモを取る

2. 意味を深く理解せずテキストを進める

3. コード丸パクリで「なんか知らんけど動いた」

1. ノートに一生懸命メモを取る

最初に気合を入れて「たくさん覚えてやる!」と意気込む気持ちは分かりますが、これはとても非効率ですし、メモを取ったところでどうせ忘れるのでお勧めしません。
僕もプログラミングスクールを受講し始めたころはノートを一冊買ってなんでもそこに書き込んでいました(元教員っぽいでしょ)。
仕組みについて簡単に図にまとめるとかだったらまだいいのですが、バカ真面目な僕はコードまで書いていました。

一番効率が良いと思う私のおすすめの記録方法は「Qiitaの記事にエラーの内容とその解決方法を書く」です。関数や文法なんてググればすぐに出てきますが、自分のエラーの体験は自分にしか分かりません。記事に書くということは全世界に公開することになるのでその分必死さが増します。「記事にするなんてめんどくさいよ!」と思う方は、マークダウン記法が使えるノートアプリなどを利用するとよいでしょう。

2. 意味を深く理解せずテキストを進める

意味を理解せずにテキストを読み進めてしまうと返って二度手間になってしまいます。僕は二度手間を経験しました(笑)。
プログラミング、敷いてはITについて勉強していると、難しい単語がうじゃうじゃ出てきます。そんな時に「なんとなく」理解しているつもりでいると、段々分からなくなってしまい、結果としてテキストをもう一周してしまうことになります。
分からない単語が出てきたら、焦らずに何度も理解できるまでその箇所を読み返し、ググってイメージをつかみましょう。ここでの「理解している」の定義は、人に説明できることです。
ちなみに私は何となくスクールのテキストを読み進め、ポートフォリオを作っていて自分の理解度の低さに気づき、Railsチュートリアルを1から走りました。(かなりしんどかった。。)

3. コード丸パクリで「なんか知らんけど動いた」

これは初心者が一番やってしまいがちだと思います。エラーが出てきてそのコードの仕組みを理解せず、思考停止で丸写し。エディターに貼り付けてエラーが解消。
これではエラーを解決していても成長の度合いは低いです。動いた後に考えなくてはならないことは、「何が原因だったのか」「なぜ動いたのか」を明確に言葉にできるようにすることです。
もちろん私も当初はコピペマンでした(笑)何がいけなかったかというと、1行ずつきちんとコードを読んでいなかったからです。
わたしはpaizaというプログラミング学習サービスを利用したことでコードを書くことに慣れ、少しずつコードの意味を理解してコードを読めるようになりました。
入社して感じたことは、コードを書く時間よりもコードを読む時間の方が圧倒的に長いことです。特に僕の場合は客先に常駐するような形で他の人が書いたコードを理解して、どのように動いているのかを把握しないと修正作業はできません。
過去の自分にものを言えるのであれば「もっとコードを読め!」と言いたいです(今でも言われてますが)。
とにかく「どうして動くようになったのか」をコードを1行ずつ読んで理解することが重要です。そして1のパートでも触れましたが、その内容を記事やノートアプリに記していくと効果は倍増するでしょう。

まとめ

今回お伝えしたプログラミングの学習で「やってはいけないこと」は以下の3つです。

  1. ノートに一生懸命メモを取る
  2. 意味を深く理解せずテキストを進める
  3. コード丸パクリで「なんか知らんけど動いた」

現在の業務では、自分が修正した後に先輩がコードレビューをしてくれるのですが、その際に「この関数は何してるの?」「この変数には何が入っているの?」と聞かれ、説明できなければいけません。なぜかというと、説明できないコードはバグを生む可能性が高いからです。
 転職を見据えて学習をするのであれば、常に「誰かに説明すること」を心がけて学習するとよいでしょう。僕もまだまだ説明に詰まることがあるので偉そうなことは言えませんが、お互い頑張りましょう!

Discussion