45 điểm bởi GN⁺ 2024-09-03 | 3 bình luận | Chia sẻ qua WhatsApp
  • Một chiều thứ Bảy yên tĩnh, mở terminal với quyết tâm dành vài giờ cho việc code và đắm mình vào dự án
  • Trong thư mục dự án có những ý tưởng mới triển khai dang dở và các công việc đang làm bị bỏ giữa chừng
  • Dù chọn dự án nào, bạn cũng sẽ phải đối mặt không chỉ với vấn đề ban đầu mà còn với những thách thức mới
  • Mở IDE, kéo về các thay đổi mới nhất và xem lại lịch sử commit
  • Phát hiện ra các phần frontend chưa hoàn thành, tích hợp thư viện bị vướng những giới hạn ngoài dự kiến, kiến trúc được xây quá phức tạp do over-engineering, v.v.
  • Dành nhiều giờ để refactor code, debug, chỉnh CSS và làm đủ thứ chỉ để cho thấy có chút tiến triển
  • Khoảng thời gian đã phân bổ nhanh chóng trôi qua và bạn chuẩn bị rời khỏi chỗ ngồi
  • Bắt đầu với sự lạc quan nhưng kết thúc bằng cảm giác thất vọng và tự thấy mình kém cỏi
  • Codebase vẫn đầy các chú thích TODO và những tính năng mới chỉ được triển khai một nửa
  • Chu kỳ đam mê, vật lộn và thất vọng này đã trở nên quá quen thuộc
  • Hiệu ứng hydra của dự án: dù có tiến bộ, những thách thức mới vẫn liên tục xuất hiện
  • Có vẻ như khuôn mẫu này sẽ không bị phá vỡ, nhưng tác giả quyết tâm tìm cách thuần hóa con quái vật này
  • Sẽ tìm kiếm chiến lược để thoát khỏi vòng lặp khởi đầu bất tận và giai đoạn lưng chừng đầy bất mãn
  • Muốn học nghệ thuật hoàn thành, đánh bại hydra và cảm nhận sự thỏa mãn của một dự án đã xong

Sự cám dỗ của hydra dự án

  • Khi một dự án đang dở dang, nó dường như chứa vô hạn khả năng
  • Khoảnh khắc tuyên bố dự án đã "hoàn thành", nó sẽ phải đối mặt với những chỉ trích từ bên ngoài lẫn bên trong
  • Sự phấn khích của ý tưởng mới và nỗi sợ hoàn thành khiến dự án bị trì hoãn
  • Các dự án chưa xong tạo cảm giác thú vị hơn vì chúng vẫn còn tiềm năng
  • Bắt đầu một dự án mới dễ hơn và thậm chí còn cho cảm giác năng suất hơn là hoàn tất một dự án cũ
  • Chỉ cần đang làm gì đó là có ảo giác mình đang năng suất
  • Vì dự án cá nhân không có deadline nên rất dễ rơi vào chủ nghĩa hoàn hảo
  • Cũng tồn tại cả nỗi sợ thành công

Cái giá của việc không bao giờ hoàn thành

  • Sự thỏa mãn khi hoàn thành một dự án không thể so sánh với cảm giác khi chỉ mới bắt đầu
  • Các dự án dang dở tạo ra gánh nặng tinh thần
  • Những bài học thu được trong quá trình hoàn thành dự án khác hẳn với việc chỉ khởi động nó
  • Sự trưởng thành kỹ thuật thực sự diễn ra trong quá trình hoàn thiện, khi giải quyết những vấn đề khó nhằn cuối cùng
  • Những dự án không hoàn tất có thể làm giảm sự tự tin
  • Giai đoạn cuối của dự án chứa đựng những trải nghiệm học hỏi quý giá như tối ưu hóa, refactor, v.v.
  • Các dự án dang dở chiếm dụng không gian tinh thần, làm giảm sức sáng tạo và năng suất
  • Một dự án hoàn thành mở ra cơ hội nhận phản hồi
  • Bạn tự tước đi niềm vui được đưa một sản phẩm hoàn chỉnh ra với thế giới

Chiến lược thuần hóa hydra dự án

  1. Định nghĩa "hoàn thành": Trước khi bắt đầu dự án, hãy xác định rõ "hoàn thành" nghĩa là gì và ghi lại điều đó để ngăn phạm vi công việc liên tục phình ra
  2. Chấp nhận MVP: Đừng nhắm đến sự hoàn hảo mà hãy hướng tới trạng thái "đủ tốt". Phát hành phiên bản cơ bản trước rồi cải tiến sau
  3. Giới hạn thời gian cho dự án: Đặt deadline cho dự án để tạo cảm giác cấp bách và ngăn việc mở rộng tính năng
  4. Luyện tập hoàn thành những việc nhỏ: Thường xuyên hoàn thành các dự án hoặc tác vụ nhỏ để rèn "cơ bắp hoàn thành"
  5. Tách biệt ý tưởng và triển khai: Khi có ý tưởng mới, đừng thực hiện ngay mà hãy ghi nó vào nhật ký ý tưởng
  6. Ăn mừng việc hoàn thành: Mỗi lần hoàn thành một dự án, hãy tự chúc mừng để tạo hiệu ứng củng cố tích cực
  7. Chấp nhận trách nhiệm: Tìm một người đồng hành hoặc cam kết công khai để tạo trách nhiệm trong việc hoàn thành dự án

Con đường phía trước

  • Việc thay đổi thói quen và tư duy cần thời gian cùng nỗ lực nhất quán
  • Sẽ luôn có cám dỗ từ dự án mới hoặc nỗi sợ sự không hoàn hảo
  • Điều quan trọng là phải rèn luyện "cơ bắp hoàn thành"
  • Hãy đối mặt trực diện với hydra dự án, ngừng chỉ lập kế hoạch và bắt tay vào làm

Ý kiến của GN⁺

  • Một bài viết xử lý rất tốt vấn đề dự án dang dở mà hầu như lập trình viên nào cũng có thể đồng cảm
  • Giải thích rõ lý do vì sao không thể hoàn thành dự án và những tác động tiêu cực mà điều đó gây ra
  • Đưa ra các chiến lược giải quyết thực tế, khả thi và có vẻ khá hữu ích
  • Đồng thời nhấn mạnh khía cạnh tâm lý trong quá trình phát triển và tầm quan trọng của động lực
  • Cách bài viết thẳng thắn nói về những vấn đề cố hữu của lập trình viên như chủ nghĩa hoàn hảo hay sự cám dỗ của cái mới là điểm rất đáng chú ý
  • Việc áp dụng các ý tưởng từ những cuốn sách phát triển bản thân như Atomic Habits hay Deep Work vào bối cảnh phát triển phần mềm cũng khá thú vị
  • Là bài viết đáng giới thiệu cho những lập trình viên đang gặp khó khăn trong việc quản lý dự án cá nhân

3 bình luận

 
cargold 2024-09-04

Wow... Đây đều là những nội dung mà bình thường tôi xem là rất quan trọng, lại còn là một chuỗi ý kiến khiến tôi cực kỳ đồng cảm nên tôi đã đọc mà phải thán phục! Chỉ khác cách diễn đạt thôi, nhưng thật vui khi thấy bạn cũng đang nói về những khái niệm tương tự.

Tôi thường dùng cách diễn đạt là 'hài lòng ở mức 60 phần trăm'. Về cơ bản, tôi nghĩ rằng người càng nhiều tham vọng và nhiệt huyết thì càng nên cố gắng hoàn thành dự án với một mức độ hài lòng mơ hồ kiểu như 60 phần trăm theo cách họ tự cảm nhận, để có thể thoát khỏi chủ nghĩa hoàn hảo méo mó.

 
beoks 2024-09-06

Tôi cũng đọc mà thấy cực kỳ đồng cảm, nhưng còn ngạc nhiên hơn khi thấy có người trong phần bình luận dùng cách diễn đạt khá giống tôi!

 
qyurila 2024-09-04

Con số 60% thật sự rất tinh tế. Cảm ơn vì những góc nhìn sâu sắc.