こんばんわ、エンジニア大家です。
先日、このような質問をされました。
質問者
プログラミング学習に限らず勉強全般に言えますが、壁にぶつかった時はかなり萎えますよね。
中高生の頃はわからないことがあれば学校や塾で先生に質問ができる環境でしたが、独学となるとそうも行きません。
今回は独学またはスクールでプログラミングを学習している人に対して伝えたいことがありまして記事にしました。
webプログラミングは独学?スクール?
結論を以下にまとめました。
- 独学やスクールで学んだ程度では実務レベルには程遠いのでさっさと働きましょう!
- わからない点は働きだしてから学べばOK!今は軽く流しましょう
もちろん後で苦労したくないという理由で一生懸命に学習されることは素晴らしいです。
ただただ悩んで時間とやる気を消耗するくらいなら開き直ってしまって良いと私は思います。
最高の学習環境は実務ですから。
その理由を以下で述べたいと思います。
課題が具体的
当然な話で恐縮ですが、本やスクールの課題に比べたら具体的な納品物(誰かの生業のための仕組み)となります。
工数も難易度も上がるし、サーバー負荷(複数人が同時に使用した場合の考慮など)なども対応することになります。
成果物はよりシビアなものになりますが、その分多くのことを学べるし頭にも入ると思います。
質問ができる
職場の同僚に質問ができます。
もちろん、相手の時間を奪うことになるので限度はありますが、「質問するためのスキル」を磨いてください。
- 相手が問題点を理解しやすい質問文をあらかじめ作る
- 気軽に相談できるように普段からコミュニケーションをとっておく(社内営業)
結局人と人の関係ですので、うまいことやってください。
そもそも質問する相手がいない少人数な職場や、人格的に質問する対象になりえない人しかいない場合は諦めてください。
その職場で働くのが苦痛でしたら、運が悪かったと思ってさっさと他の職場に移ってください。時間がもったいないので。
コードレビューを受けられる
レビュワーさんが居る場合の話になってしまいますが、自分よりも経験豊富な人からの指摘は大変貴重です。
以下の観点でみてくれます。
- 仕様と実装があっているか
- コード規約どおりに記述しているか
- ロジックは正しいか
- エラー処理は適切か
- 同一のロジックが2箇所以上で書かれていないか
- コメントが適切か
- 非効率な処理が入ってないか
仕事なのでレビュワーも本気で目を通してくれます。
もし手を抜いてしまったらバグの発生や可読性・拡張性が落ちてしまい、のちのち苦労しますので。
スクールでもソースレビューをしてくれることでしょうが、本気の度合いが違います。
ソースレビューで指摘されなくなったら、(その現場で)一人前になったと思ってください。
レビュワーの質
そもそもプログラマーとしてイマイチな人がレビューを行った場合は少し残念です。
仕様どおりかどうかは見てくれますが、ロジックや処理内容を細かく指摘してくれないかもしれません。
それでも独学で勉強するよりはマシだと思います。
納期がある
納期は人を変えます😁
自堕落な人も仕事であれば自らの身体にムチ打ってコードを書くことができます。
実装前は「こりゃ間に合わないかも」と弱気になったことは何度もありましたが、
意外と間に合ったことも多々ありました。
ちなみに「わからないことは即調べて実装する」という手順を沢山繰り返すので、
独学やスクールで全然覚えられなかった関数やSQL文もサラッと出てくるようになります。
金が手に入る
これが最大のモチベーションになることでしょう。
いくら独学やスクールでソースコードを書いても金は貰えませんからね。
まとめ
- 実務は最高のプログラミング学習の環境
- 独学やスクールでの学習ではかどらなくてもOK!働きに出てしまいましょう
最低限の準備と心構えはやっておきましょう
実務が最高とお伝えしましたが、その下準備としてスクールに通うのは大いにありです。
どーせ後で苦労することにはなりますが、全くプログラミング学習をやっていないよりはマシです。
できる範囲でプログラミングを学習してください。
あと、webエンジニアを12年やってみた感想を書きました。是非御覧くださいませ。