プログラミング初心者の「学び方」と「お困り事」を聞いてみた!

こんにちは、片岡と申します。
「プログラミングはもっとみんなの身近なものになる。」
そんな思いからブログ始めました。

今日は、そんな「プログラミングに興味が出た初心者」に実際にインタビューし、状況やお困りごとを聞いて来ました。インタビューうけて頂いたのは、ちょうどプログラミングを始めて1ヶ月ほどのNさん(30代男性)です。
(先輩ヅラして)自身の経験も伝えています。良かったらみてみて下さい!

Q1: どうしてプログラミングを始めようと思ったのですか? きっかけを教えて下さい。

Nさん: もともと、本業は「機械設計」の仕事をやっています。そんな中、クライアント先から「ソフトウェアもいじれないの?」とご要望いただくことが時々あり、仕事の幅も広がるのでは無いかと思ったのが、キッカケです。

今までは、興味はあったり、周りの人がやっているのを、ちょっと後ろから見たことはありましたが、実際にプログラミングしたことはありませんでした。

Q2: 実際にどのようにして勉強していますか?

Nさん: インターネットで、勉強法などをリサーチしました。その中でしっかりプログラミングやるなら、macのほうが良さそうなこと + 色々な言語があることを知りました。

そんな中、Progateというオンライン学習サイトがあるのを知り、現在はそちらで、先週はRails、今週はswift講座を勉強しています。

色々触って、細かい記述の文法は、違うけど、根本原理は一緒、なんだなと思いました。

片岡: そうですね。ちなみに、最初は何かこれって決めた言語をガッツリやるのがオススメです。Nさんも言ったように「根本原理」は一緒なところもあるので、自分の好きとか用途に合った言語を一つ決めて、それをしっかりやっていくのが近道だと思います。

片岡: ドットイントールや、Paizaなど、他にも色々なオンライン学習サイトがありますが、なぜ「Progate」にしたのですか?

Nさん: そこは、正直なんとなくです。w ぱっと目に入ったのが。それでした。

Q3: 実際に勉強してみて、いま「困っていること、悩み」などはありますか?

Nさん: 1番困っているのは「やっていることがどんな風になるのか。イメージがなかなか掴みづらい」というところだと思います。

とくに先週やっていたrailsなどは、サンプル通りにやっていて動きはするのですが、実際なんで動いているのかがわからない。w

片岡: なるほど〜。確かにフレームワークであるrailsをいきなりやると、便利ですが、かなりレベル高いことをいきなりやってしまっているので、難しい部分も出てきそうですね。いきなり「二段超え」しているイメージです。

Nさん: 実際にこれで、「プログラミングできるようになった。」という感じがつかめないところがあります。

片岡: そうですね。現在のProgateの学習法は、写経のように「やれ」といわれたことをそのままやっていくものなので、本当に「できるようになった」という感覚を掴むのは難しいところもあります。

それは、実際に経験を積んでいくのが1番ですね。

そこを掴むには、具体的には、大きく3つの方法があると思います。

1: 実践から学ぶ

これは、1番オススメの方法です。結局実際に仕事としてプログラミングをやるのが、最も手っ取り早く力をつける方法です。そこには、(多くの場合)すでに構築されたコードがあり、それに追加機能や改修をするタスクが山積みです。それを開発していく中で、実践力が身につきます。

特に、ベンチャーの開発を手伝える場などがあると1番良い気がします。

メリットは、学習スピードが最も早い点。デメリットは、ハードルが高い点ですかね。

2: 自分で好きなプログラムを作る

これは、自前でできる方法です。何か作りたいアプリを考えて、それを作る方法です。最初はあまり大きすぎないのが良いと思います。自分がちょっと使いたいツールとかが良いですね。(TODOアプリとか)

教科書に書いていないものをやることで、どうすれば良いんだっけというところから考えて実装する力がつきます。

メリットは、取り掛かりやすい点と楽しい点。デメリットは、続けるかは完全に自分しだいという点ですね。

3: もう一段上の学習ツールを使う(Rails tutorialなど)

もう一段上の学習ツールを使うのも良い方法です。たとえば、railsだと「Rails Tutorial」が有名です。資料は全部無料で提供されているもので、Progateよりしっかり原理から教えてくれるので、ちょっと読むのはタフですが、その分 力はつくと思います。

最初は全部やらなくても前半(ログインの7章ぐらいまで)やれば、十分に力がつくと思います。

他にも、オフラインの授業に行くなど、ガッツリやる方法は何パターンかあります。

Nさん: まだ実はProgateのrailsは半分ぐらいなんですよね。w

片岡: ならまずそれはやりきりましょう。実際、Progateで一旦サンプルを一通り手を動かしてやるのは、最初の方法としては良いものだと思います。実際、開発を勉強したいインターン生などにも、最初は「ドットイントールとか、Progateとかで一通りrails触ってきて」と伝えています。

Nさん: わかりました!

まとめ

実際にヒアリングすることで、実例を聞けてよかったです。本人に聞くと「色々な言語じゃなくてまずは一つをしっかりやってみる」という点が1番響いたと言っていました。

また、Progateのような超入門学習の後には、

1: 実践から学ぶ

2: 自分で好きなプログラムを作る

3: もう一段上の学習ツールを使う(Rails tutorialなど)

という方法があることを伝えました。

今後が楽しみです。また、機を見計らってヒアリングしてみたいです。