プログラミング初心者が独学で勉強するための4つのステップ | WEBCAMP NAVI
【5月枠も残りわずか】転職保証コース

プログラミング初心者が独学で勉強するための4つのステップ

コーヒーとパソコン

スマートフォンやパソコン、テレビ・エアコンなどの家電、自動販売機や車のカーナビなど、今や生活にこれらの機械は欠かせないものとなりました。その機械を動かす仕組みであるプログラミングを学びたいという方が増えています。

これからプログラミングをはじめたい!でもいきなりスクールに通うのはハードルが高い。

そんな思いから、独学で自分なりに勉強を始める初心者の方が多いかと思います。しかし、初心者の方が独学すると挫折してしまう人が多いのも事実。今回は初心者が独学で学ぶにあたって、大事にするべきポイントをまとめました。

独学で学び、挫折する人はとても多い

プログラマーという言葉に憧れを抱いている子供達から、仕事で「やっておいたほうがいい」と実感した社会人の方、さらには定年を迎えリタイアした後にプログラミングを始める方など、独学でプログラミングを始める方があとを絶ちません。その一方で、プログラミングという技術は日常生活で触れることがあまりない技術であるため独学で学ぶのは思っているよりも難しく、挫折する人も非常に多いのが実情です。自分に合った勉強方法を見つけられなかったり、信用に値する情報とそうでないものを見抜けなかったり、慣れてしまえばなんて事のないエラー文に怯えたりと、初心者の方が躓きがちな点が多いのもプログラミングの特徴と言えます。
これから紹介する独学でプログラミングを学ぶ上での重要な点をおさえて、効率よく躓きがちな初心者から卒業しましょう。その先には、きっとあなたが想像したよりもキラキラと輝いたプログラミングの世界が待ち受けてるはずです。

独学できちんと学ぶために大事なこと

成功体験が大事

何かに対して長期的に取り組むにあたり、人は成功体験を積むことができないと挫折してしまう生き物です。反対に、たとえ小さな成功体験でも、積み重ねることができれば長く続くことが多いでしょう。
プログラミングを独学で学ぶ上でも、はじめは小さな成功体験をたくさん積むことを意識しましょう。いきなり大きなプログラムを組もうとするのではなく、まずは入門書や入門サイトのサンプルプログラムを自分で写経してエラーなく実行できることを目指すといいです。サンプルプログラムを一読してわかった気になって先に進むのではなく、サンプルコードが出てくるたびに写経、実行を繰り返しましょう。時には写し間違えがあってエラー文が出てくることもあります。そんな時でも小さなサンプルコードであれば比較的修正が容易いため「エラーが出たがそのエラーを修正することができた」というとても重要な成功体験を積むことができるのです。

プログラミングの入門書や入門サイトは質がよければ良いほどサンプルプログラムが数多く載っていることが一般的ですから、写経・実行の流れを面倒に感じる人も多いと思いますが、この流れをサボらずきちんと繰り返すことで手軽に数多くの成功体験を積み、結果的に挫折を防ぐことができます。入門書・入門サイトのサンプルコードも読み進めるにしたがって長くなり、取り扱う技術も次第に高度なものとなっていきます。その全てを実行した経験は、あなたがプログラミングを続ける限り無駄になることはありえません。やがて入門書を読み終え中級者が参考にする書籍やサイトを読み始める頃には、プログラミングを学習する前にプログラミングを使ってやりたいと思っていたことを成し遂げるのもそう難しくないように感じてくるはずです。

英文を恐れるな

プログラミングを独学で学ぶ際に挫折する理由として「英文が怖い」というものがあります。何を言っているのかわからない、冗談だろう、と思うかもしれませんが実際にこれが原因でプログラミングの学習を続けられなくなってしまう日本人が多いのです。
プログラミングを行っていると、自然と多くの英単語・英文に触れることになります。時には、小さなサンプルコードを何気なく実行するだけでおびただしい量のエラー文が英語で出力されることもあります。そんな時、初心者の方は勢いよく出力される英文に怯え、「何か恐ろしいことをしてしまった」と勘違いされることが多いようです。気持ちはわかりますが、まずは一度落ち着いて、英文をよく読んでみましょう。プログラミング言語がエラーや警告を出力する際に表示される英文は、ネイティブでない人にも伝わりやすいように平易な文法で記述されていることがほとんどです。落ち着いて読めば理解するのは難しくないはずです。一部専門的な用語が使われている場合がありますが、一つ一つ調べてみましょう。中には英語が苦手で、平易な英文であっても理解するのが難しい場合があると思いますが、そんな時はGoogle翻訳にエラー文を丸ごとコピーアンドペーストして日本語に翻訳させたり、Googleの検索ボックスにエラー文を入れて検索すれば日本語で解説している記事を探したりしてみましょう。実際にプロのプログラマーでも難解であったり冗長であったりするエラー文が出てきた時にはGoogleに頼ることも多いのです。
こうして自然に英語を恐れなくなれば、やがてプログラミングスキルが上がって英語でしかドキュメントが存在しないような最先端技術に触れることになった時でもドキュメントを読む力が身についているはずです。英語が苦手でも、現代のテクノロジーを駆使すれば十分に理解が可能なはずです。

なるべく新しい情報を集める

プログラミングという技術は常に新たな技術が考案され、数年前まで常識であったことが今では非常識であることが珍しくありません。例えば、今から8年前には日本にスマートフォンは全く普及していませんでした ( iPhone がアメリカで初めて発売されたのが2008年 ) が、今ではスマートフォンがない社会は考えられないでしょう。それと同じように、数年前の入門書や入門サイトを頼りに学習を進めてしまうと、せっかく覚えた技術が古すぎて使い物にならないという可能性があります。中には数十年前から変わっていない基礎技術もあるので、古いからといって無用な技術とは言い切れないのですが、少なくとも初心者の頃は古本屋などで安く入門書を購入するのではなく、最新版の入門書を購入しましょう。インターネット上の情報を参考にする時も、できるだけ新しい情報を参考にするように努め、大体の目安として3年以上前の情報は鵜呑みにしないようにしたほうが良いと言えます。
こうして初心者の頃から新しい情報を探すことに慣れておくことで、いずれ上級者になって最先端の技術を追いかけなくてはならない立場になったとしても大変な思いをしなくて済むようになります。日本人は伝統を重んじる人種であり、過去の手法を大切にする傾向がありますが、プログラミングを学習するにあたっては常に最新・最先端を心がけることが重要です。

独学で学ぶためのステップ

ステップ①「サンプルコードを写経して実行」

それでは、実際に独学で学ぶためのステップについて説明していきます。まず独学でプログラミングを学ぶ時にまず最初にすること、それがサンプルコードの写経とその実行です。

(1) サンプルコードを入手しよう

まずは入門書や入門サイトを一つ選びましょう。書店に行って目立つ位置に置いてあった入門書にするでもよし、インターネット上で評判を調査して参考になりそうな入門サイトを使用するもよし。ここで気にするべきなのはできるだけ新しい情報が載っていること、そしてサンプルコードの量が多いことです。世の中には数多くの入門書やサイトが存在していますので目移りするかと思いますが、この二点さえ抑えられていればどの書物・サイトでも特に問題ないはずです。まずは一冊読破することが重要ですので、選出はできるだけ早く済ませ、できるだけ早く次に説明する実行環境の構築を終わらせましょう。

 (2) サンプルコードの実行環境を整えよう。

プログラミングを実行するには実行するための環境が必要です。ここでいう環境とは、例えばパソコン、インターネット、必要なソフトウェアなどのことです。環境構築というと難しそうなイメージがあるかもしれませんが、入門書の初めの方のページに分かりやすく載っている場合がほとんどですので、初めはあまり意味などは考えずに環境を整えていきましょう。プログラミングを始める前にプログラミング環境について理解するのは難しいので、もしもこの環境構築について詳しく理解したいと思った場合は入門書を読破した後に調べてみると良いでしょう。

(3) 入門書・サイトを読み進め、出てきたサンプルコードを写経しよう

プログラムを実行する環境が整ったら、早速選んだ入門書・入門サイトを読み進めていきましょう。読み進めていくうちに数多くのサンプルコードが出てくるはずですので、サンプルコードが出てくるたびにプログラムを写経し、手元の環境で実行してみましょう。わざわざ写経・実行しなくても書いてある内容は理解できたという場合でも実際に手を動かすことが重要ですので面倒がらずに実行まで済ませてください。こうして多くの実行経験を積むことで成功体験を積み重ねることができます。また、時には写し間違いがあってエラーが出ることもあるはずですので、エラー文を読んだり、解消したりといったより重要な経験も積むことができます。

ステップ②「写経したプログラムに自分だけの工夫を」

入門書・入門サイトを読み終える頃には、いくら重要だと言われてもサンプルコードをただ写して実行するだけの作業に飽き飽きしていることでしょう。入門書を読み終えたら、いよいよ自分だけのプログラムを作る第一歩を踏み出していい頃合いです。入門書・入門サイトに出てきたサンプルコードの中で面白いと感じたサンプルコードを一つ選び、そこに自分だけの工夫を加えてみましょう。初めは出力する文字列を変えてみたり、数式を変えてみたりするだけで十分です。慣れてきたら条件分岐や新しい処理を付け加えてより実用的なプログラムを作成することに挑戦してみるのも良いでしょう。
自分一人で最初からコーディングしたくなる頃合いかとは思いますが、初めはサンプルコードを編集する形でオリジナルのプログラムをコーディングすることで入門書・入門サイトで学んだことをしっかり理解できているかを確認していきましょう。サンプルコードをすらすらといじり倒すことができれば入門書・入門サイトを卒業できたと言えるでしょう。

ステップ③「初めてのオリジナルアプリケーションの作成」

入門書・入門サイトのサンプルコードに自分だけの工夫ができるようになれば、いよいよ初めてのオリジナルアプリケーションの作成をしていい頃合いです ( ここでいうアプリケーションとは広い意味で使っている言葉であり、あなたの作りたいものによってゲームやwebサービスなどに置き換えて読み進めてください )。入門書・入門サイトで得た知識を総動員して、オリジナルアプリケーションの作成を意気揚々と始めると思いますが、おそらく遅かれ早かれ入門書やサイトでは得られなかった知識が必要になってきたり、サンプルコードを実行するだけでは出会わなかったエラー文に遭遇したりするはずです。そんな時、中級者向けの書籍を購入したくなるかもしれませんが少し待ってください。購入に踏み切る前に問題の解決に結びつきそうなキーワードや問題自体に関係するキーワード、またはエラー文そのものをGoogleなどの検索エンジンに入力して検索をしてみましょう。入門書を読破した今であれば、入門書を読み始める前には思いつかなかった検索ワードをたくさん思いつくようになっているはずです。適切なキーワードで検索することさえできれば、得たい情報をピンポイントに閲覧することも容易いでしょう。このように検索エンジンを利用することで自分の得たい知識を的確に得られるようになり、知識を自分のアプリケーションに応用することができるようになっていれば、初心者を卒業したと言えます。今のあなたは、まさに自転車に乗れるようになった直後のように、「どこまでもいける」「なんでもできる」と言う不思議な希望のようなものに満ち溢れていることでしょう。

ステップ④「仲間と開発することを意識」

それでは、最後のステップについて説明します。このステップを終了すればプログラマーとして副業をしたり、学生であればインターンを行ったりすることを検討できる実力です。社会人の方でも、エンジニアの人々の気持ちがかなりわかるようになるはずです。そんな最後のステップですが、これを終了することは困難を極めます。このステップに関しては、終了することを目的とするのではなくここで意識することを常に意識できるようになることを目指しましょう。

その最後のステップとはズバリ、「仲間と開発することを意識できるようになること」です。ある程度大きなアプリケーションを作成することを目指せば、おのずと仲間が欲しくなってきます。また、仲間とともに一つのアプリケーションを作成する喜びは一人で作成するものと比べるとまた格別であり、人生の中でも貴重と言える経験になります。しかし、仲間とともにスムーズな開発をすることはとても難しいことでもあるのです。例えば、あなたがステップ③で作成したオリジナルアプリケーションのソースコードですが、1ヶ月後、半年後、1年後の自分がすらすら読めると思えるでしょうか?おそらく答えはNOでしょう。過去の自分が書いたソースコードですらスムーズに読むことが困難であることを考えると、他人が書いたソースコードを読むことが非常に難しいことであることがわかるでしょう。仲間とともに開発を行っても、相手の書いたソースコードを理解することができなかったり、自分の書いたコードを理解してもらえなかったりするとむしろ開発効率が下がることがあります。お互いにわかりやすいソースコードを書くためには、一般的に読みやすいとされているコードの書き方を勉強したり、ソースコードの差分の管理を行うことができるツールについて勉強する必要があります。

この読みやすいソースコードの書き方やわかりやすく差分を管理する方法に関しては一つ一つ検索して身につけるのは効率が悪いので、そのための書籍を購入することを視野に入れても良いでしょう。
この仲間と一緒に開発することを考えた、他人にも読みやすいソースコードを書くことを意識することができるようになれば、立派に中級者であると言えます。上級者への道もすでに開けていますので、自信を持ってプログラミング技術を磨いていってください。

有名エンジニアやビジネスマンはどのようにして学んだか?

最後に、著名なプログラマーが独学でどのようにプログラミングを学んできたのかをご紹介します。今回紹介するのはプログラミング言語Rubyの開発者であるまつもとゆきひろさんのプログラミング学習についてです。

まつもとゆきひろさんは小学生の頃に両親に小さなコンピューターを購入してもらったのをきっかけに、毎月地元の小さな書店に通ってプログラミング技術について紹介した月刊雑誌を購読していたそうです。今とは違い、体系的な学び方が書いてある書籍はほとんどなく、インターネット上で学習ができるような環境でもなかったので、昔に比べれば今は独学で学ぶことは随分とやりやすくなったといえます。まつもとゆきひろさんは意外なことに学校の授業では数学が苦手だったそうですが、プログラミング技術を学ぶことで人間が計算を行う必要が将来どんどんとなくなっていくことを予想し、自らプログラミングを意欲的に学び続けたそうです。このように、プログラミングを行うことでどのようなことが実現できるかをイメージしながら学習することが、意欲的に学習を続けるコツであるとも言えるかもしれません。

まつもとさんの場合、知り合いにプログラミングができる人もいなかったので、一度解決方法がわからないエラーにあたるとなかなか解決ができなかったり、やりたいことがあってもやり方がわからなかったりと苦労したそうです。その点、今はインターネット上で簡単に質問をしたり、インターネット上のコミュニティに参加したりすることですぐに質問、回答のサイクルが生まれます。さらに、昔に比べればコンピュータの値段が下がったことに加え、無料で使えるソフトウェアやツールでも高品質のものが多くなりました。

プログラマーの需要が急激に高まっている現代、そしてプログラミング技術を独学で学ぶことが容易になった今こそ、プログラミングを学ぶ絶好の機会であることが伺えます。

まとめ

いかがでしたか?プログラミングを学ぶ人が増え挫折する人が多いのも事実ですが、重要なポイントさえおさえれば、このように独学でもきちんと学習を進めていくことが可能な時代になっていますので、この機会に是非学習してみてくださいね。

DMM WEBCAMPについて

DMM WEBCAMPは3ヶ月間で未経験から即戦力エンジニアを育成する転職保障付きのプログラミングスクールです。1ヶ月でプログラミング・Webデザインを学ぶ通い放題の「ビジネス教養コース」も展開しています。

DMM WEBCAMPを運営する株式会社インフラトップ では、「学びと仕事を通して人生を最高の物語にする」という理念で会社を経営しています。

キャリアアップを目指す方は、この機会に私達と一緒にプログラミングを学んでみませんか?

5月枠も残りわずか!!未経験からエンジニアを目指すならDMM WEBCAMP

DMM WEBCAMPは転職保証型のプログラミングスクールです。転職成功率は、98%!短期間で確実にスキルを身につけて、ひとりひとりに寄り添った転職サポートで、未経験からのエンジニア転職を叶えます!

「未経験だから不安…」、「転職できるんだろうか…」などの不安があると思います。そんな不安や心配を解消する、無料のカウンセリングを実施しています。

無理な勧誘や面倒な電話は一切ありませんので、お気軽にお越しください。

【無料】キャリア相談の日程を見る