Tôi không nghĩ sẽ có bất kỳ lý do đơn giản nào mà bạn không thể nghiên cứu nó một cách khách quan:
1. Nó thay đổi từ dự án để dự án
Tôi đã phải làm việc trên các dự án nhàm chán đến nỗi làm việc một giờ mỗi ngày đã quá dài. Với các yêu cầu được viết kém, codebase tồn tại được viết kém và không có chất lượng nào được yêu cầu từ tôi, tôi có thể cố gắng hết sức để tập trung và tìm cho mình các lập trình viên. Tôi hoặc làm những việc không liên quan khác trong ba giờ qua.
Tôi cũng đã phải làm việc với các dự án thú vị đến mức tôi dành 60 giờ một tuần cho chúng (mà không bị ép buộc), viết mã nguồn không quá tệ.
Trong hai trường hợp đó, tôi là cùng một người. Trong trường hợp đầu tiên, năng suất của tôi rất tệ và tôi có thể tập trung 0 giờ mỗi tuần. Trong lần thứ hai, năng suất của tôi cao và tôi có thể tập trung hơn 40 giờ mỗi tuần.
2. Nó thay đổi từ công ty này sang công ty khác
Là một kinh nghiệm, bạn có thể đặt hai nhà phát triển trong các điều kiện làm việc khác nhau trên cùng một dự án. Một nhà phát triển sẽ làm việc trong văn phòng của riêng mình với PC nhanh màn hình kép, ghế thoải mái, v.v ... Người thứ hai sẽ có một bàn ở giữa một trung tâm cuộc gọi, với một PC cũ, kết nối internet 56k và giới hạn 50 MB cho tất cả các tệp cá nhân (và không có quyền sử dụng thẻ nhớ USB).
Hai tuần sau, đảo ngược điều kiện làm việc. Thấy sự khác biệt?
3. Nó thay đổi theo từng ngày
Hãy tưởng tượng rằng vào thứ năm, nhà phát triển biết rằng anh ta sẽ có thể nhanh chóng giải quyết các vấn đề còn lại, rằng công việc phải làm là thú vị, và mọi thứ đều thú vị và đầy hứa hẹn. Cô cũng biết rằng mình đã được thăng chức, và chồng cô đã liên lạc với cô để thông báo một số tin tức tốt liên quan đến cuộc sống cá nhân của cô.
Vào thứ Sáu, cùng một nhà phát triển thấy con chó già của cô đã chết và chiếc xe của cô sẽ không khởi động. Cô ấy đi làm muộn và làm đổ cà phê trên bàn, v.v ... Điều này sẽ ảnh hưởng đến hiệu suất hàng ngày của cô ấy như thế nào, so với ngày trước?