今回の記事はプログラミングを始めてみたい方へ向けた、実際に自分が独学で行ったお勧めの勉強法を解説いたします。
初心者がプログラミングを勉強する5つの方法
『プログラミングってなんか難しそう・・・』
『勉強しようと思って入門書を買ったけど全然分からない』
なんて思ってる人はとても多いと思います。
僕は独学で一から勉強をしたので、その苦労は誰よりも分かります。
部屋には参考書やプログラミングの入門関連の本がたくさんあるけど実際は全然勉強も進まずプログラム一行も書けない状態が長く続いていました。
でも、実際プログラミングの勉強はコツと方法さえ分かればとても楽しい勉強です。
それに気づいてからは理解も早くなって今では半人前ですがある程度一人でプログラムを書くことが出来るようになりました。
この記事では、そんな悩んでいる人の少しでも参考になれればと思い、僕がプログラミングの勉強をする為に行った勉強方法を書いていきたいと思います。
まず最初に参考書や入門書は買うな!!
まず独学で勉強というと、本屋に行って参考書や入門書を買って家に帰って勉強する。
というイメージがありますが、初めてプログラミングを勉強する人はこの方法は非常に挫折しやすいです。
試しに、本屋で立ち読みをしてみてください。
分かりやすいですか?
この本を読みながら勉強できそうですか?
パラパラ読んでみても初心者には出来る気がしないですよね。
今、書店に出ているプログラミング関連の本は『勉強をし始めよう!』という人にとってはとても理解がしにくくて途中で投げ出してしまう人が多いと思います。
プログラミング関連の本は、勉強し始めた段階では買わなくていいです!!
それよりもこの段階で大切なのは・・・
プログラミングの楽しさに触れてみてプログラムを遊びで実際にやってみる事をお勧めします!!
え・・・いきなりプログラミング!?なんて思う方もいると思いますので次の項目では実際に僕が使ってみた方法を説明します。
まずはゲームで実際に『プログラミングとは何か?』を理解する!
まずはゲーム感覚で楽しくプログラミングの世界に触れてみましょう。
オススメをする方法はプログラムをしてゲームをするサイトです。
いくつか実際に自分が使ったサイトをご紹介します。
Lightbot プログラムとはいったい何かを教えてくれるサイト!!
まず初めにプログラミングをしたらどうなるの?という仕組みを学ぶ事が大切だと思いますので、このサイトをオススメします。
このサイトは子供向けに作られたサイトなので、実際に簡単なプログラミングをしながらどんな動きをするのか?という事の理解にはたいへん分かりやすいです。
このゲームはスマートフォンやタブレットでも出来ますので空いた時間などを利用して勉強を始める方の入り口としてはとても入りやすいです。
Code Combat 『JavaScript』と『PYTHON』を学ぶならこのサイト!!
このサイトは日本語にも対応していますし、これからプログラミングをしよう!という方でもプレイ出来る内容になっています。
指定されたミッションを元にプログラムを書いてみてキャラクターを動かしてダンジョンをクリアしていくという内容になっています。
どんどんレベルが上がるにつれて本格的な内容の物になっていきます。
勉強できるプログラミングの言語は
- PYTHON
- JavaScript
- CoffeeScript
- Clojure
- Lua
- lo
など実際に使用されている言語ですので、このゲームで感覚をつかんでおくと今後の勉強の理解が全く変わってきます。
ゲーム画面はこのような画面になっており、与えられた問題をプログラムをしてキャラクターを動かしてクリアする内容になっています。
これなら出来るかもって思った人も多いはずです。
このゲームでは『JavaScript』と『PYTHON』という言語がメインになりますので、この言語を学ぶ人にはお勧めです。
Ruby Warrior 『Rudy』の言語を学ぶならこのサイト!!
この『Rudy Warrior』はRudy言語を知らなくても、正しい答えカンニング出来るようになっているので、初心者の方でも楽しくプレイが出来ます。
内容は8bitのファミコンのような画面でRPGのように進めていきます。
日本語には非対応なので英語のみですが簡単な英語で書いてあるのでなんとなくでもプレイ出来ると思います。
分からない時右端の部分にヒントが出るようになっているので参考にしながら進められます。
Rudyという言語は今では多く使用される言語ですのでここでしっかり遊びながらプレイすると理解が早まります。
どうでしょうか?ゲーム感覚で遊びながらなら楽しくなってきましたよね。
こうやってゲームをやってキャラクターを動かせてる時点であなたはもうプログラマーの仲間になっています。
実はこのゲームで行っているプログラミングはアプリ制作やWEB作成、ゲーム作製などとやっていることは全く同じなんです。
命令する内容が異なっているだけなのです。
きっとこの時点で本を読みながら挫折していた頃の自分とは少し違うのではないでしょうか?
では次にもっと理解を深めるために行った勉強方法について書いていきます。
次は映像を見ながら授業を受けて理解を深める!
ゲームでなんとなくプログラミングを理解し始めたと思いますので次は実際にプログラミングをしながら動画で授業を受けてみましょう!
独学の人はきっと、周りに教えてくれる人もいないでしょうし、学校に通うにもお金や時間がなかなか・・・って人が多いはずですので僕はこのサイトを利用して勉強をしました。
ドットインストール - 3分動画でマスターする初心者向けプログラミング学習サイト
とても有名なサイトですので見たことある方も多いのではないでしょうか?
ここのサイトの特徴は文章ではなくて動画で画面を一緒に見ながら勉強ができます。
1つの動画が3分と短いですので通勤中や休み時間などの空いた時間にも勉強しやすいです。
先ほど紹介したゲームをやった後に、動画をみたらきっととても分かりやすく感じるはずです。
ここで行った勉強法は動画を見ながら実際に自分もパソコンに打ち込んでみるという事です。
何回も何回も繰り返し動画を見ながら何回もプログラムをしてみる事がとても大切です。
簡単な内容でも基礎を固めることでこの後の理解はだいぶ変わってきます。
このあたりからの勉強法は実践の反復練習につきます!!
でも、動画を最後まで見て打ち込んでるころには飽きてくる頃でしょうから、次に僕がやった方法はこの方法です。
ようやく参考書や本を買ってみる!!
ここでようやく書店に行ってプログラミング関連の本を買ってみる事をお勧めします。
ただ、ここでは買う本の内容がとても大切になってきます。
実際に本の内容と一緒にプログラミングをして何か完成品を作ってみる事が出来る本です。
これはとても大切なことで、やっぱりゴールが見えたりする方がやる気が湧きますよね?
しっかりと自分で1からプログラミングをして完成をしたときの達成感は次の自信につながります。
人それぞれプログラミングでやりたい事は違いますので参考になるか分かりませんが、自分の場合はアプリの制作に興味があったのでこのような本を買いました。
この本は実際に簡単なアプリを制作しながら学んでいくことが出来ますのでアプリ制作に興味のある方にはオススメの一冊です。
この本はiOSのiPHONEのゲームアプリを作りたい人にはとても勉強になります。
この本も実際に簡単なゲームを作りながらC言語を学ぶことが出来ます。
他にもたくさん本があるのですが紹介ばかりでページが長くなりそうなので、オススメの参考書は別の記事にまとめます。
プログラミングを教えてくれる知り合いを作る方法
ここまでしっかりと勉強をしてきた方は、ある程度の知識がついてきたはずです。
とはいってもまだまだ一人では何も出来ない状態だと思いますので、実際にプログラミングの仕事をしている方や詳しい方に少しづつ教えてもらうという方法を僕は実行しました。
ただ、いきなりSNSや飛び込みでお願いをしても教えてくれる親切な方はなかなかいないと思いますので、さりげなく近づいて徐々に仲良くなるという方法がいいと思います。
そこで利用したい場所は『コワーキングスペース』という場所です。
ここでは、WEBの仕事を個人でしている方やライターの方など、パソコン一つで仕事をしている方の共有の仕事空間です。
僕の場合は、ここで土日に来ている方で副業や趣味でプログラムをしている方に少しづつ話をかけました。
お昼頃の時間に席を立った人がいたら『良かったらお昼を一緒にいかがですか?』って声をかけてそこから、プログラミングの事を邪魔にならない程度に少しづつ聞き出していきました。
結構土日にしか来ない方だと趣味の方も多いので気軽に教えてくれる人も多いです。
やっぱり直接教えてもらったり、生の声を聞くことはとても勉強になりますし、勉強を継続するきっかけになります。
都内の人はこのサイトを参考にしてみてください。
地方の方は検索をすると最寄りの場所が出てくるはずです。
自分一人では解決できない悩みが出来た時などは一度訪れてみてはいかがでしょうか?
プログラミング初心者でも出来る仕事を探してみる
三か月必死に基礎知識を勉強して身についたなら、次はプログラミングの仕事を探してみてはいかがでしょうか?
ですが、求人を見てみると『何年以上経験のある方』や『~言語と~言語を使える方』といった内容の求人が多いのでなかなか初心者の方は、狭き門です。
そこで、HTMLやCSSといったWEBのプログラムの知識でも出来る仕事を自分自身で探してみるのも一つの手です。
ここで経験を積めば、理想としている企業で働きたい時の面接でもアピールの一つになります。
僕はここのサイトでまだまだ基礎知識しかない状態の時から『当たって砕けろ!』というむちゃな考えでしたが、たくさんの仕事をしてみました。
仕事の内容は様々な仕事内容がありますが、僕の場合は『コンペ形式』の仕事を探して簡単な内容の仕事を中心に数をこなしていきました。
コンペ形式ですと、試しに作った物を応募して受かれば報酬が頂けるという形なので、初心者でも敷居は低いです。
シンプルなWEB制作やアプリのお問合せ欄の作成など、自分でも出来そうかなって内容の物を参考書を見たりして応募して勉強と仕事を同時に行いました。
ここまでの勉強は自分の為の勉強でしたが、今度はお金を貰い『人に何かを作る!』という事に変わるので、意識がグッと高まり上達も早まります。
もし、まだ自身の無い方は自分で架空の企業からの依頼を想像して、何かを作成してみてください。
わからない所は徹底的に調べるようになりますし、知識の幅も驚くほど増えるはずです。
まとめ
ここで書いた内容はあくまで僕自身の体験を元に書いたものなので全ての人に当てはまるとは思いませんし、プログラミングが出来る方は『この勉強はやり方違くない?』って意見もあるとは思います。
ただ、独学で勉強することは本当に右も左もわからない状態ですので迷っている方やこれから始める方の少しでも参考になればと思います。
あとは、プログラミングに関しては本当に実践と修正の繰り返しです。
たくさんの実践あるのみ!!
これにつきます!!
本やウェブサイトで知識を見て知った気分になるより、一つの実践の方がはるかに上回る勉強になります。
もし分からない事やおすすめの本など聞きたい方は気軽にご相談ください。
出来る限り親身になってお答えしたいと思っています。
難しい部分もあるとは思いますが一緒に一歩づつ頑張っていきましょう!!