Progateで1ヶ月半勉強した雑感


僕は明日5/18よりテックキャンプに入学予定のものです。
幸いにも半年前に同じ道を歩んでくれている友人がいることから、彼に色々助言をもらい1ヶ月半程度働きながらProgateを利用し勉強していました。
明日からは中々ハードな日々が始まりそうなので、この1ヶ月半で思ったことを忘れない様にまとめておこうと思った次第です。

【Progateで学習した内容】

HTML CSS(2周)→Ruby(1周)→Ruby on Rails(2周)→Git(1周)→SQL(1周)→JavaScript(1周)

*こんな感じでした。Railsまでをある程度しっかり理解する様に頑張ったという感じですね。MVCモデルに基づいて考える、という思考法が少しずつ身につきはじめたな、と感じる様になってからようやくちゃんと理解ができる様になったなあという印象でした。

【学習中に感じたこと】

1.「とにかく手を動かす」が結局コスパがいい

どちらかというと僕は立ち止まって考え込むタイプの人なのですが、プログラミング、ミスってからなんで!?って考えてかないと学べないことが圧倒的に多いなと。
事前に思考の流れを整理しておくのは当然大事なんですが、どうしたってミスは起きるし、間違ってからちゃんとどこで間違ったか辿ってった方が「自分がなぜ間違ったか」に気付きやすいなと。
「ここがエラーになるってことは、そもそもこの考えだったけどその理屈が間違ってるのでは?」的な気づきが圧倒的に多かったんですよね。

2.最初は一つの言語を掘り下げた方が良いは絶対的真実

これ、常識レベルでめちゃくちゃに言われてる話ですが本当にそうなんだなと。
それこそJavaScriptは僕はほぼ昨日1日で全部やったんですけど、RubyとRailsやってると書き方と考え方違うくらいでサクサクって感じだったんですよね。
なんでプログラミングの流れを理解することが最優先で、それなら一個の言語である程度それを習熟してった方がいいんだろうなというのは本当に感じました。
一方で、JavaScriptでの表記の仕方に疑問を持って調べてくうちにRubyの性質を学ぶことができたりとかそういう気づきもあったので、常に得た知識がどの階層の知識なのか(プログラミング言語共通の話なのか、その言語の話なのか)をなるべく区分けしてインプットしていく癖はつけておきたいなと感じています。

僕の場合はJavaScriptで比較演算値 ===と==の違いが気になり調べているところから、Rubyが以下に自動的な処理をバックでしてくれているかということを少し肌で感じました。

3.質問できるのも結構な能力

友人のエンジニアにどうしてもわからないところは定期的に相談に乗ってもらっていたのですが、何が分かってないのかを説明するって結構骨が折れました。
「自分がこう考えているから、この結果になるのがおかしいと思う」という文章で話す様にはしているのですが、あまり言語のこと自体よく分かってないとそもそもの前提条件の説明がうまくできないんですよね、「ここはこういう風になっています」ってのをどこまで説明するべきかが見えてないためです。
これは主にRailsをやっている時に思ったことです。MVCモデルへの理解が進むにつれ「この部分説明しといた方がいいんだろうな〜」という感覚が少しずつ身についてきたので、やはり概念の理解は大事。

駆け足でまとめましたが僕がProgateを触ってみて思ったことは以上になります。
スクールが始まって忙しくなっても、定期的にこうした思考法の整理は行ってアウトプットしていきたいですね。とりあえずはちゃんと卒業できる様に頑張ります笑



この記事が気に入ったらサポートをしてみませんか?