プログラミングスキルを身につけようと学び始めたけど、これからどんなことに苦労するんだろう?
この記事はこんな疑問にお答えします。
本記事の内容
・プログラミングスキルを身につける上で避けられないこと
・過去の経験談
・ではどうしたらよいのか
■プログラミングスキルを身につける上で避けられないこと
「プログラミングスキルを身につけてエンジニアとして独り立ちしたいと思っているんだ」
「それはいいことだね。今後、さらなる人手不足になるから仕事がたくさんあるね」
「でも、これからどんなことが起こるのかわからないから不安だよ」
「どう考えていけばよいのか考えてみよう」
プログラミングスキルを身につけていく過程で避けて通れないことがあります。
それは「バグやエラーが経験する」ことです。
高いプログラミングスキルを身につける人は、それだけ多くの「バグやエラーを経験してきた」人とも言い換えることができるかと思います。
プログラミングをして、そのプログラムを実行すると、必ずといっていいほど、「バグやエラー」が出ますよね。
エラーが画面に表示されると「あちゃ~・・・」って感じになります。
それが日本語ならまだしも、英語で表示された日には・・・(泣)。
その気持ちはとてもよくわかります(僕も毎度そうです・・・)が、前提として
間違えているのはプログラムでしょうか?それともあなたでしょうか?
プログラム(コンピュータ)は間違えません。
指示さたことを速く正確に行っているだけです。
間違えているのはもちろん「あなた」です。
逆恨みしてプログラムのせいにしてはいけませんよ(笑)。
プログラムはあなたとコンピュータとのコミュニケーションツールなんですから。
そう考えれば、プログラミングって、無味乾燥な冷たいもののようなイメージを
温かい大事にしたいものに思えてきませんか。
「バグやエラー」の経験が多ければ多いほど、あなたとコンピュータのコミュニケーションは密にスムーズなものになっていきますよ。
「うわっ!またバグだよ」
「エラー、勘弁してくれょ~」
と思う気持ちを飲み込んで
「わかったよ、もっとコミュニケーションしてほしいんだな」
「お互いわかりあおうぜ!」
という気持ちをもちましょう。
■過去の経験談
法学部を出た文系の僕が配属されたのは、「システム開発部」でした。
コンピュータなんか1ミリも興味なかったのに、配属されて「マジかぁ~」と
思ってました。
COBOLという言語を一からたたきこまれました。
興味もない、単語は意味わからない、周りの習得スピードからは置いて行かれる、とかなりツライ日々をおくっていました。
そして毎日繰り返される「バグとエラー」の日々。
よく耐えたな・・・と今では思います。
当時はパソコンもまったく普及していないくて、コンピュータといえば、巨大な汎用機のことを指していました。
使うのにも課金され(処理時間から換算され)予算との比較をされていました。
(ちゃんと予算内でできているかなどを見られていました)
コンピュータを使うことを制限され、処理の確認はもっぱら机上デバッグ(紙に書いたプログラムロジックやデータのパターンを元に紙上でロジックを追っかけ、バグがないか確認する苦痛の作業)をさせられていました。
そんな状況の中での恐怖の体験は、高価なコンピュータを使用をしている際に、プログラムにバグがあり、無限ループ(処理が終わらなくなること)に陥り、CPUの占有率が半端ない数字になることでした。
先輩社員や上司が青白い顔をして「誰がコーディングしたものだ!」と怒りの表情を浮かべているのが昨日のように思い出されます・・・(泣)。
正直、そんな恐怖体験をしてきた僕からすれば、今パソコンの画面上でエラーが表示されても「大したことないな」と思ってしまいます。
(もちろん「ガクッ」と思いますけどね・・・)
「バグもエラー」もたくさん経験して耐性ができていると、不思議なものでスキルも身についてきて、「バグやエラー」への対処も早くなってきます(断言)。
なんとかあるレベルまで自分を引き上げましょう。

■ではどうしたらよいのか
でも、そうはいっても、ツライです・・・ってところが本音ですよね。
特効薬があればいいんですけで、残念ながらこればっかりはありません。
プログラミングに限った話ではないと思いますが、どの分野においても、ある程度のスキルを身につけようと思ったら、「バグとエラー」つまり上手くいかないことを経験することは避けて通れません。
それでもツライんです・・・って場合は、スッパリあきらめてもよいのかと思います。
人には向き不向き、好き嫌い、がありますから、どれだけたくさんの人がプログラミングは良い!今後は必須スキルだ!と言ったとしても、自分にとって「無理かな」と思ったら、それはあなたに「正解」で、歯をくいしばって頑張らなくても良いと思います。
それでも身につけたいんです!って場合は、わかりやすく教えてくれる人を見つけるか、身につけざるを得ない環境に自分を置くしかない(僕のように1ミリも興味もなかったけど、配属された部署が「システム開発部」だったように)です。
でも、結構キツイので、あまりおススメしません。
楽しく面白みを持って取り組むことが、一番良いと思いますので。
あとは初めから難しい専門書や高度なことを追いかけないことですかね。
易しく簡単でシンプルなものから着手していきましょう。
プログラミング入門講座――基本と思考法と重要事項がきちんと学べる授業