勉強法

プログラミング初心者は成果物を意識すれば圧倒的に成長できる‼︎

こんにちは。youhei_25です。

介護福祉士をしながら
独学でプログラミングを勉強し
その後techboostでの受講を経て、
転職を目標に現在も学習を続けています。

今回は成果物に関してお話ししようと思います。

プログラミング初心者は特に
この成果物の作成を意識した勉強が必要になります。

しかし必要な分とても困難です。

ただし順序よく勧めていけば
必ずできますので頑張りましょう!

どのようなプロセスを経て
成果物へと作り上げていったのか
経験者としてお話ししたいと思います。

プログラミングを勉強していると、
ただインプットに時間を費やしてしまう傾向にあります。

インプットは簡単にできますからね。

ただそれでは実際に身についたことにはなりませんよね。

そのインプットで得た知識をアウトプットし、
実際に何らかの成果物として
利用していかなければなりません。

しかし、やはりそれはとても大変で
難しく感じることの方が多いです。

私も成果物と言えるものは
出来上がりましたが、
とても多くの時間を費やしました。

ちなみに私の場合、
一度そのアウトプットで挫折しているんですね。

その挫折から

結局一人では進まないなと思い、
プログラミングスクールに
通うことに決めました。

もちろん
情報共有できる仲間が欲しいとか
転職サービスを利用したいなど
ほかの理由もありましたが。

勉強するからには、
なんにしても成果物の作成は
さらに先に進むために必須です。

そこで、
プログラミングスクール「techboost」
に通うことに決めました。

カリキュラムの内容と、
余計なサービスがなく
その分金額を抑えられていた為、
他スクールと比較して、
この「techboost」に決めたんですね。

最終的に
このtechboostで
成果物と言えるものを
作り上げることができました。

プログラミング学習初心者の方は
ついついインプットに逃げがちに
なってしまいます。

しかし勉強したということを
他者から評価してもらうためには
成果物が必要です。

ではどうしたら良いのか、
その点について
これからお伝えしたいと思います。

インプットの段階で
成果物を意識すべし

私は自身の希望もあり
「Ruby」を選択し学習していました。

Rubyにももちろん
様々な文法がありますが
正直インプットの段階で
この文法をどう使おう、
などはそこまで考えなくて
良いと思います。

しかし、
なんとなく成果物を意識しておくと、
この文法は成果物に使えるな、
と思うものが出てきます。

私の場合、
掲示板サイトを作りたいと
思っていたのですが、
例えばですが「.new」の記述は
使うことになるだろうとか
なんとなく思っていました。

ざっと流して
インプットだけを意識するとただ一連の学習内容を
終わらせるのが目的になってしまいます。

気づいたら同じことを
何周もしてしまったりということにも
なりかねません。

なのでインプットにも
成果物の作成を意識して
取り組むことをお勧めします。

教材通りアプリを作成すること

たとえば教材を
ご自身で買ってみるとき、
「アプリを実際に作ってみましょう」
というものが良いと思います。

ちなみにその場合
環境構築が必須になります。

環境構築でつまずいたなら
「Progate」や「techboost」
がその点の解決になるはずです。

私がそうでした。

特にtechboostの場合
AWSを使用するのですが、
その使用方法は非常に簡単でかつ
環境構築もイメージしやすいため
オススメです。

なんでも良いのですが
ご自身のやりやすい方法で
まずはアプリを作ってみると良いです。

このアプリを作るというのは
全体を俯瞰するにも役立ちます。

アプリの場合
一つ一つの作業も大事ですが、
どことどこがつながりあっているのか
情報の伝達経路が非常に大事になります。

なので一度出来上がっても
2~3回ほど回転させると
良いと思います。

私もそうでしたが
techboostの同期も
同じことをしていましたね。

ちなみに
私はメンターさんから
そのアドバイスを受けました。

たった一度作るだけでは
知識としては薄いからです。

一部変更をしてみる

出来上がったアプリを
今度はその一部分を
変更してみてください。

ここからが本当のアウトプットの
スタートです。

たとえば
ある機能を実装するとかがそれですね。

ログイン機能をつけたのであれば、
当然ログアウトも機能として
必要になります。

その場合、
ユーザーIDという一個人を
ピンポイントで消す必要があります。

すると[.delete(:user_id)]との記述が
必要になるはずです。

またユーザーに紐づく情報も削除するなら
[reset]が必要になってくるでしょう。

あくまで勉強の進め方をお伝えしたいので
詳しい記述に関しては除外しますが、
このように一部変更し
アウトプットしていくと
良いと思います。

教材の通りにアプリをまず
2~3回ほど繰り返し作る。
その後その一部分を変更する。

こうして少しづつ
アウトプットに慣れていくと
良いと思います。

自作を完成させよう!!

上記が終了したら
いよいよ自作アプリの作成です。

これができれば成果物となり、
転職活動をするなら
ポートフォリオになります。

しかし、正直これは難しいです。

なので都度メンターを雇うか
やはりスクールに行くことを
提案します。

私も上記のように、
techboostで
教材のアプリを数回行い、
一部変更を学習として行いました。

しかしそれでも
自作アプリは難しかったんですね。

私の場合、
自分でメンターを雇うというのが、
どこでどのようにして
見つければ良いのか
わからなかったんです。

単純に不安ではないですか?

プログラミングを
長いこと学習していたり、
多少仕事をしているのなら
慣れているかもしれませんが、
全くの初心者ですからね。

お金を払って結局わかりにくい、
みたいなのを想像してしまって
メンターを雇うのはやめました。

それだったら、
と品質が保証されている
スクールのメンターに聞くのが
良いと思い、
techboostの受講を
決めたんです。

そこでメンターさんには
何度も質問し
ようやく成果物が出来上がりました。
あれを自分でやるとしたら、
かなり大変か、また挫折、
みたいなことになっていた気がします。

またもう一つオススメがあります。

それは
なるべく簡単なものを
作るということです。

techboostでもそれを勧められました。

ちなみ私は当初
検索サイトを作ろうとしたのですが
途中でやめました。

ボリュームがあまりに多く、
今までの学習の応用も
利かなかったのが理由です。

結局掲示板サイトを
作成することにしました。

中止と変更は
techboostのメンターさんと
転職サービスの担当者さんからの
助言でしたね。

転職するなら、
「人事担当者は
初心者にそんな凄いものは求めていない。」

「それよりも
最後まで諦めずに作り上げることが
できたか、そこをみるはず。」
と助言をいただきました。

確かに難易度の高いものを作ろうとして、
途中で挫折したものより、
簡単でも一つの作品として
完成されたものの方が
はるかに価値があります。

そもそも未完のものなんて
人に提出できませんよね。

なので自分が作りたいと思い、
かつ今までの応用の範囲でできるものを
作るのが良いです。

以上今回は成果物に関して
お話ししました。

まとめ

インプットは
作りたい成果物を意識して行うこと。

結局各文法は
使わないことなど多くあります。

アプリを作ってみると
わかるはずです。

しかしだからと言って
基礎をおろそかにするのは
良くありません。

なので
「こういうアプリを作ってみたい」
とイメージしながら各文法を
インプットしてみてください。

今までと違う意識でもって
インプットできるはずです。

教材アプリを複数回行うこと。

アプリの作成は様々な要素、
大きくいうと
MVCの関わりがあって
成り立っています。

これら全体像は
たった一度では理解できません。

何度も繰り返し作成し
理解していきましょう。

一部変更でアウトプットの練習を。

最初から成果物を目指しても
きっと挫折します。

少しづつ自分の頭で考え
解決する癖を作るため
一部分の変更から
行なっていきましょう。

最後はいよいよ
自身の作品を作り
それを成果物として
人にみてもらえるまでになりましょう。

そのためには
しっかりと完成品を目指してください。

簡単なもの、
特に今まで作ったものと
似たようなもので良いのです。
むしろしっかりと学習したんだな
とみられます。

特に最後の点に関しては
私もtechboostで言われたことで、
凄いものを作ろうとする
自分の戒めの言葉にもなっています。

以上が初心者が取り組む
成果物の作成についてのプロセスになります。

学習初心者の方は
アウトプットには慣れていない方が
多いでしょう。
挫折をしやすくもあります。
私も挫折しました。

せっかく学習するなら
そんな挫折への可能性を無くし、
なるべく無駄を省いた成果物への
プロセスを築くことが必要です。

確かにある程度の金額はかかりますが
私はtechboostで受講をして、
この無駄を省いた学習というのが
実現できたと思います。

メンターさんや転職担当者さんは
先を見据えた助言をしてくれます。
決して一過性の学習を進めることはないはずです。

なかなか学習が進まない方、
どのように学習を進め
将来につなげていくか先が見えない方は
一度techboostでの受講を
検討してみると良いかもしれません。

そこでご自身の成果物を目指してみてください。

ABOUT ME
youhei_25
youhei_25
プログラミングスクールtechboost卒業 全くの初心者からHTML・CSS独学で勉強し、プログラミングに興味を持ち上記スクールに入学。 現在介護士しながら勉強を続け、将来的には介護業界をよりよくするシステム開発がしたいと思っています。経験を生かして有意義な情報を提供したいと思います。