副業でのプログラミングや、会社に通勤しなくてもリモートで仕事ができるプログラマーという職業に興味をもったりする方が増えてきています。
でも、最初の一歩をどうやって踏み出せばいいのか分からないですよね。
「プログラミングを覚えたいけど何から始めたらいいのか分からない」
「プログラミングっていろんな言語あるみたいだけど、結局どれを覚えればいいの?」
「プログラミングでお金を稼げるようになるには何をしたらいいの?」
今回はこういった疑問を持っている人、プログラミングをこれから始めたい人に向けて、どんな言語があるのか、選び方、学習の仕方を紹介していきます。
目次
プログラミング初心者におすすめの5つの言語
プログラミング言語には様々なものがあります。学習を始めるにあたって、どれを選ぶのかが一番難しかったりします。
数あるプログラミング言語の中から、
- 「初心者でも学習、習得が容易であること」
- 「学習中にどんなものが作れるか」
- 「副業やプログラマーへの就職に有利であること」
- 「将来性があり、今後も需要がみこめること」
を基準にして、5つご紹介しますのでぜひ参考にしてください。
それではさっそく紹介していきたいと思います。
HTML/CSSは必須!
特徴・どんなことができるか
まずはHTMLとCSSです。
HTMLとCSSは別の言語ですが、基本的に2つ両方使われるのでセットにしています。
この言語に関しては必ず学習しておくべきでしょう。
HTML/CSSは共にWebページで使われる言語で、それぞれに役割が分かれていて、HTMLはWebページの文章の構造を作り、CSSはデザインや装飾を指定する言語です。
マークアップ言語と呼ばれ、純粋なプログラミング言語とは区別されることが多いです。
学習のしやすさ
HTML/CSSの基礎は初心者でも1〜2週間で覚えることができるくらいカンタンな言語です。
一部難しい概念があったりしますが、他の言語と比べても習得が容易です。
HTML/CSSを学習するメリット
最初に取り組む言語として理解しやすく、環境構築の必要がないのですぐに始められる。
エラーが出てプログラムが動かないとうことがないので、学習が進みやすい。
書いたものがWebページとして表示されるので、実行結果が分かりやすい。
HTML/CSSを学習するうえでのデメリット
他のプログラミング言語と違って動きをもたせることが苦手なので、Webアプリケーションを作りたい場合は、PHPやRuby、JavaScriptといった言語を学習する必要があります。
どんな人向けか
将来性
HTML/CSSはWebサイトに必須の言語のため、今後も使われていくことを考えれば、将来性は高いといえます。
ただし、PHPやjQuery(JavaScriptのフレームワークの1つ)など他の言語と組み合わせて使われることが多いので、HTML/CSS以外の言語を覚えておく必要があります。
WordPressのテーマを作りたい、カスタマイズしたいならPHP
特徴・どんなことができるか
PHPはWordPressで使われている言語として有名です。
また、Webアプリケーションを作るのにも適している言語で、MySQLなどのデータベースと組み合わせると掲示板やECサイトなど様々なものを作ることができます。
学習のしやすさ
プログラミング言語の中でもカンタンな言語です。
使われることが多い言語のため、インターネット上にたくさんの情報があり、学習の教材に困ることがありません。
エラーが出たとしても検索すればだいたい解決策が見つかります。
PHPを学習するメリット
ちょっとしたWebアプリケーションなら3ヶ月も学習すれば作れるようになります。
また企業でも使われることの多い言語のため、就職などにも有利です。
PHPが使われているものにWordPressというものがあります。
多くのWebサイトがWordPressで作られており、クラウドワークスなどでもWordPressのカスタマイズやWordPressを用いたWebサイト作成の案件が多数あります。
そのため、プログラミングで副業を始めたいという人にもオススメです。
PHPを学習するうえでのデメリット
企業などでプログラマーとしてPHPを使って仕事をする場合、Laravelなどのフレームワークをつかって開発すること多いです。
PHPをある程度学習した後もさらにこういったフレームワークを学習が必要な場合があります。
どんな人向けか
本格的なプログラミング言語を始めたい人
Webアプリケーションを作りたい人
WordPressのテーマを作りたい、カスタマイズをできるようになりたい人
将来性
WebサイトやWebアプリケーションの開発で様々な企業や案件で使わている言語のため、PHPの需要性は今後も高くなるといえます。
本格的なプログラミング言語として始めるのに最適と言えるでしょう。
日本人が作った言語 Ruby
特徴・どんなことができるか
多くのプログラミング言語は外国で生まれていますが、このRubyはなんと日本人が作った言語です。
Webアプリケーションの開発言語として使われることが多く、有名なサービスで言えば「Twitter」がRubyで作られています。
また、スマホアプリを作ることもできたりと汎用性の高い言語です。
学習のしやすさ
とても学習しやすい言語で、多くのプログラミングスクールが教えている言語です。
また、日本人が作った言語ということから日本語のドキュメントも充実しており独学にも向いています。
Rubyを学習するメリット
学習のしやすさや、記述の自由度の高さから、他の言語と比べて習得も早くできます。
WEBアプリを作っている多くの企業で採用されている言語なので、就職にも有利です。
Rubyを学習するうえでのデメリット
メリットの記述の自由度の高さという点は、言い換えればある処理に対してさまざまな記述の仕方ができると言えます。
そのため、他人の書いたコードを読むのに苦労する場合があります。
どんな人向けか
本格的なプログラミング言語を始めたい人
Webアプリケーションを作りたい人
プログラマーとして就職したい人
将来性
プログラマーとして就職をしたい場合、最初に覚える言語としてはオススメです。
しかし、案件や求人数がPHPやPythonといった言語に比べると少ないため、転職時や昇給という面で考えると若干厳しいといえます。
Rubyを覚えた後も別の言語に挑戦すると良いでしょう。
一度なにかの言語を覚えてしまえば他の言語の学習はそれほど苦労することはありませんので、これからRubyを習得しようと考えている人は安心して学習を進めていくといいでしょう。
Webサイトをより魅力的なものにしてくれるJavaScript
特徴・どんなことができるか
JavaScriptは主に、オシャレな画像のスライドなどサイトにカッコよく動きをつけ、Webサイトをより魅力的なものにしてくれます。
ですので、PHPやRubyのサーバーサイドの処理が得意な言語と違い、フロントサイドの処理が得意な言語といえます。
もちろん「Vue.js」といったサーバーサイドの処理もできるフレームワークも出てきているので、非常に汎用性の高い言語といえます。
似た名前のプログラミング言語に「Java」というものがありますが、JavaScriptとは全く別物なので混同しないよう気をつけましょう。
学習のしやすさ
PHPやRubyと同じように学習が容易で、ほんの少しのコードで動くのでプログラミングの感動をすぐに体験できます。
JavaScriptを学習するメリット
多くのWebサイトに使わている言語のため、HTM/CSSと共に習得すればすぐに副業に挑戦することができます。
また、複雑な環境設定の必要がなく、手軽に始められるのもこの言語の良さの1つです。
JavaScriptを学習するうえでのデメリット
他の言語と比べてバージョン変更で仕様が変わりやすく、以前の記述が全く使えなくなるといったことがあり、常に情報をキャッチアップして技術知識を更新していかないといけません。
「jQuery」や「React」、「Vue.js」など多くのフレームワークがあり、より高度なことをしたい場合に追加で学習が必要になってきます。
どんな人向けか
HTML/CSSを覚えて、より魅力的なサイトを作りたい人
クラウドワークスやランサーズなどで副業を始めたい人
WEB系のプログラマーになりたい人
将来性
Webサイトの作成にほぼ必須の言語となるので、JavaScriptの将来性は非常に高いといえます。
さらに各種フレームワークに習熟していると転職の際にも有利になります。
AI関連のことならPython
特徴・どんなことができるか
Pythonは文法がシンプルで初心者でも非常に覚えやすい言語です。そのシンプルさからコードの可読性が高く、多くの企業で採用されています。
Webアプリケーションはもちろんのこと、近年話題のAI(人工知能)分野の開発言語として非常に有力な言語です。
ちなみに私が個人的に一番好きな言語です。
学習のしやすさ
とても学習しやすくプログラミング未経験者が最初に始める言語として最適な言語です。
注意点としてはPython2とPython3で記述の方法に大きな違いが出ているので、今から始めるならPython3をおすすめします。
Pythonを学習するメリット
Webアプリケーションから人工知能まで幅広い分野で使われる言語のため、発展性や応用が効き覚えておいて損はありません。
特にDeepLearningや機械学習といったAIに関するアプリケーションや開発をしたい場合は必須の言語と言えるでしょう。
Pythonを学習するうえでのデメリット
AI関連に強い言語のため、副業での案件もAI関連のものが多く、初心者では難しいものばかりです。
副業を考えるなら、最初の言語としてPythonを選ぶのはあまりおすすめできません。
さらにAI分野のことをしたい場合は、Python以外にも数学の学習をする必要があります。
どんな人向けか
とにかくプログラミングを始めてみたい人
DeepLearningや機械学習といったAIに関することをしてみたい人
将来性
近年、AIを使ったソリューションが世の中で広がっていく流れが加速しています。そのため、Pythonを使える人の需要は高まっています。
またWebアプリケーションでもPythonを使っている場面が増えてきているので、非常に将来性のある言語となっています。
反面、高度な知識を必要とされるので、プログラマーとして経験のある人がPythonエンジニアとして採用される傾向が高いです。
プログラマーとして就職したい人はPHPやRubyなどを学んでからPythonに手を出してみるというのがオススメです。
プログラミング初心者のための学習する言語の選び方
今回紹介した5つの言語の選択は下記を基準にして選びました。
- 「副業やプログラマーへの就職に有利であること」- 求人や案件の数
- 「学習中にどんなものが作れるか」- どんなものが作れるか
- 「将来性があり、今後も需要が見込めること」- 将来性
ではなぜこの基準が大事なのでしょうか?
「初心者でも学習、習得が容易であること」- 学習しやすいかどうか
外国語の習得にも言語によって難易度が違うように、プログラミング言語にも概念や文法を理解するのが難しい言語があります。
またプログラミング学習ではエラーとの戦いが避けられません。
ちゃんと書いたつもりでも単純な文法ミスでエラーが発生したり、自分のPCの環境のせいでエラーが発生したりと原因は様々ですが、エラーの度に自分でググって解決しないといけません。
難しいうえにエラーも頻発してとなるとプログラミングなんてちっとも楽しいと思えませんよね。
なので、できれば学習や習得が容易な言語を選んだほうが、プログラミングの楽しさを早く体験できるし学習も続けやすいです。
「学習中にどんなものが作れるか」- どんなものが作れるか
プログラミング言語では、WebサイトやWebアプリケーション、スマホアプリなどいろいろなものが作れます。
その中には、一人でも比較的カンタンに作れるものから、大人数で何日もあるいは何年もかけて作るものもあります。
極端な例ですが、銀行のシステムの案件などは大勢の人が携わったりします。
もちろんこういったものを一人でしかもプログラミングを始めたての状態では作れません。
初めて学習するプログラミング言語を選ぶ際は、「その言語がどんな物を作れるか」と「どういった物を作りたいか」を踏まえて選ぶ必要があります。
「将来性があり、今後も需要が見込めること」- 将来性
プログラミングを趣味として習得したいという方にはあまり重要ではないかもしれませんが、もしプログラミングでお金を稼ぎたいと思っている人はこの点が一番きになるのではないでしょうか。
どれだけ学習しやすく、いろいろなものを作れる言語であっても使う企業がなければ、就職もままなりませんし、クラウドワークスなどでの案件にも期待できないでしょう。
そのため、より多くの企業やプロダクトで使われている言語、あるいはこれから使われるであろう言語を選び、スキルを身につける必要があります。
プログラミング初心者のための学習方法
学ぶ言語が決まったらいよいよ学習の開始です。
でもどのように学習したらいいのか分からないことだらけですよね。
できれば効率的に学習を進めて行きたいです。
私の経験やエンジニア仲間の経験を基にした効率的な学習方法をお教えしますので、ぜひ参考にしてください。
学習の基本的な流れはこんな感じです。
- 具体的な目標を決める
- 動画やWebサービスを活用して基礎を学ぶ&学んだことをアウトプットする
- 学んだ基礎を基に作りたいものをどんどん作る
具体的な目標を決める
まずは目標を決めましょう。
気をつけたいのは「プログラミングを学ぶ」、「HTML/CSSを覚える」、「PHPを覚える」といった漠然としたものではなく、
- カンタンな掲示板を作る
- LP(ランディングページ)のコーディングができるようになる
- PHPを使ってWordPressテーマのカスタマイズができるようになる
といった具体的な目標にしましょう。
ゴールが分かりやすければ分かりやすいほど、学習に対するモチベーションが高まります。
動画やWebサービスを活用して基礎を学ぶ&学んだことをアウトプットする
プログラミングの学習を始めるにあたっていきなり書籍で始めるというのはあまりオススメしません。
文字情報でのインプットより動画や音声でのインプットの方が理解スピードが全然違うため、プログラミング学習に特化した動画やWebサービスを使うのがオススメです。
具体的にはProgateやPaizaラーニング、ドットインストールといったものです。
特にProgateやPaizaラーニングは環境構築をせずにプログラミングを試せるという大きな利点があります。
ドットインストールはさまざまなプログラミング言語を学べる動画が揃っています。
Youtubeにもプログラミングを教えてくれる動画がありますが、いろいろな動画があるため最初はどれを見ればいいのか分からないなんてことになりかねません。
ある程度学習し、どういうことを知りたいのかをイメージできるようになってから活用することをオススメします。
また、インプットと同時にアウトプットも意識しましょう。
動画などでその時は分かったつもりで、いざ手を動かしてみると止まってしまうことがよくあります。
自分の環境でコードを書きながら、動画の解説を見るというインプットとアウトプットを同時にするのが効率の良い学習方法です。
学んだ基礎を基に作りたいものをどんどん作る
ある程度基礎を学んだら、学んだ知識を使ってどんどん自分で作品を作りましょう。
いくら動画やProgateで講義を進めてもプログラミング知識は増えますが技術が上がることはありません。
どんなものでも良いのでとにかく自分で何か作品を作るようにしましょう。
何を作ればいいのか分からないといった場合には、書籍などを参考にしてみましょう。
多くのプログラミング入門書では、文法の解説の後にTwitter風アプリなどのサンプル作品を作る流れになっているので、とても参考になります。
こちらの記事にもより詳しい学習方法を書いていますので、ぜひ参考にしてください。
時間を節約したいならスクールという方法も
独学を前提にした学習方法をご紹介しましたが、基本的に独学は時間がかかります。
理由は様々ですが、主に
- エラーばかりでなかなか学習が進まない
- 教材の内容が理解できない
- 分からないことを聞ける人がいない
といったことがあげられます。
また一人で行う場合はモチベーションの維持が難しく挫折する可能性もあります。
もしプログラマーになりたい、副業で稼げるようになりたいといった、早くプログラミングを覚えたい人はお金はかかりますが、スクールを活用することをおすすめします。
多くのプログラミングスクールでは、メンターと呼ばれる分からないことを気軽に聞ける先生のような人もいますし、プログラミング学習が続けらるようなカリキュラムや仕組みが整っています。
3ヶ月独学するのとスクールを使うのを比べると後者のほうが圧倒的にプログラミングスキルを身につけられます。
こちらの記事では目的別におすすめのプログラミングスクールを厳選していますので、ぜひ参考にしてみてください。
まとめ
いかがだったでしょうか。今回は初心者におすすめなプログラミング言語として5つほど紹介しました。
他にもプログラミング言語はありますが、難しいわりにあまり需要がなかったりするものもあります。
どうせなら覚えやすく需要がある言語を学習する方が、プログラミングスキルを活かして収入をアップさせる近道ですよね。
プログラミングに少しでも興味のある人にこの記事が参考になったらと思います。
これからプログラミングを学習する人全て
Webアプリケーションを作りたい人
クラウドワークスやランサーズなどで副業を始めたい人