見出し画像

プログラミング初心者が半年で7つもプロダクトを作れた理由とその方法

皆さん、こんにちは!なかざわじゅんぺいです!

僕は現在、都内の大学で大学職員をしておりますが、副業で色々とプログラミングを教えたりしております!
そんな教えたりしている僕ですが、ほんの半年ほど前までは全くの初心者でHTML??

は?

みたいな状態でした笑
そんな僕がどうして、タイトルにもある通り、半年間で7つもプロダクトを開発することができたのか。
そんなテーマで書いていきます!
全ての初心者プログラマーに届けえええええええええ!!!!

そんなに難しいことをしたわけではないので、誰でもこのnoteを読んで、実行すればできるようになることだと思います!

また、【環境を整えよう編】【やり方をしる編】でこのnoteは構成されてます!

それでは、いきましょう!

伝えたいこと

まず、このnoteで伝えたいことは以下です!笑

メンター探しのポイント (5)

上記のことを僕自身の経験を基にお話していきます!

【前提】いきなりプログラミングスクールはなし!

 大前提です!

 昨今、プログラミングの勉強需要は高まっているので、プログラミングスクールの需要も爆あがりしてますよね。
でも、半年前の僕は絶対にスクールには最初から行かないと決めてました。なぜなら、僕自身も未経験の全くの初心者のときに某有名プログラミングスクールに通い、地獄を見たからです。私自身はそのスクールではなかなか良いメンターに巡り合わず(プログラミングの実力ではなく、性格?の相性)とても辛かったです。相性が合わないので、頑張ってコードも書く気にならないですし、最初は1つのサービスを作ることを目標にしていたのに、最後の方ではとにかくカリキュラムを終わらせることだけをメンターから迫られてました。
 また、それなりに知識がある状態でスクールに通った方がメンターとの共通言語もあり、教える側も楽なので最初は独学である程度理解した後にスクールにいくことをおすすめします!

 上記のような経験があったので、僕は独学である程度学んだ後にプログラミングスクールに行こうと考えました。ただ、一人でやるのはいくら基礎でもきついのがプログラミングです。
次に僕が取った行動は「メンター」を探すです。

【環境を整える】メンターをみつける

 どうして、メンターを探したか。
プログラミングを独学する場合はドットインストール等で色々を学ぶとことになりますが、確かに知識は身につくのですが、プロダクトを開発するとなると、このHTMLやCSSといった基礎的な物がどこでどう使われるのか想像が尽きません。特に未経験の場合はどうやって、デプロイするかなんて全く想像がつかないのが現状です。
 例に漏れず僕もその一人だったので、コードとかを教えてもらうというより、プログラミング学習を先導してくれるメンターを探しました。

メンターの探し方はいくつかあると思います。僕の場合はyentaというビジネスマッチングアプリで知り合いましたが、他にも手段はいくつかあると思うので紹介しておきます。

yenta | ビジネス版マッチングアプリ
https://page.yenta-app.com
マッチングなので毎日やり続ければ、エンジニアとは必ず繋がれます!

スクリーンショット 2021-01-29 14.05.10

メンターをさがす|MENTA
https://menta.work/plan
すぐに確実にメンターを見つけたい方にはおすすめ

スクリーンショット 2021-01-29 14.07.47

ココナラ - みんなの得意を売り買い スキルマーケット
https://coconala.com
いろいろなプランがあるので自分にあったものを選びやすい!

スクリーンショット 2021-01-29 14.11.23

上記の方法以外にもTwitterで探すとかいくらでも方法はあると思うので、自分にあった方法で探してもらっていいのですが、以下のポイントを押さえてメンターを探して欲しいと思います!

メンター探しのポイント

 初心者がメンターを探すときは以下のポイントに注意をして探した方がいいです!

メンター探しのポイント

解説しますね!

1:優しそうかどうか

 これは意識低いわーとか思われそうですが、初心者の段階で厳しすぎる指導は全く必要ありません。まずは、コードを書くことが楽しい。プログラミングの基礎的な原理原則を理解できればいいので。プログラミングは意外にメンターの方が厳しいものです。もちろん、自分で調べてから聞くといのは忘れてはいけませんが、あまりにも厳しい指導でやる気を無くしては意味がないのでメンターの人柄は注意しましょう!

2:料金が高すぎないか

 ホテルとかであれば高い料金の方がサービスの質がいい場合もありますが、プログラミングの場合はそうとも限りません。初期の段階で高額なお金を支払う必要は全くないので、自分の予算内で探しましょう!

3:技術力があるか

 ここでいう技術力はプログラミング の技術力もありますが、教えることの技術も大切なので両方が揃っているかどうかを可能であれば、無料カウンセリングとかで確かめましょう。(無料カウンセリングは設けていないメンターさんが多いですが・・・)

ある程度メンター探しは運要素もあるので、自分にあったメンターを見つけるまで行動し続けることをオススメします!

では、そんなメンターさんとどんなことをやったかについて紹介します!

 僕がメンターさん過ごしたのは2ヶ月間なのですが、以下のことを実践しました。

メンター探しのポイント (1)

目標はとにかく自分の作りたいものを作ることを目標にしましたが

、、、挫折!!!!!

ここ皆さんにも注意して欲しいポイントですが、目標は自分が作りたいものを作るでいいです。しかし。あまりにも高度なものはいきなり作ることはできません。

僕の場合、挫折したので作るプロダクトのレベルを下げて、再出発しました・・・笑

【環境を整えよう】基礎知識を身に付ける

 メンターの次は基礎知識を身につけましょう!基礎がないと話になりません!

今の初心者プログラマーにおいて、Progate・ドットインストール・Udemyは三種の神器です。これらの手段を僕がそれぞれ、どのように使ったかを紹介します!
ポイントはゴールからの逆算です!

ステップ1:ゴールを決める

 まずはゴールをきめましょう。僕の場合は"yell"という実習生にエールを送れるwebアプリを作ることを目標にしました。

ステップ2:必要な技術を知る

 ゴールが決まったら、次は技術です。僕の場合はどうやら画面に文字や画像を表示するHTML、CSSが必要だとわかりました。それにプラスしてデータを管理するバックエンドと呼ばれるもの、さらに文字を動かしたりするためのJavascript(Vue.js)、さらにサーバー。。。
いや、多すぎいいいいいいいいいいいいいいいいいいい!!!
となりますよね笑

ここは我慢して一つずつ学んでいきましょう笑
リアルな話をするとサービスを作る上では上にあげているものだけでは作れなかったりします笑

ステップ3:完成までのスケジュール決める

 ゴールと手段が決まったら、完成までのスケジュールと学ぶ手段をまとめましょう。僕の場合は以下の図のような感じで学びました!

メンター探しのポイント

バックエンドはmicrocms、サーバーはherokuというサービスをそれぞれ使用して、学習時間を削減しました!(上記の二つは難しいことを覚えずに必要なサービスを提供してくれているイメージです)

ポイントは全部覚えないことです!ゴールを達成するために必要なことだけ学びましょう!

実際にどんなことをやったのか詳しく見たい方は
こちらのnoteからどうぞ!
【小説風】プログラミング未経験の大学職員が本気になってから、2ヶ月でwebアプリを開発した話
https://note.com/peipei55/n/n933767c0bf9a

とにかく、やり切ろう!

 ここまで来たら、とにかくやり切りって、最低限の知識を付けましょう!僕は最低でも1時間は毎日コードを書くようにしました!そしてなんとか完成させることができました!以下が最初に開発したサービスです!(自信持って言えるものじゃない笑)

スクリーンショット 2021-01-24 13.11.16

エールをもらうを押すとエールが貰える簡単なサービスですが、無事に2ヶ月で開発できました!すごく嬉しかったのを覚えています!

【環境を整えよう】やらざるを得ない環境を作る 
& 仲間を見つける

 ここまではメンターさんと二人でやりまくっていたのですが、ある程度プログラミングの知識がついてきたので、遂にプログラミングスクールに入学します。僕が選んだスクールは"ジーズアカデミー"というプログラミングと起業の両面を学べるスクールです。
 ただ、読者の方はどのようなスクールを選べばいいかわからないと思うので、僕なりのスクールの選び方を紹介します!

メンター探しのポイント (2)

やらざるを得ない環境と仲間がいることはすごく大切です。

1:やらざる得ない環境

 プログラミングはいくら優秀なメンターがいても、自分がやりきらない限り絶対に成長しません。ただ、人間の意思はそこまで強くないケースがほとんどなので、ある程度、課題等を通じて自分に負荷をかけてくれるスクールをオススメします。

2:仲間がいる

 一番は友達と一緒に入ることなんですけど、それが難しい場合は同期の方などがいるタイプのスクールがオススメです!プログラミングはどうしてもわからない壁にぶつかることがたくさんあります。そう言った時に講師の先生に聞くのは少し億劫です(こんなこともわからないのかと思われそうで・・・笑)
だからこそ、身近にすぐに聞ける存在の仲間がいるスクールをオススメします!

逆に言うと上記の二つが揃っていれば、スクールにいく必要はありません!僕の場合はそれが周りになかったので、スクールに通いました!

【やり方をしる】学習方法を知る

 さて、ここまでで必要な環境(メンターや仲間や基礎知識)が揃ったのでここからはとにかく学ぶことが大事です。僕はここから4ヶ月で6つのサービスを開発することになるのですが、どのようなことを意識して学習を行っていたのか書いていきます!

メンター探しのポイント (3)

POINT1:ちょっと上のことを学ぶ

 1つ目のポイントはちょっと上のことを学ぶ。プログラミングに飛び級はありません。だからこそ、まずは自分に今できることの少し上を学びましょう 。TODOリストや掲示板が作れないのに、メルカリは作れません。だから少し上のことを学びましょう!私の場合は
①HTML・CSS▶︎Javascript▶︎Vue.js▶︎PHP▶︎Laravel▶︎Nuxt.jsの順番で学びました。この順番は別になんでもいいのですが、基礎文法も知らずにプログラムは組めないということを覚えておいてください!

POINT 2:プログラミングノートを作る!

 次はいかにインプットしたことを定着させるかです。プログラミングは短期間で大量の情報を学びますので、インプットの質は非常に重要です。そこでオススメなのがプログラミングノートです。僕の場合は学んだことを全てEvernoteに書いて記録しました。これをすると2つメリットがあります。1つは書くことで復習になるので、記憶が定着しやすい点、もう一点は未来の自分が助かるということです。プログラミングをやっているとあの時に作った機能をここでも使いたいなみたいなことがよく起きます。そこでプログラミングノートに実装方法やエラー解決方法を書いておけば、すぐに目の前の課題を解決できます。
以下画像が実際のプログラミングノートです。

スクリーンショット 2021-01-29 18.26.15

これは以下のような"うちの子みて"というペットの写真をシェアするサービスを開発したときのものです。

スクリーンショット 2021-01-29 18.40.23

POINT3:毎日、書き続ける

 例えば、1週間の学習時間が合計で7時間だとしても毎日1時間書くのか、休日に一気に7時間書くのかでは全く違います。僕は朝が得意なので、毎朝5時に起きて仕事に行く前の時間と帰ってきた後の時間に仕事があっても毎日書いてました。毎日書くことの目的は、コードを書くことが習慣化することです。いくら才能のある人でも継続的な努力はかならず必要だと思います。ここは根気よく毎日書きましょう!
僕の半年間の毎週のスケジュールはこんな感じでした!
めっちゃやったなーって感じです笑

メンター探しのポイント (3)

別に時間は関係ないので、自分のペースでやればいいと思います。参考程度にみてください!これを半年間続けたので、46時間✖️25週間でだいたい、1150時間はやった感じですね。本業のエンジニアならまだしも、本業は別でしている僕からすると、これは全く当たり前じゃないです頑張った自分!笑

POINT4:アウトプットは絶対

 僕は何かを学ぶ時は必ずアウトプット前提で取り組んでいました。絶対に自分が学んだことを活かして、新しいプロダクトを作って、サービスをリリースする。そう決めてました。だからこそ、半年間で7つも開発することができたんだんだと思います。人に使ってもらう、それが僕のモチベーションの一つだったのもありますが。
以下が僕が学んだこととプロダクトです!

学んだこと:HTML・CSS・Javascript・axios
サービス①:yell|実習にいく学生にエール送れるサービス

スクリーンショット 2021-01-24 13.11.16

学んだこと:Vue.js
サービス②:Pacific League to the world|外国人向けの5つの質問に答えるだけでパリーグの贔屓チームが見つかるサイト

画像14

学んだこと:LINE BOT、Firebase
サービス③:LINEBOTでメンターとコミュニケーションが取れる

学んだこと:PHP
サービス④:Ohanamieee |子どもの成長記録を付けられるアプリ
※③、④はプライバシーの関係で画像はなしにします

学んだこと:Laravel・AWS
サービス⑤:うちの子みて|ペットを自慢(共有)できるwebアプリ

スクリーンショット 2021-01-29 18.40.23


学んだこと:Nuxt.js・Firebase
サービス⑥:MeeeLooK|振り返りを醸成する
サービス⑦:MeeeLook-one:振り返りに特化したタスク管理

スクリーンショット 2021-01-25 21.30.59

画像17

おまけ:Nuxt.jsでポートフォリオ作成してます
https://junpei5060.github.io/my-portfolio/

スクリーンショット 2021-01-29 19.20.13

上記のように環境を整え、とにかく学びまくり、アプトプットしまった結果半年間で7つのプロダクトを開発できました!!

最後にこれからプログラミングを学ぶ方に

 これからプログラミングを学ぼうとしている方に伝えたいこととして、プログラミングをとにかく楽しんで欲しいなと思います。そのためには、誰かと比較せずに自分のペースでコードを書き続けることです。自分が欲しいと思ったプロダクトとか、自分の好きなデザインのサイトが作れたりと嬉しいと感じる瞬間はプログラミングにはたくさんあります。
 私自身もまだまだの実力ですが、少しずつでいいので一緒に頑張りましょう!向いてないとか、つまらないなという理由でITやプログラミングを嫌いになってしまう人が減ってくれるように私も頑張ります!
 だから、一緒に頑張りましょ!絶対、楽しいので!

Twitterでもプログラミング初心者の方向けに情報発信しているので是非フォローしてくれると今後の励みになるので嬉しいです!
https://twitter.com/peipeijumpei

また、プログラミングのメンターも枠が空いている限り、いつでも募集しておりますのでご希望の方はTwitterでDMください!

では、少しでも皆さんのためになる記事になっていれば嬉しいです!^^

おしまい


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