【完全保存版】プログラミング初心者が最初にやるべき12のコト

prg13
兵政和
書いた人 兵政和

こんにちは!侍エンジニア塾のヒョウです!

プログラミング初心者の方は、まず何からやればいいのかわからなかったりしますよね。

僕も当時はどこから手をつけていけばいいのかさっぱり。

「無駄な勉強はしたくないし、挫折もしたくない」こんな思いも抱えていました。

そこで今回は、プログラミング初心者の方に向けて「まず最初にやるべき12のコト」を専門用語を使わずに優しい例題を出しながら徹底的に解説しました!

完全な未経験から2ヶ月でエンジニアになることができた僕の実体験も含んでいます。

これを読み進めていけば、無駄なく効率的に、プログラミング学習を進めることができて、挫折することなく脱初心者になることができます。

それではどうぞ。

この記事の目次

1.まずはモチベーションをつくるべし

prg1

まずプログラミングというものを知る

まずは、

「プログラミングとはそもそもなんぞ?」

と、このようになっている方のために、プログラミングとは何かを解説していきましょう!

まずはWikipedia先生を見てみると、

コンピュータのプログラミング(英: programming)とは、コンピュータプログラムを作成することにより、人間の意図した処理を行うようにコンピュータに指示を与える行為である。(出典:wikipedia

なるほど。よく分かりませんね。

要するにプログラミングとは、「コンピューターへ指示を書くこと」です。

これができると、Web上でなんでもできます。

自分が欲しいものを自分で作って使うことができるようになるんです。

もっと詳しく解説した記事を丁寧に分かりやすく書きましたので、ご覧くださいませ!

プログラミングを学ぶ理由を明確にする

プログラミング初心者にとっては、モチベーションが全てといっても過言じゃないです。

「プログラミングを学んでなにがしたいのか」という目的があった方が絶対に習得率はあがります。

例えばですけど、ただ闇雲に英単語帳をぺらぺらめくっていても英語はしゃべれませんよね?

「一生に一度くらいはパツキンのおねーちゃんと付き合いたい!」という目的(野望)があって始めて英語を学ぶ意欲が湧いてきます。

このようにまず自分のテンション、モチベーションがあがるような目的を見つけましょう。

僕はこちらの記事を見てモチベーションがあがりました。

個人的に3Kのイメージが強かったエンジニア職ですが、完全に固定観念だったと思い知ったのです。

※3K = きつい、帰れない、給料安い

本当になんでも良いと思うので、プログラミングを学んでこれがしたい!こうなりたい!というテンションが上がるものを考えてみてください。

プログラミングを学ぶメリットを知る

何事にも言えることなのですが、ただ学ぶのと学ぶとどんなことが得られるのかを知っているのとでは、モチベーションは段違いですよね。

プログラミングを学ぶことで収入が上がったり、アプリケーションが作れるようになったり、自由な時間が増えたりと様々なメリットが浮かんでくると思います。

ただ、それって学習に時間を割いてコツコツと取り組み、「習得」してようやく得られることですよね。

学んでみてしっくりこなかったら、「時間の無駄になるのでは?」と思ってしまう方もいるかもしれませんが、ご安心ください。

プログラミングは学ぶだけでも、物凄いメリットがあるんです。

こちらの記事ではプログラミングを学習することで実際にどんなメリットが得られるのかをご紹介していますので、モチベーションを向上させるのにぜひ役立ててください。

モチベーションを保てない時は

最初は高いモチベーションを保ってプログラミング学習をしていたものの、いつしか

  • プログラミングが一向に上達しない…
  • 頑張って勉強しているのに…
  • どうすればいいんだろう?

となってしまうことは誰にでもあります。

モチベーションを維持できなくなってしまう方のほとんどは「いつしかプログラミングを学ぶことが目的になっている」ことが原因となっています。

重要なのは「目的・目標を決めること」です。

こちらの記事を読んでいただいければ、あなたの目的・目標の改善点が見つかりますので、モチベーションの向上にぜひ役立ててみてください。


2.目的によってプログラミング言語を選ぶべし

2439

各言語でできることを知ろう

目的を明確にしたら、次にプログラミング言語を選びましょう。

プログラミング言語は世界になんと200種類以上あると言われています。
その中から、あなたの目標や目的に合ったプログラミング言語を選びます。

「プログラミング言語選びは、エンジニア人生を決める」と言われているくらい大切です。

ただ、いきなりプログラミング言語を選べ!と言われても難しいですよね。

コツとしては、「作りたいものから考える」ことです。

作りたいモノは大きく分けてこの3つに分けられます。

  • WEBサービス & WEBアプリケーション
  • ゲーム
  • スマホアプリ

それぞれ、適したプログラミング言語があります。
自分の作りたいモノを作れる言語を選びましょう。

作りたいもの別のプログラミング言語選びはこちらから。

プログラミング言語に迷ったらこれ

「作りたいモノ」といきなり言われても思い浮かばない人もいるでしょう。
実際僕も全然イメージがわかなかったです。

そんな人には、以下のポイントを踏まえて、言語選定するのをおすすめしています。

  • スマホアプリではなくWebアプリから始めること
  • 汎用的であること
  • 習得が容易であること

簡潔に一言でいうなら、「WEBプログラミングからやる」ことです。

その中でも、

  • Ruby
  • PHP
  • Python

この3つのどれかかからやるのがおすすめです。

言語選定に関してはこちらも参考にしてみてください。

3.プログラミングに必要な環境や道具を整えるべし

prg2

プログラミングができる環境を整える方法

プログラミング初心者にとっての学習は、「環境」がかなり大事です。
道具や場所などの環境を整えることによって学習効率は2.3倍変わってきます。

僕は家で集中できないタイプだったので、時間を見つけてはカフェなどにこもって学習していました。

居心地の良いカフェを見つけて、その中で集中するための方法なんかも使っていました。

PCもプログラミング学習がしやすいMacを買い、ポケットwifiを準備してもくもくとやってました。

それと、「忘れてはならない準備」があります。

「よしっ!プログラミング勉強するぞ!」と思い立っても、まずはあなたのPCで「プログラミング言語を扱える環境」を作らなければいけません。

その事前準備を、「開発環境の設定」「環境構築」と言います。

プログラミング初心者の最初の難関になるのが、この事前準備です。
中級者でも場合によっては1日〜2日ほどはまってしまいます。

僕も当初はかなり苦戦しました…

具体的な開発環境の構築の仕方は、ドットインストールがわかりやすいのでおすすめです。

ローカル開発環境の構築 [Windows編] (全10回)
ローカル開発環境の構築 [MacOS X編] (全9回)

プログラミングの環境をもっと簡単に整えたいとき

WEBプログラミングをすぐにでも学習したい方は、「Cloud9」という便利なツールを使えば、こういったプログラミング環境を整えるというやっかいごとから全て解放されるので、まずはそれを使うことをおすすめします。

僕もこれを活用しましたが、かなりの優れもので、苦戦する前に知りたかったですね。(笑)

詳しくはこちらから

4.仲間やコミュニティをつくるべし

prg3

コミュニティーを作るメリット

プログラミング学習をしているとどうしてもエラーにぶつかってしまったり、わからない問題があったりして気持ち的に萎えてしまいます。

僕も一人で学習しているときはそれの対処法がわからずもがいていました。

ただ、一緒にプログラミングを学習する友達をもったり、プログラミングスクールに参加すると、疑問点が共有できたりして、ほんとにモチベーションが保てました

思い返せば学校での授業も、周りに一緒に学ぶ同士がいたから続いて身になったのだと思います。

取り組んでいる箇所や、上手くできたところなどを軽く発信しあったりして褒めあったり、刺激しあったりするのも効果的で良いですね。

仲間とやる「スクラム勉強法」がおすすめ

あの名ドラマ「ドラゴン桜」で知られた「スクラム勉強法」はご存知でしょうか?

プログラミング習得には膨大な単元を学習する必要がありますよね。

一人でコツコツ、コツコツ。ひたすらコレです。

正直、さじ投げちゃいますよね。

そんな時におすすめしたい「スクラム勉強法」は「ドラゴン桜」の中では世界史の単元が多いということで効率よく勉強する方法として紹介されてました。

学習塾メイツさんのサイトでも記事にしてある通り、とっても有効な学習方法なんですね!

簡単に説明すると、

世界史は範囲が広いし、一人でやるには大変!
⇒数人で全範囲を別けてやろう!
⇒担当者は他の人にも分かるようにまとめないといけないから、丁寧になるよね!
⇒一人じゃ挫折しちゃうけど、仲間がいると心強いよ!
⇒責任が伴うから、ちゃんと勉強するね!

といった感じです。
要は、分担作業ということですね。(出典:学習塾メイツ)

学習メイツさんの記事でも解説してある通り「スクラム勉強法」は、プログラミングの学習を単元ごとに仲間で分けて、教えあうという勉強法です。

基礎項目だけは独学で勉強して、その先の中級レベル以上の単元について仲間と分け合って学習した後でお互いに教えあうことで知識が定着するし、何より効率がむちゃくちゃ良いです!

僕も実際にプログラミング仲間を見つけて、教えあいながら学習しました。

きちんと教えるためにお互いに良い感じで責任とプレッシャーがあって、勉強にも気合いが入りました!

5.エラー解決法を心得るべし

prg4

プログラミング初心者にとって最大の難敵は、「エラー」です。

このエラーによってモチベーションが下がってしまったり、しまいには学習がストップしてしまうこともあります。

しかし、エラーを出すことは悪いことではありません。
プロの方でも全体の8割の時間はエラーと戦っていたりします。

問題はその解決法です。

エラーの解決法を知っているかどうかで、プログラミング学習の捗り方は段違いです。

ポイントは「検索の仕方」と「質問サービスの使い方」です。

こちらで詳しくまとまっているので参考にしてみてください。


6.目的に必要なものだけを徹底的に学ぶべし

prg5

プログラミング学習はとても範囲が広いです。

上でも説明した通り、プログラミング言語も数百種類あったりします。

しかし、当然ですがそれらを全て覚える必要はありません。

ですが「じゃあどれを覚えればいいの?」と思いますよね。

加えて、「どんな順番で取り組めばいいの?」とも感じると思います。

そんな疑問にこちらで答えていますので、参考にしてみてください。

まずは、最低限必要なものを正しい順番で学ぶことによって学習が効率的に進みます。

7.効率的なプログラミング勉強法を知るべし

prg6

僕は当初、「プログラミング学習は全て暗記しなきゃいけない」と思っていました。

プロの方は文法や細かいルールなどが全て頭に入っていて、すらすら出てくるものだとも思っていました。

ですが、まずこの考え方がダメでした。

プログラミングは暗記ではなく、理解です。
それに気づいてから、プログラミング学習がさらに楽しく思えるようになったのを覚えています。

それに関してはこちらがとても参考になります。

それと、コードも全て手書きでやるものだと思っていました。
何百、何千行という量を全て自分で書くものだと。

その勘違いを覆してくれたのがこちらの記事なので参考にしてみてください。

8.基礎学習は取り組みやすい学習サイトから入るべし

prg7

ここからは実際にプログラミング学習に入ります。最初は「動画学習」をすることをおすすめします。

その理由は、難しい用語が出てきてもなんとなく進めていけるので、挫折しにくいからです。

ドットインストールをやる

動画学習サイトで、最もおすすめしているのが、ドットインストールです。

ドットインストールは初心者からプロまで使う超優良サイトです。

仮にWEBプログラミングを学んでいくとすると、まず「HTMLとCSS」を学習するのが良いでしょう。

その次に、「Ruby or PHP」でサーバーサイドを学習します。

さらに詳しいことはこちらに載せていますので参考にしてみてください。

プログラミングの楽しさを体感するProgate

もしWEBプログラミングを学んで行く場合は、ドットインストールと並行して、Progateでの学習もおすすめです。

Progateは、まるでゲームをやっているかのようにプログラミング学習ができる、かなり楽しいプログラミング学習サービスです。
レベルシステムなどもあるのですが、僕もレベル上げが楽しくなりすぎて1日5時間とかやってしまったことがあります。

学習サイトに関してはこちらを参考にどうぞ。

9.サンプルのWebサービスを作る

prg8

チュートリアルを参考にサンプルをまねる

プログラミングの上達にはとにかく手を動かすこと!

学習していて一番思うことです。

そして実力がついたと実感する時は何か制作物を作ったときなんです。

なので制作物を作った経験がなければ、まずはサンプルをぜひ作ってみましょう!

それはそうと「そのサンプルはどこで手に入るの?」ってことですよね。

各言語には様々なチュートリアルが用意されています。

Rubyのフレームワークである「Ruby on Rails」のチュートリアルを例にすると、Railsチュートリアルでは、Twitterの簡易版のWebアプリケーションを作ることができます。

このように一つ制作物を一通り作るスキルを身につけることで自分のスキルを示すことができるので、挑戦する価値はデカイですよね。

Railsチュートリアルで学習して1ヶ月で仕事獲得するための戦略を記事にまとめました。ぜひぜひご覧ください!

書籍も参考にして柔軟性をプラスするべし

より理解を深めるために、書籍での学習も必要です。
ただ、全部が全部を書籍で学習する必要はありません。

ドットインストールで学習できるところまで学んで、そのあと「必要なところ」だけ書籍で補完していきましょう。

必要なところとは?

何を学びたいかによって変わりますが、以下の通りに分けられます。

  • WEBプログラミング → 各フレームワーク
  • ホームページやブログ、メディアサイト → ワードプレス
  • アプリ開発 → XcodeやJAVASDK、Titunumなども
  • ゲーム作成 → Unity

これらの記事も参考にしてみてください。


書籍の選び方

学習サイトである程度の基礎は学習してきているので、入門書はなるべく実践的な内容のものを選びましょう。

ポイントは以下の通りです。

  • 実践的である
  • サンプルがたくさんある
  • 出版日が3年以内である
  • 書評で一定の評価を得ている

おすすめ書籍もこちらで厳選してあるので、選ぶときの参考にしてみてください。


それでも書籍で迷った時の抜け道

それでも書籍に迷う場合には、以下の項目が当てはまる場合が多いので対処していきましょう!

  • 自分の目的にあった言語が明確に分からない
  • 自分の学習レベルがどの程度か把握できていない

主にこの2つに絞られます。

「自分の目的にあった言語が明確に分からない」

この対処法は、まず自分にあった言語と目的を明確にする必要がありますよね!

まずは以下の記事を読んで言語の選びからやってみてくださいね!

次に、

「自分の学習レベルがどの程度か把握できていない」

この悩みに対しての対処法は、「基礎学習が終わっているかどうか」で判断してみてください。

まずは学習サイトをやってそれをクリアした後に改めて書籍選びをやってみるといいでしょう。

学習サイトをランキング形式でまとめた記事を書きましたので、こちらも合わせてご覧くださいませ!

10.サンプルのWebサービスに機能追加してみよう

prg9

やっぱり自分のスキルを証明するためには、自分で作ったものを持っておく必要があります。

就職や転職で仕事獲得する場合には、いかに面接官に「おお!コイツできるな」と思わせられるかが大切なんです。

ただ、いきなり1からオリジナルWebサービスを作るのはハードルめちゃくちゃ高い。

それができたら文句ないんですけど、現実的にめちゃくちゃ時間がかかっちゃうのと同時に、スキルが足りてないので、制作への根気もかなり必要です。

そのときにおすすめしたいのが、「サンプルのWebサービスに機能追加する」ということです。

実際の現場では1から全て制作することはほとんどないので、機能追加ができるスキルさえあれば仕事レベルに滑り込めるわけですね!

実際には機能追加もそこそこ骨が折れるので、ハードルの高さ的にはちょうど良い塩梅で学習に取り組めます!

11.自分のオリジナル作品を制作に挑戦してみよう

prg10

プログラミング学習は作品作り、つまり「オリジナルのアプリケーション開発が最大のキモ」になります。

作品作りを行うと、自分で考えて調べながらコードを書く癖をつけることができます。

それによって、作りたいものが思い通りに作れるようになったり、エンジニアとして仕事ができるようになったりと、プログラミングが「実際の現場で使えるスキル」になってきます。

その作品作りの方法と、コツをご紹介します。

まずはサンプル改造から

最初からいきなり作品制作をするのは、誰しもが難しいです。

そこで、教材のサンプルを改造することから始めるといいでしょう。

出来上がったサンプルに機能を2〜3個追加してみるだけです。

例えば、以下のようにやるのがおすすめです。

HTMLの場合

  • 文章の配置を変える
  • リンクを付け足す
  • ページを増やす

CSSの場合

  • 文字の色を変える
  • 大きさを変える
  • 背景の色を変える

JavaScriptの場合

  • サンプルとは異なるアニメーションを実装する

Rubyの場合

  • サンプルで作った(簡単な)プログラムを何も見ずに0から書いてみる
  • サンプルで出題されたプログラムを少しだけ変更する

Ruby on Railsの場合

  • Facebookログイン機能を実装
  • Twitterログイン機能を実装
  • ポスト(投稿)機能を実装

あくまで例ですが、サンプルを改造するだけで、結構な達成感を味わえます。

そして、サンプルの改造の延長線上にはオリジナルアプリケーション開発があるのです。

企画設計も大事

作品作りというと難しく聞こえますが、流れはシンプルで、「企画」「設計」「実装」の3つです。

言い換えると、アイディアを考えて、設計に落とし込み、創っていくことです。

これができれば脱初心者とも言えるので、こちらを参考に取り組んでみてください。

実際のオリジナルWebサービス例

vegeres___ベジタリアン・ビーガンのためのレストラン検索出典: Vegeres

3STEPでベジタリアンのお店を検索できるめっちゃすぐれものなWebサービスです!

ベジタリアンには嬉しい店が単純に探せるだけでなく、そのお店のレビューも見れるので、評判がまるわかりです。

野菜食いてー!な時は、使うとめちゃくちゃ便利です!

 

福岡へのU・Iターン専門の転職エージェント___YOUTURN(ユーターン)

出典:YOUTURN

福岡のUターンを促進するためのUターン専門転職サイトです。

経営理念がしっかりしていて、Uターン人材を大切に、そして今後のキャリアを丁寧に見据えたサイトになっています。

やりがいや日常の生活面でも充実するように仕事を位置付けている理念も素晴らしく、福岡で働く際にはぜひ!!といった感じでおすすめしたいサイトです。

12.仕事を獲得してみよう

prg12

ここまでくれば仕事獲得できる下地は整っています。

仕事を獲得する際に必要なことは以下の2つ。

  • 自分の作品でスキルをアピールすること
  • 自ら進んで学習する習慣をアピールすること

これがものすごく大事です。

仕事を獲得する際には、現時点でスキルがどのくらいあるのか。そして、これからどのくらい伸びしろがあるのかが重要になってきます。

そのため、

  • 自分の制作物を用意しておくこと
  • どのくらいの期間でどのように学習を行ってきたかを示す

この2点が非常に重要になってきます。ぜひこの2点を頭に入れて学習に取り組むといいでしょう。

※もし転職を希望している場合、この記事がおすすめです!

※もしフリーランスを目指している場合、この記事がおすすめです!

まとめ

いかがでしたか?

プログラミング初心者が最初にやるべき10のことをご紹介しました。

プログラミング初心者にとっては、学習に取り組み始めた最初が一番大変だと思います。

僕も最初は大変でしたが、その経験が今でもかなり活きています。

この記事を通して、少しでも多くの方が挫折しないようと思います。


33歳、未経験だった僕がフリーエンジニアになれた理由
現在フリーでWEBエンジニアをやられている濱口直行さん。33歳で、プログラミングを学び始め、約半年という短い期間で独立までされた学習ログを余すことなくインタビューさせていただきました。

プログラミングを学習中の方はもちろん、独立をお考えの方まで幅広く活用できる記事になっています。この機会に是非活用していただければと思います。


最短でプログラミングを習得したい方へ

元々ITリテラシーのある方やプログラムの学び方がわかっている方は独学で習得することも可能でしょう。

ただし、実際の学習期間中はつまづいている時間がほとんどです。

「もう挫折したくない」
「本業と両立しながら、好きな時間で自分のペースで勉強を続けていきたい。」
「自分だけのカリキュラムで効率的に勉強したい」

そんな方はお気軽に侍エンジニア塾までご相談ください。

弊社では、

  • プログラミング基礎学習
  • オリジナルアプリ開発
  • 仕事獲得

までをひと通り学習できます。

まずは無料体験レッスンで、弊社のコンサルタントと一緒にあなた専用の学習方法やカリキュラムを考えてみませんか?

挫折しない学び方や、通常1000時間以上かかる学習時間を1/3にする方法などより具体的なアドバイスもさせていただいています。

詳しくは下の画像をクリックして弊社サービス内容をご確認ください。

cta1

学習者インタビュー

人気記事セレクション

プログラミング学習者必見

専属講師に質問し放題、レッスンし放題!最短1ヶ月でフリーランスエンジニア
プログラミング学習カリキュラム無料公開中
Ruby学習カリキュラム無料公開中
Python学習カリキュラム無料公開中
 1記事最大11,000円!テックライター募集


LINEで送る
Pocket

この記事が気に入ったら
いいね!をしてフォローしよう

最新情報をお届けします

書いた人

兵政和

兵政和

フリーランスコンサルタント。侍メディア事業部でのメディア運営・ライター業務なども担当。好きなショートカットキーは、command + w。愛機はMac Book Air。漢字は違うけど、名前がキングダムしがち。