February 16, 2021
プログラミングをはじめたはいいけど、すでに心が折れ始めている人。もしくは折れた人。でも、心の奥底で諦めきれないのではないでしょうか?プログラミングに挫折する理由は実は超単純です。そしてどう対処するか考えていきましょう。
プログラミング歴15年の現役プログラマー。現在は都内のIT企業でソフトウェアの開発を行っております。
答えは単純で、問題解決に慣れていないからです。
プログラミングとは、一つのやりたいことに対し、答えが複数あります。しかも、その答えが教科書の後ろに乗っているわけではありません。つまり、自分自身の力でその答えに近づく必要があります。
そして、一般的にそれを”問題解決能力”もしくは”課題解決能力”と呼びます。
例えば、とある文字列が特定のパターンに一致するのか、しないのか判断するにはどうしたらよいしょうか。パターンが単純なうちはよいですが、複雑になってくるとお手上げになる人もいると思います。学校であれば先生が教えてくれたでしょう。しかし、社会人になるとそうはいきません。自分自身で答えを探さなくてはいけません。
もしかしたら読者の中には比較的学校の成績が良かった人もいるかもしれませんね。しかし、問題解決能力は学校の勉強では測れません。それが高学歴者が必ずしも社会に出てから成功するわけではない理由の一つと筆者は考えています。また、逆も然りです。
プログラミングが辛い理由は、ズバリ、問題と向き合うことに慣れていないからです。
これも答えは単純です。まずは、問題にとにかく慣れろです。
問題にぶちあったたら、修行の時間だと思ってください。私なら問題にぶちあたっとき、以下を試します。
長い時だと、一つの問題を解決するのに2週間くらいかかったときあります。その問題はグーグルさんも知らない問題ですので、本当に自力で見つける必要がありました。エンジニアやってるとそんなことも起こります。
問題解決能力を向上させるポイントは、粘り強さと視点を変えることです。答えというのは自分が知らないところにあるので、狭くなった視野を無理やりでも広げる必要があります。ですので、適度な休憩や息抜き、睡眠もめちゃくちゃ重要なわけです。
え?お勧めの本とかオンラインセミナーないかって?
いやいや、まずは自力で何とかする根性を身につけましょう。どのみち、それができなければプロとしてやっていくのは絶対に無理です。ようするに、問題が起きても何とも思わないくらいに、問題が起こることに慣れればいいわけです。
実は単純なことなんですよ。種も仕掛けもありません。プロでも普通に一日くらい悩むこともありますし、数日たっても答えがでないことだってあります。初心者の方と熟練者の違いは、そういう場面でも笑って過ごせるかどうかくらいの違いしかありません。
とにかく慣れましょう。問題を愛しましょう。プログラマーになるということは、そういうことです。以上!
Written by Yasuhiro Ito
Software engineer