エンジニアが意識するべきこと
エンジニアが意識するべきことを列挙する
楽しむ
純粋に楽しめる分野について目標設定を行う。
苦行にならないように、飽きが来ないように問題を設定する。
不安にならない
技術領域は多岐にわたるため、自分が知らない技術があるからといって、不安になって学習計画を変えたりしない。
必要な知識なら、その後の学習計画に加えればよいだけだし、不必要な知識なら学習しなくても良い。
仮に基礎的なコンピュータサイエンスの知識と現在流行りの技術があり、どちらかを選択する場合には、基礎的な知識の学習を優先する。
執筆活動やコミュニティ活動を重要視しない
記事の執筆やコミュニティ活動それ自体はエンジニアリングとは関係がない。
あくまでエンジニアリングの副次的なものとして考え、それが目的にならないようにする。
設計してコードを書く
設計をせずに行き当たりばったりのコードを書いていても、コーディングスピードや設計能力は向上しない。
思考とコーディングは個別に考え、同時には行わない。
テストを書く
ユニットテストがない状態では、デバッグのコストはプログラムの規模が大きくなるほど指数的に大きくなる。
ユニットテストを書くことで、デバッグのコストの増大を線形に抑えることが出来る。
デバッガーを使う
使いやすいデバッギングツールを使うことで、デバッグの速度を早くすることが出来る。
ウォーニングやエラー出力について敏感になる
ちゃんとウォーニングやエラー出力を読んでから行動する。 読まないまま行動しない。
ツールに頼りすぎない
上記とは逆説的であるが、ツールに頼りすぎない。 すぐに解決できない問題は、あえてツールに頼らず、ロジックを追うことも重要。
一次ドキュメントを正確に参照する
何か調査事項があった場合に、一次ソースを明確にする。
出来ればQiitaやStack Overflowは使わないほうが良いが、使う場合も、一次ソースまで追った上で参照する
よく読んでよく書く
ドキュメントを読む時間と書く時間がどちらかに偏りすぎないようにする。