3ヶ月でプログラミングをマスターする具体的な方法(初心者向け)
近い内にプログラミングをマスターする!そう思っている方も多いと思います。「やってみたけど、挫折してしまった。。。」「どこから手をつけていいのかわからない」など良く聞く話です。
ここでは、そんな方たちのために、プログラミングを短期間でマスターする方法をお話しようと思います。今からあげるトレーニングをだいたい1日3時間、2〜3ヶ月間続けることによって、基礎的なプログラミング技術をものにすることができます。
私自身はけっこう大人になってからプログラミングをはじめました。最初はなかなか理解することが難しかったのですが、これから紹介する「初心者プログラミングマスター7つのステップ」方法を実践したことで、けっこう良い感じでマスターすることができました。今ではこのサイトである「Skillhub [スキルハブ]」はもちろん複数のサイト(請負仕事で)のコードを書いています。
それでは、「7つのステップ」少し長いですがお付き合いください。
- STEP1 [1週目] 入門書を1冊やる…分厚い本を買わない!
- STEP2 [2-3週目] フレームワークを覚える
- STEP3 [4-7週目] 実際につくってリリースする
- STEP4 [8週目] 基本に立ち返る …7日間徹底してやる
- STEP5 [9週目] 応用的な本に目を通す(レシピ本など)
- STEP6 [10-11週目] ふたたび制作(アプリのブラッシュアップ)
- STEP7 [12週目] コミュニティに参加する
- 最後に
STEP1 [1週目] 入門書を1冊やる…分厚い本を買わない!
当たり前なのですが、まずは入門書でしょう。ここで絶対にやってはいけないのは「分厚い本を買わない」ということです。できるだけ薄いものを選びます。「500ページで3000円!コスパいいね!」みたいな感覚で買わないことです。基準としては評判のいいものでページ数の少ないやつ。それがあればベストでしょう。
あと初心者にやさしく見せるために絵を多く入れているもの、かつキャッチーな感じのものもあるのですが、それも注意が必要です。絵があるから解りやすいということはありません。むしろあまりよくない場合が多いです。変に余計なイメージがついてきて、むしろ混乱することが多いのです。
絶対的なプログラミング勉強方法
プログラミングを学ぶ上で一番大事なのは、「自分でコードを書くこと」です。ただ読むだけではなく、実際に手を動かして書くことで、頭と体でコードを覚えることができます。そして「あ、動いた!」と、自分が書いたコードが動いた瞬間の感動も味わうことができます。とにかく「書く」ことが、プログラミングをマスターするための基本であり、最も効果的な方法です。
では、書くコードはどうするかと言いますと、これは講座やリファレンスなどにあるものを使います。他の人が書いた正しいコードを書き写してみる、この方法は「写経」と呼ばれます。初級者だけでなく、中上級者になってもよく使われる学習法です。コードを書き写すことで、コードの仕組みを理解する力が身に付きます。写経は、コードを理解するための最も効果的な学習方法と言えるでしょう。
期間は1週間以内(短ければ短いほどいい)
この期間はできるだけ短くした方がいいでしょう。
入門書を何度も繰り返し読んで、コードを写すというのはけっこう「苦痛」ですよね。根気があって、わりと単純な作業に耐えられる人であれば、もう一度繰り返しやるのもいいですが、なかなか難しいし、ここで挫折したくないですよね。
そのため、完璧に理解できていなくても「だいたいわかったかな?」と思ったら次のステップに進んで大丈夫です。先にはもっと楽しいことが待っていますので、無理をせずに進めていきましょう!
まずは無料の7講座から受講してみましょう。わかりやすくて目からウロコですよ。
» 今すぐ無料講座をチェックする
STEP2 [2-3週目] フレームワークを覚える
フレームワークを覚える理由は「楽しみながらマスターする」
Step1を終えた段階では、まだ「最低限の技術は身についている」とは言えないかもしれませんが、「こんな感じかな?」というイメージは掴めていると思います。職場の先輩から「リーダブルコードも読んでおいた方がいいよ」とか「次は『プログラムはなぜ動くのか』って本も読むといいよ」と言われることがあるかもしれません。「それを読まないと本当の理解にはならないよ」と言われることもありそうですね。
でも、そういった生真面目なやり方と言いましょうか、回りくどいやり方はリスクが大きいと思ってます。精神的に続かないし、挫折してしまうリスクが高くなってしまいます。楽しくないと、続けるのは難しいですよね。だから、すぐに何かを「作る」ことに挑戦してみましょう!
何かを作ることは楽しいので、自然とモチベーションが上がります。そして作り始めると、「これを覚えないといけないな」「ここをもっと勉強しなきゃ」というポイントが見えてきます。そうやって必要だと思った時に学べば、ただ我慢して何度も似たような本を読み続けるよりずっと効率的に学べますし、途中で投げ出すことも少なくなるでしょう。
フレームワークとは
フレームワークとは、何かを作るときに「良い方法」を提供してくれるもののことを言います。例えばRuby on Railsやdjangoでしたら「Webアプリケーションをつくる良い方法」を提供してくれます。Railsでしたら「RailsWay」と言って「こうやってRailsのお作法に乗っ取ってやれば上手に作れるんだよ」というものを提供してくれるわけです。
そういったフレームワークに乗って、何かを作り上げるほうがクオリティも高いものになるし、すぐに完成までたどり着けます。なので、本当に楽しい部分を味わうことができるのです。この「楽しい、ワクワクする」といった気持ちを味わうとモチベーションがグッと上がります。
フレームワーク勉強方法と期間(3週間以内)
これも「なるべくページ数の少ない本」を読むということでしょう。そして、しっかりとコードを自分で打ち込むこと。写経することですね。フレームワークの本はあまり多く出版されていないので、Webサイトで学ぶのも良いでしょう。
フレームワークを習得するには、言語の基礎を学ぶ以上に時間がかかることもあります。例えば、Webアプリケーションを作る場合、プログラミングの他に「バージョン管理」「テスト」「デプロイ」など、多くの知識が必要です。Linuxの基本も含め、すべてを完璧に理解する必要はありませんが、少しずつ学んでいく必要があります。
ただし、時間をかけすぎないことも大切です。最長で3週間を目安に終わらせましょう。「あー、終わったけど、よくわからん。。」という状態でも構いません。なんとなくのイメージができたら次に進んでOKです。不安かもしれませんが、次のステップ「実際に作ってリリースする」に進んでみましょう。
STEP3 [4-7週目] 実際につくってリリースする
いよいよ一番楽しいところに来ました。自分で作りたいものを考えて、実際にそれを作り、さらにはリリースしてみんなに使ってもらう!ということにトライします。これは、かなり大変かもしれませんが、やりとげると一段階レベルが上がると思っていいです。人に使ってもらうということは大変なプレッシャーがかかりますし、本当に「怖い」ことです。
本来であれば「えー、もっと先にしてよー」と思うかもしれませんが、これを早くに体験しておくほうが絶対にいいのです。リリースすることを前提で制作に取り掛かることで「恥ずかしいところは見せられない」「どうせならいいものを作りたい!」そういう気持ちになるはずです。それと同時に「達成できなかったらどうしよう。。」という「怖さ」が出てきます。そういう状態になれば必死になってやりますよね。それが本当にリリースするということの狙いです。
とは言っても、生き死にをかけてるわけではありませんし、会社をクビになることはありませんので、そこまで状態をどうやって作るのかということが問題です。次ではプレッシャーがかかりながら実制作する方法を解説します。
制作を進めるための7つのステップ
1. 友人を思い浮かべて「創りたいものを決定する」
まずあなたの回りの人を思い浮かべてください。その人達が困っていることや、あったらいいなぁと思っているものはなんですか?「萩原だったら、知らない人が気軽に飲みに行ける仕組み」「吉田だったら音楽をディープに語り合う場」であるとか思い浮かべる友人によって様々なことが頭をよぎるのではないでしょうか。そのような人たちが3人以上使いたくなるようなものを考えましょう。そして「手描きのモックアップ」を作ってください。それが第1歩です。PhotoshopやIllustratorなど得意な人はそれらのアプリを使っても良いでしょう。
2. 期限を確定する(1週間〜2週間)
想定されるものが完成するまでの期限を決めます。これは1ヶ月などと長くしてはいけません。1週間から2週間の間くらいがちょうどいいでしょう。もしこの期間で収まらないようであれば、アプリを見直します。つまり、もっとシンプルなものにするよう見直します。
3. 宣言する
そして宣言してください。手描きのモックアップを見せて「こんなの作るんだけど、完成したら使ってみてよ」と身近なまわりを巻き込みます。たいていは「お、いいね、やるやる、いつ出来るの?」という反応になるので、そのときに期日をはっきりと言います。「来月の1日にリリースするから、出来たら案内するよ」という具合がいいでしょう。最低3人以上にそれを行なってください。
4. 作り始める
プレッシャーがかかってる状態で、さらに宣言して友達の反応を見たことでモチベーションもアップしていると思います。そうなったらしめたもの。「開発」をスタートさせましょう!今まで勉強してきた本を傍らに置き、それを見ながらとにかく作ってください。そして、忘れてはいけないこと「必ず締め切りを守る」ということです。不完全でもいいんです、バグだらけでもいいのです、とにかく完成させることを目指してください。
5. リリースする
いよいよなんとか完成しました!友人に見せられる状態にするためにデプロイ(サーバーにアップ)します。そのURLを確認して、いよいよ友人にメールする時が来ました。「○○様 完成したので使ってみてください」というメールをしましょう。もしくはチャットの方がいいかもしれません。チャットしながら説明するとスムーズに進むので。
6. フィードバックを得る
使ってもらった感想やアドバイスをもらって、それを何かテキストファイルとしてまとめます。初めてなのでボロクソ言われるかもしれませんが、もしかしたら「いいねぇー!」なんて言われるかもしれません。それらをすべてフィードバックとして保存しておきましょう。
7. 改善案を考えて、4に戻る
フィードバックをもらって終わりというわけではありません。フィードバックをもとに次のバージョン2の企画をします。常に改善をし続けアプリをいいものに仕上げていきます。4〜7の手順をずーっと繰り返して、よいアプリにするということですね。ここまで出来たら「ああ、もっとこの知識が必要だよな」「これ知ってれば楽だったよな」ということが出てきますので、次のステップ「基本に帰る」を行います。
STEP4 [8週目] 基本に立ち返る …7日間徹底してやる
実際のアプリケーションなどを作って、プレッシャーのかかった本格的なプログラミングを経験したあとは、必要なことを痛感していることでしょう。このタイミングで「基本」をイチからやり直します。最初に買った本を「写経」し直します。きっと今回は「おお!意味がわかるぞ!」という状態でスラスラと進められると思います。最初は1週間かけてやりましたが、今回はその半分以下の3日以内で簡単に出来てしまうでしょう。
STEP5 [9週目] 応用的な本に目を通す(レシピ本など)
応用的な本を一冊なにか購入します。レシピ本などがいいかもしれませんね。フレームワークのレシピ本ではなく、ここでは「言語のレシピ本」になります。Rubyであれば「Rubyレシピブック」などがあります。レシピ本には「こういった場合には〜する」みたいな、問題と解決方法という形式で書かれています。多くの人が「これしたい!」という事がたくさんあり、そのやり方が載っているわけですね。
なので、それに目を通すことは非常に有意義です。基礎と違ってほんとうに役立つ実践的なことが多く載ってますので、大いに参考になるでしょう。これらのレシピ本は、分厚いものが多いので、写経する必要はありません。すべてに目を通し「何ができるのか」を知ることに集中してください。もちろんコードもよく読んでくださいね。
レシピ本を読む目的は、制作時に「あ、これならレシピ本のここに出てたかも」と思えるくらいになれることです。期間は3〜5日間を目安にしてください。分厚いのでなかなか読むのは大変ですが、ここは頑張ってすべて読み通してください。先程も言いましたが「何が出来るかを知る」ということが目的なので、大いに読み込む必要はありません。ちょっとわからなくてもスピードを持って読み進めてください。
STEP6 [10-11週目] ふたたび制作(アプリのブラッシュアップ)
2度めの基礎固めを行なって、さらにレシピ本を読み終えたので、かなりできることの範囲が広がっていると思います。こんどは、それらの知識を実際に使いましょう。頭の中にある「知識」はまだ眠っている状態だと思ってください。この知識を呼び覚まし「実際に使う」ことで、それは「技術」に変わります。この実制作を通して「知識」を「技術」に昇華しましょう。
すでにアプリをリリースした状態になっていますよね。それを改善します。レシピ本などからインスパイアされて、いろいろなアイデアが湧いてきているのではないでしょうか。それを改善案に加えていきましょう。手順は以下の通りです。
- フィードバックから改善案を考案する
- 手描きのモックアップを作成する
- それをもとにアプリを制作する
- 完成したら友人にメールする
- フィードバックを得る
STEP7 [12週目] コミュニティに参加する
言語にはたくさんのコミュニティが存在します。日本全国のみではなく世界的なコミュニティが各言語であります。例えばRubyであれば世界各国にもちろんありますし、関東だけであっても各地にRubyコミュニティがあります。他の言語ももちろん素晴らしいコミュニティが存在します。それらを見つけて参加することがこのステップです。
そうすることで、横のつながりを作ることができます。たいていは優しい人たちの集まりなので「おお、よく来てくれましたね!」という具合に歓迎してくれます。参加していると本には書かれていないような「最新の情報」や「便利な開発方法」などのTipsを得ることができます。親しくなってくると「質問」などもできるようになります。まわりに頼れる人がいるのは心強いものです。そして、同じことに興味がある仲間といっしょにいることは、とても楽しいですよね。コミュニティはかなり活発なので、いたるところで活動しています。それを見つけて参加してみるといいでしょう。
コミュニティの見つけ方
コミュニティは「勉強会」というイベントを開催しています。その勉強会を探すことがコミュニティを探す良い方法になります。Googleで「Ruby 勉強会」と検索してみましょう。するとたくさんの勉強会が表示されるはずです。それらを見ていって良さそうなものをひとつ探し、勉強会に参加してみましょう。他の方法としては「IT勉強会」というサイトがあります。そこにはたくさんの勉強会スケジュールが載ってますので、それを使って探すのもいいでしょう。
最後に
以上がプログラミング技術を身につける方法です。プログラミングは実に奥が深いので、これで終わりということがありません。初心者から覚えるのは大変ですが、この手順を繰り返すことで「最短距離」を通ることができます。いちどコツを掴んでしまえば、すごく楽しいし「ああ、コードが書きたい!」と思うようになります。ここまでたどり着けるように楽しみながらがんばってください!
まずは無料で14講座から始めましょう!
募集人数には制限があります。サインアップはお早めに。
11月24日まで