見出し画像

新人のうちに身に付けたいプログラマーのマインドセット

プログラマーを目指す人、プログラマーになりたての人が1年目で身に付けておきたいマインドセット(考え方)についての話です。
個人的に新人のうちに身に付けてほしいと思うものは以下の内容です。


エラーの内容をよく読む

プログラミングに関する作業をしていると、作業の途中で必ずエラーに遭遇することでしょう。
プログラミングを始めたばかりのころは、エラーが出るとそれだけで拒絶反応が出たり、どうしていいか分からず途方に暮れてしまう事があります。
エラーが出た時に大事なことは、エラーの内容をよく読むことです。
内容もよく読まずにエラーが出た段階で思考が停止してしまう人がいますが、まずは冷静になってエラーを確認することが大事です。
エラーには必ず原因があり、エラーが出た時はその原因やエラーの種類がメッセージとして出力されていることが多いです。
エラーを解決するためには、その内容をよく読み、理解することが一番の近道です。
なのでエラーが出ても慌てずにエラーの内容をよく読むようにしましょう。

プログラミングでのエラーのメッセージは英語の場合が多いです。
英語が苦手な人にとっては難しく感じるかもしれませんが、今はインターネットの翻訳機能の精度も上がってきているので、メッセージをそのまま翻訳してもある程度意味が分かる内容に翻訳されます。
なので英語でメッセージの内容が分からない場合でも、一度翻訳して内容を確認してみましょう。
内容から推測して解決策を考える習慣をつけましょう。

翻訳しても内容が分からない場合は、エラーメッセージでそのままネットで検索してみましょう。
同じエラーを経験したことのある人が解決策をネットにアップしていれば、すぐに解決策が見つかるかもしれません。
全く同じ状況でないにしても、似たような状況を経験している人がいるならば、そこから推測して自分の状況での解決策が見つかるかもしれません。

エラーが出た時にはまずエラーの内容をよく読んで原因や解決策を考える。
そのうえで分からなければ調べながら試行錯誤する。
これを繰り返しているうちにプログラミング力が上がってくるはずです。

エラーが出たらラッキーだと思う

先ほどの話にも関連する話ですが、エラーが出ると、そこで一度作業が止まってしまうので、テンションが下がってしまう人が多いです。
ですがそこでため息をついたところでエラーは解決しません。
エラーが出た時にはむしろ前向きに考えることが大事です。
エラーが出た時に、自力で解決できた時は、知識が増えますし、問題解決力も向上します。
また、ネットで情報が少ない問題を解決できた時には、周りで同じ状況で困っている人を助けてあげることができます。

自分で試行錯誤してエラーを解決した経験が少ない人は、いざ大事な場面でエラーが出た時に素早く解決することができません。
普段から自力で多く問題を解決している人は、大事な場面でトラブルが発生しても、冷静に対処できる可能性が高いでしょう。
そういう意味で、エラーが出た時には自分の知識や問題解決力を上げるためのチャンスだととらえることもできます。
エラーをチャンスだととらえることができると、エラーの経験を自分の成長につなげることができるでしょう。

エラーが出た時にはその現象をマイナスにとらえてしまいがちですが、あえてプラスにとらえてラッキーだと思うことが、プログラミングのスキルアップの鍵だと考えています。

作業ログを残す

せっかく苦労して自力でエラーを解決できたとしても、どうやって解決したかをメモとして残しておかないと、いずれ忘れてしまう可能性が高いです。
時間がたった後、同じ問題が発生したときに、どうやって解決したのか、そのメモが残っていると解決が速くなります。
エラーが出た時は
・いつ行った作業か
・何をしようとしてエラーが出たのか
・解決するためにどんな作業を試したのか
・どのサイトを参考にしたか
・一連の作業の中で新しく学んだこと、気づいたことは何か

これらをメモとして残しておくと後々時間がたっても役に立ちます。

また、エラーが出る出ないに関わらず、自分が作業している内容を随時ログを取る癖をつけておく事は自分の成長と仕事の効率化という面で非常に有効です。
わざわざメモを残していく作業は、一見時間がかかって面倒に感じますが、先ほど述べたように、エラーの解決が速くなる場合もありますし、自分が行っていた作業やそこから学んだことを簡潔にメモにまとめる癖をつけることで、要約力も鍛えられます。

どうやってメモを残すかについては、テキストエディタでマークダウン記法によるメモがオススメです。
マークダウン記法は特に新人のうちに身に付けておくと、議事録を書く際やメモをまとめる場合などにも役に立つので特におすすめです。

ツールがないか探してみる

プログラマー(エンジニア)の大きな仕事の一つは、人が手動でやると面倒な作業をIT技術によって自動化することです。
つまり、面倒と感じる作業をどうやって効率化することができるかを考えることが大きな仕事の一つです。
そして、作業の効率化を人に提案できるようになるためには、自分自身の作業も効率化する発想を持っていなければいけません。
そのためには、ショートカットキーを覚えるなどしてPCでの作業そのものを速くするのはもちろんのこと、面倒な作業を解決してくれるツールやサービスがないかどうかを探すことが大事です。

ツールやサービスを探して試してみることで、自分の作業を効率化することができ、さらには他の人に対してどうやって作業を効率化できるかどうかの提案もしやすくなり、プログラマーとして高い評価を得やすくなります。

ツールを探す習慣を身に付けるには、普段の作業の中で「面倒」と感じるものがないか探すことが大事です。一般にめんどくさがりというとマイナスのイメージがあるかもしれませんが、エンジニアにとっては、めんどくさいと感じる感性は非常に重要です。

学び続ける

とあるセミナーに参加したときにすごく心に響いた言葉があります。
それは、「エンジニアがエンジニアでなくなるのは、学ぶことをやめた時」という言葉です。
新人のうちは、仕事をしていても分からないことだらけなので、自然と学びが必要になります。
しかし、ある程度知識が身に付き、仕事に慣れてくると、新しいことを学び続けていかなくても、何となく仕事はこなせるようになります。
ですが、そこで満足してしまうと、世の中から求められるプログラマー(エンジニア)にはなれません。

最低限食べていけるだけの職業プログラマーとして生きていくのであれば、常に新しいことを学び続けなくてもいいかもしれませんが、
現場の最前線で働き続けたいのであれば、どれだけの経験年数があろうと、新しい事を学び続ける姿勢が必要です。
本や雑誌を読んだり、IT関連の記事をチェックして流行りの技術やツールを探す。
また、自分が所属する企業とは別のコミュニティに属して、いろんな人からの影響を受ける、など新人のうちから学習し続ける習慣を身に付けておきたいところです。

プログラミングを目的にしない

プログラミングは、問題を解決するための手段にすぎません。
エンジニアとして働いていくにあたっては、プログラミングの知識が豊富にあって高い技術を持っていたとしても、誰かにとって価値をのあるものを提供できなければエンジニアとしては優秀とはいえません。
プログラミングは、その技術を使って誰かの役に立つための手段であり、それ自体が目的ではないと心得ておきましょう。

サポートいただくとめちゃくちゃ喜びます。素敵なコンテンツを発信できるように使わせていただきます。