15 điểm bởi GN⁺ 2025-04-28 | 5 bình luận | Chia sẻ qua WhatsApp
  • Việc dùng công cụ lập trình AI giúp tăng năng suất, nhưng cũng dấy lên lo ngại về việc cảm giác đắm chìm và niềm vui sáng tạo mà lập trình viên từng có đang suy giảm
  • Trước đây, trải nghiệm lập trình trong trạng thái “flow” mang lại sự thỏa mãn lớn cho các lập trình viên
  • Hiện nay, AI thay việc sinh mã, còn lập trình viên nhiều khi chỉ dừng lại ở vai trò “người tuyển chọn” là mô tả và đánh giá
  • Sự thay đổi này làm dấy lên khả năng mức độ hạnh phúc dài hạn và sự hài lòng với công việc bị suy giảm
  • Giải pháp được đề xuất là chủ động chừa lại không gian để “tự tay viết mã”tìm kiếm những dạng thỏa mãn mới

Niềm vui của việc lập trình đã đi đâu?

  • Tác giả thừa nhận những tiến bộ và mặt tích cực của công nghệ AI, nhưng cũng thú nhận rằng niềm vui khi làm một lập trình viên đang dần biến mất
  • Trước đây từng có những khoảnh khắc đeo tai nghe, bật NeoVim và chìm vào việc viết mã đến mức quên cả thời gian
  • Không chỉ là hiệu quả hay phần thưởng, mà chính trải nghiệm giải quyết vấn đề và tạo ra thứ gì đó mới là động lực nội tại cốt lõi

Giá trị của “flow” trong tâm lý học

  • Theo lý thuyết của nhà tâm lý học Mihaly Csikszentmihalyi, trạng thái flow xuất hiện khi thử thách và kỹ năng được cân bằng phù hợp
  • Với lập trình viên, sự đắm chìm này xuất hiện như khoảnh khắc hòa làm một với mã nguồn, khi vấn đề trở nên giống như một câu đố, và cảm giác về thời gian biến mất
  • Những khoảnh khắc như vậy không chỉ là làm việc đơn thuần, mà là cốt lõi của sự sáng tạo và cảm giác hạnh phúc nghề nghiệp

Công cụ AI đã thay đổi vai trò của lập trình viên

  • Hiện nay, nhờ các công cụ lập trình dựa trên AI (Copilot, Cursor, v.v.), rất nhiều đoạn mã có thể được tạo ra mà không cần tự tay viết trực tiếp
  • Giờ đây, lập trình viên tập trung vào viết prompt, rà soát kết quả do AI tạo ra và chỉnh sửa một chút
  • Vì vậy, trải nghiệm đắm chìm trước đây và niềm vui sáng tạo đang giảm đi
  • Việc dùng AI có thể nâng cao năng suất, nhưng quá trình đó cũng có thể trở thành một trải nghiệm thụ động hơn và tạo cảm giác xa cách về mặt cảm xúc

Nỗi lo thực sự: nếu sự đắm chìm biến mất thì sao?

  • Hiện tượng hai mặt này, năng suất tăng nhưng niềm vui giảm, về lâu dài có thể ảnh hưởng đến mức độ hài lòng của lập trình viên
  • Nếu thử thách, cách giải quyết mang tính sáng tạo và cảm giác thành tựu khi tự tay viết mã biến mất trong quá trình lập trình, thì ý nghĩa của chính công việc cũng có thể trở nên mờ nhạt
  • Bài viết cũng đặt ra câu hỏi: liệu “prompt engineering” có thể trở thành đối tượng của một trạng thái flow mới hay không?

Tìm kiếm những cách đắm chìm mới

  • Trong tương lai, có thể con người sẽ tìm thấy sự thỏa mãn nhiều hơn ở thiết kế hệ thống, lên ý tưởng sản phẩm hơn là trực tiếp viết mã
  • Hoặc cũng có thể duy trì không gian cho trạng thái đắm chìm bằng cách cố ý dành thời gian cho việc “hand-coding” kém hiệu quả hơn
  • Điều quan trọng là, ngay cả trong kỷ nguyên AI, vẫn cần những lựa chọn có ý thức để gìn giữ hạnh phúc và sự đắm chìm của người làm lập trình

5 bình luận

 
wogns3623 2025-05-01

Có phải việc tự viết code sẽ chuyển sang phạm vi của một sở thích mất rồi không..

 
bungker 2025-04-30

Có vẻ như việc tập trung vào phần mà tôi muốn làm lại còn giúp ích cho sự đắm chìm.

 
ahwjdekf 2025-04-28

Những đoạn mã không được công khai trên Internet thì AI cũng tuyệt đối không thể viết được, nên tôi thật sự không hiểu làm sao người ta có thể nói rằng AI sẽ làm hết mọi việc lập trình.

 
bluewolf80 2025-04-28

Tôi cũng nghĩ rằng chẳng phải đây là câu chuyện chỉ áp dụng cho các phần mềm có độ phức tạp tương đối thấp hay sao? Dù là mã nguồn mở đi nữa, ví dụ, liệu có thể viết tốt phần mã cốt lõi của nhân Linux không...

 
GN⁺ 2025-04-28
Ý kiến trên Hacker News
  • Có những người thực sự yêu bản thân việc lập trình. Yêu lý thuyết CS, công cụ, gần như mọi thứ

    • Những người khác xem đó là phương tiện để đạt mục đích, và không tìm thấy niềm vui ở khía cạnh kỹ thuật. Họ quan tâm đến thành phẩm hơn là quá trình
    • Nếu bạn thuộc nhóm A thì có thể sẽ khó hiểu nhóm B. Chiều ngược lại cũng vậy
    • Là một nhạc công, tôi yêu mọi thứ trong việc sáng tác âm nhạc. Lý thuyết, làm chủ nhạc cụ, và sau hàng nghìn giờ luyện tập có thể chơi được những thứ từng nghĩ là bất khả thi
    • Ngược lại, có những người muốn lao thẳng vào kết quả. Họ muốn tạo bài hát xoay quanh giai điệu hay ý tưởng trong đầu mình
    • Tôi không coi thường những người đó. Tôi không hiểu họ, nhưng cũng không cần phải hiểu
    • Nhiều lập trình viên đã dành nhiều năm mài giũa kỹ năng và tình yêu với nghề, nên không thể hiểu vì sao mọi người lại muốn thứ được tạo ra mà không cần nỗ lực
  • Nếu bạn thích lập trình thì bạn vẫn có thể tiếp tục viết code. Không ai giật mất bàn phím của bạn cả

    • AI giúp tôi tập trung vào phần code mà tôi thực sự quan tâm. Chắc khoảng 5-10% của dự án
    • Phần còn lại gồm những việc lặp đi lặp lại, Dockerfile, build system, truyền biến môi trường Bash, v.v.
    • AI không phải lúc nào cũng đúng, nhưng đáng tin hơn con người. Nó không phán xét hay chế giễu
  • Nếu chúng ta đánh mất niềm vui trong công việc của mình, thì phải tự hỏi rốt cuộc đang tối ưu hóa cho điều gì

    • Mục tiêu là giải quyết vấn đề cho những con người thật
    • Các side project mã nguồn mở tồn tại vì tình yêu và niềm vui
    • Lập trình rồi sẽ ổn thôi
  • Gần đây nhờ coding có AI hỗ trợ mà tôi đã trải nghiệm lại trạng thái flow tuyệt vời sau một thời gian dài

    • Chia công việc thành các thành phần có độ phức tạp vừa phải, rồi để AI xử lý
    • Tập trung vào thiết kế cấp cao
  • Phần bình luận này cho thấy rõ sự khác biệt giữa những người yêu code và ghét AI với những người ghét code và yêu AI

    • Những người muốn giao việc code cho người khác hay cho thứ gì đó làm thay, có lẽ vốn đã là những lập trình viên tạo ra thứ code tệ nhất
  • Tôi đang dùng Github Copilot và ChatGPT 4.0. Với các ví dụ nhỏ thì ổn, nhưng trong đa số trường hợp, prompt chỉ là lãng phí thời gian

    • Tôi tự hỏi liệu LLM có hữu ích trong các dự án lớn hay không
    • Hỏi những người dùng LLM: với dự án lớn thì có cần thay đổi chiến lược prompt không, họ dùng ngôn ngữ lập trình nào, và LLM có giúp được với các vấn đề không tầm thường hay không
  • Tôi xử lý phần lớn công việc bằng prompt, rồi review rất kỹ trước khi commit và push

    • Để dùng LLM tốt thì cần đặt ra ưu tiên thật rõ ràng
  • Công việc trở nên kém thỏa mãn hơn vì các công cụ AI

    • Công cụ AI không thể tự động hóa toàn bộ công việc, và những phần không tự động hóa được lại càng nhàm chán hơn
    • Tôi ghen tị với những người nói rằng AI giúp họ tập trung vào điều họ thực sự coi trọng
  • Chưa bao giờ việc lập trình lại vui như lúc này. Những phần nhàm chán và phiền toái đã biến mất, và tôi có thể tập trung vào đoạn code mình muốn viết

  • Chúng ta nên quay lại với dữ liệu nhỏ. Dữ liệu được chọn lọc bằng tay, lấy từ địa phương. Dữ liệu mà bạn có thể cảm nhận được mùi hương và kết cấu của nó

    • Những ngày đó đã qua rồi