プログラミング習得したいけど…何からどう始めたらいいのか迷ってるなら

悩んでる人

自分のスキルアップのために、プログラミングを習得したい。
けどプログラミングの「プ」の字もわからないし、完全なる未経験。
なるべく短時間で効率よく習得したい。
まず、何からどう動いたらいいんだろう?

といったお悩みをもった方へ向けた記事になります。

先日のツイートです。

僕が今からプログラミング始めるなら

①何作りたいかハッキリ決める
②必要な言語と技術だけ学ぶ
③不完全でいいから完成させる
④次に作りたいものを決め②へ

使いもしない技術や言語を隅々まで勉強してるの時間ムダ
今からやるなら何より先に「プログラミングはあくまで手段」ってのを頭に叩き込む

この記事を読むメリット
  • これからプログラミングを始める方が、まず何からどう始めたらいいのかがわかります。
  • プログラミング歴2年の僕が「今から始めるならこうする」と思っている動き方をまとめていますので、効率のいい勉強手順がわかり、早く稼げます。
目次

プログラミング習得したいけど…何からどう始めたらいいのか迷ってるなら

プログラミング習得したいけど…何からどう始めたらいいのか迷ってるなら

IT技術の進化が目まぐるしいこの時代、将来のことも見据え、プログラミングを学んでみたいと考えている人はたくさんいると思います。

しかし、プログラミングの「プ」の字もわからない完全初心者の方は、まず最初に何からどう動いたらいいかわからないのが現状だと思います。

まず何からやるべきなのか、次章でさっそく紹介します。

プログラミングをやる前にまず「目的」を決めよう

プログラミングをやる前にまず「目的」を決めよう

プログラミングを始めるなら、何よりまず最初に「目的を決めること」から始めたほうがいいです。

プログラミングは、あくまで「手段」でしかないからです。

「プログラミングができるようになりたい」っていうのって、「包丁を適切に使えるようになりたい」って言ってるようなもの。

  • プログラミングを習得して、どんなものを作りたいのか。
  • プログラミングを習得して、どういう働き方を実現したいのか。

小さくてもいいのでこのようにゴールを設定し、実現のためにプログラミングを学ぶのが、最も効率いいプログラミング学習方法です。

ただ単に「スキルアップ」とか「流行ってるから」っていう理由でプログラミングを始めると、目的もゴールもないので、挫折しやすいです。

「実現したい目標とかゴールを決めて、それの実現のためにプログラミングを学ぶ」

まずこれがいちばん大事なマインドなので、ぜひ意識してほしいと思います。

あわせて読みたい
勉強について。「手段を目的化」してない? 勉強する理由はなんですか? 収入を伸ばしたいから?資格を取得したいから?毎朝のルーティンであるエクセル作業を自動化したいから?自分のマイ・ホームページを作って...

そもそも、プログラミングで何ができるのかわからない

そもそも、プログラミングで何ができるのかわからない

とはいえ、プログラミングの「プ」の字もわからない初心者の方だと

プログラミング初心者

そもそもプログラミングで何ができるのかわからないし、ましてや作りたいものなんてないよ…。

というのが本音ではないかと思います。

たしかに一言でプログラマーといっても、業種、作るもの、目指すところによって習得する言語が変わってきます。

まずは、「プログラミングでできることと&実現のための言語」を紹介します。

プログラミングでできること

プログラミングでできること

プログラミングでできることは実に様々あって紹介しきれないので、本記事ではざっくり5つをご紹介します。

他にどんなことができるのかをもっと詳しく知りたい方のために、オススメの書籍も後述しています。

その①:Webサイト制作
その②:Webアプリ開発
その③:業務システム開発
その④:人工知能(AI)の開発
その⑤:ゲーム開発

その①:Webサイト制作

Webサイトやホームページを制作することができます。

マークアップ言語と呼ばれる言語を使い、Webサイトの見た目を実装する「コーディング」という作業が該当します。

また、サイトのデザインを0から考えるデザイナー的な役割と混同されがち(厳密には異なるのですが)なので、フリーランス案件ではデザイン力も一緒に求められるのが特徴。

実装自体は一般的なプログラミングに比べて難易度低いので、「正しく書いたらちゃんと動く」という体験を感じることができるため、プログラミング初学者の登竜門的な存在となっています。

これをやりたいなら、言語はコレ

HTML
CSS
JavaScript
PHP

その②:Webアプリ開発

Webアプリケーションを開発することができます。

Webアプリとは、「インストールしなくてもネット上で使えるアプリケーション」のことです。

具体的には、Twitter、Instagram、YouTubeなどのSNS、Amazonやチャットワークなど、これらはインストールなしで使えますよね(世間一般的にはスマホでアプリをとって使いますが、ブラウザでも使えます)。

①で紹介したWebサイト制作との違いは、見た目の実装ではなく、目に見えない中身(挙動や通信など)の実装です。

①を「フロントエンドエンジニア」、②を「バックエンドエンジニア」と呼んだりします。

なのでデータベースなど幅広い周辺知識が必要になるので、難易度は高いぶん収入も高くなります。

これをやりたいなら、言語はコレ

Ruby
PHP
JavaScript
Python

その③:業務システム開発

業務システムの開発をすることができます。

一般的な企業で使う、生産管理や在庫管理、勤怠管理、営業支援システムの開発が該当します。

それぞれのPCにインストールして使うものもあれば、Web上で実装する業務システムもあり、様々です。

クライアントの企業が「どんな悩みを抱えているのか」を理解するほどいい仕事ができるため、クライアントの業務内容や、それに伴う悩みをを感情レベルで理解する必要があるのが、難しいポイント。

①や②と比べるとやや華やかさに欠けますが、職人肌のエンジニアが多いため、技術重視で仕事をしたいならオススメ。

これをやりたいなら、言語はコレ

Java
C
C#
VB.NET

その④:人工知能(AI)の開発

最近よく耳にする「人工知能(AI)」の開発ができます。

AIの開発というと一見難しそうに感じますが、APIやフレームワーク(型のようなもの)を使った、簡単なAIの作成であれば、それほど座敷は高くありません。

しかし、やはり本格的なAIを個人で開発するのは難易度が高いです。

ただ、AIは今後もどんどん普及する技術なので、AIを開発する能力やそれに関する知識はこれからの時代必ず役に立つし、勉強しておいて損はありません。

これをやりたいなら、言語はコレ

Python
R
JavaScript
Julia

その⑤:ゲーム開発

プログラミングを習得すると、ゲームの開発もできます。

ゲームプログラミングも一見座敷は高そうですが、Unity(ユニティー)やLumberyard(ランバーヤード)などのゲームエンジンを使えば、比較的簡単にゲームを作成することができます。

もしゲームが好きな方なら、ゲーム開発を目的にしてみるのもおもしろいかもしれません。

しかし、本格的なものを個人で作るとなると時間がかかるしかなり大変です。

なので簡単なゲームをいくつか作りつつ、少しづつゲーム開発の概要を勉強していくのがオススメです。

しかし最初のうちは当然、クオリティが低すぎるゲームしかつくれないので、精神的に辛いかもです。

これをやりたいなら、言語はコレ

Unity(C#)
C++
JavaScript

オススメの書籍があります

プログラミングでできることを5つ紹介してきましたが、イマイチこれがやりたいってのがなかった方へ。

「プログラマーにはどんな職種や業種があるか」をさらに詳しく紹介している、以下「Web系エンジニアになろう」を読んでみることをオススメします。

こちらはエンジニアの職種や業種、将来性のある言語について、一冊を通じてかつわかりやすく網羅されています。これからプログラミングを始めたいなら、まず方向性を決めることが大切。

方向性を決めるためにも、そもそもどんな方向があるのかを正しく理解しておくのも大切。

方向性をしっかり固めるため、プログラミングを始める前にこそ目を通しておきたい一冊といえます。

目的を決めたら、必要な部分だけ学ぶ

目的を決めたら、必要な部分だけ学ぶ

目的を決めたら、あとはそれに必要な部分だけを勉強するのがいいと思います。

何を勉強するにしても、目的がないと勉強は永遠に終わりません。

例えば海外旅行に行くために英語を学ぶなら、極端な話、以下を勉強すればOKですよね。

  • ホテルのチェックインで使う言葉
  • レストランでの注文や、トイレの場所を聞く言葉

プログラミングに関してもこれと同様で、作りたいものが明確なら、それに必要な技術だけを学べばOKなわけです。

ずっと参考書を読むだけとか、プロゲートを何周もしたいたって、目的は達成できません。

最初に定めたあなたの「目的」をなる早で達成するために、まず手を動かしましょう。

とりあえず稼ぎたいなら

とりあえず稼ぎたいなら
プログラミング初心者

いろんな種類があるのはわかった。
でも特に、「〇〇をやりたい」みたいなのはなくて。
黒い画面にカタカタ文字を打ってお金を稼ぐという経験をしたい。

とりあえず難しいことは抜きで、手っ取り早く「プログラミングでお金を稼ぐ」ってことができるようになりたい。

このように考える人もいると思います。

そういう方には、前述したプログラミングでできること①「Webサイト制作」を選択するのがオススメ。

理由は以下の通りです。

  • 難易度が低く、比較的勉強の時間もかからないから
  • 人気の言語のため、ネット上に情報がたくさんあるから

初学者でとりあえずプログラミングで稼ぎたいなら、まず「プログラムを正しく書いたらちゃんと反応する」という体験を得るために、この言語からスタートすることをオススメします。

・・・・・・・・・

ちなみに余談ですが、Webサイト制作に使われる言語「HTML/CSS」はプログラミング言語ではなく「マークアップ言語」と呼ばれる言語で、プログラミングとは少し性質が異なります。

とはいえ書くのは結局コンピュータへの命令なので厳密には「プログラミング」なのですが、それを邪道だとかいってプログラミングと認めない方もいます。

スクールという手もあり

スクールという手もあり

これからプログラミングを学ぶのであれば、プログラミングスクールを使うこともオススメの手段です。

理由は以下です。

  • 効率のいい学習手順がわかるから
  • 分からなくて躓いたら聞ける環境であるから

やはり独学では、「自分が学びたいこと」に重点が傾きがち。

また、独学でエラーが数日解決できないとかなりシンドくて、挫折の原因になります。

「独学で十分、スクールは必要ない」みたいな意見も一定数ありますが、僕個人的にはスクールの利用は大いにありだと思っています。

勉強時間を短縮させることで、独学勢よりも早く実践のフェーズに突入できることからです。より早く実践のフェースに突入することで、スクール代を回収することができます。

かの有名な迫さんも、著書「人生攻略ロードマップ」にて、スクールに通うことを強く推奨しています。

僕自身もプログラミング情報サイト「プログラミング副業の教科書」にて、最短で稼ぐならスクールの利用を推奨の旨回答させていただきました。

未経験から稼げる副業プログラマーへの最短ルートは?|現役プログラマーに聞いてみた

オススメのスクールについてはググればいくらでも出てくるので、端折ります。

まとめ

以上、「プログラミング習得したいけど…何からどう始めたらいいのか迷ってるなら」でした。

冒頭でも述べてますが、これからプログラミングを始めたいのであれば「プログラミングを学ぶことの目的」をハッキリ明確にすることが大切です。

ひとつ目的やゴールを定めて、それに向かって必要な部分だけを学んでいきましょう。

そうすることで、ムダな勉強時間を短縮することにもつながります。

あわせて読みたい
【体験談あり】プログラミングがつまらないのは、前進してる証です プログラミングもっとできるようになりたいけど、つまんなくなってきたし、楽しさがイマイチわからない。諦めて別のことやろうかな。やっぱり趣味でプログラミングして...
あわせて読みたい
Web制作は9割挫折します。その原因と対策3つ【もし挫折したら】 Web制作を勉強してるんだけど、挫折しそう。 Web制作の勉強、挫折しちゃった。最近ぜんぜんやってない。 一回挫折しちゃったんだし、もう多分向いてないっしょ。 といっ...
あわせて読みたい
たしかにエンジニアって、性格悪い人多いかも【理由&対策】 エンジニアって性格悪い人多くない?上から目線で、嫌味くさいし偉そう。IT業界ってそんなもん?それとも僕が合ってない? とお悩みの方へ向けた記事になります。 先日...
目次