چند وقت پیش داشتم یک مستند درباره پلهای قدیمی دنیا میدیدم.
یکی از مهندسها جمله جالبی گفت:
«بیشتر پلها به خاطر چیزی که نمیدانیم خراب نمیشوند. به خاطر چیزی خراب میشوند که فکر میکنیم میدانیم.»
این جمله عجیب در ذهنم ماند.
چون هرچه بیشتر در توسعه نرمافزار کار میکنم، بیشتر نمونههایش را میبینم.
خیلی از بحرانهای فنی از جایی شروع نمیشوند که دانش نداریم.
از جایی شروع میشوند که بیش از حد مطمئن هستیم.
مطمئنیم این Feature هیچوقت تغییر نمیکند.
مطمئنیم تعداد کاربران از این بیشتر نمیشود.
مطمئنیم این سرویس همیشه در دسترس خواهد بود.
مطمئنیم این Dependency مشکلی ایجاد نمیکند.
و دقیقاً همین اطمینانها هستند که بعدها ما را غافلگیر میکنند.
جالب است که در مهندسی نرمافزار، ندانستن معمولاً خطرناک نیست.
وقتی چیزی را نمیدانی، سؤال میپرسی.
تحقیق میکنی.
آزمایش میکنی.
اما وقتی فکر میکنی میدانی،اغلب هیچکدام از این کارها را انجام نمیدهی.
شاید به همین دلیل باشد که با افزایش تجربه، اعتمادبهنفس واقعی شبیه اطمینان مطلق نیست.
بیشتر شبیه احتیاط است.
شبیه این است که بدانی ممکن است چیزی را نبینی.
چون بسیاری از مشکلات بزرگ نرمافزار،از کمبود دانش به وجود نمیآیند.
از قطعیتهای اشتباه به وجود میآیند.
Post #664
924