🧑‍💻

プログラムが書けるようになるまで

2021/06/17に公開

IT 職は未経験だった私がエンジニアとして働きはじめてから思ったこと・感じたことはたくさんあります。そのなかでも特にプログラミング学習については、働きはじめる前と後では 180 度イメージが変わりました。今も一人前のエンジニアになるべく修行中の身ではありますが、プログラミング初学者で苦戦している人がいたら、少しでも参考になるのではないかと思い記事にしてみました。もしよかったら読んでみてください。

とにかくまず触ってみること

私はこれまでモノをつくった経験は小中学生時代の図画工作とかそういうレベルのもので、ここ 10 年ほどは手を動かしてモノをつくることなどほとんどありませんでした。大学生や社会人になってからパワポなどの資料作成はしましたが、モノづくりと言われるプログラミングはこれまでの経験とはまったくの別物でした。
そんな私は、いざプログラムを書こうとすると何をどう書けば良いのかわからず、まずは知識として徹底的に調べることしかできませんでした。そしてやっと手をつけ始めたと思うと、想定していなかった知らないことが出てきたり、一度見てわかったつもりだったのに手がまったく動かなかったりとそういうことばかりでした。

結果的に自分にとってどうすればよかったのか。新しいスマホを触るときやゲームをはじめるときと同じで、なんとなく触ってみることが大切でした。まずはちょっとした箇所だけでも良いのでプログラミングしてみることからはじめるべきでした。少しでも触れてみると、触れる前には想像できない動きや知らない用語を知ることができます。それらをひとつずつ潰していくことで技術の理解が芋づる式に広がっていきます。また、触れてみるということは手を動かすことになるので体で覚えることにも繋がります。
今の私がなるべく意識しているのは、知識のインプットだけをして頭でわかったつもりにしておくのではなく、自分の手がプログラムを勝手に書いてくれるようになるぐらいの気持ちで、体に染み込ませるようにすることです。

プログラムを書くまでの過程

勉強は知識をつけるための行為に対して、プログラミングはモノ(プログラム)をつくるための行為です。プログラミングを勉強と同じように考えていたころは、どうやって「知識」をつけるのかに目がいっていました。例えば、React を使えるようになりたいとなったときに「React を知ること」を目標にしていました。しかし、それをいくら繰り返しても一向に React を使ったプログラムが書けるようにはなりませんでした。
結論から言うと「React で〇〇(モノ)をつくる」という目標にするべきでした。そうすれば、React を使ってなんとか試行錯誤を繰り返していくうちに、モノができあがるころには感覚的に React というものがどういうものか身についてくるようになっていました。

そうはいっても、何もわからない状態からモノをつくるまでの過程では何をどのようにしたら良いのか?という疑問が出てくると思います。私の場合はこんな感じでやっています。

  1. チュートリアルを書き写しながら解説を読んで理解を進める(チュートリアルの例: React Tutorial
  2. 処理中のデータの動きなどを含めてコードを理解するために、処理の至るところに console.log() などでデータを出力してみる
  3. 一部のコードを書き換えてみて、「思った結果になるのか」「実現したいことができているのか」を確認しながら追加実装してみる
  4. ゼロからなにか機能をつくってみる

もちろん何でもチュートリアルがあるわけではないので、そういう場合はネット記事などの解説(コードも書かれているもの)と公式ドキュメントなどを併用して上記の 1~4 を行うイメージです。

最後に

この記事では学習という言葉を使っていますが、今の私にとってはプログラミングは頭で「学習する」ものではなく手を使って「鍛える」「慣れる」ものだと意識を変えるようにしました。もしプログラミングは勉強と同じように頭で「学習する」ものだと思っていて、その結果、プログラミングに苦戦している人がいたら、一度参考にしていただけると嬉しいです。

Discussion