Sự lười biếng: Đạo đức quan trọng nhất của lập trình viên trước sự bùng nổ của LLM

12 tháng 4, 2026·5 phút đọc

Bài viết phân tích về ba đức hạnh của lập trình viên theo Larry Wall, đặc biệt là sự lười biếng như một động lực để tạo ra các trừu tượng hóa tối giản. Tác giả cảnh báo rằng việc lạm dụng LLM để sản xuất mã nguồn hàng loạt đang đi ngược lại nguyên tắc này, tạo ra các hệ thống cồng kềnh thay vì hiệu quả.

Sự lười biếng: Đạo đức quan trọng nhất của lập trình viên trước sự bùng nổ của LLM

Trong cuốn sách kinh điển Programming Perl (thường được mệnh danh là "quyển sách Lạc đà"), Larry Wall đã từng nổi tiếng với quan niệm về ba đức hạnh của một lập trình viên: Sự lười biếng (Laziness), Sự thiếu kiên nhẫn (Impatience)Sự kiêu ngạo (Hubris).

Trong số này, "sự lười biếng" có lẽ là đức hạnh sâu sắc nhất. Đừng hiểu lầm đây là sự lười biếng trong lao động, mà là một triết lý thẩm mỹ trong thiết kế phần mềm. Sự lười biếng thúc đẩy chúng ta làm cho hệ thống càng đơn giản càng tốt (nhưng không được quá đơn giản!), phát triển các trừu tượng hóa (abstraction) mạnh mẽ để sau này có thể làm được nhiều việc hơn với ít công sức hơn.

Tất nhiên, để đạt được sự "lười biếng" này đòi hỏi rất nhiều trí lực. Khi chúng ta dành thời gian suy nghĩ và xây dựng các khái niệm trừu tượng, chúng ta đang tối ưu hóa cho thời gian của bản thân trong tương lai. Khi tính toán này chính xác, kết quả là tuyệt vời: các trừu tượng hóa đó không chỉ phục vụ chính chúng ta mà còn phục vụ tất cả những người đến sau chúng ta.

Sự trỗi dậy của văn hóa "Brogrammer" và LLM

Tuy nhiên, một hệ quả của việc mở rộng quy mô tạo ra phần mềm trong hai thập kỷ qua là sự xuất hiện của ngày càng nhiều người không tự coi mình là lập trình viên, và đối với họ, đức hạnh "lười biếng" này mất đi ý nghĩa ban đầu.

Thậm chí tệ hơn, năng suất phi thường cho phép bởi các công cụ hiện đại đã dẫn đến sự nhấn mạnh vào một loại "siêu năng suất" sai lầm. Chúng ta chứng kiến sự trỗi dậy của văn hóa "brogrammer", nơi sự lười biếng đầy hóm hỉnh bị thay thế bằng "hustle porn" (văn hóa làm việc thái quá) về việc "crush code" (viết code như điên).

Và vào bối cảnh đó, tia sét mang tên LLM (Mô hình ngôn ngữ lớn) đã đánh xuống. Dù quan điểm của bạn về việc tạo ra phần mềm là gì, LLM cho phép áp dụng nó với sức mạnh lớn hơn nhiều. Không ngạc nhiên khi LLM đã trở như loại steroid tăng cường cơ bắp cho nhóm "brogrammer" này.

Hãy lấy ví dụ về Garry Tan, người đã khoe khoang về tốc độ viết mã của mình là 37.000 dòng code mỗi ngày (và "vẫn đang tăng tốc").

Garry Tan khoe khoang về tốc độ viết codeGarry Tan khoe khoang về tốc độ viết code

Để so sánh, toàn bộ dự án DTrace chỉ vào khoảng 60.000 dòng code. Nếu sự lười biếng là một đức hạnh, thì cách tư duy về phần mềm kiểu này rõ ràng là một tật xấu. Sai lầm của nó rõ ràng ngay cả với những lập trình viên mới vào nghề.

Tại sao LLM lại thiếu sự lười biếng?

Vấn đề không chỉ nằm ở các lỗi kỹ thuật trong sản phẩm mà Tan tạo ra (một kỹ sư người Ba Lan tên Gregorein đã phân tích và tìm thấy nhiều bộ kiểm thử, ứng dụng Hello World, một trình soạn thảo text lén lút và tám biến thể của cùng một logo). Vấn đề cốt lõi là LLM vốn dĩ không có đức hạnh sự lười biếng.

Đối với LLM, công việc không tốn chi phí gì. LLM không cảm thấy nhu cầu tối ưu hóa cho thời gian tương lai của chính chúng hay của bất kỳ ai khác. Chúng sẽ vui vẻ đổ thêm mã nguồn vào một lớp "rác" khổng lồ.

Nếu không được kiểm soát, LLM sẽ làm cho các hệ thống trở nên lớn hơn, chứ không tốt hơn. Chúng có thể thu hút các chỉ số phù phiếm về sự hào nhoáng, nhưng đánh đổi bằng mọi thứ thực sự quan trọng.

LLM làm nổi bật sự cần thiết của sự lười biếng kiểu con người: thời gian hữu hạn của chúng ta buộc chúng ta phải phát triển các trừu tượng hóa sắc bén một phần vì chúng ta không muốn lãng phí thời gian của mình vào những hệ thống vụng về.

Kỹ thuật tốt nhất luôn sinh ra từ các ràng buộc (constraints). Ràng buộc về thời gian đặt ra giới hạn cho gánh nặng nhận thức của hệ thống mà chúng ta sẵn sàng chấp nhận. Đây là thứ thúc đẩy chúng ta làm cho hệ thống đơn giản hơn, bất chấp sự phức tạp vốn có của nó.

Kết luận: Con người vẫn là yếu tố then chốt

Điều này không có nghĩa là LLM sẽ không đóng vai trò quan trọng trong tương lai của chúng ta. Chúng là những công cụ phi thường cho kỹ thuật phần mềm. Tuy nhiên, chúng chỉ là công cụ.

Chúng ta có thể sử dụng chúng để giải quyết các khía cạnh không mang tính hóm hỉnh (và không đức hạnh!) của sự lười biếng của lập trình viên — ví dụ, giúp chúng ta giải quyết các vấn đề khó nhằn như nợ kỹ thuật — hoặc sử dụng chúng để thúc đẩy tính nghiêm ngặt trong kỹ thuật.

Nhưng điều đó phải nhằm phục vụ sự lười biếng lành mạnh của chính chúng ta: để tạo ra một hệ thống đơn giản và mạnh mẽ hơn, phục vụ không chỉ bản thân chúng ta mà còn cho các thế hệ kỹ sư phần mềm mai sau.

Bài viết được tổng hợp và biên soạn bằng AI từ các nguồn tin tức công nghệ. Nội dung mang tính tham khảo. Xem bài gốc ↗