The Cat Ate My Source Code (phần 1)


Nguồn ảnh: Internet

Trong bài viết hôm nay, mình sẽ “cố gắng” (do khả năng tiếng Anh có hạn) lược dịch chương “The Cat Ate My Source Code” (tạm dịch nghĩa đen là: Con mèo đã “ăn” mất mã nguồn của tôi) trong cuốn The Pragmatic Programmer của 2 tác giả Andrew Hunt và David Thomas. Ngoài ra mình cũng thêm vào một vài suy nghĩ cá nhân từ góc nhìn của một lập trình viên (programmer) và một người quản lý (không chuyên nghiệp).

One of the cornerstones of the pragmatic philosophy is the idea of taking responsibility for yourself and your actions in terms of your career advancement, your project, and your day-to-day work. A Pragmatic Programmer takes charge of his or her own career, and isn’t afraid to admit ignorance or error. It’s not the most pleasant aspect of programming, to be sure, but it will happen—even on the best of projects. Despite thorough testing, good documentation, and solid automation, things go wrong. Deliveries are late. Unforeseen technical problems come up.

These things happen, and we try to deal with them as professionally as we can. This means being honest and direct. We can be proud of our abilities, but we must be honest about our shortcomings – our ignorance as well as our mistakes.

— — —
The Cat Ate My Source Code
The Pragmatic Programmer – Andrew Hunt & David Thomas

Một trong những nền tảng của triết lý thực dụng là quan niệm tự chịu trách nhiệm về bản thân bạn và những hành động của bạn về sự thăng tiến trong sự nghiệp, về dự án cũng như về công việc thường nhật của bạn. Một lập trình viên thực dụng có trách nhiệm với nghề nghiệp của họ và không ngại thừa nhận sự thiếu hiểu biết hoặc sai sót. Một điều chắc chắn rằng đó không phải là khía cạnh dễ chịu nhất của việc lập trình, nhưng nó sẽ xảy ra – ngay cả với những dự án tốt nhất. Mặc dù đã được kiểm thử (testing) cẩn thận, với những tài liệu tốt và quy trình tự động rất vững chắc/mạnh mẽ, vẫn có những sai sót. Việc giao sản phẩm bị trễ hạn. Những lỗi kỹ thuật không lường trước vẫn xuất hiện.

Khi những điều đó xảy ra, và chúng ta cố gắng giải quyết chúng một cách chuyên nghiệp nhất có thể. Điều này có nghĩa là trung thực và thẳng thắn/không chút quanh co. Chúng ta có thể tự hào về năng lực của mình, nhưng chúng ta phải hết sức trung thực về những thiếu sót của bản thân – cả sự thiếu hiếu biết cũng như những sai sót của mình.


Quan điểm cá nhân:

  • “The cat ate my source code” (con mèo ăn mất mã nguồn của tôi), nghe rất vô lý phải không các bạn? Tác giả rất tinh thế khi đặt tên chương này, lấy một ví dụ rất nghịch lý để ngầm nói về những lý do khập khiễng (hay nói dân dã là lý do “tào lao”) được đưa ra biện hộ khi có một sai lầm bị phơi bày.
  • Tự nhận sai, tự nhận trách nhiệm khi có biến cố xảy ra không hề dễ. Nó đòi hỏi bản thân người nhận trách nhiệm phải rất trung thực, trung thực không chỉ với mọi người mà quan trọng nhất là trung thực với chính bản thân mình, với thâm tâm của mình, đó mới là việc khó.

  • Tác giả đang nói về nghề lập trình nhưng triết lý này nó đúng với tất cả các ngành nghề.

  • Ngoài bản chất trung thực, việc thừa nhận sai sót đòi hỏi chúng ta phải đủ trưởng thành, đủ chín chắn, thậm chí đủ trải nghiệm cuộc sống để có đủ dũng khí nhận sai. Một trong những sai lầm của các bạn trẻ là cố gắng che đậy sai sót càng lâu càng tốt. Khi “kim trong bọc lòi ra” thì câu chuyện đã trở nên rất khác, tốn nhiều thời gian và chi phí để giải quyết, tệ hơn là không thể giải quyết.

  • Ở vai trò người quản lý (leader/manager), dĩ nhiên chúng ta không muốn nghe nhiều về sai sót. Nhưng khi điều đó xảy ra, một người trung thực sẽ được đánh giá cao hơn một người quanh co, đổ lỗi. Tuy nhiên, trung thực không có nghĩa là chỉ nhận lỗi là xong. Ở phần tiếp theo, chúng ta sẽ xem tác giả nói về việc “nhận trách nhiệm” (take responsiblity).

Còn nữa, sẽ cập nhật …

Tagged : / / / /
Subscribe
Notify of
guest

0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x