100年人生のサバイバルブック

人生100年時代の生き方を考えるブログ。健康・キャリア・英語・IT、日々の挑戦について

プログラミング超絶初心者のその後の勉強法②

f:id:lifedesignfreak:20191013185815j:plain

 

1ヶ月ほど前にオンラインプログラミングスクールを終えた後のその後の勉強法について記事を書きました。今回はその続編となります。

 

lifedesignfreak.hatenablog.com

 

スクールを終えてから今現在で1ヶ月半ほどとなります。

脚色せずに現時点の様子をお届けできればと思います!

 

前回同様に初心者から仕事として、つまりプロとして目指している人には物足りない内容になると思います。

どちらかと言えば、「そもそもITがよく分からないけど勉強したい」「プログラミングに興味があるけど、ハードルが高くて手が出せない」みたいな方のエネルギーに、または初心者が陥りやすい失敗等の気づきになれればと思います。

 

 

その後、どんな勉強をしているか?

前回の記事から勉強していることを以下にまとめてみました。

 

・Progate:Ruby、Ruby on Rails、Python

・Techpit:Ruby on Rails

 

まずProgateに関しては前回も紹介しましたが、

プログラミングの基本的な事項が学べるWebサイトになります。

月額980円になります。

 

■Progateホームページ

https://prog-8.com/languages

 

無料でも利用ができますが、閲覧できるレッスンが限定的なため、

ほぼ課金必須です。ただ、月額980円でしたら明らかに安いと思える情報量とシステムだと思います。

 

そして私は上述している、Ruby、Ruby on Rails、PythonについてはすべてProgate上のレッスンは終わりました。

 

正直な感想をお伝えしますと、Progateを勉強しただけでは自分で何かしらのアプリケーションを作れるようになるのは難しいと思います。

 

「え、それではProgate使う意味がないのでは?」と思う方がいらっしゃるかもしれませんが、もちろん決してそんなことはございません。

Progateがアプリケーション開発に役に立つことは間違いありません。実際に私も利用させていただいて、役立っていることを実感しています。

 

ところが私はProgateを勉強している時にあることに気づきました。

それは、Progateはアプトプットではなく、インプットの勉強であると!

 

つまり、知識が入ってきてはいるがアウトプットにはほとんどつながっていないということです。

そしてアプリケーションを自分で作れるようになるには、

このアウトプットをいかにしていくかが大事になるということです。

 

ここで私が思うアウトプットとは、自分でアプリケーションの構造を考えて、

Ruby on Railsで言うと、どんなルーティング、コントローラー、モデル等々が必要かを考えること、そして実装する(プログラミングする)際には、調べながら自力で解決していくことではないかと思います。

 

インプットは必要ですが、アウトプットがより重要であることは色々な物事で同じだと思います。

例えば、作家を目指している方が本で物語づくりの構成についてひたすら勉強をしても、自分自身で文章を書いて改善していく行動を取らなければ、本当の意味で文章が上手になることはないでしょう。

 

運動でも同様で痩せたいと思っている人が、いくらダイエット法に詳しくなったとしても、それを行動に移さない限りは全く使い物になりません。

 

そして、このインプットだけでできる気になっている時が最も危険であることに同時に気づきました。

本当はアウトプットしていないので前進していないのですが、なぜかできる気になってきてしまうという状態です。私もこの状態に陥りかけていたような気がします・・・。

 

と、ここまで書いているとProgateをディスっているようにも見えますが、

決してそうではないです!私自身、大変活用しています。

 

特にRailsのレッスンに関しては、Twitter風のSNSを作る際にどんなことをする必要があるのかが網羅されています。

また、後述するTechpitでアプリケーションを作る際に、詰まった時にはProgateを教科書代わりにしながら、どうやって実装していけばいいんだっけ?みたいな使い方をしていました。

 

ここで私が言いたいのはインプットだけの学習方法では意味がないということです。

Webで検索していると、現役エンジニアの方が初心者が勉強するためにどうすればいいのか?という質問に対して、完成物を自分で作成してみることが良いと仰っている方がいて、大変納得しました。

 

そこで私が実践した方法が次のTechpitになります。

 

Techpitについて

Techpitはオンラインでプログラミング用の教材を販売しており、

買い切りでユーザーが購入したい教材を選択する形式になっています。

 

■Techpitホームページ

https://www.techpit.jp/

 

Techpitは“サービスを作りながら学べる学習教材”を掲げており、大体一つの教材は数千円程度です。

成果物がどんなものになるか、どうやって作成していくかは課金しない状態でも、

少々中身が見えるため、全く分からない内容の教材を買うということにはなりません。

 

私は簡易的なSNSをRailsで作る教材を購入して、先日アプリを完成することができました!成果物ができましたが、特段価格が高すぎる等の印象はありません。

なので面白そうだなと思う教材を選んで購入してみればいいと思います。

 

Progateはヒントが多く、基本的には教科書をなぞるように進めていくため、ほとんど行き詰ることはありませんでしたが、こちらのTechpitの教材は作者によると思いますが、Progateほどの補助はない教材になります。

 

例えば少々説明不足な点があり、教材通りにやっても上手くプログラムが動作せずに、インターネットで同じような不具合が発生している事例を調べて、己で解決する必要がある場面に何度か遭遇しました。まずProgateではない現象です。

 

逆に言うと自分で調べて解決する力や、どうやってアプリケーションを設計するかはProgateを勉強している時と比較して、より深まったような気がします。

 

もちろん、今回は簡単なアプリケーションを作成したに過ぎないので、

まだまだアプリケーションを作成できるレベルにはないのですが、何かようやく一歩を踏み出し始めたような気がします。

 

というわけで次回までの私の目標はより複雑なアプリケーションを作るということにしたいと思います。作るものは有名サービスのコピーでいいかなと思います。

その後、独自のアプリケーションを作れたらいいな、というのが今の私の現状です。

 

いまだに超絶初心者レベルだと認識していますが、

ここまでの学習で一般的教養レベルのコンピューターサイエンスの知識やプログラミングの知識に関しては十分なレベルに達していると思います。

要はプロでなく一般人に必要な知識は持ち合わせているということです。

 

たった数ヶ月ですが、勉強していてITやプログラミングに関する理解は深まりました。

そしてプログラミングの何となくの全体像がつかめてきた気がします。

 

また学習状況についてアップデートし、私と同じような超絶初心者のみなさまに役に立つ情報をお届けできたらと思います!

↓ ブログ村ランキングに参加しています。

にほんブログ村 ライフスタイルブログ 残りの人生へ
にほんブログ村