もったいなすぎ
「プログラミングは難しい」という思い込みゆえにプログラミング習得のチャンスを失っている人が多すぎです。
はっきり言ってプログラミングは世間で思われてる以上に難しいものではないです。
もちろん無茶苦茶簡単とは言いませんよ。一定の論理的思考能力がありさえすれば問題ないです。
論理的思考能力って何?私は文系で数学も苦手だしプログラミングは無理な気がする。
安心してください。文系でも数学苦手でも全く問題ありません。
「高校の現代文の試験で50点以下じゃなかった人」はプログラミングに必要な論理的思考能力を満たしているでしょう。
この最低限の論理的思考能力がありしっかりコツコツ勉強すれば誰でもプログラミングを習得できます。
筆者自身、数学が大の苦手でして数学が試験科目になかった大学を受験したくらいでした。社会学専攻でバリバリの文系です。
データサイエンティストになるのであればまた話は別ですが一般的なエンジニアやプログラマーであれば数学は業務に不要です。
プログラミングは難しいものでもなんでもなく別の言語を新たに勉強するくらいのノリで始めると良いでしょう。
本記事ではプログラミングが難しいというのが大間違いである理由について、完全未経験が挫折することなくプログラミングを習得するためのコツについて解説します。
当メディア『ノースキルの逆襲』編集部(須賀)より
当メディア『ノースキルの逆襲』編集部の須賀です。当メディアではこれまで20社以上のプログラミングスクールと受講生を取材してきました。
各スクールの教材や講師についても授業を受講し、チェックした上でおすすめスクールをこちらの記事「本当に力のつくおすすめプログラミングスクールまとめ」で掲載しています。参考にしてくださいね。
プログラミングは難しいと思われている5つの理由
プログラミングが難しいと誤解されている理由は以下5つでしょう。
1.難しそうなイメージが先行している
2.何をどう学べば良いか見当つかない
3.数学が必要と思われている
4.エラーを解決するのが大変
5.コードをすべて覚えてないといけないという誤解
1.難しそうなイメージが先行している
プログラミングに全く触れたことのない人からするとプログラミングをしているエンジニアは「魔法使い」みたいなものでしょうか。コードという得体のしれない魔法を駆使している怪しい人みたいな笑
「分からない」未知なことに拒否感を持つのは人間の本質です。
たとえば黒人からスワヒリ語で突然話しかけられたとします。
何言ってるか分からないからちょっと不気味に感じて「嫌!無理!」って拒否感が生じます。
その黒人が「おはようございます!今日はいい天気ですね。」とスワヒリ語で言っていてもです。意味が分からないと怖いのです。
一方であなたがスワヒリ語を話せ、その黒人が何を言ってるか理解できれば一転して「何か陽気でいい人そう」と好印象になるでしょう。
プログラミングも同じでコードが何を意味しているのか理解できれば楽しくなってきます。
2.何をどう学べば良いか見当つかない
プログラミング学習あるあるなのが何から学び始めれば良いか見当つかないことです。
たとえば英語だとBe動詞の復習しようとか、仮定法のIfの文法を復習しようとか学習イメージを持ちやすいです。
義務教育ですでに英語の基礎を学んでいるから「どう学べば良いか見当をつけやすい、イメージしやすい」のです。
一方でプログラミング学習の場合、学校でプログラミングを習った経験のある人は多くないでしょう。それゆえ「いったい何から学び始めれば良いか見当がつかない」のです。
これがプログラミング学習のハードルを上げています。
しかし「何をどう学べば良いのか、何を学ぶとどんなことができるようになるか」イメージを掴めれば苦手意識はなくなります。
今人気のプログラミングスクールを利用する価値はこういった学習イメージを掴める点にあるでしょう。
3.数学が必要と思われている
数学苦手なんだけどプログラミング習得できるかな?
プログラミング学習には数学が要ると思ってる人結構いますよね。これ大きな間違いです。
プログラミングに数学は一切不要です。データサイエンティストなどだとプログラミングに加え数学が求められるケースもありますが一般的なエンジニアの業務に数学は不要です。
冒頭で述べたことの繰り返しとなりますがプログラミングに求められる能力は数学ではなく論理的思考能力です。目安は「高校の現代文の試験で50点以下じゃなかった人」です。
プログラミングとはつまりロジックをどう組み合わせるかの技術です。論理的に考えられる人であればまず問題なくプログラミングも習得できます。
4.エラーを解決するのが大変
プログラミング学習を始めたばかりの頃はエラーを解決するのに数時間かかるのが普通です。
エラーを解決するのだけで1日が終わってしまうこともザラですね。エラーと格闘している時は前に進んでいる感覚がなくてキツいんですよね。
しかしそれでもエラーと格闘している時こそ力がついています。
最終的には「エラーを解決することがゲーム感覚」になってきます。筆者は今ではエラーと格闘してエラーを解決したときの達成感にゾクゾクするくらいです。
あとプログラミングの経験値が上がればエラーを解決する能力も高くなって大抵のエラーは解決できるようになりますよ。
5.コードをすべて覚えてないといけないという誤解
初学者にありがちなのがコードの書き方をすべて覚えなくてはならないと思っていることです。
「こんなにたくさんのコードをすべて覚えるなんて私には無理!」と圧倒されてしまうのです。
しかし実際のところコードの書き方を丸暗記する必要はまったくないです。プロの現役エンジニアやプログラマーはコードを丸暗記していませんしね。
コードを書く時にはその都度公式ドキュメントや技術書を参考にしてコードを書いています。
プログラミングは難しそうという思い込みを断つコツ
プログラミングは難しいというのは一種の思い込みです。実際はさほど難しくないですしやり様によってもっと簡単に習得できます。
1.わかりやすいプログラミング言語を学ぶ
2.講師に教えてもらいながら学ぶ
1.わかりやすいプログラミング言語を学ぶ
Ruby、PHP、Python、Java、C言語など色々プログラミング言語は存在しますが、それそれ習得難易度が異なります。
プログラミング学習に挫折している人でたまに見かけるのがいきなり難易度が高めのJavaやC言語を学習しているケースです。挫折しやすいです。
初学者の人はまずは難易度が低めのRuby、PHPあたりの言語の学習がおすすめです。この2つの言語はコードを書いていて「楽しい」感覚を得やすいです。
まずはオンライン教材のProgateで学んでみると良いでしょう。
Progateだと自分で開発環境を用意しなくてもブラウザで直接コードを打ち込んでその結果を実行できる点ですね。隙間時間に学習可能です。
2.講師に教えてもらいながら学ぶ
Progateで2週間ほど基礎を学んだらサッサと実際にアプリを開発するなどアウトプットに移行するのをおすすめします。
手を動かしコードを書いてアウトプットしていくことで知識は使えるものとして定着しますからね。
ただこの段階になるとエラーが頻発したり「何をどの様に学習すれば良いかイメージを持てず」難易度が上がってきます。
なのでプログラミングスクールを利用しプロの講師に学習計画の策定をしてもらったり進捗管理をしてもらいながら学習を進めるのがおすすめです。
独学の難しさについては「プログラミングを独学で習得するのが難しい理由」の記事で説明しています。
おすすめのプログラミングスクールは以下です。
以下5つの中から選べば間違いないです。
スクール | 強み | 向いてる人 |
---|---|---|
DMM WEBCAMP | 転職・就職(質重視) | ・就職、キャリアサポート重視 |
RUNTEQ | 転職・就職(質重視) | ・就職先にこだわる ・実務レベルスキル習得 |
プログラマカレッジ | 転職・就職(コスパ重視) | ・無料で受講したい人 |
COACHTECH | 副業 | ・副業で稼ぎ |
各スクールの解説は以下の記事を参考にしてください。
結論:「プログラミングは難しい」は大間違い
結論ですがプログラミングは難しくないです。
ただし「プログラミングが全く未知の状態」だとどうしても「未知ゆえの拒否感」が出てしまいます。これがプログラミングは難しいという印象を強めてしまうのです。
しかしプログラミングが未知から既知のものへ変わっていくにつれてプログラミングは難しいという感覚はどんどんなくなっていきますよ。
プログラミングスキルをつければエンジニア転職して年収を大幅アップさせることも可能です。フリーランスエンジニアになれば年収1000万円も目指せるチートな職種ですからね。
またエンジニアにならないにせよプログラムを組めるとデータ分析や業務を自動化できます。ありとあらゆる職業においてプログラミングスキルは有用です。
まずは手を動かしながらプログラミングを学んでいきましょう。
スクール | 強み | 向いてる人 |
---|---|---|
DMM WEBCAMP | 転職・就職(質重視) | ・就職、キャリアサポート重視 |
RUNTEQ | 転職・就職(質重視) | ・就職先にこだわる ・実務レベルスキル習得 |
プログラマカレッジ | 転職・就職(コスパ重視) | ・無料で受講したい人 |
COACHTECH | 副業 | ・副業で稼ぎ |
各スクールの解説は以下の記事を参考にしてください。
コメント