- プログラマーとして独立したいけど、どのプログラミング言語を勉強すれば良いの?
- 今からでもプログラミング言語の習得は可能なの?
今回は、こんな悩みを抱えて、フリーランスとして活動することを躊躇している社会人に向けて、フリーランスに人気のプログラミング言語と初心者が身につけるべきプログラミング言語についてご紹介しようと思います。
この記事を読めばあなたはどのプログラミング言語を習得すればフリーランスとして独立できるかを理解できるようになります。
対象としている読者は
- プログラミングの世界は今まで足を踏み入れたことがない
- 営業で外回りばっかりで体力資本の仕事から解放されたい
- フリーランスとして手っ取り早く収入を得たい
こんなことを考えているあなたにぴったりだと思います。
人気のプログラミング言語
プログラミング言語の数は世の中に無数に存在します。そんな中、フリーランスに人気の言語はズバリ次の6言語程度に絞られます。
・JavaScript
・Ruby
・SQL
・PHP
・Python
・Java
キーワードは「スマホ」と「AI」。スマホを持つことは世の中の常識になりつつある昨今、スマホに対応したアプリの開発者は需要が多く単価も高いです。
また、大手企業の多くはビジネスにAIを取り入れる傾向にあり、今後さらに拡大する市場にも関わらず、エンジニアが不足している状況にあるため、AIに関わるエンジニアは今後さらに単価の高い職業になっていくと思います。
「スマホ」と「AI」この2つに関するアプリのを開発するために必要とされているのが上記の言語です。それでは、それぞの言語について初級者向きから簡単にご紹介しましょう。
JavaScript(難易度★)
JavaScriptはWeb開発に欠かせない言語として非常に重宝されています。言語難易度も低く、Tipsもネット上に多く存在するため、初心者でも独学で習得しやすい言語です。
実際に動かしながらプログラミングを学習できるため、初心者でも楽しんでプログラミングを学べます。
また、開発案件も多いため、非常に人気な言語だと思います。
ただし、Web画面上で複雑な動きを実装するページの構築などは、複雑なロジックを設計する必要があり、言語の優しさに反して実装で求められる要件の難易度は高くなり、初心者が高額案件を得るには難しい傾向にあります。
Ruby(難易度★)
Rubyの言語は「書きやすく、読みやすい」をコンセプトとして開発された言語なので、Java Scriptと同じく初心者向けの言語です。
ただし、Web開発に使われる事が多く、高速な開発が可能であることからスタートアップ企業で特に人気があり、案件はスピードが求められるものが多いため、初心者が案件獲得するのは難しい傾向にあります。
以下のサイトからRubyの講座に受講申し込みできます。
はじめてのRuby on Rails入門-RubyとRailsを基礎から学びウェブアプリケーションをネットに公開しよう
SQL(難易度★★)
SQLはデータベースへのアクセス用の言語です。
プログラミング言語と異なり、データベースの製品が異なっていてもSQLの文法はほぼ同じため、別のデータベース製品でも流用が可能であることから活躍の場は広がります。
なお、言語の難易度に比べて、データベースの難易度は高く、データベースの設計が悪いと、SQLが複雑になるため、開発の難易度は高くなる傾向にあります。
PHP(難易度★★)
Webサービスに必要な問い合わせフォーム作成や予約システムの作成、検索機能の作成ログイン機能などの開発で使われる言語です。
シンプルな構成で初心者も理解しやすく自由度の高いため、まずはPHPの学習から始める人も多く人気の言語です。
ただし、ECサイト構築などに用いられる事もあり、開発に慣れるには比較的時間がかかることが多く、コーディングも人によって書き方が様々なため、他人の作ったコードが読みずらいなど保守性が低いことが多く、使いこなすにはそれなりの知識を必要とされる言語です。
Python(難易度★★★)
AI関連の開発、機械学習分野での需要が非常に高い将来性ある言語です。
構文規則の数が少なく、学習しやすい反面、実装する要件、機能の難易度が高いため
Pythonを使った開発に携わる機会を得るために時間がかかります。
書籍も多いため、独学でも学ぶことは可能ですが、使いこなすためには多くの時間が必要となり、初心者が手を出すべきではない言語です。
以下のサイトからPythonのオンライン講座を受講jすることができます。
Python 3 入門+アメリカのシリコンバレー流コードスタイル
Java(難易度★★★★)
Javaは現代のプログラミングの王様とも言える言語です。業務システムや大規模なWEBシステムに採用されていることが多く、高収入が期待できます。
プログラミング言語としては原始的・・・というか、コンピュータの本質・原理原則に即した優しく細かい記述を要する言語なので、Javaを使いこなせるようになれば、他の言語の習得も容易にできるというメリットもあると思います。
ただし、使いこなせると仕事に困ることはないと思いますが、習得までの難易度は非常に高く、ネット上に情報は溢れていますが、フレームワークなども細かく存在しているため、体系だって理解することは難しく、初心者が手を出すべきではない。と考えています。
意外と盲点なプログラミング言語
ここまでは「アプリ開発」の観点で人気のプログラミング言語を紹介してきました。
ここからは「通常業務のちっちゃな改善」という観点で人気のプログラミング言語についてご紹介します。ちっちゃな改善というのは、日常業務で行なわれている業務で、同じような操作を大量に繰り返し行う操作について、自動化するという改善です。
「アプリ開発」で求められるような言語ではなく、言語習得難易度も開発難易度も低いため初心者が始めやすい言語だと思います。
VBA(難易度ほぼゼロ)
VBAはマクロに毛の生えたような簡易的なプログラミング言語です。
エクセルの「マクロの記録」機能で、マウスやキーボードで操作した内容をVBAのコードに変換してくれて、実際に動かしながら動きが学べます。
また、インターネット上に使えるサンプルコードやTipsも多く存在するため、一番お手軽に始められる超初心者向けの言語です。
慣れてくればエクセル上の操作だけではなく、SQLの実行やWebページへのアクセスやデータ取得、フォームへの入力、ボタン操作など、ウェブ上の操作もVBAで構築可能です。
JavaScript(難易度★)
再登場の言語ですが、エクセルのVBA同様、GoogleスプレッドシートにもJavaScriptでプログラミングを組むことができます。考え方はVBAに近いため、VBAを学んだ後にスプレッドシートに移植しながらJavaScriptの基本を学ぶことも出来ます。
アプリ開発の観点で、網羅的に言語を学ぶのではなく、こちらからJavaScriptに触れて、そこから、「アプリ開発」の言語の学習にシフトするというのも効率的な方法だと思います。
まとめ
いかがでしたか。
今回紹介した人気の言語を学べば高収入を得る可能性は高まりますが、初心者が高額案件を獲得するのはハードルが高く、個人的にはあまりオススメしません。
そうではなく、ちっちゃな改善を繰り返せるVBAを習得して、多くの案件を経験する方がフリーランスとしての活躍の場は早く増やすことができます。
せっかく覚えたのだから、多くの案件を獲得して少しでも早く収入を増やせる方が良いですよね。
今回は、案件が取れる可能性が比較的高く習得難易度も非常に低い言語を習得する。という観点でご紹介させていただきました。