Seperti kebanyakan orang, saya menganggap diri saya sedikit di atas rata-rata di bidang saya. Saya dibayar dengan baik, saya mendapat promosi, dan saya tidak pernah memiliki masalah nyata untuk mendapatkan referensi yang baik atau mendapatkan pekerjaan.
Tetapi saya sudah cukup dekat untuk memperhatikan bahwa banyak programmer terburuk yang pernah bekerja dengan saya berpikir mereka adalah yang terbaik. Programmer yang buruk yang dikelilingi oleh programmer yang buruk tampaknya merupakan yang paling menipu diri sendiri.
Saya tentu saja tidak sempurna. Saya memang melakukan kesalahan. Saya melewatkan tenggat waktu. Tapi saya pikir saya membuat jumlah gerakan yang sama seperti yang dilakukan "programmer lain yang baik". Masalahnya adalah bahwa saya mendefinisikan "programmer lain yang baik" berarti "orang yang seperti saya."
Jadi, saya bertanya-tanya, adakah cara seorang programmer dapat membuat semacam evaluasi diri yang masuk akal? Bagaimana kita tahu apakah kita baik atau buruk dalam pekerjaan kita?
Atau, jika istilah seperti baik dan buruk terlalu tidak jelas, bagaimana programmer dapat dengan jujur mengidentifikasi kekuatan dan kelemahan mereka sendiri, sehingga mereka dapat mengambil keuntungan dari yang pertama dan bekerja untuk meningkatkan yang terakhir?