
私も大学生のときに授業でVBAをやって、さっぱりわからずに諦めました。w
未経験でエンジニアになったときに必死に本とWEBサイトで勉強したらなんとか身についたのでその方法を共有します。
ここでは、「効率よく」「学習を続ける」ことによって、プログラミング能力を身に着ける方法を説明します。
Contents
プログラミング学習をはじめる前に
まずは始める前にしっかりと心構えをしましょう。プログラミングを学習するうえで最も重要なことなので先にかきます。
うまくやる気と付き合う
結局続けば問題無いわけで、続く為にどう心をコントロールするかがもっとも重要になります。ここを無視して進めようとすると、うまくいきません。
よく人の心は無視して、作業時間とか勉強時間とかばかりに囚われている人がいますが、そんな考え方では絶対諦めてしまいます。
常に自分のやる気をコントロールすることを忘れないでください。
プログラミングは簡単ではない
「プログラミングは簡単だ!すぐできるようになる」という趣旨の発言をする人が巷にはあふれていますが、無視しましょう。おそらくあなたが思っているより簡単ではありません
まったくやったことない人がスラスラかけるようになるまでには結構な時間を必要とします。
これが仕事であれば毎日8hも作業をするので簡単に身につくのですが、大学生や別の仕事をしている人はせいぜい1日2hくらいやったら疲れてしまいます。
なので、「プログラミングが簡単」に身につくのはIT企業に入った人たち、もしくはすでに教養のある人たちであることを念頭においてください。そうしないと初めから面くらってやる気が失せてしまいます。
かならずやりたいこと・目標を設定する
これはよく言われることなのですが、プログラミングをやる際になにかやりたいことを見つけるのが一番良いです。
いきなり目標を自分で立てようとしても思いつかないとおもうので、私が初心者向けにおすすめする目標をざっとあげてみます。(しっかり構造化していませんが、ざっくり書かせてください)
- 単純作業を自動化するプログラムを書く(例えばエクセルのVBAでシートをコピーしたり、何か集計処理をしたり。PYTHONでもできる)
- pythonでWEBサイトをクローリングするツールを作成する(WEBサイトの情報を抜き出してきて、まとめるようなプログラム)
- ブログのHTML、CSSをいじる(みなさんがイメージしているプログラミング言語とは少し違うのですが、すぐ動かせるので)
- 大学の授業でやっている処理をプログラムで書く
- お金を稼ぐためにWEBサービスを作る(ハードルは高いですが、ここを最終目標として必要なことを勉強していくでもよいと思います)
- お金を稼ぐためにスマホアプリを作る(言語に縛りがあります)
やりたいと思える目標は必ず作ってください。私の場合は結構苦労しましたが、JAVAでWEBサービスを作成することを目標にしてしばらく勉強していました(だらだらやっていたら1年くらいかかってしまいました)
お金を稼ぐでもなんでもいいので、とにかく目標を作ってそれに向けてやることです。逆に目標がいまいち決まらないけど勉強したい!であればそれでもいいのですが、まあ何も身に付きません。ちょっとプログラミングかじったことがあるレベルでおわります。
難しい、わかりづらい本を選ばない
これはあるあるなのですが、本の選び方はあとで説明します!
仲間を探す
これも継続するための方法なのですが、できれば仲間を見つけたほうがいいです。そういった意味ではプログラミング教室に行くのは一つの手かもしれません。
仲間がいないで一人でやっていると、「なんでやってんだっけ?」「なんか意味あるんだっけ?」となりがちです。難しい問題や理解できないことがあったときにあきらめてしまうので、できれば早い段階で仲間を見つけましょう。
すぐには見つからない人の方が多いとは思いますが。。
効率よくプログラミングを身に着ける方法
では、実際に効率よく身に着ける方法を紹介します。
プログラミング言語はpythonがおすすめ
pythonというプログラミング言語を勉強するのが一番良いと思っています。他の言語を勉強しようとしている人はちょっと立ち止まってみてください。
実行がめちゃくちゃしやすい
私が一番おすすめしているのは、PYTHONという言語で、Anaconda(jupyternotebook)という環境で実行する方法です。
いざプログラミングをやろうと思ったときに、実行する方法がわからず文法だけ読んで、「あ、そうなんだ」で終わるパターンが最悪です。まずは簡単に実行できる環境を整えなくてはいけません。
その「簡単に実行できる環境」というのがJupternotebookです。これを使うと、1行書いて実行して結果をみて、次の1行を書いて実行をして結果をみるということが簡単にできます。
また、インストールも簡単でweb画面で動かせるのでめちゃくちゃやりやすいです。
このJupyternotebookはpython専用なので、このツールを使うためにはpythonを勉強しなくてはいけません。本当はJAVAの本で結構良いプログラミングの本があるのですが、ツールは絶対これを使った方がいいです。
anacondaのインストールは下記から。windows版をインストールしたら、開いてjupyternotebookを実行します。使い方の詳細については調べてみてください。
少ないコードで分かりやすく実装できる
pythonはほかの言語に比べて非常に読みやすく、書きやすいので初心者にかなり向いています。もちろん、初心者に向いているからといって、何か機能的な制限があるとか、実務で使われていないなんてことは一切ありません。
求人が多い
ひと昔前だとJAVAが人気だったのですが、今はPYTHONの人気がとても高いです。INDEEDなどにいってシステム開発の求人を見てみてください。pythonがかなり目立つはずです。
ちなみに、もし数十年後人気がなくなったとしても、今人気のpythonで書かれたシステムがしぶとく生き残っているはずなので、まったく気にすることはありません。
失敗しない教材選び
ひと昔まえであれば本を断然推していましたが、今は人気の高まりとともに動画系サービスがかなり充実してきているので、本だけでなく動画系サービスもオススメです。
ほかにもプログラミングキャンプなどエンジニアに就職する人向けのサービスも出てきているのでざっと失敗しない選び方を書きます
本か動画かWEBサービスか教室か
プログラミングをはじめるときにまず悩むと思うのですが、まずは本で勉強することをお勧めします(安いので)
ただ、以前本で勉強したことがあって挫折した人は、動画系サービス、WEBサービスを使い、最後の手段として現役講師に教えてもらうキャンプにいくとよいです。
おすすめの書籍一覧
ここではpythonで勉強することを前提にしているので、Pythonの本を紹介します。
- スッキリわかるpython入門 (一番おすすめ)
- 入門python3(少しわかる人向け。網羅的。pdfもある)
- みんなのpython(少しわかる人向け)
私の場合はゼロからJAVAで勉強したのですが、そのときはスッキリわかるjava入門という本がめちゃくちゃわかりやすかったです。同じ種類の「スッキリわかるpython入門」がダントツでおすすめです。
「入門python3」はオライリーというIT業界で一番有名な会社が出している本です。オライリーの本は全世界で読まれているのでかなり信頼できます。内容ももちろん申し分ないのですが、少し込み入った話もしているので完全に初めてだと少し難しいかもしれません。
「みんなのPython」も少しわかる人向けで、この本もわかりやすくお勧めです。
おすすめの動画サービス
動画系のサービスは最近は結構充実してきています。Udemyは講師の数や動画の数が以前よりかなり増えてきましたし、講座の質も上がっているのでオススメです。
動画系サービスには以下のようなものがあります。
ドットインストールは動画が短いので達成感を味わえます。なのでまずはドットインストールからはじめて徐々にUdemyの有料動画に移っていくのが良いと思っています。
udemyでおすすめのpythonの講座は以下です(ほかにもいろいろあるので探してみてください)
youtubeの動画は英語がほとんどなので、英語が堪能な人はまずyoutubeで探してみるのもありです。pythonの動画もいくつかあります。私は英語が結構きつくてあまり見ていません。
おすすめのWEBサービス(プログラミングできる)
動画サービスもWEBサービスなのですが、ここで言うWEBサービスはWEBでプログラミングの機能を提供しているサービスを指します。
プログラミングの課題が出されて、それを解いていくようなサービスが主流で、解説がしっかりしているものが多いので、本で文法の基礎を勉強したあと、もしくは一番最初からやってもOKです。
- codecademy(海外発。WEBブラウザ上でコードを打って実行することができる。問題が出題されて解いていく形式。英語なので少し難しい)
- progate(日本発。WEBブラウザで実行可能。こちらも出題形式。日本語なのでわかりやすい)
codecademyは昔プログラミングを勉強しはじめたときに結構やっていました。フォーラムみたいなところで質問している人がいるので(もちろん英語)それを手掛かりにやっていました。ただ、これだけだと情報量がたりないので、なぜそうなるのかが結局わからず、本で調べたりする必要があります。
本一冊買って、上記WEBサービスもやるが一番良いかもです。
おすすめのプログラミング教室
ここは本や動画サービスであきらめてしまった人にオススメです。プログラミング指導系のサービスは マンツーマンで教えてもらうのでどうしても金額的に高いのがネックです。
ただ、あきらめてしまうくらいであれば今のうちに少し投資して最初のスタートを切るというのは妥当だと思います。少しできるようになれば、あとは独学で結構身に着けることができるので、スピードに乗れます。
おすすめのプログラミング教室は以下です(本当はもっとたくさんあるのですが、似たり寄ったりなのでその中で良いと思ったものに絞っています)
おすすめはテックアカデミーの方です。 オンライン完結でプログラミングを学べるので。webcamp proの方はマンツーマンで教室で学びます。(値段は当然オンラインのテックアカデミーの方が安い)
プログラミングの場合、画面を二人で見て教えることになるので、実際に会う必要があまりありません。教室でやると仲間ができる可能性はありますが、値段が安いオンラインの方がいいかな。(人によるので両方詳細を見てみるといいかもです)
まとめ
- 言語はPYTHONを選ぶ
- プログラムで実現したい目標を設定する
- 教材はWEB系サービスと本ではじめて、動画に移り、だめならプログラミング教室へ
こちらにIT業界に未経験で入るための勉強方法の記事を書いているので、IT業界に行きたい人はこちらも参考にしてくださいー