エンジニア大家
webエンジニアをやりながらアパート経営をしております。
これからエンジニアになりたい方はプログラミング学習はかどってますか??
私は未経験でエンジニア職で採用されたため、毎日出社して参考書やwebの記事を片手に実装していましたが、
やり方を知ったからといってすぐにそれができるとはかぎらず、なんかしっくりこない毎日でした。
今回は知識と実践の間のギャップについて記事にしたいと思います。
知識と実戦の間には大きなギャップがあるという話
仕事で直面するプログラムは常に「複数の問題が相互に絡み合った」状態です。
すなわち「応用」の賜物です。
それに対して、参考書やwebの記事はあくまで伝えたい技術や解決したい問題のみにフォーカスした「一例」です。
AとBという問題が遭った場合、
「AまたはBの単独の解決方法」を知っただけではだめで、
「AとBが絡んだ場合の対処方法」を知る必要があります。
これがアプリケーションの仕様の話になってくると、当然参考書やwebの記事に載る事はないのです。
あくまで「特殊事例」になりますし、そもそも需要がないですから検索上位にも来ないし、適切な検索ワードもないので調べるのが難しいです。
やり方を理解したからすぐにできるとはかぎらない
「理解」したことを、うまく「できる」ようになるには、そう、
何度も繰り返し、実践して、数多くの失敗を経験しなければならない。
失敗したくない優等生には向いてない仕事(かも)
日本の学校教育の弊害かもしれませんが、いわゆる「減点式」の評価基準だとだれも失敗しないようになります。
ですが、数多くの失敗を経験しなければ実践でうまくできるようにはなりません。
失敗は必須科目です。
プログラミングはいくらでも失敗できます。何度も失敗して精度を高めていけばよいのです。
しかし、本番リリース後に問題が発覚したら時として損害賠償ものです。
ですが、それでも「失敗」は必要です。
不謹慎かもしれませんが、そんな大事な局面でも失敗できた「経験」はものすごい財産になります。
その後のリカバリーに多くの労力がかかることでしょう。精神的にもこたえます。
でもそこに「学び」があるのです。
許されるならば、失敗しない優等生になるよりも失敗することに長けたバカで居続けたいものです。
まとめ
- 知識と実戦の間には大きなギャップがある
- うまくできるようになるには数多くの失敗をする必要がある
- 失敗をしない優等生よりも失敗を恐れないバカの方が習熟しやすい
webエンジニアを12年やってみた感想を記事にしました。よろしければお読みくださいm(_ _)m