今日、改めて感じたことを忘れないように書きます。
エンジニアは、プライベートの時間まで使って技術習得のために勉強をしている人が多いような印象があります。
経験が浅い自分も漏れなくそれに該当し、日々、技術の習得のために勉強を続けています。
そんな中、注意しないといけないなと思うことがあります。
今回、機会があってそのことを考え直すことがあったので記事にしました。
新しい技術が好きな人、特に日々勉強している若手エンジニアの方と共有できれば幸いです。
どんな問題を解決できる技術なのか
この記事の結論から言うと
新しい技術を勉強するときは、ただ使えるようにするだけではなく、次のことを理解していく必要があります。
- その技術が誕生した背景とは
- ひとつ前の技術から何が変わったのか
- その技術を選定することで、どういう問題を解決できるのか
これらを理解しないまま、勉強を続けていくと、
- ひとつ前の技術の方が簡単に実装できたのに・・・。
- ひとつ前の技術の方が解説記事やケースごとの使用方法がネット上に揃っていたのに・・・。
- 新しい技術を使ったもののその技術が流行らず、保守や改修時のコストが高くなってしまった・・・。
これは結果的に「(顧客の)問題を解決する」という点でマイナスに働いてきます。
「新しい技術を使ってみたいから」という理由だけで新しい技術を使うのは、エンジニアの独りよがりでしかなく、顧客視点・問題解決視点ではないと思います。
これは「新しい技術に興味を持って勉強していく」ということを否定している訳ではありません。
その技術に興味を持ったり、その技術を好きでいるのならば、その技術の強みや特徴を理解しておくべきだと言うことです。
より具体的に言えば、「以前の技術と比べて何が新しくできるようになったのか」、「どんな問題点を解決できるのか」を理解しておくべきです。
人を好きになるときは、他人との差を明確に言語化せずに「なんとなく好き」という人が多いと思いますが、技術を好きになるときはしっかりと言語化しておくと、技術選定のときなどにも有効だと思います。
エンジニアの独りよがりにならないようにしましょう!
・・・・。
ということで今日はReact Hooksを勉強する予定です。
React Hooksを勉強する理由は、名前がカッコいいからです笑。
お読みいただき、ありがとうございました。