なんでプログラマーはこんなの習得できたの?
どうやったら習得できるの?
こんな疑問にお答えします。
本記事の内容
本記事の信頼性
Java、C#、vb、JavaScript、PHP 等々 多言語での実務経験があり
現在は脱サラし、本職として フリーのプログラマーを5年以上 継続しています。
結論。 多少の向き不向きはあるが誰でも習得可能です。
僕自身「お金を払えば誰でも入学できる」情報処理系の専門学校が最終学歴で在学中は全くプログラミングが習得できませんでしたが、こんな僕でも習得出来たので高校を卒業できる学力があれば職業として通用するレベルのプログラミングの習得は十分可能ですよ。
ということを強く伝えたいです。
挫折しやすい原因と、効果的な習得方法について 記事にしてみました。
なぜプログラミング学習で挫折するのか?
プログラミングの習得が目的である
プログラミングの習得自体は、実は、それほど難しいものではありません。
(低学歴の僕がいうので間違いないです。)
しかし最初の内は
と感じる人は多いと思います。
これはプログラミングに限りませんが面白さを感じられるまでには、ある程度時間がかかります。
僕はギターが趣味なのですが楽器の演奏技術習得に通じるものがあると思います。
と思って練習する人と漠然と
と思って練習する人ではモチベーションが全く違いますよね。
なんとなく
と思うこと自体は全く問題がなく、むしろ意欲があって良い のですが、モチベーションを継続させることが難しいのは事実です。
どの言語から始めたらいいか わからない
世の中にはコンピュータ言語というものがあまりにも多く存在するため学習を始める前に、言語の選定すらままならないことでしょう。
言語が決まっても 開発環境を構築できない
- Java なら Eclipse
- VB、C# なら visual studio
- PHP なら XAMPP
↑のように 言語によって 開発に必要な開発環境は 大きく異なります。
しかも それぞれの開発環境には長い歴史があるので、参考書籍 と 自分が選んだバージョンが異なって参考書籍の内容通りに進まず、足踏みしてしまうことなどは、はよくあることです。
教えてくれる相手がいない
- コンピュータ用語に馴染みがない上に日本語訳が悪い
- エラーの内容が理解できない
- 何もしていないのにおかしくなった
- どうやってググれば調べられるかわからない
僕が初心者の頃に
数字が入るのでは? ???
と思った記憶があります。
「変数」みたいに和訳されて使う言葉がある一方で、「メソッド」とか「インスタンス」とか訳されないで使う言葉も多数あります。
「クラス変数」などと[訳なし+和訳] とか出てきます。
とにかく用語がわかりづらいです。
学習中に壁にぶつかったときプログラマーの友人や同僚がいれば、簡単に解決できそうなことでも独学中の初心者には、解決が難しく時間がかかってしまうことが多いです。
完成までに時間がかかる
ものによっては
と初心者の方はびっくりする事があると思います。
ベテランプログラマーの僕ですら、仕事中に
と驚く事ちょこちょこあります。
果てしないゴールの途中で挫折してしまうんですね。
小さなゴールを沢山作っておくなど、工夫しておかないと、途中でやめてしまいます。
プログラミングを習得する方法
未経験のまま就職してしまう
挫折しない一番の方法は僕自身もそうだったのですが「学習期間」と割り切って、未経験者のまま就職してしまうことです。
年齢が高い場合は、難しいですが、20代ならば、未経験のまま就職してお金をもらいつつプログラミングを習得できます。
未経験者でも求人を出している企業は多数あります。
⇒ ITエンジニア就活
プログラミング講座を利用する
すでに定職についている方や、こっそりプログラミング学習を行いたい方にはこちらがおすすめです。
挫折する理由にも書きましたが、独学では
この問題がすごく大きいです。
個人的におすすめなのが自宅で、動画を確認しながら自分のペースで学習できる Skill Hack という講座です。
疑問的を LINE で無制限で質問することで効率的に学習を進めることができ、挫折ポイントの回避が可能です。
僕のブログの先生で、大学教員もされている 迫さん という方が作ってます。
職業訓練校に通う
自宅ではなく本格的にスクールに通うという方法も、おすすめです。
プログラマーを職業にしたいという方向けではありますが現在休職中の方であれば、職業訓練校 に通うのがとても有力な選択肢です。
職業訓練校であれば失業手当をもらいながら学習でき就職の斡旋までサポートがあります。
こちらで記事を書いたので、よければ ご覧ください
→ 未経験でもIT業界に転職したい【元IT土方 採用担当が語る】
さいごに
比較的新しい言語では「言語仕様」というものが、ちょこちょこ更新されるため、マスターしたと思っていた言語でも、今まで使っていた技法では
- 処理動作が遅い
- コードの記述量が長くて効率が悪い
↑ のような理由で「古いプログラム」に なってしまう。
などということが頻繁におこります。
という問題にもなってしまうのですがプログラミングと長く付き合っていくつもりならば 常に新しい情報の収集をしていかないと置いてけぼりをくらいます。
ですが経験値が上がるとプログラミングがどんどん楽しめるようになってきます!
そして、挫折する人がとても多いので、挫折せずに習得出来た際には、あなたの大きな武器になっているはずです!