
このような疑問や悩みに、私の体験をもとにお答えします。
プログラミングを、少しでも勉強したことがある方を対象にしています。
コロナ禍で働き方改革が進み、IT業界に対するイメージはプラスに変わったのは確かです。
未曾有の世の中を生きていくために、プログラミング未経験から技術を身につけましょう。
・プログラミング未経験で、学習に挫折しないか不安
・プログラミングの学習ポイントが分からない
・プログラミング学習後は、エンジニアになりたいと思っている
目次
経歴(プログラミングスクール経験あり)

私は、文系出身で元々パソコンが全くできないド素人でした。
プログラミングとの出会いは、大学の選択授業で情報処理の講義を受けたことがきっかけです。
英単語のような文字を打つだけでシステムが思い通りに動き、最初は驚きの連続であったのを覚えています。
友人から話を聞き、それがプログラミングということをはじめて知りました。
それ以降、プログラミングやIT技術の魅力にとりつかれ、パソコンの基本操作から勉強しました。
プログラミングスクールにも通い、Webシステムの開発をできるようになるまで必死に勉強をしました。
その後、開発の現場に入ることに成功し、さまざまなプロジェクトを経験しました。
今は別の仕事をしていますが、縁があればもう一度エンジニアとして働ければと思っております。
私が、プログラミングを学習していて大切だと思ったことや注意した方が良いと思ったことを共有ができればと考えています。
プログラミング未経験者の学習方法

プログラミングの学習は、プログラミングスクールのカリキュラムに沿って行いました。
はじめに行ったことは、ITの基本知識を学ぶことでした。
例えば、ITの基本知識とは以下のようなものです。
・基数変換(2進数や10進数など)
・パソコンの装置について
・フローチャートとは
・データベース・SQLとは
・ネットワークについて など
他にもさまざまありますが、プログラミングの仕事以外でもIT業界で仕事をするのなら知っていて当然の内容です。
「プログラミングに、この内容が必要なの?」
そう思う方もいると思いますが、私がこの内容を知らずにプログラミングの学習を行っていたら、途中で挫折していたと思います。
なぜなら、スクールのテキストでは当然のように出てくる内容だからです。
実際の開発現場でも、この程度のことを知らなければプログラミングの前に、話にもついていけず、仕事になりません。
私は、スクールのカリキュラムと並行して、ITパスポートや基本情報技術者試験のテキストも読みました。
基本(基礎の基礎)を徹底的に理解したことで、プログラミングの学習がスムーズになったことは事実です。
プログラミング未経験者は、学習で挫折してしまうことが多い
プログラミング未経験者は、総じて学習の段階で挫折してしまうことが多いです。
もちろん、プログラミングの学習は難しいので一筋縄では行きません。
しかし、いつまでたっても自分のプログラミング技術の向上が実感できずに、辞めてしまう方も多いです。
では、プログラミング学習に失敗してしまう理由は、どのようなことからなのでしょうか。
テキストを丸暗記することが勉強だと思っている
現役でバリバリ活躍しているプログラマーが、全ての技術を暗記しているかといえばそうではありません。
技術の基本をおさえたら、後は調べることで解決しています。
実は、この調べるということは、簡単なようでなかなか難しいです。
調べたいことや問題の解決策が調べても見つからず、何時間も作業ができない、悪くすると、何日も業務が先に進まないこともあります。
しかし、それなりの実績を持ったプログラマーはより効率的に早く調べることが可能です。
プロジェクトのメンバーに分からないことを的確に質問する技術も持っています。
調べたことから自分の頭で考えて、プログラミングを完成させます。
それが、実務経験を持った一人前のプログラマーです。
「分からないことは、調べる」
「まず、自分の頭で考える」
この習慣がないとプログラミングは、いつまでも上達しません。

エラーがでたら、すぐに質問をしてしまう
この習慣も、プログラミングの技術向上に苦労する原因です。
一見、分からないことをすぐに質問することは良いことに思えますが、自分の成長を考えるとそうではありません。
仮に、開発の現場でエラーが出てすぐに質問をしに行ったら、
「そんなもん。ググっていれば出てくるでしょう。」と一括されるのがオチでしょう。
普段から、エラーを根気強く解決する経験がないと学習でも仕事でも苦労します。
分からないことを調べるためには、基本的な知識の理解が必須です。
先にも書きましたが、だから基礎の基礎が大切なのです。
以上が、プログラミング未経験の学習に挫折してしまう原因です。
クリエイターとしての業務を意識する学習を心がける
実は、先にあげた問題ありの学習方法は、私が当初行っていたものです。
記事を書いている立場ですが、私もプログラミングの学習を挫折したうちの一人です。
要するに、私がやっていたことはプログラミングの学習とはほど遠い、
単なる暗記です。
だから、テキストに書いてある中身だけは、完璧です。
しかし、その内容をベースに自分で何かをつくることや、他の演習問題を自分で考えてやってみるなど、「クリエイター」としての本質を欠いた学習しか行っていませんでした。
勉強でも何でもありませんので、成長はありません。
学習が進めば進むほど、どんどん分からなくなります。
プログラミングを独学した期間は1年程ですが、最初の2カ月~3カ月は、
ほぼ棒にふったと思っています。
プログラミング未経験の私が実力を上げた方法
プログラミングの実力をつける方法をご説明します。
思考力を上げることが、プログラミング初心者の実力向上に
私が使っていたプログラミングスクールのテキストは、知識は解説していますが、演習の量が少ないです。
プログラミング言語の知識は、もちろん必要なのですが、
最終的に必要なのは自分で考えてプログラミングをするスキルです。
そのためには、思考力や応用力が必要であると考えました。
私が実践した思考力や応用力を身に付けた方法は、以下の通りです。
・テキストの演習課題の他に、インターネットに掲載されている課題をこなした(解説付きのもの)。
・コードに自分で考えた新たな機能を追加。
インターネットに掲載されているプログラミングの課題は、過去に取り組んだことがないものです。
つまり、ゼロから自分の頭で考えて調べるという一連の流れを経験できます。
また、完成したコードに新たな機能を考え追加するこという学習も行いました。
新規機能を設計し、システムに落とし込むという実業務に近いことを意識することで、プログラミングの実力向上に役立ちました。
プログラミング未経験の私が、実力をさらに上げるために取り組んだこと


実力アップのために、さらに取り組んだことは現役のプログラマーが書いたコードを読むことです。
これは、かなり有効ですのでおすすめをします。
優れたプログラミングコードは、読みやすいことや修正がしやすいことが重要です。
例えば、
「同じ処理は一つにまとめる」
「分かりやすいコメントを入れる」など
他人が書いたプログラミングコードを読むことは、大変勉強になります。
面接官から聞いた、プログラミング業務未経験でも欲しい人材


プログラミングスクールのカリキュラムを終え、就職活動をした時にさまざまな話を聞くことができました。
面接の最後に、「何か質問はありますか?」と聞かれますよね。
さまざまな質問をしましたが、その中でも皆さんの今後のプログラミング学習に役立つことをご紹介します。
いかに実践を意識した学習をしているかが大切
プログラミング学習後に、スクールと協力をして就職活動を行いました。
その時の、体験を共有します。
私は、実務未経験であったこともあり、それなりに就職活動に苦戦をします。
まず、書類選考が通りません。
35社に書類を送って面接に進んだのが、7社程度です。
最初はかなり落ち込みますので、プログラマーに就職を考えている方は平然と就職活動を進めてください。
落ちても気にせず、なぜ書類選考で落ちたのかを分析して次に進んだ方が良いです。
このように苦労をしましたが、なんとか内定を獲得することができました。
実感として、普段いかに実践を意識した勉強をしているかが重要という印象を受けました。
面接の質問内容からすると、学習したことを生かして、なにかしらの成果物を残しているかを重視していました。
ぜひ学習の参考にしてみてください。
企業がプログラマーとして欲しい人材とは


企業によって差はあると思いますが、面接でプログラマーとしてどういう人材を一番に採用したいかを、採用担当者(現場責任者)から聞くことに成功したので、
ご紹介します。
プログラミングの勉強の参考にしてみてください。
企業が、プログラマーとして欲しい人材の条件は、「根気と探求心」がある人材です。
意外に思う方もいると思いますが、面接官の話によると、いくら頭が良くてセンスがあるように見えても、根気と探求心が少ない人材でプログラマーとして大成したケースを見たことがないそうです。
実際、プログラミングはエラーがあるとその原因を根気強く探さなければいけません。
最初からエラーがゼロなんて、まずありません。
気の遠くなる作業を粘り強く行える、根気強さは必ず求められます。
また、技術の進化は日進月歩なので、日ごろから探求心を持ち、
新しい技術に常にアンテナを張る意識が大切だということを覚えておきましょう。
必ず、この2つは意識しなければならないポイントでしょう。
まとめ
プログラミングの学習は、「よく考え、よく調べ」自分で答えを出す学習を心がけましょう。
そして、可能であれば「根気・探求心」と紙に書いて部屋に張っておきましょう。
学習に挫けそうな時や目標を失いそうな時に、何度も見ましょう。
物をつくる仕事全般において、大切なことです。

