みなさんこんにちは、現役エンジニアのタカです。
これからプログラミング学習したいと思っている人の中には3ヶ月や6ヶ月を学習期間の目標にする人が多いと思います。
一般的には6ヶ月あればある程度ゆとりを持って十分システムエンジニアとして転職するだけのスキルが身につきますが、金銭的、期間的にもっと急ぎたいという人も多いと思います。
この記事では3ヶ月でどのようなアプリを作れるようになるのか、3ヶ月でアプリを作れるようになる為の具体的な学習方法を紹介していきます。
この記事でわかる事
- 3ヶ月の学習でどのようなアプリを作れるようになるのか
- 3ヶ月でアプリを作れるようになる為の具体的な学習方法
この記事の信頼性
その後3年ほどで独立し現在はフリーランスエンジニアとして活動しています。
2019年8月から半年間、未経験の友人にプログラミングを教えエンジニア転職を成功させた経験もあります。
目次
プログラミング学習3ヶ月でどのようなポートフォリオ作ることができるのか
まず初めに現実的な話ですが、正直な話プログラミング学習3ヶ月でポートフォリオになりそうなアプリを作ること自体はそこまで難しくありません。
選択と集中をすることでひとまずそれっぽいアプリを作ることが可能ですし、1日10時間以上学習時間を確保できるのであればそれなりにしっかりしたポートフォリオを作ることが可能です。
実際にプログラミング学習3ヶ月の人がどのようなアプリケーションを開発しているのか見ていきましょう。
ちょっと前ですが、web会議システム作りました。
+ビデオ通話
+音声自動テキスト化
+感情分析Progateから始めて、当時ほぼプログラミング未経験の自分が6週間でskypeやzoomのようなweb会議システムを作れるようになったのは自分でも驚きでした。この時はJavaScriptたくさん書いたなー pic.twitter.com/6wJzEXKAyY
— Kohei Tanaka 田中康平 (@kolife01) July 21, 2018
これはジーズアカデミーに受講されていた方が受講開始6週間でされたというアプリです。
制作期間は1週間ほどで一日17~18時間はプログラミングしていたとのこと。
firebaseを使っているためバックエンドのコーディングは行われていませんが、フロントエンドエンジニアとしてのポートフォリオと考えると十分に要件を満たしている作品だと思います。
API等も多く使われているのでサーバーサイド言語のキャッチアップに時間はかからないという判断でバックエンドエンジニアとしてポテンシャル採用されることも十分考えられます。
また同一の方ですが、こういった非常にリッチなLPの作成もしていたようです。
【過去作品2】過去作品1のリッチver。前回の作品から中1日で作成。
モバイルアプリ用のLPを作りたくスクロールと同時にiPhoneが動くところと、最後のネズミの動きをこだわった。
この時にcssのpositionやdisplay:flexについて試行錯誤しながら理解していった。ここまで1週間。#プログラミング追憶 pic.twitter.com/ohvGwu20M5— Kohei Tanaka 田中康平 (@kolife01) July 8, 2018
また以下の方なバックエンドエンジニアのポートフォリオとして使用できるアプリの作成をされた方もいらっしゃいました。
Railsの初ポートフォリオ、やっとできました!写真系のSNSです✈️📸
詳細はメモ画像をご覧頂けると嬉しいです🙂
Twitterの皆さんが群抜きすぎてクオリティはご愛嬌… 転職活動うまくいくか不安だけどWPの学習も並行して頑張ろ!#今日の積み上げ #駆け出しエンジニアと繋がりたい #プログラミング pic.twitter.com/sYZwtjIqIc— Shot@webプログラミング (@svj_shot) September 17, 2020
2020年6月から学習をスタートさせてこのツイートが9月に投稿されているので大体3ヶ月ほどでこのアプリを作ったということになります。
尚、実際にデプロイまでされているとのことで3ヶ月でここまでこれるのは素晴らしいなと思います。
この方は先ほどの方とは逆でフロントエンドにbootstrapを使用してバックエンドに絞ってポートフォリオの作成をされています。
今回紹介した方以外にも3ヶ月でポートフォリオを作成したという方がたくさんいましたが、皆さんに共通しているのはやはりフロントかバックどちらかにフォーカスして作成しており両方とも完璧な物は作れていないということですが、個人的にはいい選択だと思っています。
会社にもよりますが、大体の会社がフロントとバックを分けて開発していますし初めから両方できる必要はないので就職活動開始時点ではこのレベルで十分ではないかと思います。
さて、では3ヶ月でこれくらいのアプリを作れるようになるのはわかったと思いますが、どのような学習をすればいいのか気になりますよね。
次の章で3ヶ月でアプリを作れるようになる為の具体的な学習方法を紹介します。
3ヶ月でアプリを作れるようになる為の具体的な学習方法
3ヶ月でアプリを作れるようになるには以下のステップを踏むことで実現可能です。
- Macを買う
- 無料学習サービスで勉強と練習をする
- 無料サービスの契約を有料サービスに切り替える
- フレームワーク公式チュートリアルかUdemyで基本のアプリを作る
- 掲示板やSNSといったログイン機能のついたCRUDアプリを作る
※尚、今回はバックエンドエンジニア向けポートフォリオを作れるようになる事を想定しています。
この5ステップでオッケーです。
では詳しく見てみましょう。
1.Macを買う
まずはプログラミングをする為のパソコンとしてMacのパソコンを買いましょう。
Windowsでもいいですが、開発環境を構築するのに少しだけ癖があるので初心者はMacがおすすめです。
個人的には持ち運びができるノートパソコンがいいのではないかと思っています。
引用:Apple公式サイト
スペックと価格に関してですが、単純にプログラミングする際はエディタを開いてコードを買いてローカルで実行するだけで実際にアプリをリリースする際は別途サーバーを契約する必要があるので一番安い約10万円のMacBookAirでもいいと思いますが、長く使う事を考えるとMacBookAirのスペックアップ品かMacBookProの一番安いスペックで十分です。
2.無料学習サービスで勉強と練習する
パソコンが届いたら早速学習を始めましょう。
この段階では無料のプログラミングサービスで学習するだけで十分です。
ドットインストール、プロゲート、paizaの無料枠でHTML,CSS,JavaScript,PHP(もしくはRuby)の学習をしてみましょう。
何となくプログラミングが理解できるようになってきて本腰を入れて学習する気になれたら次のステップです。
3.無料サービスの契約を有料サービスに切り替える
ステップ2で紹介したドットインストール、プロゲート、paizaには有料プランがあります。
これらのサービスは一部を無料で公開してより発展的なコースは有料でないと受講できないようになっています。
なので、本格的に学習する気になって時間を確保する算段がついたら有料会員になってしまいましょう。
どれも月1,000円前後で学習できる為、そこまで負担にはならないと思うので短期間で退会する事を目標に有料会員になってしまいましょう。
学習内容は「下記に関する公開されている講座を全て受講し理解する」です。
- HTML&CSS
- JavaScript
- PHP(もしくはRuby)
- CakePHP3(もしくはRuby on Rails 5)
- VPSもしくはAWS
ここまで来るとプログラミングについても何となくわかってきて簡単なアプリであれば作ることも可能だと思います。
4.フレームワーク公式チュートリアルかUdemyで基本のアプリを作る
次は公式のチュートリアルでデプロイまで行います。
今回であればPHPの学習をしていたならCakePHPのチュートリアルをRubyの学習をしていたならRuby on Railsのチュートリアルを学習します。
もしチュートリアルが分かりにくかった場合Udemyでこれらのフレームワークを使って実際にウェブ上でアプリを公開するまで行なっている講座を購入して学習を続けます。
Udemyは有料になってしまいますが、殆どの講座を1,400円程で買えるセールを常にやっています。
定価販売をしているようであれば残念ですが1週間くらいタイミングをずらして購入するとセール価格で購入可能だと思います。
5.掲示板やSNSといったログイン機能のついたCRUDアプリを作る
ここまできたら今まで学習した知識を生かし簡単なオリジナル掲示板やSNSといったログイン機能のついたCRUDアプリを作ってみましょう。
CRUDアプリとは、データベースに対して生成、読み込み、更新、削除を行えるアプリのことで掲示板やSNSならこの要件を満たしていることになります。
そしてそれをウェブ上に公開もしてしまいます。
大丈夫です、公開された物とはいえ特に誰も見ていないので違法なものでなければ不出来なものを作ってしまっていても恥ずかしくありませんから。
今まで学んだ教材にない物を自分の頭で作成するというのはプログラミング言語やフレームワークへの理解をさらに深めることになります。
このアプリが完成したらいよいよポートフォリオとなるオリジナルアプリを考え始めます。
ここまでくればフレームワークに対する理解もしっかりとしたものになっている為、それなりのアプリを作成することができることでしょう。
ここまでで3ヶ月
恐らくここまでなら3ヶ月程あれば到達可能なレベルだと思います。
1つづつ順序を踏んで学習していけば独学でも何とかなりますが、やはり色々と不安もありますよね。
このアプリは実務に耐え得る物なのか、とか何かおかしな開発をしていないのかとか、これでポートフォリオになるのかとか。
まぁぶっちゃけてしまえば、恐らくそのアプリは実務に耐え得るものではないですが、ポートフォリオとしては使えるのではないかと思います。
では更にレベルの高い学習をするにはどうしたらいいかですが、最初の段階でプログラミングスクールに通ってしまうというのも1つの手だと僕は思います。
きっと同じ3ヶ月間でも独学かスクールで学んだかでは学習内容の違いは勿論ですが学び終わった後の自信が違うと思います。
現役エンジニアが側について学習をサポートしてくれるので学んだ内容は実践に非常に近いものになりますし、その自負もあるでしょう。
もしあなたが独学に強いこだわりがなく3ヶ月で確実にエンジニア転職を果たしたいのであればプログラミングスクールの受講も検討して欲しいです。