業務でコーディングを行なっている時に何も考えなしに、とりあえずやってみるということ多くないですか?
実際に、私はこの一年間、「まずはコーディングをやってみる」ことをしていました。まずはやってみる精神でコーディングをやるのはいいのですが、少しわからないところが出てくると、調べ始めますよね。
調べ始めて、手が止まってくると、だんだんと頭がぼーっとしてきて、最終的には何が調べたいのかわからなくて、時間を潰してしまう。
一年前の僕はこんな感じでした。
このままだとフリーランスは愚か、エンジニアとしてやっていけずに、企業から切られてしまう。そう思ってなんとか自分の頭を働かせる方法を模索しました。
その結果、一番アナログな方法が自分にはあっていました。それが紙に今考えていることを書き出すことでした。
継続して毎日考えていることを紙に書き出していった結果、月単価60万円の案件に参画することができたのだと考えています。
今回は、僕が考える紙に書き出すことのメリット、そして、紙に書き出す時に注意すべき点を書いていきます。
Contents
なぜ紙に書き出すことが、思考し続けるのに最適か
そもそも、「考える」っていうのはどういうことなんだろうか?こんな疑問を持ったことはありませんか?
僕はこの「考える」というのをこれまでの人生でずっとやってこなかった人間です。というのも、そもそも、考えることをしなかったせいで、他人の意見に左右されやすかった。
僕が思う「考える」とは、自分の思っていることを言葉にして形作ることです。
「自分の思っていることを言葉にして形作る=考えを紙に書き出す」
実際にやってみるとわかりますが、考えを紙に書き出すことによって、自分ってこういうことがわかっていないのかというのを客観的にみることができるのです。
実際に私の周りのできるプログラマーの方々は、思考が止まりそうになった時に、紙に図を書いて思考を整理していましたし、説明するにも紙に書いて図示して解説を行なっていました。
ちなみに、手というのは第二の脳とも言われていて、動かし続けることで、脳が活性化すると言われています。
僕の場合は、とにかく継続して頭を働かせて答えを見つける必要があったので、思考を止めるわけにはいかなかったのです。だから、手を動かして思考が止まらないようにするために、紙に考えを書き出していました。
その甲斐もあって、以前よりは思考体力が付いてきた気がします。(当自分比)
紙に書き出したことに対して、「なぜ」と問いかける
エンジニアという職業を選ぶと常に思考が鍛えられるなと、将来的にもメリットのある職業だと常に思っています。
それはさておき、自分の思考を紙に書き出しただけでは、思考し続けることが難しいかもしれません。そんな時に役に立つのが、「なぜ」と問いかけることです。
なぜ問いかけることが必要になるのかというと、答えを見つけやすくするためだと思っています。
なぜなら、明確な仮説を立てることによって、Googleなどの検索サイトで、目的の情報をしっかりと調べることができるから。
自分の思考が明確になってない時に、なんとなく検索を初めてしまうと、何を調べているのかがわからなくなり、最終的には、思考停止状態になってしまう。
こういうことが私には結構起きていました。
自分の考えを紙に書き出して、それに対して「なぜ」と疑問を投げかけることによって、コーディングの時に無駄な時間を過ごすことが少なくなったような気がします。(当自分比)
紙に書き出したことが以前と同じでも気にしない
特に技術を調べていると、同じような処理を書くことになることも多いです。HTMLやCSSとかだと、同じようなデザインをコーディングすると、marginやpaddingを使うことが多いです。
しかし、コーディングを初めて間もない人が一回でコーディングできるようになったり、一発で知識を頭に入れるなんてことは、天才や、記憶のコツを掴んだ人ぐらいです。
僕みたいな凡人は何回も何回も繰り返しやらないと覚えないですし、同じようなコーディングでハマることも多々あります(単に学習能力がないだけ・・・?)
でも、最初に言いましたが、人間は忘れる動物なのです。何回も同じことを考えて紙に書き出すことによって、自分の考えを客観的に見れる。
もし、自分の考えを変えたいと思った時にどこを直していけばいいかわかってくる。明確に考えを可視化していくことが、まずはやるべきことだと考えます。
まとめ
まだ勉強を始めたばかりの人や初めて現場に入り始めた人は、パソコンの前に座って考え続けるなんてことが、やってこなかったことなので、慣れないうちはきついかもしれません。
しかし、エンジニアは考え続けて、開発ができるようになり、成果物をちゃんと企業に収めることができれば、収入がかなり上がる職業です。
ぜひ諦めないで続けていってほしいです。