Đến cuối cùng, code rồi cũng trở về cát bụi

Vài hôm trước, mình nhận được email tâm sự chia sẻ của một bạn sinh viên vừa ra trường, tạm gọi là bạn M.

Nội dung email đại ý như sau:

Thuở học đại học, M rất thích code. Đến khi đi làm, M chịu khó tìm hiểu để code ngày càng giỏi hơn. M thích chăm chút cho code của mình cấu trúc sạch gọn, dễ hiểu, không có bug.

Tuy nhiên, có đôi lúc do khách hàng liên tục đổi yêu cầu, làm M phải sửa code hoăc bỏ code đi code lại, làm code ngày càng rối. Gần đây nhất, do nhiều vấn đề, dự án của team M bị hủy, công sức cả team coi như đổ sông đổ bể. Code của M và đồng bị vứt xó.

Cảm thấy hoang mang, M hỏi mình: code cho cẩn thận chăm chút vào rồi cuối cùng cũng thành đống rác hoặc vứt đi. Vậy code đàng hoàng để làm gì!!

Thật lòng mà nói, chính bản thân mình cũng từng có suy nghĩ như vậy khi mới đi làm. Vậy chúng ta cùng tìm hiểu xem, liệu có nên bỏ công sức ra mà code…. đàng hoàng hay không nhé?

Bản chất của code là thay đổi

Cái ngành phần mềm mà lập trình viên chúng ta theo đuổi tính ra có phần… hơi bạc. Kiến trúc sư, kĩ sự xây dựng có thể xây nên những cây cầu, tòa nhà đứng sừng sững hàng chục, hàng trăm năm. Nhưng phần mềm thì không được như thế. Bởi vì nó “mềm” nên khách hàng tha hồ chỉnh sửa, thay đổi nhu cầu.

Khi phần mềm lớn dần, những tính năng mới bắt đầu được thêm vào, những tính năng cũ bị bỏ dần. Thử nhìn xung quanh mà xem, Facebook, Youtube, Google bây giờ khác hẳn Facebook, Youtube, Google mấy năm về trước.

facebook_1473443a
Facebook 12 năm về trước

Các cụ cũng có câu, vật đổi sao dời, không có gì là vĩnh cửu (kể cả tình iu), phần mềm cũng vậy. Bản chất của đàn bà, … nhầm, của code là thay đổi! Cái cũ phải mất đi thì cái mới mới xuất hiện. Kể cả những dòng code hoàn hảo nhất cũng phải được thêm thắt, sửa chữa, thay thế, không thể nào tồn tại vĩnh viễn được.

Liệu ta có cần code… đàng hoàng?

Câu hỏi này quả là khá trớ trêu. Xét cho cùng, con người sống rồi cũng về với đất, code viết xong rồi cũng về với cát bụi. Dẫu vậy, chúng ta không vì thế mà sống YOLO, ăn chơi đập phá bất kể ngày mai.

Tương tự, code có thể bị xóa, chức năng có thể bị bỏ, dự án có thể bị hủy, nhưng chẳng lẽ vì thế mà chúng ta có thể thoải mái code ẩu, làm ẩu hay sao? Mình nghĩ rằng, nếu đã lựa chọn làm một lập trình viên, hẳn bạn cũng đã có câu trả lời cho chính mình rồi.

Mỗi dòng code bạn viết xuống, là một bước chân trên con đường lập trình dài dằng dặc. Mỗi một dòng code bạn viết xuống, đánh dấu một bước trưởng thành trên con đường sự nghiệp của bạn. Hãy trân trọng từng dòng code, như một nghệ nhân thực thụ trân trọng từng sản phảm mình làm ra.

0bbe890
Hãy trân trọng từng dòng code, như một nghệ nhân thực thụ trân trọng từng sản phảm mình làm ra.

Thay lời kết

Còn bạn, bạn nghĩ sao về chuyện “code rồi cũng về cát bụi” và “có cần code đàng hoàng”? Cùng chia sẻ suy nghĩ của bạn trong mục comment nhé.

Xin kết thúc bài viết bằng câu chuyện về một bậc thiền sư. Ta hãy cùng đọc và suy ngẫm:

Đại sư Banzen, thuở còn là một lập trình phu, than thở với thầy mình rằng:
“Bạch thầy, sao ta lại phải code có tâm? Một module viết dưới hoa tháng 4, rồi sẽ bị nhiều thay đổi tháng 6 vùi dập. Đến tháng 9, nó chỉ còn là một đống hổ lốn chờ vứt bỏ, sau đó lại được kẻ khác viết lại từ đầu trong tuyết tháng 12”

Người thầy đáp:
“Banzen, lời con nói thật khó nghe. Hãy rời sư môn, đi dọc theo bở biển. Hãy để sóng gột rửa tinh thần con. Đừng trở về khi con chưa giác ngộ!”

Nghe lời thầy, Banzen bước hàng vạn bước dọc bờ biển. Chàng ngắm những người phu chài lưới, những người đàn bá câu cá, và lũ trẻ xây lâu đài cát.

Chàng tò mò dõi theo lũ trẻ. Vào buổi sáng, khi sóng ngoài xa, lũ con trai chạy ra biển xách từng xô nước vào tưới làm mềm cát, lũ con gái bắt đầu xây đắp. Đến khi mặt trời khuất bóng, một toà lâu đài cát sừng sững dần hiện lên. Lũ trẻ lấy vỏ sỏ lá cây làm nóc, đá làm tường vây, dùng tay chọc từng ô cửa sổ. Thế rồi, sóng bắt đầu dạt vào bờ.

Từng con sóng đánh vào làm xói mòn lâu đài cát, xói mòn tâm can chàng Banzen trẻ tuổi. Chàng quặn lòng khi thấy công sức của lũ trẻ tan theo bọt nước. Lũ trẻ nắm tay nhau, cười thơ ngây khi thấy biển lấy đi những thứ vốn thuộc về nó, cho đến khi tòa lâu đài hùng vĩ chỉ còn là một nắm cát đá vỏ sò. Rồi chúng rời đi.
sandcastle
Từng con sóng đánh vào làm xói mòn lâu đài cát, xói mòn tâm can chàng Banzen trẻ tuổi.
Thế nhưng, sáng hôm sau, lũ trẻ vẫn ra bờ biển, tay xô tay chậu, hăm hở xây những tòa lâu đài mới.

Banzen bỗng dưng được khai sáng. Chàng trở về sư môn, không than thở gì nữa.

Câu chuyện gốc: http://thecodelesscode.com/case/68?name=Banzen

9 thoughts on “Đến cuối cùng, code rồi cũng trở về cát bụi”

  1. Nếu suy nghĩ thế thì sống làm gì cuối cùng cũng trở về cát bụi chi bằng đi ngay bây giờ…..

    Like

  2. Nó giống như người thợ cắt tóc chăm chút tỉ mỉ từng li từng tí để cho khách hàng có một mái tóc tuyệt đẹp. Sau đó người thợ cắt tóc tự hỏi: vậy cắt đẹp cắt đàng hoàng để làm gì. rồi sau một thời gian nữa mái tóc tuyệt đẹp đó sẽ lại dài ra lởm xởm xấu xí mà thôi. Câu trả lời đơn giản ở đây là nếu người thợ cắt tóc suy nghĩ và hành động như vậy thì chẳng có ai thuê anh ta cắt tóc nữa. Nếu không có đống code, chức năng cũ ném đi thì làm gì có những điều tuyệt vời sau đó ra đời. Tre già măng mọc quy luật đơn giản thôi mà. Hãy chú ý tới từng chi tiết dù là nhỏ nhất kể cả những cái mà khách hàng không bao giờ có thể nhìn thấy được, nó vẫn phải được thiết kế một cách hoàn mỹ nhất – đó là triết lý đem lại thành công cho Apple mà không một hãng nào sánh được.

    Liked by 1 person

  3. Thực ra bên ngành xây dựng, ở giai đoạn thiết kế kiến trúc, thiết kế kết cấu, thì kiến trúc sư và kỹ sư kết cấu cũng phải sửa đi sửa lại theo ý chủ đầu tư, có khi cũng bỏ đi 1 bản thiết kế là điều bình thường, mà bản thiết kế thì bao nhiêu chất xám nằm trong đó, ngồi vẽ, tính toán không gian, độ chịu lực, sức bền đủ kiểu mới ra được.

    Liked by 2 people

Leave a comment