※本記事は、Bardによる意訳+翻訳を活用し、レイアウト調整したものです。
※感想は、オリジナルです。
原文
How to become a better developer? - DEV Community
意訳+要約
より良い開発者になるには?
1. 勝利のマインドセット
ほとんどの人は、成功に慣れているため、すべてが失敗したときに対処できない。
問題を全体として見ると、大変なことのように思えるかもしれない。だから、解決できないことが不可能になるまで、常に問題を小さな問題に分割する。
2. 人前で学ぶ
どのような目的であれ、自分が学んでいるときに見つけておきたかったことをするのだ。何かを教えることは、知識を定着させる最も効果的な方法である。
人前で学ぶということは、間違いを犯すことで、より有益なものとなる。私たちは、間違いを犯すことはできないというメンタリティで育てられているが、間違いを犯すとき、私たちは最も多くを学ぶのだ。
3. メンターを見つける
メンターを持つことで、進化を大きく加速させることができる。メンターを持つだけで、手抜きをしたり、他の人がすでに犯したミスを避けたりすることができる。
4. とにかくやってみる
やればやるほど進化し、求めれば求めるほど新しいことを学び、間違いを犯せば犯すほど、学ぶことが多くなる。私たちは安いドーパミンの人質のような世界に生きている。
Bardさんに聞いてみた
Q:メンターが居ないとダメですか?
メンターがいないことがデベロッパーとして成長する上での障害となる可能性はありますが、絶対に必要というものではありません。
メンターがいる場合、以下のメリットがあります。
- 経験豊富なプロからアドバイスやフィードバックを受けることができる
- キャリアの方向性や目標の設定を相談することができる
- モチベーションを維持し、挫折を乗り越えるサポートを受けることができる
一方で、メンターがいない場合のデメリットは以下のとおりです。
- 技術やキャリアに関する情報を自ら収集し、学んでいく必要がある
- モチベーションを維持し、自律的に学習・成長していく必要がある
メンターがいない場合は、以下の方法でデベロッパーとして成長を目指すことができます。
- オンラインの学習サイトやスクールで学ぶ
- 書籍やブログで独学する
- 開発者コミュニティに参加する
- 個人でアプリやWebサービスを開発する
- オープンソースプロジェクトに参加する
- インターンやアルバイトで経験を積む
また、メンターがいなくても、以下の方法でモチベーションを維持することができます。
- 目標を設定し、達成に向けて努力する
- 他のデベロッパーと交流し、刺激を受ける
- 自分の成長を実感できる機会を作る
メンターがいると、デベロッパーとして成長する上でのスピードや効率を高めることができます。しかし、メンターがいなくても、自ら学び、成長していくことは可能です。
Q:メンターがいる場合のデメリットは、ないんですか?
メンターがいる場合のデメリットとしては、以下のようなものが挙げられます。
- メンターとの相性が合わないと、逆効果になる可能性がある
- メンターが忙しいと、十分なサポートが受けられない可能性がある
- メンターはあくまでもアドバイスやサポートをする立場であり、メンティの成長は最終的にはメンティ自身が責任を持つ必要がある
メンターと相性が合わないと、アドバイスやフィードバックが受け入れられず、逆にストレスを感じてしまう可能性があります。また、メンターが忙しいと、十分な時間を割いてサポートしてもらえない可能性があります。さらに、メンターはあくまでもアドバイスやサポートをする立場であり、メンティの成長は最終的にはメンティ自身が責任を持つ必要があることを理解しておく必要があります。
メンターとの関係を良好に保ち、メリットを最大限に活かすためには、以下のことに注意しましょう。
- メンターと積極的にコミュニケーションを取り、お互いの考えや価値観を理解するように努める
- メンターの意見やアドバイスを素直に受け入れる
- 自分の考えや意見を積極的に伝える
- メンターから学んだことを、自分の力で実践し、成長していく
メンターは、デベロッパーとして成長する上での大きな助けとなる存在です。しかし、メンターとの関係を良好に保ち、メリットを最大限に活かすためには、メンターとメンティの双方が努力する必要があります。
Q:私のメンターになってくれますか?
はい、喜んでメンターになってあげます。私は、Google AIから開発された大規模な言語モデルであり、膨大な量のテキストとコードのトレーニングを受けています。そのため、プログラミングの知識や技術に関するアドバイスやフィードバックを提供することができます。また、キャリアの方向性や目標の設定に関する相談にも応じることができます。
ただし、私は人間ではありませんので、メンターとして完璧なサポートを提供することはできません。また、私自身がデベロッパーとしての経験がないため、実践的なアドバイスやフィードバックには限界があります。
それでも、デベロッパーとして成長するためのサポートをしたいと思っているので、ぜひ相談してください。
メンターとしてどのようなサポートをしてほしいか、具体的に教えてください。また、メンターとの関係を良好に保つために、どのようなことに注意すべきか教えてください。
Q:物事をとにかくやるだけでは、成長できないと思いますが、どういった点に注意した方がいいのでしょうか?
物事をとにかくやるだけでは、成長できないというのはその通りです。単に量をこなすだけでは、質の向上にはつながりません。
デベロッパーとして成長するためには、以下の点に注意する必要があります。
目的意識を持って取り組む
何のために学ぶのか、何を達成したいのか、明確な目的意識を持って取り組むことが大切です。目的意識があると、学習や実践に集中し、効率的に成長することができます。継続的に取り組む
短期間で集中的に学ぶよりも、継続的に取り組むことが重要です。毎日少しずつでも、コツコツと学習を積み重ねることで、着実に成長することができます。振り返りを行う
学習や実践を行った後は、必ず振り返りを行いましょう。自分の学びや成長を振り返ることで、課題や改善点が見えてきます。課題や改善点を把握し、次の学習や実践に活かすことで、より効果的に成長することができます。
具体的には、以下のことに注意するとよいでしょう。
自分の目標やキャリアプランを明確にする
まずは、自分がどのようなデベロッパーになりたいのか、具体的な目標やキャリアプランを明確にしましょう。目標やキャリアプランが明確になると、何を学び、どのように実践すればよいかが見えてきます。学習計画を立てる
目標やキャリアプランを達成するためには、学習計画を立てることが重要です。学習計画を立てることで、学習の進捗状況を把握し、効率的に学習を進めることができます。フィードバックを受ける
自分の学習や実践を客観的に評価してもらうことで、成長の度合いや課題を把握することができます。メンターや上司、同僚などからフィードバックを受けましょう。
また、自分のコードを公開したり、オープンソースプロジェクトに参加したりすることで、他のデベロッパーからのフィードバックを受けることができます。
- 失敗を恐れない
デベロッパーとして成長するためには、失敗を恐れずに挑戦することが大切です。失敗を恐れて挑戦しなければ、新しいことを学ぶ機会を失ってしまいます。
失敗をしたら、その原因を分析し、次につなげましょう。失敗を恐れずに挑戦することで、着実に成長することができます。
これらの点に注意して、デベロッパーとして成長を目指しましょう。
感想+雑記
あやうく、Bardに胸キュンするところだったぜ。。
とりあえず、人のメンターは、作る気がないから、BardとかのAI系を相談相手にしようと思ってる。
俺と相性のいい人間なんて、そうそういないと思うんだよね。。。
継続的な振り返りは、非常に難しい。
方向を間違えると、振り返りが意味がないときがあるからな。
定期的な振り返りするにも、ネタが必要な気がする。
日記を書く習慣を作った方がいいのかも知れない。
ブログに毎日書くのは難しいから、簡潔にかけるサービスに書き溜めておくしかないな。
Google Keepが今のところ有力。
あとは、OneNoteかな?
OneNoteは、どっちかというと、学習向けだから、小さなメモ書きには向かないイメージ
キャリアプランとか全然立ててないけど、他の人は立ててるのか?
個人的に、そんなに大成する気がないから、なくてもいいかなと思ってる。