初めて学ぶプログラミング言語を選ぶ際に注意するべきこと

その他個人的なこと
この記事は約7分で読めます。

みなさん,こんにちは.
シンノユウキ(shinno1993)です.

久しぶりにYoutubeで動画を見ていたら,プログラミング・スクールの夏期講習についてのプロモーションが流れてきました。「夏の間にプログラミングを勉強してITのわかるビジネス・パーソンに!」みたいな内容でした。プログラミング学習のニーズが,全体的に高まっているのだなと感じました。

そこで今回は,「プログラミングを勉強してみたいなぁ」と考えていらっしゃる方のために,初めて学ぶプログラミング言語を選ぶ際に注意するべきことを紹介したいと思います。

ではいきましょう!

大前提:やりたいことが実現できるプログラミング言語を選ぶ

初めてプログラミングを学習する際に,まず大前提となることを提示しておきます。

それは「やりたいことが実現できるプログラミング言語を選ぶ」です。「プログラミングやりたいなぁ」と考えている方は,それによって何かしらのやりたいことを実現したいと思っているはずです。SNSサービスを構築してみたい,機械学習をやりたい,スマホアプリを作りたい,日々の作業を効率化したいなどなど。それぞれの方に,それぞれのプログラミング言語を学んで実現したいことがあるかと思います。それに合致するプログラミング言語を選ぶことが大前提となります。

それに合致するプログラミング言語だと,

  • 学習すべきことが明確になる
  • 学習のためのモチベーションが継続する

などなど,自分の目的を達成できるだけでなく,プログラミング言語習得に際しても多くのメリットがあります。以下では色々なことをいいますが,これが大前提となります。やりたいことが明確でもなお,「この2つの言語のどっちを選ぼう?」なんてことは当然あるかと思いますので,そういった際は以下で紹介する基準等を参考にしてみてください。

注意すべきこと①学習環境が整っていること

勉強するための環境が整っている言語を選ぶことは,初学者がスムーズに学習するためには必須なことです。

近年では,Web上でプログラミングを学習するためのサービスが多く登場しています。その代表的なものは「Progate」でしょう。スライド形式のレッスンを受けた後,それを実際にコーディングし,動かすことができます。このような体験は書籍を読むだけでは難しいもので,Webサービスが得意とするものと言えるでしょう。

Progateに似たようなサービスでは,Pythonに特化した「PyQ」があります。こちらのサービスでは,Pythonの基本に加えて,データサイエンスや機械学習,Webアプリケーションの構築まで学習できます。その他でいうと,「ドットインストール」のような動画で学習できるサービスもあります。

Webサービスばかり紹介してきましたが,学習環境という括りの中には「書籍の充実度」も含まれます。体系的に学習できる書籍があれば,初学者の段階でつまずくことを減らせますし,中級者へのステップアップも容易になります。書籍は,言語自体のアップデートが頻繁に行われるものだったり,ニッチすぎるものは出版されづらかったりしますので,昔から言語仕様が変更されておらず,かつ利用者の多い「Excel VBA」に関する書籍はたくさん出版されています。

学習環境の観点からプログラミング言語のオススメをご紹介するならば,先に紹介した「Progate」で学習できるプログラミング言語はオススメということになります。Progateで,私が「特に充実しているなぁ」と感じるのが「HTML & CSS」と「Ruby on Rails5」のコースです。これらの言語に関する充実度は,多くのプログラミング言語を学習できるProgateの中でも特に高いと感じています。これらの言語を学習する際は,Progeteによる強力なサポートを得られるということになりますので,プログラミング言語を選ぶ際の重要な基準となることは間違いないでしょう。

注意すべきこと②すぐに活用できること

すぐに活用できることは,学習のモチベーションを維持するために必要かと思います。

すぐに活用できるというのは,プログラマーとして生計を立てたい方は就職が容易なプログラミング言語ということになるでしょうし,ノンプログラマー(プログラミングが本業でない)の場合は実際の業務で活用できるものになるでしょう。加えて,大前提としてお話した「やりたいことが実現できるプログラミング言語」というのも,これに含まれるかと思います。

就職が容易なプログラミング言語として,よく知られているのは「Java」だと思います。やや下火な印象こそありますが,Javaが使えれば,未経験でもとりあえず就職はできるということはよく耳にします。Web系だと「PHP」や「Ruby on Rails」が人気な印象です。
逆に「Python」は将来性こそ抜群なものの,まだ十分な求人数がなく,機械学習やデータサイエンス等の専門性と組み合わせないと,満足できる就職は難しいかもしれません。

ノンプログラマーの場合は,Excelで使える「VBA」,GoogleスプレッドシートやGmailなどのGoogleが提供するアプリケーション群で利用できる「GAS」だと,業務での活用がイメージしやすいかと思います。逆に「Java」等を勉強しても,普段の業務でアプリケーション等を作成しないのであれば,業務に活かすことは難しいかもしれません。

注意すべきこと③ハードルが低いこと

始める(試してみる)ためのハードルは,低ければ低いほどいいです。

プログラミング言語の中には,それを始めるための環境構築に,異常なまでの手間と時間がかかるものが存在します。サーバーを用意して,開発環境(エディタ)をインストールして,フォルダの構成を整えて,意味不明な呪文を入力して…などなど,「実際にコードを書くまでが大変」ということはよくある話です。

もちろん,これらを構築することも必要なことですが,初学者の間はできるなら避けたいところです。コードを書くまでに挫折してしまったら,プログラミングの楽しさも何もわからずに嫌になってしまいますからね。環境構築は,コードを書いて,実際に動く楽しさがわかった後でも遅くないかもしれません。

そういった観点でオススメなのは,VBAGASです。VBAは Excel(Office)が,GASはブラウザとGoogleアカウントがあれば,すぐに始めることができ,特段の設定が不要なので,始めるハードルはかなり低いと言えます。

逆に,Web系の言語(PHP,Ruby)だと,ローカル環境を構築するのは結構大変かもしれません。その場合,cloud9等のクラウドサービス等を利用してみるのも一つの手です。加えて,Progate等の学習サービスを活用して,まずは環境構築を行わずにコードを書いてみるのも良いでしょう。その後に環境構築に取り組むと,活用のイメージが形成されているので,スムーズに行いやすくなる可能性があります。

注意すべきこと④主流であること

プログラミング言語に限ったことではありませんが,その学ぶ対象がそれらの分野で主流のものであると便利です。

たとえば,PHPで何かしらのフレームワークを使えるようになりたい!となった場合。「CakePHP」や「Laravel」などが主流でしょうか。逆に「CodeIgniter」や「FuelPHP」は,主流とは少し外れるかもしれません。この場合,まず選択肢に入れるべきは,「CakePHP」や「Laravel」となります。これは,その言語の使いやすさ等の優位性とは関係がないものです。

主流だと,インターネットなどで検索した際に多くの情報があります。なので,エラーが起きた際も,検索でたくさんの情報がヒットしますので,解決もしやすいかと思います。さらに,主流であれば,体系的なテキストや学習のためのプラットフォームが整っていることが多いかと思いますので,これも学習を効率的にしてくれます。これらも,主流のものを選択するメリットです。

まとめ

今回は,初めて学ぶプログラミング言語を選ぶ際に注意することを紹介しました。

繰り返しになりますが,基本的には「自分のやりたいことが実現できる言語」を学習することが最善で(ある程度は)必要なことだと感じます。

本記事が「プログラミング始めてみようかな…」と考えていらっしゃる方の助けに,少しでもなれば幸いです。

タイトルとURLをコピーしました