プログラミング初心者は全員必読!【1人前のプログラマーへの道程】
「プログラミングって何かよくわからない。」
「何から勉強すればいいの?」
「効率よくプログラミングを身に付けたい。」
などを考えたことはありませんか?
近年義務教育としてプログラミングの授業が加わったり、人工知能やIotという言葉が話題になったりしていることからプログラミングに対する関心が高まっています。
その一方で、独学でのプログラミング学習は挫折率が高く、なかなか多くの人が続けづらいという状況もあります。
そこで、プログラミング初心者が学習前に知っておくべき知識や成功する学習法をご紹介していきます。
この記事はプログラミング初心者の以下の方に読んでいただきたいと考えています。
- プログラミング学習を成功させたい方
- 基礎からプログラミングについて知りたい方
- プログラミングを仕事にしたい方
なお、この記事はとても長いので、目次から見たい箇所から読んでいただくことをオススメします!
知っておきたいプログラミングの基本
「プログラミングとは何をするもので、何ができるのか」
これを理解しておくことで、プログラミング学習者は目的がはっきりとし勉強を続けることができます。
プログラミングとは、コンピューターに指示を与え動かすこと
プログラミングとはソフトウェアの動作の順番を記述していくことです。
人間に指示を出す時は自分たちの使っている言葉を使用しますが、コンピューターに指示を与える時は、コンピューターが理解できる言葉を使用する必要があります。
それがプログラミング言語です。
つまり、コンピューターに「このように動いて!」と指示をすることがプログラミングといえます。
簡単に説明しましたが、プログラミングについてより詳しく知りたい方は以下の記事をご覧ください。
プログラミングとは料理と同じ!?初心者でもあっという間に理解できる
プログラミングでできること
プログラミングの技術を使えば、主に4つのものを作ることができます。
・アプリケーション
・ゲーム
・システム
・ロボット
私たちが普段使っているスマートフォンそのものも、アプリケーションもプログラミングによってできています。
それだけではなく、エアコンやテレビなどの家電製品にも組み込まれています。
また、上記以外にもプログラミングでできることは多くあります。
具体的なプログラミングでできることは以下の記事で紹介しているのでぜひ読んでみてください。
プログラミングでできること・作れるものを言語別に解説
プログラミングの重要性
2020年から小学校でのプログラミング教育が開始するなど、なぜプログラミングが近年注目されているのかご存知でしょうか?
インターネット社会で、IT人材が不足してる
経済産業省によれば、2018年時点で約22万人のIT人材が不足しているという結果になった。さらに、IT人材不足は今後ますます深刻化し、(中位シナリオの場合で)2030年には、約44.9万人の人材が不足するとの推計結果が得られた。
インターネットの登場により、私達の生活には急速にITが普及しました。
今や必ず1人1台はスマートフォンを持っています。
また、IoT化により、将来は数兆個のモノがインターネットにつながる社会が訪れると言われています。
その社会を支えるのは、ITエンジニア・プログラマーであり、どの企業でもIT人材が不足しています。
そのため、政府は2020年からプログラミングの義務教育化など、IT人材の育成に力を入れています。
プログラミングに関するよくある誤解
「プログラミングは、情報学科の専門学生の方や理系の大学生しか理解できない難しいもの」
「英語ができないとプログラミングもできない」
プログラミングはこういった誤解を受けやすいです。
しかしながら、プログラミングは誰でも学習することができます!
初心者からプログラミング学習を学べるDMM WEBCAMPでは、実際に受講生様の95%以上の受講生がプログラミング未経験となっております。
では実際に以下の誤解についてみていきましょう。
- 社会人で活躍している20代のプログラマーのうち、40%は文系出身者
- 普通の文系学生がプログラミングを自ら学習している
- プログラミングに使う英語は中学レベルで問題ない
- ビジネスマンがプログラミングを学習するブームが雑誌で特集されている
- プログラミングのイメージがない著名人も実は学習している
社会人で活躍している20代のプログラマーのうち、40%は文系出身者
IT人材白書2017によると、IT企業のIT技術者の最終学歴の専攻が文系だった割合は以下の通りです。
文系出身者が年々増えているだけでなく、プログラマーは昔から文系職出身の方も多い職業です。
普通の文系学生がプログラミングを自ら学習している
近年の就活では本格的な採用時期より前に企業で短期間の就労体験をしたり、難易度の高い課題を行う「インターンシップ」が流行しています。
その多くはIT企業ですが、インターンを通して文系の未経験の学生も「プログラミングを学習すことが今後の社会に重要である」と感じ、学習を始める学生が急激に増加しています。
プログラミングに使う英語は中学レベルで問題ない
プログラミングを書く際には英単語を使ったり、最新の情報を知るには英語の記事を読むこともあります。
そのため、「英語が苦手だから自分にはプログラミングが無理な気がする」と思っている方はいませんか?
しかし、プログラミングに使われる英語は中学生レベルです。
自分の英語レベルを心配してプログラミングを学ばないのは、とてももったいないことです。
プログラミング入門者に高度な英語の能力は必要とされないので、問題ないです。
英語力にどうしても不安のある方や英語を使用する場面について詳しく知りたい方は、以下の記事を参考にしてみてください。
エンジニアに必要な英語のスキルと勉強法【現役エンジニアに聞いてみた】
ビジネスマンがプログラミングを学習するブームが雑誌で特集されている
・AI(人工知能)、IoT
・シンギュラリティ(機械が人間の頭脳を超える)
・ビックデータ、機械学習
などビジネスマンに関係する話題も多くあります。
日本トップレベルの発行部数を誇るビジネス誌が特集を組むこともあるほど、プログラミングはポピュラーになってきているのです。
プログラミングのイメージがない著名人も実は学習している
なんとなく、「プログラミングができる人はあまり多くなさそう」と思っていませんか?
実はプログラミングができる著名人は多く、
・クリス・ボッシュ(バスケットボール選手)
・山崎邦正(お笑い芸人)
・GACKT(ミュージシャン)
・小川麻琴(元モーニング娘。)
など、まったくプログラミングのイメージがない著名人の方でもプログラミングができる方がいます。
プログラミングに対する誤解について説明してきましたがいかがだったでしょうか。
自分もプログラミングを学習してみたい!と思った方には、初心者でも確実にプログラミングスキルが身に付く【DMM WEBCAMP】がおすすめです!
97%以上の受講生がプログラミング初心者からのスタートであるため、ライフコーチによる手厚い学習サポートが受けられます。
また、プログラミングの基礎知識からしっかり身につけられるコースも用意されており、安心して学習を進めていくことが可能です。
国内最大級のプログラミングスクール【DMM WEBCAMP】なら
✔受講生の97%が未経験からのスタート!
✔一人一人に合わせた学習計画で進められるため、仕事や学校と両立できる!
✔分からないことは、講師にチャットやビデオ通話で好きなだけ質問可能!
\簡単30秒!まずは無料体験!/
初心者でもプログラミングは独学できる!
「まずは独学でプログラミングをやってみたい」と考える人も少なくないでしょう。
プログラミングはハードルが高いイメージがありますが、独学でも習得できるのでしょうか?
結論から言うと、初心者からの独学でもプログラミングスキルは習得可能です。
今では書籍や学習サイトなど、プログラミングを学習する方法がたくさんあります。
そのため以前よりも初心者がプログラミングを始めるハードルは下がっているのです。
ただし、独学を成功させるためには正しい手順で学習を進めることが大切。
次項からは、初心者に適したプログラミングの学習方法をステップ形式でご紹介します。
初心者のプログラミング学習の始め方【5つのステップ】
初心者がプログラミング学習で挫折しないためには、正しい順番を把握しておくことが大切です。
では、どういった順序で学習を進めればよいのでしょうか?
ここでは、初心者に適したプログラミングの学習手順を5つのステップ形式でご紹介していきます。
- 学習の目的を考える
- 作りたいものを決める
- 学習する言語を決める
- 環境を構築する
- 実際に学び始める
それでは順番に見ていきましょう。
❶学習の目的を考える
まずは学習する目的を考えましょう。
プログラミング学習は、目的を持つことで成功へと繋がります。
あなたはどうしてプログラミング学習を始めようと思ったのでしょうか?
プログラミングに興味を持った理由や、どうして学習したいのかを考えてみましょう。
とはいえ中には、「どうやって学習の目的を決めればいいのかわからない」と悩んでしまう人もいるかもしれません。
そんな方は、以下の2つの方法を試してみてください。
- メリットから学習目的を決める
- 興味のある職種から学習目的を決める
それぞれ詳しく見ていきましょう。
メリットから学習目的を決める
メリットから理想の将来像を想像すれば、プログラミングを学習する目的が見つかるかもしれません。
ここでは、以下の通りにそれぞれの立場にあったプログラミングスキルを身につけるメリットをご紹介します。
- 転職者
- 就活生
- 大学生
- 社会人
- 自営業
- 起業家
- ビジネスマン
- フリーランス
- 在宅勤務をしたい人
転職に役立つスキルになる!
プログラマー・ITエンジニア等の、IT人材は、2030年には44.9万人不足すると予想されています。
今後もプログラミングの需要が多く、スマホの普及やIoT社会の発展によりプログラミングを使う職業は将来性の高い職業です。
また、プログラミングを理解しているビジネスサイドの人材であっても、開発サイドとのコミュニケーションが円滑になるため、大きなアピールポイントとなります。
未経験からのプログラマーへの転職を目指している方はこちらの記事も参考にしてください。
就活でアピールするスキルがつく!
就職活動をしている学生の方で「自分にはアピールできるスキルがない、、」と悩んでいる方も多いのではないでしょうか?
プログラミングができれば、確実にあなたの武器になります。
新卒採用でのITエンジニア職は入社後に研修がある企業も多く、プログラミングスキルが即戦力レベルでなくても大丈夫です。
自発的に学習し、スキルを身につけることで自分の選択肢を広げることができます。
自分の成長になるインターン・アルバイトができる!
プログラミングができれば、普通のアルバイトよりも高い時給で、自分のスキルアップになる仕事をすることができます。
自分の成長につながらず、シフトの時間が終わるのを待つバイトをしている大学生は、プログラミングスキルを習得して、スキルアップできるインターンやアルバイトをしましょう。
未経験であっても1から教えてくれるインターンやアルバイトもあります。
副業で稼げるようになる!
プログラミングができると、副業ができるようになり、本業以外の収入を増やすことができます。
システム開発の仕事の規模は大規模なものから小規模なものまでたくさんあり、小規模な案件は企業ではなく個人に依頼されることが多いです。
案件の単価は1ヶ月の期間で20万〜100万ほどの報酬が出ます。
スキルを磨けば、週末エンジニアやリーモートワークでお金を稼ぐことも可能です。
実際、DMM WEBCAMPの卒業生の方から「受講料以上の値段で納品ができた!」という声が寄せられています。
\オンラインで学習可能/
DMM WEBCAMPの詳細をみる
※教室利用も可能
エンジニアとしての副業について知りたい方はこちらの記事を読んでみてください!
自分の会社のサイト・予約システムを安価に作成できる!
いまや自社のHPやWebサイトを持っていない企業はほとんどありません。
会社のHPを外注して作成する場合、30万〜100万円ほどの費用がかかり、なかなか発注できないこともケースも多いです。
しかし、プログラミングが出来れば、自分でWebサイトの作成をすることが可能となり、無料で自社のサイトや予約システムを作ることができます。
コストを抑えて理想のシステムを作り、効率よく仕事を進めることができます。
自分のアイディアを形にできる!
起業志望の方で、アイディアはあっても、サービスにするまでには時間やお金がかかりすぎるので断念する人が非常に多いです。
しかし、プログラミングができるとパソコン1台あれば自分のサービスをコストを抑えてスピーディーにつくることができ、また改善のサイクルを高速で回すことができます。
そのため、プログラミングスキルがあるだけで仕事を生むことができます。
ITリテラシーを高めることができ、ルーティンワークも削減できる!
現代の仕事はすべてITと密接に関わっています。
そのIT技術や人工知能はすべてプログラミングによって生み出されています。
プログラミングを学び、ITの裏側の仕組みや開発の工程を知ることで、ビジネスでの提案力の向上・プロジェクトの見積もり・新しいアイディアの創出に繋がります。
また、社内にエンジニアの人がいる場合には、プログラミング知識があるだけでコミュニケーションの円滑化に繋がります。
また、日々の手作業で行っているルーティンワークを自動化することができ、人間にしかできないクリエイティブな仕事に時間を充てることができます。
案件が多く、食いっぱぐれない!
フリーランスとして活躍したい方は、プログラミングスキルを身につけるのをおすすめします。
一定期間ある会社のプロジェクトに参加するような形や、クラウドソーシングサイトで案件を獲得する方式など、プログラミングスキルがあれば働き口に困らなく、ライフスタイルに合わせて仕事量も調整できます。
高いスキルがあれば、高単価の案件を獲得することができ、さらに紹介が回ることで、継続的に自由に仕事ができます。
フリーランスで活躍するプログラマーを目指している方はこちらの記事を参考にしてください。
非公開: 【最強マニュアル】フリーランスプログラマーへの近道はコレだ!
家事と両立して在宅ワークで仕事ができる!
主婦やママさんのプログラミングブームが来ています。
プログラミングはパソコン1台あればどこでも仕事ができるため、子育てや家事と両立して自宅で仕事をすることが可能です。
また、女性の在宅ワークに理解のある企業も増えてきているため、プログラミングスキルを使って仕事がしやすいです。
主婦の方や在宅ワークに興味のある方はこちらの記事も参考にしてください。
家で気軽にできる仕事とは?仕事内容から始め方までをご紹介!
このように、様々な立場の人にとって、プログラミングスキルを身に付けることは多くのメリットがあります。
キャリアアップや就活での武器、ワークライフバランスとしてのスキルとして、プログラミングを学ぶことで理想のライフスタイルの実現が可能です。
興味のある職種から学習目的を決める
プログラマーと一言でいっても、さまざまな職種があります。
携わる分野によって必要なスキルは異なるため、はじめに決めておくことも大切です。
では、プログラマーにはどのような職種があるのでしょうか?
ここでは、さまざまなプログラマーの職種をご紹介します。
興味のある仕事内容や目指す職業を見つけ、プログラミング学習の目的にしましょう。
プログラマー
- WEBプログラマー…WEBサイトを作るプログラマ―
- スマホアプリプログラマ―…スマホのアプリを開発するプログラマ―
- ゲームプログラマー…ゲームを開発するプログラマー
- 業務系プログラマ―…経理システムなど業務に携わるシステムを扱うプログラマ―
- 組み込み系プログラマ―…デジカメなど電子機器を扱い、組み込むプログラマ―
- 汎用系プログラマー…汎用機で動くシステムを開発するプログラマー
上記の職業の詳しい業務内容や必要言語、難易度については以下の記事で紹介しています。
プログラマーの仕事内容を解説!SEとの違いややりがい、必要なスキルと資格とは?
❷作りたいものを決める
まずは作りたいサービスを決め、ゴールを設定しましょう。
作りたいものを決める方法は2通りあります。
プログラマーの仕事は「課題解決」です。
自社の業務を効率化させたり、社内の情報共有を活発にするツールをつくりたいというクライアントの要望に対して、ITの力を使ってソリューションを行います。
自分の身の回りで困っていることを思い出し、問題を解消するサービスを考えることが大事です。
「こんなサービスがあったらおもしろい!」
「昔から作ってみたかったものがある!」
という方は、自分の興味から考えてサービスを作りましょう。
学習では「楽しい!」と思えることが一番の原動力になります。
自分がワクワクするものをつくりましょう。
なかなか思い浮かばない場合は、学習していくうちに自分の作りたいサービスが見つかるので、まずはプログラミングの基礎が学びやすいサービスを作りましょう。
一旦はTwitterやFacebookのようなSNSのサービスや、料理や写真の投稿型サイトのようなものをつくるのがおすすめです。
❸学習する言語を決めよう
作りたいサービスが決まれば、次は学習する言語を決めましょう。
世の中には200種類以上のプログラミング言語があります。
その中で、ゼロから効率よく学習したい初心者の方に制作したいサービス別におすすめの言語を紹介します。
Webサイトを制作したい方:HTML、CSS、JavaScript
自分でWebサイトやHPを作りたい方は、HTML、CSS、JavaScriptを学習しましょう。
HTML、CSSはWebサイトの見た目を作るための技術です。
正確にはプログラミングではありませんが、プログラマー・ITエンジニアのほとんどが使用できるので、マストで学習しましょう!
JavaScriptはWebサイトに動きをつける言語です。
ボタンを押すと振動するようなアニメーションや、通販サイトのトップページで画像がスライドショーになっているような場合、このJavaScriptが使用されています。
こんな記事もおすすめです
Webアプリを学びたい方:Ruby on Rails、PHP、Python
SNSのようにログイン機能があるサービスや、お問い合わせフォームがあるサイトを作りたい場合はWebアプリケーションができる言語を学習しましょう。
Ruby on Rails、PHP、Pythonがおすすめです。
特にRuby on Railsは「Ruby」という言語のフレームワーク(一般的な機能を持つ共通コード)で、これを使いこなせれば誰でも本格的なプログラミングを短い時間で行いやすくなるため、Webサービスを運営する企業で使用されるケースが増えています。
こんな記事もおすすめです
iosアプリを学びたい方:Swift
iPhoneのアプリケーションを作りたい場合は、Swiftを学習しましょう。
2014年に出来たばかりの言語で、iosアプリの普及を目指し、誰もが開発しやすい言語として急成長中です!
こんな記事もおすすめです
Androidアプリを学びたい方:Java
GALAXYなどのAndoroid端末のスマートフォンのアプリケーションを作りたい場合は、Javaを学習しましょう。
Javaはアプリだけでなく基幹業務システムなど、BtoBの大規模開発で使われることも多いプログラミング言語で、一度習得すれば仕事に困ることはありません。
ただ、まったくの初心者が学習するには難しいとされています。
アプリ開発以外の目的でJavaを学習したい場合は、同じようなシステム開発ができ、初学者にもわかりやすいRubyを学習するのがおすすめです。
こんな記事もおすすめです
【初心者向け】独学でJavaプログラミングを学ぶ4つのステップ
ゲームを開発したい方:C#、Unity
ゲームを開発したい方は、C#とUnityを学習しましょう。
C#はゲーム開発で主流のプログラミング言語です。
しかし、Javaと同様に初学者にはハードルが高い言語なので、学習には根気が必要です。
Unityはプログラミング言語ではなくゲーム開発環境のことです。
2Dゲーム、3Dゲームともに作成することができ、VRアプリケーションもUnityで開発することができます。
ゲームを作りたいという方は、こんな記事もおすすめです
C#やUnityの勉強方法についても記載しています。
初心者でもプログラミング独学でゲームは作れます【1から徹底解説】
とにかくプログラミングを学びたい方:Ruby on Rails、PHP、Python
具体的に作りたいサービスがない人は、Webアプリケーションが作れて、また初学者が理解しやすいRuby on Rails、PHP、Pythonを学習しましょう。
どの言語も、代表的なSNSサービス開発に使用されています。
・Ruby on Rails:Twitter
・PHP:Facebook
・Python:Instagram
こちらの記事からあなたに最適なプログラミング言語を発見できます!
「もっと詳しくプログラミング言語について知りたい!」という方は、以下の記事をご覧ください。
【初心者必見】将来性のあるプログラミング言語とは❹環境構築をする
学ぶ言語が決まったら、開発環境を整えましょう。
開発環境とは、プログラミング言語を扱う場所です。
実はWindowsのメモ帳でもプログラミング用のコードを書くことはできますが、通常はテキストエディターをダウンロードして使用しましょう!
制作物別にエディターがあるので自分にあったものを選びましょう。
ダウンロード方法も紹介しています。
Ruby on RailsでWebアプリケーションを作りたい方:Ruby on Rails
Ruby on Railsを学習したい方は、使用しているパソコンにRuby on Railsをインストールしましょう!
【詳しい手順】
Mac用
参考
Ruby on Rails 4.2 を Mac OS X にインストールする手順をかなり丁寧に説明してみましたOIAX
Windows用
参考
Ruby on Rails 4.2 を Windows にインストールする手順をかなり丁寧に説明してみましたOIAX
PHPでWebアプリケーションを作りたい方:MAMP
PHPを学習したい方は、MAMPまたはXAMPPをインストールしましょう!
【詳しい手順】
Mac用
【初心者向け】MacでPHPを使う時の開発環境の作り方【MAMP】
Windows用
参考
【XAMPP】Windowsの自宅PCでPHP開発環境を立てるのらくらプログラマーがゆく。
iosアプリを作りたい方:Xcode
Swiftを学習したい方は、Xcodeという開発環境をインストールしましょう!
XcodeはMacのみ対応しています。
【詳しい手順】
【初心者向け】SwiftをXcodeで利用する手順を詳しく解説
Androidアプリを作りたい方:Android Studio
Androidアプリを学習したい方は、Android Studioをインストールしましょう。
【詳しい手順】
参考
Android Studio のインストールdevelopers
こんな記事もおすすめです
【初心者・入門者向け】Androidアプリをプログラミングする方法
ゲームを作りたい方:Unity
ゲームを作っていきたい方は、Unityをインストールしましょう。
Unityは比較的簡単に環境構築ができますが、機能がたくさんありいろいろ遊びがいがあると思います!
こんな記事もおすすめです
Unityの学習に最適な勉強方法も以下の記事で紹介しているので参考にしてみてださい。
【初心者向け】多機能すぎるUnityの使い方がわかるサイトを紹介
Unityのインストール方法は以下の記事で詳しく紹介しています。
Unityのインストール方法を初心者もわかるようにシンプルに紹介
環境構築にあまりにも時間がかかる場合は、ブラウザ上で扱える開発環境で学習をしましょう。
そこに時間がかかって挫折するのはもったいないので、そんな時はブラウザ上で作動するオンラインでのエディターを使用して学習していきましょう。
❺実際に言語を学習していく
これで言語を学習していく準備は整いました。
早速学習していきましょう!
どの言語でも、基本的な学習方法は以下のようなステップで行われます。
勉強方法は後程記述しますが、勉強のし易さは言語によって変わってきます。
実際にコードを書いてみることで、より理解が深まります。
何度も実際にコードを書いてみることで、体が覚えていきます。
とにかく最初は「どういう理屈でそのコードが動いているかは完全に理解はできていないけど、エラーが出ずに実行できている」という状態を目指しましょう。
どの言語にも共通して言えるのは、概念をインプットして、理解しながらアウトプットする作業を何度も行うことです。
最初から完璧な理解は目指さず、お手本のコードを書きましょう。
+α パソコンの選び方
また、実際に勉強を始めるときに、どんなパソコンを使えばいいかわからない方も多くいると思います。
多くの方は、MacとWindowsで悩みますが、プログラミングをするのにはMacがおすすめです。
Macは「ものづくりのためのパソコン」であるため、サービスを作っていくプログラミングには最適であるためです。
こちらの記事では、詳しいMacとWindowsの比較をしています。
迷っている方にぜひ読んで頂きたい記事です。
プログラミングを学ぶならMacがおすすめ【WindowsとMacを比較】
プログラミング初心者の方はこちらの記事も参考にしてみてください。
安くMac bookを手に入れる方法も紹介しています!
プログラミングに最適なパソコンは?選び方の5つのポイントとおすすめのモデル
プログラミングを学ぶならDMM WEBCAMPがおすすめ
ここまでプログラミング学習の5つのステップと+αパソコンの選び方を解説してきましたがいかがだったでしょうか。
正直、1人でこのステップを踏むのは難しく感じますよね。
そんな方には、基礎からしっかりプログラミングが学べる【DMM WEBCAMP】がおすすめです。
DMM WEBCAMPなら、最短”1ヶ月”でスキルを習得!
✔プログラミングをはじめ、デザインや動画など様々なコースをご用意!
✔未経験者向けのオリジナルカリキュラムでエンジニアを目指せる!
✔プロの現役エンジニアが学習ペースをしっかりサポート!
\簡単30秒!まずは無料体験!/
プログラミング学習の手段4選【本/Webサービス/勉強会/スクール】
プログラミングは、独学であっても学習方法を間違えることがなければ、身に付けることができます。
しかし、独学でのプログラミング学習は挫折してしまうことも多いので、楽しくプログラミング学習を続けることが大切です。
本だけでなく、アプリやインターネット上のオンライン教材で勉強する方法など様々な独学での勉強法があるので、自分にあったもので勉強を続けましょう。
ここからは、プログラミング入門者にオススメする勉強方法について紹介していきます。
プログラミング初心者が学習する方法として以下の4つの方法があります。
- 本で学習する
- webサービスを利用して学習する
- 初心者向けの勉強会に参加する
- プログラミング教室やスクールで学習する
1つづつ、メリットとデメリットを踏まえてご紹介していきます。
❶本で学習する
多くの人が慣れ親しんでいる書籍で学習する方法です。
・体系的に学習できる
・信頼できる情報が多い
・スキマ時間で学習できる
・情報が古い可能性がある
・専門書なので値段が高い
・わからないことがあったら解決できない
まずは書籍でしっかり学習したい方は、言語ごとに初心者向けの本をまとめてあるので以下の記事を参考にしてみてください!
【激選10冊】独学でプログラミングを学べる本をご紹介!
❷Webサービスを利用して学習する
インターネット上のWebサービスでは、無料でプログラミングを学べるサイトが多くあります。
・手軽に学習を開始できる
・無料の教材が多い
・キーボードや映像を使って学習できる
・本と比べると振り返りがしにくい
・疑問を質問できない
最初のプログラミング学習としてWebサービスは利用しやすいのが特徴です。
無料で利用できるサービスもあり気軽に始められるため、プログラミングの向き不向きの確認にも最適です。
ここでは初心者の方におすすめな3つのWeb学習サイトをご紹介します。
- ドットインストール
- Progate
- Schoo
それでは順番に見ていきましょう。
ドットインストール
(出典:ドットインストール)
「ドットインストール」は、3分動画でプログラミングを学習できるサービスです。
短い動画で学習できるのに加えてスマホでも視聴できるため、スキマ時間にも勉強できます。
基本的な知識は無料で見れるため、ぜひチェックしてみてください。
Progate
(出典:Progate)
「Progate」はゲーム感覚でプログラミング学習ができるサービスです。
イラストを中心とした解説を読み、学習した内容を問題形式で解いていきます。
実際にコードを書いていくため、しっかりと知識が定着します。
学べるプログラミング言語の種類が多いのもProgateの魅力です。
Schoo
(出典:Schoo)
「Schoo」は、生放送の視聴でプログラミング学習ができるサービスです。
プログラミング以外にもマネジメントスキルなど、ビジネスに関連するさまざまな授業を受けられます。
リアルタイムで授業を受けられるため、講師とコミュニケーションが取れるのがSchooの魅力。
無料でも利用できるのでぜひチェックしてみてください。
気になる学習サイトはありましたか?
さらに多くの学習サイトが知りたい方にはこちらの記事もおすすめです。
質問サイトやチュートリアルも活用しよう
プログラミング学習を進めていく中で、自分の力だけでは解決できない問題が多く出てくると思います。
そこで、疑問を解消したり応用的な知識を学ぶことが、成長するために必要となってきます。
ここでは、その疑問を解消することができるStack OverflowとQiitaを紹介します。
Stack Overflow
Yahoo!知恵袋のプログラマー版ともいえる、Stack Overflow(スタックオーバーフロー)です。
このツールを使えば、プログラミングに関してわからないことがあれば誰でも質問ができ、誰でも解答ができます。
また、同じような質問がないか検索することもできます。
プログラミング学習を進めていく上で、つまずいた時に質問できる環境があるのはとても嬉しいですよね。
Qiita
実際にコードを書いているプログラマーやエンジニアが気づいた点などを共有できるツールです。
コードを書いたことのない人は、このようなエンジニアの発信している情報をみてモチベーションアップに繋げてみてはどうでしょうか?
❸初心者向けの勉強会に参加する
プログラミングは初心者向け〜上級者向けに向けて、基礎から最新技術までたくさんの勉強会が活発に行われています。
勉強会に参加することで、以下のようなメリットが得られます。
・新しい知識を得ることができる
・自分の知識をアウトプットできる
・学習へのモチベーションが上がる
勉強会に参加し、新たな情報がインプットされ、自分の知識をアウトプットすることができるので、とても良い勉強法の1つです。
❹プログラミング教室などで学習する(おすすめ!)
スキマ時間に効率よくプログラミングを学習したいという方には、プログラミングスクールがおすすめです!
受講料はかかってしまいますが、短期間で効率よくプログラミングスキルを習得することが可能です。
【DMM WEBCAMP】なら、初心者向けに開発された独自のカリキュラムと充実した学習サポートで、挫折することなくプログラミング学習を進めることができます!
また、学習を進めていく中で分からないことが出てきたときは、 チャットもしくはビデオ通話でメンター(講師)に好きなだけ質問をすることができます。
オンラインと教室受講のどちらも可能なので、あなたのライフスタイルに合わせて好きなコースを選択してみてください!
\生活スタイルに合わせた3パターン/
受講内容はこちら!
プログラミングスクールを比較して紹介している、こちらの記事であなたにあったプログラミングスクールを探してください!
以下の記事では、オンラインで学ぶことができるプログラミングスクールを紹介しています。
オンライン対応のプログラミングスクール6社比較【2022年版】
「プログラミングスクールが多すぎて、どれがいいのかわからない」と言う方にはこの記事を読んでいただきたいです。
非公開: 【2022年】プログラミングスクールおすすめ9校を項目別に紹介
+α 学習する前に知っておきたいこと
プログラミングの独学は挫折しやすい?
プログラミングを学習できる環境は整っているため、様々なツールを活用すれば教材に困ることはないでしょう。
ただし、本や学習サイトで独学で学習するのは非効率です!
なぜならプログラミング初心者は独学だと挫折する可能性が非常に高いからです。
「わからない点があっても質問することができない」ことは非常に大きな壁になります。
「何を学習したらいいかわからない」
「専門用語が多すぎて理解できない」
「エラがー出た時に1人だと解決できない」
「そもそも概念が理解できない」
といった理由が重なり、自分で解決するにはひとつひとつに時間がかかってしまうため、最終的に挫折してしまうケースが非常に多いです。
独学では時間を多く使います。
時間を無駄にせずに、最短で学習するためにはプロから直接指導を受けるのが最も効率が良いです。
DMM WEBCAMPでは確実にプログラミングを学習するためにライフコーチによる徹底的したサポートや学習効率を最大化する学習環境で全力であなたを後押しします!
未経験者にも易しいオリジナル教材とチャットもしくはビデオ通話を使ったメンター(講師)への質問し放題でつまづきや不安といったモチベーションをコントロールし、自分のペースで学習を進めていくことができます。
\オンラインでプログラミング学習/
DMM WEBCAMPの詳細をみる
※最短1分で申し込み可能
独学の勉強方法について詳しく知りたい方はこちらの記事をご覧ください。
簡単にプログラミング学習が始められる学習サイトを紹介しています。
オンラインでプログラミングを学習できるサイト10選!選び方や独学のコツも解説
プログラミング初心者が学ぶのに必要な学習時間とは?
プログラミング初心者が取得しやすい言語である、RubyやPHP、Pythonを適切な学習ステップと指導を受けることができれば、未経験の人であっても、オリジナルの簡単なアプリを作るのに必要な勉強は200時間ほどです。
簡単なプログラミングのためのアプリであれば、数日間の学習時間で開発することができます。
勉強時間200時間ほどで作れるアプリ
おみくじアプリ
制作時間、3~5時間
選択肢を3つ作成し、どれかひとつを選ぶと「大吉・中吉・小吉・吉・凶」の5段階の運勢をランダムに表示するアプリケーションです。
じゃんけんゲーム
制作時間、5~10時間
「グー、チョキ、パー」のどれかをクリックすると、コンピューターも同時にランダムで手を出し、勝ち負けを判定するゲームです。
仕組みを理解しながら作成することができます。
メモ帳アプリ
制作時間、10~20時間
メモを作成し、それを保存し、また新しいメモを作成することができるアプリケーションです。
いきなりオリジナルのサービスを開発するのではなく、プログラミングを理解しながら、小さい制作物を作ることでモチベーションも継続しやすいです。
まずは気軽に簡単なアプリを開発してみましょう。
学習を継続させるために意識すること
筆者もプログラミング学習を挫折した経験がありますが、ここで紹介していることを行えば、プログラミング学習を続けることができました。
ぜひ参考にしてみてください!
プログラミングへのモチベーションを上げる
プログラミングに限らず何かを続けるにはモチベーションの維持が大切です。
以下のことを意識して、日々のモチベーションを保ちましょう!
・プログラミングスキルを習得するメリットを知る
・プログラミング仲間やコミュニティを作る
以下の記事ではモチベーションが上がらない原因と、挫折から立ち直った方法を消化しています。
実際のプログラマーのブログを読んでもモチベーションをアップさせましょう。
プログラミング初心者のモチベーションがあがる!参考ブログ7選!
プログラミングスキルを習得するメリットについてもう一度考えてみましょう。
プログラミングでできること・作れるものを言語別に解説
効率的な学習方法のコツを知る
効率的な学習にはコツがあります。
無駄な時間を過ごさず、成功するやり方を身に着けていきましょう!
5つの効率的な学習のコツを紹介していきます。
- エラーの解決方法を知る
- 簡単な開発をしてみる
- コードに慣れる
- 必要なものだけ優先して学習する
- 独学にこだわらず、知り合いやスクールを頼る
❶エラーの解決方法を知る
プログラミングにはエラーがつきものです。
質問できる環境がない場合は、自分で解決する術を身に着けましょう。
どうしても解決できないエラーがある場合は、
「質問サイトを活用する」
「検索して解説サイトを見つける」
といった方法がおすすめです。
プロのITエンジニア・プログラマーも、実は「自分でエラーを解決する」術を身につけています。
そのため、数多くのリファレンスサイトや情報共有サイトが存在しているのです。
❷簡単な開発をしてみる
学習に行き詰った時は、簡単なサービスでもいいので今ある知識を駆使して開発してみましょう。
プログラミングはものづくりです。
学習している時より、開発している時のほうが楽しいので、モチベーションが復活します。
❸コードに慣れる
プログラミングでは自分の手で書いたものが動く経験が何より大事です。
自分の頭で考えてできないときは、とにかくお手本となるコードをひたすら打って「写経」していきましょう。
コードを打ち続けていくうちに、自分がわからないところを認識できたり、コードに慣れることができます。
この記事内で紹介している、学習サイト”Progate”では、実際にコードを書きながら学習できるのでおすすめです。
❹必要なものだけ優先して学習する
一度にたくさんの知識を覚えようとすると混乱します。
まずは必要最低限のことをしっかり学習し、確実に自分のスキルになった後に新しいことに挑戦しましょう。
初心者の方でしたら、まずはHTMLとCSSから学習を始めましょう。
DMM WEBCAMP MEDIAでは、初心者の方に向けたHTML、CSSの技術記事を発信しているので参考にしてください!
❺独学にこだわらず、知り合いやスクールを頼る
プログラミングを勉強する意志はあっても、書籍や学習サイトを使った独学に限界を感じた場合は、プログラミングスクールに通って効率的に学習しましょう。
プログラミングの学習を挫折してしまう人は、約9割と言われています。
しっかりと学習に集中できる環境があることが、着実にスキルを身に付けることへ繋がります。
プログラミングスクールの選び方を知りたい方はこちらの記事を読んでみてください!
非公開: 【2022年】プログラミングスクールおすすめ9校を項目別に紹介学びを人生に活かす方法
プログラミングスキルを身に付けたら、そのスキルを活かせる仕事をしましょう!
ここでは7つの方法をご紹介します。
- キャリアにつなげるためにするべきこと
- ITエンジニア・プログラマーとして【転職】する
- ITエンジニア・プログラマーとして【就職】活動をする
- プログラミングのインターン・アルバイトをする
- プログラミングの副業をしてみる
- フリーランスのITエンジニアを目指す
- 在宅でプログラミングの仕事をする
キャリアにつなげるためにするべきこと
ここでは、プログラミングを使う職業へ繋げるためにするべきことを3つ紹介します。
- ITエンジニア、プログラマーの適性判断をする
- オリジナルの作品を創る
- 積極的に勉強会に参加する
❶ITエンジニア・プログラマーへの適正の判断をしよう
プログラミングはしっかりとした手順を踏んで学習することで、誰もがスキルを身につけることができます。
しかし、自分がプログラミングを用いる仕事に向いているのか見極める必要があります。
プログラマーやエンジニアに向いているような人は、主に以下のような方です。
・最新技術を身に付けていくのが楽しい
・複雑な問題を分析し、ひとつひとつ解決したい
・とにかくコードを書いているのが楽しい
このようなことを感じている人は、職業に向いています!
どのような人がプログラマーやシステムエンジニアに向いているのか、もっと詳しく知りたい方は、こちらの記事を参考にしてくみてください。
プログラマーに向いている人・向いていない人【”楽”と感じるのはどんな人?】
❷オリジナルの作品を創り切る
開発したサービスや作品は、あなたのプログラマー・ITエンジニアとしての実績となるので、「ポートフォリオ」と呼ばれるものを作りましょう。
これは、企業の選考の際に「プログラマー・ITエンジニアとしてのレベル」を判断してもらう材料となります。
特に、ポートフォリオは実務経験がない人にとって、自分のスキルを証明するものとなります。
インターネットに一般公開することで、多くの人の目に止まる可能性もあります。
自分の開発へのフィードバックや評価がもらうことで、次の開発に活かすことができます。
WEBデザインのポートフォリオを作成したい人は、こちらの記事を参考にしてください。
❸積極的に勉強会に参加する
学習方法で紹介した初学者向け勉強会だけでなく、上級者向け勉強会にも参加しましょう。
最新技術を学習することでスキルアップしたり、人脈を広げることができます。
また、自分の今のスキルレベルを知ることができ、モチベーションアップにもなります。
ITエンジニア・プログラマーとして【転職】する
未経験からプログラミングを学んだからには、将来性の高いITエンジニア職での転職を目指しましょう。
まずは「レバテックキャリア」や「DODAエンジニアIT」といった転職サイトや転職エージェントサービスに登録するのがいいです。
特にIT業界への就職が初めての人にとっては、業界について聞けると安心して就職ができます。
自己分析や業界研究を行い、志望動機や職務経歴書を作成し、選考に臨みましょう!
未経験からのIT業界への転職を考えている方はこちらの記事で詳しく紹介しているので参考にしてください。
ITエンジニア・プログラマーとして【就職】活動をする
就活生なら、学んだスキルを活かして新卒でITエンジニアを目指しましょう。
ITメガベンチャー企業の多くは新卒ITエンジニアを募集しています。
また、ITエンジニア採用は実は人脈が大事でので、インターンやイベントに参加しましょう。
短期でのITエンジニアインターンや学生ITエンジニア向けのイベントも数多く開催されています。
プログラマーへの志望動機の書き方に困っている方はこちらの記事をご覧ください。
【例文あり】未経験からプログラマーに応募する時の志望動機とは
プログラミングのインターン・アルバイトをする
大学1・2年生なら、プログラミングスキルを活かした長期インターンやアルバイトをしましょう。
レベルの高い環境で自分のスキルを高めながら給料をもらえ、人脈を広げることもできます。
良い企業に出会えるように、インターン・アルバイト募集サイトから応募したり、イベントに積極的に参加しましょう。
インターンシップを考えている方には、以下の記事も参考にしてみてください。
バイトでプログラミングスキルを使うこともできるので、以下の記事を参考にしてみてください。
【在宅バイトが大学生におすすめな理由】職種6つと稼げるスキル
プログラミングの副業をしてみる
ビジネスマンの方や主婦の方は、お小遣い稼ぎや生活の足しにするために副業をしてみましょう。
ランサーズやクラウドワークスといったクラウドソーシングサイトからシステム開発の案件に応募しましょう。
大規模な案件から、小規模な案件もあるので、現在の自分のスキルや使える時間を判断して、少しずつレベルアップしていってください。
フリーランスのITエンジニアを目指す
本業で会社に所属して開発経験を積んだり、副業で週末ITエンジニアとしてスキルアップした後は、フリーランスを目指すのも一つの選択肢です。
実務経験が2~3年あり、ある言語や環境に特化したスキルがあればフリーランスになることは可能です。
スキル次第では、会社勤めよりもフリーランスのほうが収入が高いので、是非目指してみてください!
フリーランスを目指す方は、こちらの記事を参考にしてみてください。
非公開: 【最強マニュアル】フリーランスプログラマーへの近道はコレだ!
在宅でプログラミングの仕事をする
主婦やママさん・将来は家庭に入りたいキャリアウーマンで在宅ワークを希望される方は、実務経験や副業の経験を積み、リモートワークが可能な会社と繋がりを持ちましょう。
在宅の仕事はすぐに獲得するのは難しいですが、たくさんの仕事をしていくことで、高いスキルレベルと人脈を形成することができれば、在宅ワークの案件も獲得できるでしょう。
クラウドソーシングだけでなく、リアルな人との繋がりを大事にしましょう。
在宅ワークに興味がある方は、以下の記事も参考にご覧ください。
家で気軽にできる仕事とは?仕事内容から始め方までをご紹介!
未経験でも在宅プログラマーになるために必要なこととは?仕事内容や年収は?
プログラミング初心者によくあるQ&A集!
プログラミングをはじめようと思っている人や、プログラミングを学習し始めた人によくある疑問をまとめした。
Q:プログラミング学習をはじめたのですが、学習方針が定まらず学習が進みません。どうすればいいですか?
A:学習の目的をはっきりさせましょう。
初心者の方でよく「とにかくプログラミングができるようになりたい!」という方がいらっしゃいますが、プログラムを作ることはあくまで手段であり目的ではありません。
何をしたいのかにより、学習するべき言語は変わります。
そして、目的がない状態でプログラミングを覚えようとし、挫折する方が多いです。
「Javascriptで画像をスライドショーさせるページが作りたい」なのか、「メールやチャットの自動返信機能を実装したい」や、「ぷよぷよのようなゲームを作りたい」など、目的を持つことで、それを作り上げるためにたくさん調べ、結果的にJavascriptが使えるようになります。
Q:プログラミング初心者の大学生です。どの言語を学習するのがおすすめですか?
A:初心者の大学生にはRubyの学習がおすすめです。
大学生はプログラミングを学習した後、
「インターンでスキルを磨く」
「自分でWebアプリを作ってみる」
「就職活動で活かす」
などの選択肢があります。
Rubyは汎用性が高い言語とされ、はじめにRubyを学習していけば、PHPなどの他の言語を学びやすいとされているため、いろんな選択肢に対応することが可能です。
学生インターンを募集する企業はWeb系の企業が多く、扱っている言語もRubyなどのWeb系の言語が多いです。
仮にインターン先の企業がRuby以外の言語だとしても、同じWeb系の言語ですので、少ない学習時間で他の言語にもすぐに対応できるようになります。
また、Rubyは数百人の大規模開発ではなく、1人〜数十人の小規模開発に向いている言語です。
そのため、自分1人でアプリケーションを作成するのに向いています。
就職活動の際にも、自分でアプリを作成した実績を企業が評価してくれるため、アイディアをすぐ形にしやすいRubyがおすすめです。
DMM WEBCAMPではRudyを使ってWebアプリケーション・サービスを開発するための技術を学ぶことができます。
ご自身のライフスタイルに合わせた受講の仕方ができるので学生の方にもおすすめのプログラミング教室です。
\生活スタイルに合わせた3パターン/
受講内容はこちら!
Q:プログラマーになりたいのですが、資格を取る必要はありますか?
A:資格はあまり関係ありません!
プログラマーの仕事は特に資格がなくても始めることができます。特にWeb系のプログラマーになりたい場合は、資格よりも開発経験が大事です。必要な資格は、就職してから会社で習得することも多いです。
しかし、就職する会社によっては「基本情報処理技術者」を持っていると評価されることがあります。
業種によっては、資格を持っていることが必須の会社もありますので、自分がどうしても特定の職業のプログラマーになりたい場合は募集要項をチェックしましょう。
Q:Webデザイナーになりたいのですが、プログラミングもできた方がいいですか?
A:コーディングもできるデザイナーは市場価値が高いです!
Webデザイナーは、Webサイトのデザインをする職業です。
Webサイトが制作される流れは、Webデザイナーがイラストレーターなどのツールを使ってデザインし、それを元にコーダーと呼ばれる人がデザイン通りにHTML/CSSのコードを書いてきます。
HTML/CSSのコーディングは正確にはプログラミングではないのですが、RubyやJavascriptを扱うWebプログラマーはみなHTML/CSSを扱えます。
Web制作会社ではコーダーが足らないことも多く、Webデザイナー目指すのであれば、デザインだけでなくサイトを実際に書いていく側の技術を持っていることで、より企業に求められる人材になることができます!
未経験からwebデザイナーを目指す場合について知りたい方はこちら!
【未経験】本気でWebデザイナーを目指す人がするべきことQ:まずは昔からあるC言語やC#を学習していきたいのですが、初心者には難しいですか?
A:プログラミングをまったくやったことのない初心者にはC言語やC#はおすすめしません。
C言語やC#は初心者には難易度が高く、挫折してしまう可能性が高いからです。
初心者はまずRubyやPythonといった言語を一つ目の言語として学習し、「プログラミング」に慣れるのがおすすめです。
プログラミングそのものに慣れた後に、二つ目・三つ目の言語としてC言語やC#を学習していくと、スムーズに学習することができるでしょう。
Q:Javaは案件数が多いと聞いたのですが、初心者にJavaの学習はおすすめですか?
A:初心者にはJavaの学習はおすすめしません。
Javaは世界でも広く使われている言語であり、最初から便利なライブラリ(実用的な機能がすぐに使えるまとまったコードの塊)が存在しているので、情報を集めやすく、すぐに実用しやすいというメリットがあります。
とはいえ、初心者がJavaを簡単に扱えるケースは少ないです。
Javaは画面に数文字を表示するようなごく簡単な指示を出すににも、たくさんのコードを書く必要があります。
Rubyなら数行で済みます。
プログラミングそのものが初心者の場合、少ない行数で書くことができ、すぐに反映される言語のほうが「プログラミングそのもの」への理解が進みやすく、モチベーションも保ちやすいため、そういった点でJavaはおすすめしません。
Q:言語ごとの書籍ではなく、プログラミングそのものを理解したいのですが、おすすめの書籍はありますか?
A:アルゴリズムの概念を理解できる書籍です。
プログラミングにはアルゴリズムという答えを出す手順があります。
小学校の算数の文章問題でも、答えを出すのにいくつかのやり方がありましたよね?
それと同じで、プログラミングも出したい答えに対して、いくつかの選択肢があります。
適切に使いこなすことで、計算効率の良いプログラム、すなわち処理の早いプログラムを開発できるようになります。
使いやすいサービスになります。
アルゴリズム学ぶことはプログラミングの基礎を学ぶことです。
サッカーでいえばボールを蹴ること、野球でいえばボールを投げること、国語でいったら漢字を覚えることと一緒です。
以下におすすめの入門書を紹介します。
まとめ
いかがでしたか?
プログラミング初心者がゼロからプログラミングを学習していく方法や、スキルを得た後に出来ることを解説していきました。
プログラミング初心者はわからないことだらけで、最初は大変なことが多いと思いますが、「わからないなりに進んでいく」経験はとても大事です。
少しでもプログラミングを学習しようと思っている方は、ぜひ学習を初めてみてください!