プログラミング初心者は挫折するけど大丈夫と伝えたい

スキルアップ プログラミング

プログラミング初心者は挫折するけど大丈夫と伝えたい

「プログラミング難しすぎる、何がわからないかもわからない」
実際にこんなことを言われたことがあります。
新人、中途採用含め何十人も教育してきた経験から断言します。
わかる範囲を少しずつ広げていけばいずれできるようになるし、そもそも全部わからなくても仕事はできます。

この記事では、挫折する理由と挫折しないための対策と考え方をお伝えしていきます。

一度挫折したけどITエンジニアやってます

私も一度、プログラマーを目指して勉強して、挫折しています。
たまたま職場でPCがうまく扱えたので、プログラミングもできるかもと勘違いから入って、本を読んで勉強。

とりあえずやってみて、わからないことだらけ。
自分がバカになったような気分になりました。

何かプログラミングするたびにエラーメッセージ。
本に書いてある通りやっているはずなのに...
Googleで検索してもよくわからない。

そもそも、プログラミングを身につけて何をしたいのか、どこを目指しているのかも決めず漠然とやっていました。

こうやって書いてみると、相当ひどい状況ですね....
無計画すぎて、プログラミングできる気がしないですね。

結局、私の場合、1年後に思い切って仕事を辞めて、プログラミングスクールに通って、ITエンジニアになりました。
才能ないかなと思ったけど、自分で言うのもなんですがそこそこ活躍できるようになり、10年以上安定して働いています。

以降では、上記の反省を踏まえ、何に気を付けたらいいのか、考え方を紹介していきます!

ターゲットが絞れていない

目に映るすべてのものを理解しようとしていませんか?
それは初心者のうちはかなり厳しい戦いになります。
なぜなら、プログラミングとは先人の知恵の積み上げの上に成り立っており、誰かが作った便利な部品をフル活用しているから。
(便利な部品 == ライブラリ、パッケージ、その会社固有の部品など)

最初のうちはどうやって使えばいいのか理解すればOKです。
テレビでもiPhoneでも、仕組みがわからなくても使いこなせていますよね。それと同じです。
習熟し始めたら、少しずつ理解の範囲を拡げていくのを強くおススメします。

私自身もプログラミングの書籍を隅から隅まで理解しようと無駄な努力をしていました...
ある程度考え方を理解したら、必要な情報を調べながら開発できる状態を目指しましょう!

問題解決方法を知らない

大前提として、開発中、プログラミングはうまくいっていないときの方が多いです。
ほしい機能があって、それを実現するために試行錯誤するのですから当然です。
しかし、何度もエラーが出て、そのメッセージの意味がわからないと正直辛いですよね。

まず、エラーが出るのは当たり前で、むしろ重要なヒントととらえて積極的に活用しよう、こういう風にとらえていただきたいです。
15分程度、Google検索なども含めて自分で調べて、それでもわからない場合はすぐに人に聞いてしまいましょう。
適切に他人の力を借りられると、挫折を予防できます!

関連記事は以下の通り。

壮大な計画を立てている

最初から完成品を作ろうとしたり、野球選手でいうと大谷選手を目指しているのか?ということがあります。
大きな目標は素晴らしいですが、いきなり完璧なものはできませんし、何年も働いてきた熟練の人と同じように開発はできません。

断言しますが、完璧や正解を目指すと挫折します。
まずはざっくり動くものを作ればOKです。
動くものを作ってから、徐々に完成度を高めていけばいいのです。

自分なんかまだまだ,,,となかなか自身が持てない人。
気にせず、できることから始めていきましょう。
実際、プロジェクトに参画したときは、その人のスキルに合った仕事が割り当てられますし、
小さなタスクをこなすことで理解が進み、大きな複雑な開発もできるようになります。

私自身も始めてプロジェクトに参加した時は、本当に誰でもできそうな単純作業でした。
詳細設計書にびっしり書かれていて、その内容を少し変えて転記すればOKというレベル...
それでも誰かがやる必要のある仕事ですし、単純作業を進めるうちにだんだんとわかるようになっていきました。

結論

プログラミングは続けていけば、だれでもできるようになります。
できることが少ないうちは、開発以外にもやれることがたくさんありますし、小さな開発案件もいっぱいあります。
少しずつ開発していけば、実績もできて、いずれ自信もついていきます。
とにかく続けることが大事です!

コツコツ学習進めるために

私が個人的にPython大好きなので、以下をおススメしています!
オンライン学習サービスは、実際に手を動かして学習できるし、挫折しづらいので、エンジニアを目指す全ての人におススメしたいです!

-スキルアップ, プログラミング
-, , , ,