アラフォー完全未経験からプログラミング学習はじめて「未経験タグ」を外すまでのロードマップ
プログラミング学習年表
プロローグ
なぜプログラミングを始めたか。
2018年1~5月 アフィリエイトサイトの運営を開始。
ブログ型物販アフィリエイトサイトを運営。
- ワードプレス
- SEO
- ライティング
- 共用レンタルサーバー
を学ぶ。
フォトショップ、イラストレーターは元々使っていた。
書いた記事は36記事、収益は160円。
理屈だけ覚えてサイトは放置w
それよりもワードプレス内部のプログラムに興味を持つ。
6~7月 「Webサービスを作れるようになる」という目標を立てる。
「Webサービスを作れるようになる」という目標を立てる。
(この時は何がなんだかわかっていなかったが結果的に“LaravelとVue.jsが使えてデプロイできる“がゴールになる)
という目標でプログラミング学習スタート、Progateにて、
- Java
- HTML,CSS
- PHP
- JavaScript
を学ぶ。
なぜか1番はじめにJavaを勉強して、Progateを5周ほどしたが(これだけで1ヶ月)、これは結構良かったと思っていて、プログラムの基本、データ型などの概念を覚えられたのでPHPとJavaScriptの学習がスムーズにいけた。
8~11月 ドットインストール開始。
ドットインストールでの学習開始。
動画教材を学ぶため、自身のパソコンに開発環境を作らなければならない。
Windowsでどうにも進まず(ググり力が未熟だったものの「Mac」の記事が多過ぎ)、MacBook Pro購入。
- Mac
- Vagrant
- virtual box
を学ぶ。
ドットインストールで学習したジャンルはProgateと同じ。
ドットインストールの方がボリューミーなイメージ。
また、成果物を友達に見せびらかすため、VPSサーバーを借りてガチャガチャいじりだす。
- コマンドライン(ターミナル)
- Linux
- 各種サーバー知識(Apache)
- データベース(MySQL)
- 通信(http)
など学ぶ。
ここが1番シンドかったかもしれない。
「アルゴリズム」という概念を覚える。
他にも独学で勉強してるもの以外のジャンルのセミナーに行きだす。
- AWS
- docker
- Git
- JavaScript
- ブロックチェーン
「ガチ勉強は本かサイト、それ以外はセミナー」というスタイル。
当時はPHPは自力勉強、それ以外はセミナー。
とにかく作って友達に見せびらかす!
同じセミナーに2回行ったこともありますが、セミナー自体は予習してから行った方が理解は深いので、このやり方はオススメできません。
しかし、後から点と点がつながった時の嬉しさはありますねw
12月 Laravelの学習開始
Laravelの学習開始
さっぱりちんぷんかんぷんだったが、色々作ってくウチに慣れていく。
認証付き掲示板は何回作ったか覚えてない。
- Laravel
年越し。
2019年1~3月 営業開始
Laravelの勉強を進めつつ、「なんでもできる」と勘違いした自分は、知り合いのIT関係者に営業開始。エージェントも登録。
- Laravel
- DOM
- jQuery
- Ajax
足りない部分を巻きで学習。
仕事にありつけそうな雰囲気の時点で「バーテンダー」を辞めて、バーは嫁に任せた。(フライングキッズ)
しかしプログラミング学習をはじめてからコンピュータの話ばかりしたがる俺にウンザリするお客さんもいたはずなので良い退き際だったかもしれないw
(エージェントからはシステム管理が2件来たが「開発」がやりたかったのでとりあえず断る)
4~5月 業務開始。
業務開始、シンプルなECサイトを一人で構築。
業務が始まってみて、学習した全てが中途半端であることに気がつき、今までの総復習。
「5割理解」をなんとか2週間で「8割理解」まで持っていく。
- Vagrant
- Git
- HTML,CSS
- PHP
- Laravel
- bootstrap
- データベース(MySQL)
インプットに2週間かけ、その後冷や汗をかきつつ3週間かけてなんとか仕上げる。
「遅い!」
「管理画面が雑!」
(管理画面というものを見たことがなかったw)
また、ローカル開発でのスマホ対応確認のやり方がわからず無視して、
「レスポンシブも知らねーのか!」
と怒られる。(後からやればいいという約束だったが…)
特に、
「ECサイトのデータベース設計は、購買データは最終的にひとつのテーブルにまとめた方が良い」
「データベースの正規化もわからないの?」
通常なら3日ほど寝込むところだが、寝込む暇なく1週間ほどでやりなおす。
自分なら管理画面など作らずデータベースを直接イジるから
しかし、ここで痛烈に業務においての厳しさ、また、「クライアントは画面しか見ていない」ということを心に刻む。
「画面など後からどうにでもなる」という当時の自分の感覚とは真逆。
6~7月 ツイッターで3件ほどお仕事をいただく
ツイッターで3件ほどお仕事をいただくが、業務に伴うアプリの使い方に四苦八苦する。
- スラック
- チャットワーク
- Trello
業務内容は、
「中〜大規模アプリの一部分だけを作り込む」ような感じ。
知らないフレームワークも使ったが調べればなんとかなるレベル。
ここから、起業を計画していた仲間が経営する「広告代理店」のツテから案件をまわしてもらう。
モダン技術への関心からVue.jsの学習開始。
- JavaScript復習
- 仮想DOM
- Vue.js
- docker
Laravel学習時よりも脳ミソを激しく焦がしてくれるVue.jsに魂まで焦がす。(BGM “魂こがして” by ARB)
チュートリアルに何度かつまづきながら、
(つまづきポイント)
- Node.jsおよびnpm
- Laravel mixおよびwebpack
- PHPからJavaScriptへのデータ推移
- Vue Router
- Vuex
なんとか完走。
そしてまた「なんでもできる」と勘違いw
8〜9月 これまたツイッター経由でVueの案件が入る。
「ひたすらに先輩エンジニアの業務外のヘルプを頼り迷惑をかけまくった」
でも少しずつコードが「読める」ようになってきた。
どこに何をするとどうなるのかが、わかってくると急激に楽しくなってきたw
何より、プログラミングが楽し過ぎるのですw
今後の課題と振り返り
今後の課題。
- AWS
- TypeScript
- 規模の大きな開発
- テスト駆動開発
- その他山ほど(ブロックチェーン・設計)
「SNSやオフ会で知り合った達人クラスの人たちの助けがいつだってあった」
SNSをやっていて知り合った方々やセミナーで仲良くなった方々からの助言なくして、この年表は成立しません。
- 教材通りにやっているのにエラーの嵐の時
- データベース設計に迷った時
- ロジックがわからない時
- 環境構築時の頑固なエラーの時
それはもう幸運でしかないのですが、それを作る努力は、どんな学習よりも大事なことかもしれません。
※最終奥義は「teratail」です。
自分は10回以上怒られていますw
ここで「質問の仕方」を学びました。
「何をしたくてどんな環境(状態)で何に困っているか」を明確にすれば優しい人が答えてくれます。
エラーがどこに吐かれるかをチェックしましょう。
以上で年表終わります。
ご静聴ありがとうございました。
訓志。
ディスカッション
コメント一覧
まだ、コメントがありません