こんにちは、現役エンジニアのじゅんぺい(@jumpe1k01ch1)です。
この記事では、多くの人が誤解をしている「プログラミングは難しい」というイメージについて現役エンジニアの僕が解説していきます。
「プログラミングに興味があるけど難しそうで学ぶことを諦めている人」「すでにプログラミング学習を始めたけど難しすぎて挫折しそうな人」はぜひ参考にしてください。
プログラミングは難しい←この誤解と事実についてエンジニアが解説
結論:プログラミングにも種類があり全てが難しいわけではない
多くの人は「プログラミングは難しい」というイメージを持っていますが、それは正解でもあるし不正解でもあります。
一言でプログラミングといっても様々な種類があり、それぞれ難しさが違います。
全てのエンジニアが一般の人が想像するよう2、3枚のディスプレイがあって黒い画面を見ながら英語の羅列を打ち込んでいるわけではないんです。
エンジニアの種類を以下で簡単に説明します。
かんたん説明
- AI・機械学習エンジニア:数学ゴリゴリで難しい
- インフラエンジニア:黒い画面でカタカタ
- Webエンジニア:数学はほぼ使わず簡単
などなど。
当然、ITリテラシーが全くない人やプログラミング完全初心者がいきなりAI・機械学習エンジニアを目指すのは難しいです。
しかし、Webエンジニアであれば高度な数学やあらかじめ必要な専門知識は必要ないので、プログラミング初心者や学歴のない人でも挑戦する気持ちさえあれば難しくありません。
「プログラミングが難しい」というイメージがある理由
現役エンジニアの僕が思う、多くの人が「プログラミングが難しい」というイメージがある理由は以下の通り。
かんたん説明
- プログラミング=英語というイメージが強い
- プログラミングは理系しかできないと思っている
- 環境構築で挫折しやすい
- 頻繁に起きるエラー
- コードの全てを理解しようとして挫折
上記について深掘りしていきます。
プログラミング=英語というイメージが強い
英語に苦手意識がある人は、プログラミングも英語だから自分には無理と思っている人が多いです。
確かにプログラミングのコードはアルファベットで書きますが、実際の英語や英会話のように決まった文法があるわけではありません。
プログラミングで一般的に使われている用語を覚えればいいだけなので、勉強していればわかるようになります。
恥ずかしい話、僕自身大学生の時に受けたTOEICが300点台前半でしたが、現在、普通にエンジニアをやれているのでノープロブレムです。
プログラミングは理系しかできないと思っている
個人的に一番もったいないと思うのが「文系の人がプログラミングは理系がやるもの」と思い込んでいることです。
プログラミングという現代において最も需要のあるスキルの一つを「文系の人がプログラミングは理系がやるもの」という誤解だけで学ばないのは本当にもったいないです。
「自分、文系だけど確かに諦めていたな」と心当たりのある人は、まずWeb開発系のプログラミング言語の学習を始めてみましょう。
苦手の意識の強い「数学」も「黒い画面」も使わないので「できるかも!」と思えるはずです。
ちなみにWeb開発系プログラミング言語は「HTML&CSS」「JavaScript」等です。
プログラミングを始める前の環境構築で挫折する人が多い
実際に「プログラミングを勉強するぞ!」と始めてみた経験のある人の中には、プログラミングを始める前の環境構築でつまずき挫折してしまった人も多いのではないでしょうか?
環境構築は、実際のエンジニアでも苦戦することがあるのでプログラミング初心者は、環境構築がない言語 or 環境構築が楽な言語を選びましょう。
環境構築がない言語
- HTML&CSS
- JavaScript
環境構築がない言語
- PHP
- Ruby
- Python
たまにベテランエンジニアが初心者におすすめするプログラミング言語の「C/C++」「Java」は環境構築に苦戦する可能性が高いのでおすすめしません。
プログラミング中に起きる頻繁なエラー
プログラミングをする上できっても切り離せないのがバグ・エラーです。大量のエラーを解決できず、挫折してしまうプログラミング初心者も多いです。
こればかりは、「プログラミングの質問サービスで質問して解決」「ググって自力で解決」「現役エンジニアに質問して解決」いずれかで解決するしかありません。
エラーの修正には忍耐力が必要です。しかし、誰もが根気よく調べてエラーを修正できるわけではないと思います。
ですので、プログラミング完全初心者はプログラミングスクールを活用して「エラーが出たらすぐに質問できる環境」でプログラミングを学ぶ方が効率的です。
【大学生向け】学生エンジニアおすすめのプログラミングスクール7社【学割も】
続きを見る
挫折しないために正しい順番でプログラミング学習することが大切
プログラミング学習のポイントは挫折しないために正しい順番で学習することです。
プログラミング初心者がいきなり、環境構築難易度が高いプログラミング言語を学習したり、単純に難しいプログラミング言語を学習するのは、非常に難しく挫折してしまいます。
とはいえ、プログラミング初心者ではプログラミング学習における正しい順番が分からないですよね。
結論、プログラミングスクールのHPに行ってカリキュラムページに書かれている言語を順番に学習していけばOKです。
例を紹介します。例えば、Webアプリケーションを開発をしたかったとしてTech AcademyのWebアプリケーションコースを参考にするとします。
引用:Tech Academy
身に付くスキルに、
かんたん説明
- HTML/CSSの理解とコーディングスキル
- Bootstrapを利用した効率的なレイアウト
- Git/GitHubを利用したソースコードのバージョン管理
- Rubyの理解とプログラミングスキル
- Ruby on Railsの理解とオリジナルWebサービスの構築
と書いてますね。
もう、このまま上から順に学習していけばOKです。
プログラミングスクールのカリキュラムは、プログラミング初心者のために過去の受講生のデータから最適化されているものなので、変なWebサイトで紹介されているやり方よりよっぽど信頼できるはずです。
プログラミングスクールのカリキュラムから学習するメリットは、初めは独学していたけどどうしても分からなくて、プログラミングスクールに通うことになるとします。
その際、独学していた内容はプログラミングスクールで復習することになり理解が深まりますし、続きの内容の理解も早まります。
プログラミングスクールのカリキュラムから学習するやり方はメリットだらけなのでやってみてください!
公式サイト→TechAcademy
挫折しないプログラミングの学び方
ここでは、現役エンジニアが考える挫折しないプログラミングの学び方は以下の通り。
かんたん説明
- 難易度の低いプログラミング言語から学び始める
- 動画学習サービス(Udemy)で学ぶ
- プログラミングスクールで学ぶ
上記について深掘りしていきます。
難易度の低いプログラミング言語を選ぶ
プログラミング初心者は少しでも簡単な、難易度の低いプログラミング言語を選びましょう。
では、「難易度の低いプログラミング言語ってなんだよ」というと答えはWeb開発系のプログラミング言語です。
Web開発系のプログラミング言語は環境構築が不要 or 簡単な言語が多く、情報量も圧倒的に多いので調べればたくさんの情報が出てきます。
※プログラミング学習をする上で情報量が多いことは非常に重要なので覚えておいてください
Web開発系のプログラミング言語は以下の通り、
かんたん説明
- フロントエンド:HTML&CSS、JavaScript
- バックエンド:PHP、Ruby
動画学習サービス(Udemy)で学ぶ
プログラミングを書籍で学習するのもいいですが、動画学習(Udemy)の方が圧倒的におすすめです。
僕が元々、書籍が苦手なのもありますがキーボードを打ちながら本を見るのってめんどくさいし、それだけでストレスです。
プログラミングを動画で学習するメリットについては、過去記事で解説しているのでよければ参考にしてください。
-
プログラミングは動画学習がおすすめ!本学習にないメリットを紹介
続きを見る
ちなみにUdemyを知らない人のために紹介すると、Udemyはシリコンバレー発のオンライン動画学習プラットフォームです。
日本では、ベネッセから約56億円の資金調達をしているので安心して利用できるサービスです。
Udemyについて過去記事で解説しているのでよければ参考にしてください。
-
Udemyの評判は?プログラミング学習で使いまくったのでレビューします
続きを見る
プログラミングスクールで学ぶ
僕は、パソコンの操作に慣れていない人やプログラミング完全初心者の人には、プログラミングスクールでプログラミングを学習することをおすすめしています。
というのも、プログラミング学習は完全初心者だと時間がかかりすぎる上にPC操作に慣れていないのであればプログラミング以外の部分で挫折する可能性があるからです。
プログラミングスクールで学習するメリットは以下の通り。
かんたん説明
- すぐに質問できる環境
- モチベーションを保てる
- 就職支援がある
プログラミング学習で一番もったいのは挫折してしまうことなので、プログラミング以外の部分も質問できるプログラミングスクールを利用するのがおすすめしています。
-
【大学生向け】学生エンジニアおすすめのプログラミングスクール7社【学割も】
続きを見る
まとめ:プログラミングは正しい順番で学べば難しくない
最後にこの記事で書いた内容をまとめます。
かんたん説明
- プログラミングは難しい←この誤解と事実について
→プログラミングにも種類があり全てが難しいわけではない - 「プログラミングが難しい」というイメージがある理由
→プログラミング=英語というイメージが強い
→プログラミングは理系しかできないと思っている
→プログラミングを始める前の環境構築で挫折する人が多い
→プログラミング中に起きる頻繁なエラーで挫折する - 挫折しないために正しい順番でプログラミング学習することが大切
- 挫折しないプログラミングの学び方
→難易度の低いプログラミング言語を選ぶ
→動画学習サービス(Udemy)で学ぶ
→プログラミングスクールで学ぶ
この記事が「プログラミングに興味があるけど難しそうで学ぶことを諦めている人」「すでにプログラミング学習を始めたけど難しすぎて挫折しそうな人」の役に立てば嬉しいです。