4 điểm bởi GN⁺ 4 giờ trước | 2 bình luận | Chia sẻ qua WhatsApp
  • Khi sử dụng Claude Code, Codex, ChatGPT và Gemini hằng ngày cho công việc lẫn dự án cá nhân, thời gian đọc văn bản do AI tạo ra đã tăng lên đáng kể so với vài năm trước
  • Luồng phát triển đã chuyển từ cách tự thiết kế và triển khai sang mô tả thiết kế → xem xét mã của LLM → tự chỉnh sửa, và việc làm trong các lĩnh vực chưa quen cũng trở nên dễ dàng hơn
  • Dự án hiện tại cũng xoay quanh framework tạo mã không giám sát ở quy mô lớn và việc xem xét đầu ra của agent Qwen, nên về cấu trúc là liên tục phải đọc nội dung từ LLM
  • Sau khoảng 1 năm sử dụng liên tục, trong vài tháng gần đây các mẫu lặp lại như giả định sai, ảo giác, những câu ngắn mang tính khẳng định chắc nịch và emoji quá mức đã tích tụ thành gánh nặng
  • Cốt lõi của sự mệt mỏi không nằm ở bản thân LLM, mà ở việc cùng một văn phong và cùng một loại lỗi cứ lặp lại; dù có tính năng cá nhân hóa, vẫn khó kiểm soát phong cách của nội dung AI do người khác tạo ra

LLM đã ăn sâu vào luồng phát triển

  • Lượng sử dụng LLM của bản thân hiện được xem là mức trung bình đối với một lập trình viên, và cách dùng cũng vẫn còn khá sơ khai
    • Xử lý từng tác vụ một; ở công ty dùng Claude Code, còn ở nhà hiện trò chuyện với Codex
    • Ngay cả khi để trợ lý viết mã, vẫn đọc kỹ và hiểu đầu ra rồi tự chỉnh sửa
    • Chưa đến mức dùng sâu các agent tự trị hay orchestration agent
  • Cách làm việc đã chuyển từ trọng tâm là thiết kế và viết mã sang dạng giải thích thiết kế cho LLM, xem xét mã do LLM tạo ra, rồi quay lại viết mã
    • Trong quá trình này, tiếp xúc với những cách tiếp cận mà trước đó chưa kịp cân nhắc hoặc chưa biết
    • Có thể làm việc thoải mái hơn ngay cả trong những lĩnh vực không có kiến thức sâu
  • Dự án cốt lõi hiện tại là xây dựng một framework để tạo mã không giám sát ở quy mô lớn bên trong codebase
    • Khi không dùng Claude để tạo công cụ, thì xem xét đầu ra của Qwen, một agent không giám sát
    • Dù theo hướng nào, vẫn liên tục phải đọc nội dung do LLM tạo ra
  • Khi tìm thông tin, nếu không biết một trang cụ thể, thường hỏi ChatGPT hoặc đọc phần tổng quan của Gemini
    • Nếu câu trả lời của LLM sai, phải quay lại duyệt web
    • Khi kết quả tìm kiếm có nhiều bài viết do AI tạo ra vô dụng, thì câu trả lời của LLM cũng được xem là đủ ổn cho các câu hỏi thường ngày

Sự mệt mỏi khi cùng một văn phong và cùng một lỗi cứ tích tụ

  • Cách sử dụng này đã kéo dài khoảng 1 năm và hiện không có ý định dừng lại ngay
    • Cảm thấy dùng LLM giúp năng suất cao hơn
    • Cũng thấy việc tiếp tục học cách sử dụng LLM hiệu quả là có giá trị
  • Trong vài tháng gần đây, cảm giác khi đọc đầu ra của LLM đã thay đổi
    • Cảm giác như trước khi đọc đã biết mình sẽ thấy văn phong và lỗi kiểu gì, và điều đó trở thành gánh nặng
    • Những yếu tố lặp lại gồm giả định sai, ảo giác, câu ngắn khẳng định chắc nịch và emoji quá mức
  • Nếu xét riêng từng sự khó chịu thì vẫn có thể chịu được, nhưng khi chúng lặp lại cùng nhau, người đọc nhanh chóng chán ngán lối viết của LLM
  • Điểm cốt lõi không phải là chỉ trích rằng LLM tệ hơn con người, mà là tính lặp lại
    • Con người cũng có thể khó tin cậy hoặc gây phiền toái
    • LLM viết cùng một phong cách và lặp lại cùng một loại lỗi
    • Nếu giao diện cung cấp, có thể dùng tính năng cá nhân hóa, nhưng một số văn phong đặc trưng vẫn còn
    • Không thể trực tiếp kiểm soát phong cách của nội dung do người khác tạo ra
  • Hiện vẫn chưa biết phải xử lý cảm xúc này như thế nào; nó đã vượt quá sự thất vọng với một công cụ chưa ổn định và trở thành trạng thái liên tục khó chịu với chính các mẫu hình viết lách

2 bình luận

 
amebahead 2 giờ trước

Tôi cũng từng khổ sở vì những giả định sai lệch, ảo giác, các câu ngắn mang tính khẳng định chắc nịch và kiểu dùng emoji quá mức trong câu trả lời của LLM,
nên đã tạo và áp dụng ELI5 Rule để thoát khỏi nỗi khổ đó :)

https://github.com/amebahead/explain-like-iam-five-rules

 
Ý kiến trên Hacker News
  • Chưa đến mức kiệt sức, nhưng LLM thực sự làm tôi mệt mỏi vì áp lực mà nó tạo ra. Không ai ép phải tăng khối lượng công việc, nhưng lúc nào cũng có thứ gì đó do “clanker” của tôi hoặc “clanker” của người khác tạo sẵn, và tôi lại ở trong trạng thái có thể gỡ nút thắt cho phần mình đang kẹt
    Ngay cả trước thời LLM tôi cũng đã khó mà theo kịp, còn bây giờ cảm giác như số việc chờ xử lý luôn tăng khoảng 10 lần, và nếu mọi người đều “tối ưu hóa” để nhồi thêm việc cho AI chạy song song nhanh hơn thì con số đó còn có thể tăng thêm 10 lần nữa. Việc cứ liên tục đứng ở điểm nghẽn của mọi thứ thật sự rất mệt
    Việc thực hiện các dự án nhỏ bên lề và các ý tưởng vẫn rất vui, nhưng tôi nhận ra LLM đang tiếp sức cho một lối nghĩ không lành mạnh kiểu “nghỉ ngơi là lãng phí thời gian”, và tôi thấy mình cần phải sửa lại điều đó ngay
    Than phiền cốt lõi của bài viết có lẽ cũng từng xuất hiện vào thời tự động hóa nhà máy. Cũng như khi nhiều nghề thủ công lành nghề và đa dạng bị thay bằng việc ngồi ở một vị trí trên dây chuyền lắp ráp lặp đi lặp lại cùng một động tác cả ngày, LLM cũng lấy đi phần sáng tạo và biến hóa, chỉ để lại việc đóng dấu QA lặp lại. Có lẽ ta có thể tìm lại những biện pháp giảm nhẹ từng được dùng khi đó

    • Có quá nhiều yêu cầu rà soát tài liệu do LLM tạo ra. Nào là tài liệu đặc tả, tài liệu cho người dùng cuối, tài liệu dự án, tài liệu kế hoạch kinh doanh
      Cách đây không lâu một đồng đội gửi cho tôi một file zip chứa khoảng 30 tài liệu do LLM tạo và muốn tôi xem ngay, nhưng khá nhiều trong số đó lặp lại hoặc có các nội dung bịa đặt/hallucination rất vô lý. Tốc độ tạo ra nhanh hơn rất nhiều so với tốc độ rà soát
      Trước đây quản lý dự án phải mất phần lớn một ngày để viết tài liệu đặc tả, còn bây giờ họ có thể tạo nó trong vài phút rồi ném sang cho người khác duyệt, thật sự rất mệt
    • Tôi nhớ đến cảnh nhà máy trong Modern Times của Charlie Chaplin. Cảm giác mà tác giả bài viết đang nói tới rốt cuộc là con người phải chạy theo tốc độ của máy móc, chứ không phải ngược lại
      “Centaur ngược” không phải điều gì mới. Cứ hỏi phong trào lao động của thế kỷ trước là biết
    • Một lý do khiến LLM gây mệt là lúc nào cũng bị thôi thúc thêm đúng một prompt nữa để chỉnh cho UI khớp ý. Thường thì nó gần đúng nhưng vẫn lệch nhẹ, và việc sửa nốt chỗ đó đôi khi mất 5–10 phút. Kết quả là tôi làm việc lâu hơn rất nhiều
      Có lẽ còn vì tôi là kỹ sư phần mềm thích tạo ra sản phẩm hơn là dùng phần mềm phức tạp. Cảm giác tạo ra thứ gì đó là động lực của tôi, và tôi muốn biến một tính năng thành thứ hoàn chỉnh, trau chuốt. Nhưng trong công việc UI, quãng đường từ 95% lên 100% lại mất rất lâu
      Thành ra đáng tiếc là hiện giờ thời gian làm việc của tôi dài hơn rất nhiều
    • Cảm giác giống như: “Tôi tưởng khi có máy rửa bát thì mình sẽ tập trung được vào sáng tạo, nhưng hóa ra lại xuất hiện cỗ máy làm chính công việc của tôi, và thứ còn lại cho tôi chỉ là rửa bát
    • Tôi đang chịu một kiểu áp lực khác. Công ty vẫn bắt mọi người dùng LLM, còn có cả bảng xếp hạng token, đo thời gian sử dụng, rồi đưa vào đánh giá hiệu suất
      Vì thế tôi phải ngừng làm việc thực sự hiệu quả để dành ra một tỷ lệ thời gian nhất định chỉ nhằm “làm AI cho có số token để báo cáo”. Khối lượng công việc thì vẫn vậy hoặc còn tăng lên, nhưng thời gian làm việc thật sự lại bị giảm đi N% chỉ để xoa dịu các vị thần AI
  • Theo kinh nghiệm của tôi, nguyên nhân kiệt sức chủ yếu có 3 thứ. Thứ nhất, lớn nhất là đa nhiệm. Tôi thường xuyên phải qua lại giữa 3–5 cửa sổ agent đang làm những việc khác nhau, và khi mỗi vòng lại mất vài phút thì cực kỳ mệt
    Trước thời đại coding agent, phần lớn lập trình viên có lẽ vẫn có cơ hội tập trung vào một việc trong hơn 2 tiếng. Giờ đây coding agent đã mở rộng bề rộng của stack công nghệ mà ta có thể xử lý, nhưng không làm tăng băng thông để làm việc sâu
    Thứ hai, agent giỏi ở chỗ làm cho mọi thứ chạy mà không xung đột, nhưng không có nghĩa là nó tạo ra mã đúng. Nó rất khác với một chuyên gia con người có nền tảng kiến thức vững
    Thứ ba, tôi thấy vô cùng nản khi phải rà soát cả đống PR chất lượng thấp do AI tạo ra. Khả năng tập trung là tài nguyên hữu hạn. Tôi không muốn đổ quá nhiều năng lượng vào việc của người khác, nhưng nếu không chú ý hơn thì mã AI vô trách nhiệm — được tạo ra mà không có sự suy nghĩ và thiết kế cẩn trọng như của con người — sẽ nhanh chóng làm hỏng cả dự án. Làm việc với những người thiếu cẩn trọng vốn đã mệt, nhưng trong thời đại coding agent họ tạo ra lượng rác gấp 10 lần nên cũng đau khổ gấp 10 lần, và đây là vấn đề văn hóa đội nhóm rất khó cưỡng chế

    • Đồng ý. Đồng thời tôi cũng đang cố tự giới hạn thật chặt để chỉ dùng 1–2 workflow agent cùng lúc. Nhiều hơn mức đó thì tôi không chịu nổi, nhưng lại quá dễ rơi vào cái bẫy mở agent chỉ để sửa “một thay đổi nhỏ thôi”
  • Khi phải đọc output của Opus hàng giờ liền, tôi bắt đầu có cảm giác khó chịu về thể chất. Bài này đúng là chạm tới mình
    Tôi cũng bắt đầu than phiền với team, nhưng ít nhất thì nên đưa style guide cá nhân vào rule của agent để loại bỏ mấy thứ như dấu em dash, lối diễn đạt kiểu “không phải X mà là Y”, cách kéo dài bổ ngữ đứng trước danh từ, hay việc dùng “land” với nghĩa hoàn tất. Mong rằng đây chỉ là một giai đoạn của LLM còn non nớt

    • Bot nào cũng có kiểu lạm dụng một số cụm từ, từ ngữ và dấu câu nhất định. Ví dụ dạo này chúng dùng từ gate quá đà
      Con người hiểu rằng gate là một cái “cổng”: nó có thể mở hoặc đóng, khóa hoặc không khóa, và con đường phía bên kia có thể đi qua được hoặc không. Chỉ riêng việc có một gate không cho biết nó đang mở hay đóng
      Nhưng trong cách nói kiểu bot, gate chỉ mang nghĩa một vật cản mạnh, không thể vượt qua. Chúng dùng nó như thể là hàng rào, bức tường, thậm chí cả hào dung nham
      Trong khi đó gate vốn là thứ được thiết kế để đi qua, vậy mà bot lại dùng cùng từ đó cho cả những chướng ngại được tạo ra với chủ đích không thể vượt qua. Theo kinh nghiệm mấy chục năm sống trong đời thực với gate, đó là dùng sai. Bình thường gặp một gate đang đóng thì chỉ cần mở ra rồi đi qua
      Kể cả khi bảo bot tránh dùng từ đó, đôi lúc nó vẫn phớt lờ. Hôm nay từ gây khó chịu là gate, hôm qua là từ khác, và ngày mai sẽ lại là một từ hoàn toàn khác
      Mẫu số chung là thứ biệt ngữ lặp đi lặp lại, gây khó chịu và rẻ tiền vốn ngay từ đầu đã không đúng
    • Tôi cũng vậy. Đọc quá nhiều thứ này khiến tôi có cảm giác bị tổn thương tinh thần
      Trái với cách giải thích kiểu “chỉ là tiếng Anh Nigeria của lao động hợp đồng”, có vẻ các model đang tạo ra một phương ngữ riêng, cực kỳ ngắn gọn và bị khuôn mẫu hóa quá mức dưới áp lực học tăng cường. Nó ngày càng giống như đang được viết bằng mã, nhưng mã ở đây không phải code máy tính. Từ ngữ không còn mang đúng nghĩa như với con người nữa
    • Hôm nay tôi cũng đang cố mô tả đúng cảm giác này. Tôi vẫn chưa diễn đạt chính xác thành lời được, nhưng đúng là có cảm giác hơi khó chịu về thể chất. Nó khá giống chứng sợ lỗ nhẹ
    • arc land thì vì Phabricator nên đã in sâu vào não tôi từ lâu, nên tôi biết thuật ngữ đó có trước cả LLM, nhưng nó vẫn gây bực mình phát điên
      Kiểu chệch ngôn ngữ này là không thể đảo ngược. Dù có thể lọc được 100% input từ LLM đi nữa, con người vẫn đang tự huấn luyện mình nói “land” thường xuyên hơn
    • Trong viết lách, giọng văn thực sự rất quan trọng. Nếu ai cũng viết bằng Opus rồi không biên tập lại, thì dù ai viết đi nữa tất cả cũng sẽ nghe như cùng một giọng
  • Tôi đang làm một dự án với một người giờ chỉ dùng LLM, và việc đó thật mệt mỏi, hao tổn tinh thần
    Mỗi khi tôi góp ý gì đó, câu trả lời chỉ là “để tôi hỏi Claude”. Người đó không hiểu toàn bộ hệ thống vận hành thế nào, và phần lớn code cũng phản ánh đúng điều đó
    Mấy hôm trước họ còn không biết cách thiết lập môi trường local và set biến môi trường, nên đã hardcode hẳn chế độ demo vào. Tôi cũng khó hiểu không biết vì sao Claude lại không biết điều đó, nhưng cũng có thể là do prompt
    Tôi cố hạn chế dùng LLM, và nếu có dùng thì chỉ dùng cho những tác vụ cực kỳ cụ thể. Với tôi chỉ có cách đó là hiệu quả
    Thành thật mà nói tôi không hiểu nổi vì sao các công ty lại có thể đẩy mạnh việc sinh code bằng AI đến vậy. Ngay cả ở dự án nhỏ, mức độ hiểu dự án cũng tụt lại rất nhanh

    • Tôi nhớ trước thời AI cũng từng làm việc với những người như vậy. Có bực thật, nhưng vì họ không hiểu đủ thứ mình đang làm nên không thể tạo ra code tốt một cách hiệu quả, thành ra thường bị chật vật về năng suất và cuối cùng vấn đề tự được sắp xếp
      Còn giờ thì coding bằng LLM lại khuyến khích những người không có tò mò và trừng phạt những người suy nghĩ sâu, nên những người như vậy lại có thể trụ được
    • Tôi cũng dùng theo kiểu đó. Chỉ dùng cho những việc cực kỳ cụ thể. Ngay lúc nãy thôi tôi đã nói chuyện với Claude Code suốt 2 tiếng chỉ để sửa 5 dòng code nhưng lại làm thay đổi ý nghĩa rất lớn
      Trong khi đó một người bạn của tôi đang chi 10.000 đô mỗi ngày cho token agent để cố làm ra thứ gì đó. Anh ấy rất thông minh và là cựu dev, nên không phải kiểu loạn trí AI đơn giản
      Tôi vẫn đang cố hiểu chuyện đó. Dĩ nhiên tôi thì không có 10.000 đô
    • Code do LLM sinh ra thường rối rắm và dày đặc một cách không cần thiết
  • Thật sự rất mệt. Từ khi bắt đầu làm việc với LLM, sản lượng của tôi với tư cách là một lập trình viên solo đã dễ dàng tăng 20 lần. Giờ tôi còn hoàn thành được cả những dự án khách hàng mà trước đây nếu làm một mình thì quá tham vọng
    Những tính năng từng bị mắc kẹt hàng tháng trong các codebase cũ, hoặc còn nằm ở giai đoạn lên kế hoạch lâu hơn nữa, giờ đang được đưa vào. Chất lượng tổng thể cũng tăng lên rất nhiều, độ bao phủ kiểm thử đầy đủ hơn và thành thật mà nói là tốt hơn hẳn
    Tôi cũng đang làm các dự án cá nhân với tốc độ điên cuồng. Vai trò đã đảo ngược: tôi đối xử với agent như thể tôi là khách hàng, còn agent thì hành xử như thể nó là tôi. Tất nhiên tôi giống một khách hàng thiên về kỹ thuật hơn, đưa ra định hướng kiến trúc. Tôi dùng hằng ngày các app và công cụ do agent làm ra, và nhờ những công cụ tự làm đó mà tôi đã hủy cả các gói đăng ký SaaS
    Khi nhìn các lời gọi công cụ, tôi thấy mình cần hiểu rõ hơn các công cụ dòng lệnh cốt lõi nên cũng lập kế hoạch học bù mỗi ngày một ít. Tôi cũng đang xem lại các thiết lập cũ cho vim và tmux mà hồi đầu từng nhét vào khi còn chẳng biết gì
    Về lý thuyết tôi có thể giữ năng suất ở mức cũ và đọc thêm sách, nhưng điều đó có vẻ không khả thi. Trái với lời hứa rằng “công việc sẽ giảm đi”, thực tế lại giống như đang ở trong một giai đoạn chuyển đổi khổng lồ nơi năng suất và kỳ vọng đều tăng lên, và Cách mạng Công nghiệp nghe như một phép so sánh khá đúng
    Sự gia tăng kỳ vọng diễn ra theo cả những cách lớn lẫn nhỏ. Agent đánh bóng cách trình bày dữ liệu quá tốt, đến mức giờ tôi gửi những báo cáo gọn gàng, ấn tượng về mặt thị giác mà trước đây sẽ tốn khá nhiều thời gian, như thể đó là điều hiển nhiên
    Nhưng vẫn mệt. Tôi đang nước rút để làm được càng nhiều việc càng tốt trước khi kênh cung cấp Fable theo gói thuê bao chuyển sang chỉ còn API. Tôi cũng không hiểu nổi sao mọi người lại dùng nhiều token đến thế. Dù gần như không ngủ và cho Fable chạy càng nhiều code càng tốt, tôi vẫn còn chưa chạm gần tới giới hạn của gói 20x max
    Tôi cứ tự nhủ rằng khi hạ xuống thì sẽ chậm lại, nhưng giờ đã được kéo dài đến ngày 12 và cửa sổ cũng được reset, nên tôi lại có thêm vài ngày để dọn backlog. Tôi cảm thấy mình phải để đám robot chạy bận rộn suốt đêm để sáng dậy là có thứ xem lại ngay. Việc ra lệnh cho agent bằng điện thoại cũng khiến chính tôi thấy kỳ quặc

    • Cách mạng Công nghiệp đã làm cuộc sống tốt hơn trên quy mô lớn, nhưng với thợ dệt khung đứng từng làm thủ công tại nhà rồi phải chuyển vào nhà máy, làm ra nhiều hơn và lao động cực nhọc cả ngày, thì nó không làm cuộc sống tốt hơn
      Nhìn từ bên ngoài thì điều này nghe khá giống cha tôi, người từng làm thợ máy ở nhà máy xay. Công việc của ông chủ yếu là đứng nhìn máy móc vận hành rồi sửa khi nó hỏng, và 90% thời gian thì mọi thứ chạy ổn
      Khi chuyển từ làm bằng tay sang ngồi canh máy, nó có thể trông thật sự rất tẻ nhạt, và từ góc nhìn đó tôi có thể hiểu sự phản cảm với AI ở đây
    • Tôi có một người bạn tự nhận là nghiện LLM, và cậu ấy gần như kể y hệt. Câu hỏi tôi muốn hỏi nhưng chưa thể hỏi thẳng là thế này: nếu đến mức burnout như vậy thì tại sao lại cảm thấy phải tiếp tục tung ra nhiều dự án cá nhân đến thế?
      Ai cũng có thể đồng ý rằng việc rà soát hàng đống code do AI tạo ra trong công việc là mệt mỏi, nên tôi thắc mắc vì sao lại kéo dài cái trải nghiệm khó chịu đó ra cả ngày
    • Đây là một dấu hiệu nghiện điển hình
    • Nếu lựa chọn là thế này thì thật kỳ quặc. Hoặc là vắt kiệt đến giọt cuối cùng thứ năng suất mà trước đây thậm chí còn không biết là tồn tại, có lẽ vẫn nhận cùng số tiền nhưng burnout nhanh hơn, và phải tranh cãi với một cỗ máy ngu ngốc không biết mệt, không biết nản, cũng chẳng biết thất vọng, lại luôn hụt mục tiêu một chút
      Hoặc là cứ code bằng tay, khi mọi thứ phức tạp thì đứng trước bảng trắng suy nghĩ, và burnout chậm hơn theo nhịp độ nhân văn hơn, như cách ngành kỹ thuật phần mềm đã làm suốt hơn 50 năm qua
      Tôi không hiểu sao đây lại là lựa chọn. Hỏi nghiêm túc nhé, bạn có chút lòng tự trọng nào không? Tôi đoán sẽ có người biện hộ rằng “nhưng sếp tôi mong tôi dùng AI”. Rõ ràng phần lớn chưa từng trải qua burnout thật sự. Khi nó ập đến sẽ là đau đớn khủng khiếp. Đừng biến mình thành máy. Con người không phải máy
  • Tôi không bị burnout, nhưng cũng làm việc khá giống tác giả. Tôi vẫn chưa tạo ra được một quy trình mà việc rà soát code do LLM sinh ra lại nhanh hơn tự viết
    Thật ra chỉ có hai lối thoát khỏi thế tiến thoái lưỡng nan này. Hoặc là mù quáng tin vào thứ được sinh ra, hoặc là tạo ra một bộ unit test khổng lồ một cách bất thường để xác minh mọi kịch bản có thể xảy ra
    Vì thế tôi tự viết business logic, còn giao phần lớn những thứ còn lại cho LLM. Boilerplate cũng thuộc nhóm sau

    • Đó chính là điều nên mong muốn. Cần có các bộ kiểm thử ở mọi cấp độ toàn diện hơn rất nhiều, đến mức con người tự làm hoặc tự duy trì sẽ là phi lý. Bao gồm kiểm thử đơn vị, chức năng, end-to-end toàn phần và hơn thế nữa
      Kiểm thử đối kháng là cách tốt nhất để giữ AI đi đúng quỹ đạo và khiến các thay đổi cần đọc trở nên gọn gàng, dễ xem. Dù là theo kiểu TDD như “hãy viết một bài test thể hiện lỗi này”, hay hậu kiểm kiểu “hãy chứng minh bản vá này sai bằng một bài test mới”, thì đều vậy
      Cách tốt hơn nữa là dùng ngôn ngữ có hệ kiểu mạnh hơn để khóa chặt mọi thứ, nhưng test thì dùng được với bất kỳ ngôn ngữ nào. Nền tảng TDD và tư duy “hãy viết hết test đi” khi làm việc với AI giống như thứ nước sốt bí mật vậy
    • Tôi chỉ đơn giản là đọc code một cách cẩn thận. Rất dễ trượt sang việc cứ chấp nhận đầu ra để tăng tốc, nhưng đọc code là quan trọng
      Những thứ như test, template, một số UI, các phần trang trí thì tôi lướt qua để tiết kiệm thời gian. Nhưng phần lớn code đi vào hệ thống backend thì phải đọc
    • Nếu bạn không thể rà soát nhanh hơn tốc độ tự viết code, thì tự viết mới là đúng
    • Với những người có cảm giác tương tự, đôi khi có thể tự hỏi liệu mình có khiếm khuyết tinh thần gì đó khiến mình không thể uống thứ Kool-Aid ngọt ngào và cứ thế dùng đống rác được sinh ra hay không. Kiểu như có một nét tính cách méo mó nào đó biến mình thành kẻ cố chấp phá hỏng bầu không khí vui vẻ chung
      Cá nhân tôi thấy những người phấn khích nhất với phép màu LLM là những người vốn không biết code. Giờ thì dù không phải code tốt nhất, họ vẫn có thể tạo ra thứ gì đó chạy được. Vì giờ họ đã có thể làm ra code chạy được, họ nghĩ điều đó sẽ giúp mọi người tốt hơn, nhưng lại chẳng biết đống đó có bảo trì được không, thậm chí có phải rác ngay từ đầu hay không
  • Lý do tôi bị burnout với LLM là vì phải đối mặt với việc các model đầu bảng rõ ràng đang bị thiến bớt và hạ cấp một cách thiếu minh bạch
    Chỉ đến khoảng 12 tháng trước thôi, các công ty AI vẫn còn phát cuồng vì việc vắt ra kết quả tốt nhất từ những model bình thường
    Nhưng khi các model hàng đầu tiến bộ, chính những công ty đó giờ đã chuyển sang dồn sức giảm tối đa lượng tính toán, tức chi phí tạo ra mỗi kết quả, miễn là đừng để lộ quá rõ
    Trong 36 tháng qua, độ dốc về chất lượng đầu ra đã tăng theo cấp số nhân, nhưng giờ thì gần như phẳng lì
    Theo tôi, lý do đầu ra bị chững lại không phải vì model không còn giỏi hơn nhiều so với một năm trước. Mà là vì việc tiết kiệm chi phí xử lý khổng lồ cho một tập người dùng bị dồn quá mức đang được ưu tiên hơn mục tiêu làm theo chỉ thị rõ ràng của người dùng và tạo ra kết quả tốt nhất, nhất là khi làm theo chỉ thị đó lại tốn thêm chi phí

    • Dạo này tôi cũng cảm thấy y hệt với các công cụ AI cho người dùng. Gemini và ChatGPT gần đây tệ kinh khủng. Giờ không thể tin tưởng giao cho chúng việc tìm kiếm và suy luận qua nhiều lượt nữa
      Trước đây chúng có thể ở trong chế độ suy nghĩ hơn 7 phút. Ví dụ, nếu bảo “hãy tìm nguồn cho nhận định này”, nó sẽ tự tìm kiếm, phân tích và điều chỉnh truy vấn. Dạo này ngay cả ở chế độ “Pro”, có ép mấy cũng không làm việc quá 30 giây, và chỉ đưa ra câu trả lời chung chung
    • Có thật vậy không? Cũng có thể là giai đoạn “wow, điên thật” ban đầu đã qua, và kỳ vọng đã chạm vào thực tế
    • Cái này trông giống viết lại lịch sử đến mức buồn cười
      Khoảnh khắc Opus 4.5 mới là hồi tháng 11 vừa rồi, và lúc đó coding kiểu agent cùng phần lớn công cụ CLI cho lập trình đã thực sự trở thành lựa chọn hạng nhất. Đó là một bước chuyển mô hình cực lớn. GPT-5 còn chưa ra, và đa số vẫn đang dùng 4o. Những thứ đang có hiện tại vượt 4o rất xa trong mảng coding
    • Tôi không đồng cảm. Có thể kỳ vọng của tôi đã tăng lên, nhưng nếu so thứ mình làm bằng agent một năm trước với bây giờ thì đúng là một thế giới hoàn toàn khác
  • Cảm giác như bị nhốt làm việc với những đồng nghiệp không công khai thù địch, nhưng ngày nào cũng lặp lại cùng một lỗi, phải liên tục cầm tay chỉ việc, và thậm chí còn không thể thực lòng thấy có lỗi
    Việc chúng ta làm việc với máy tính không có nghĩa là sẽ không chịu tổn hại xã hội. Trường hợp này có lẽ còn gần với tổn hại cận xã hội hơn

  • Đây thực sự là lý do khiến tôi muốn bỏ lập trình
    Tôi bắt đầu lập trình vì các bài toán lập trình vốn thú vị. Nhưng nếu bài toán chuyển từ “tìm ra vì sao máy tính cầm tay ở Pháp lại lệch 1 đơn vị” sang “ngăn LLM này spam emoji dễ thương”, thì có lẽ đã đến lúc đổi nghề

    • Nói về phía ngược lại thì áp lực phải tạo ra nhiều đầu ra hơn ở chỗ làm là có thật, nhưng ngoài công việc thì thứ này thực sự rất tuyệt. Nó giảm bớt khâu nghiên cứu và thời gian vốn luôn là rào cản khi bắt đầu dự án cá nhân, nên tôi có thể làm nhiều dự án hơn hẳn trước đây
      Gần đây tôi nghiện nước có ga nên đang tự làm một máy bơm ga liên tục. Đó là cả một bản build hoàn chỉnh với bơm, áp suất, mức nước, quạt làm mát, tất cả đều được ESP32 điều khiển, từ nguồn cấp nước cho tới vòi
      Nó đã giúp tôi phát hiện rất nhiều chỗ sai trong giỏ hàng. Ví dụ như dân homebrew thích dùng ống 8mm, còn hệ thống lọc nước lại dùng 9,5mm. Tôi đã tối ưu từ một phiên bản chỉ có bơm bật/tắt đơn giản và công tắc phao thành thứ gần như một hệ thống PLC hoàn chỉnh. Tôi có được rất nhiều vòng lặp trao đổi như thể đang nói chuyện với “người có kinh nghiệm hơn”. Chỉ cần linh kiện về là tôi có thể lắp trong vòng một giờ và chạy cả phần mềm luôn
      Không kiếm ra tiền nhưng thật sự rất vui
    • Tôi bắt đầu lập trình đơn giản là để tạo ra thứ gì đó. Việc code chỉ là phương tiện để đạt mục đích. Đừng quá bám vào “làm thế nào”, hãy nghĩ nhiều hơn về vì sao và mình muốn tạo ra cái gì
    • Nếu bạn đang làm sản phẩm dùng LLM, phần khó chịu là đến một lúc nào đó bạn sẽ cạn sạch các cần gạt có thể kéo để sửa vấn đề
      Điều tốt nhất bạn làm được là chồng hết lớp hack này lên lớp hack khác để chặn đầu ra không mong muốn, nhưng rốt cuộc nếu LLM đã quyết không muốn làm theo chỉ thị, thì ngoài việc thêm *IMPORTANT* và hy vọng model kế tiếp sửa được, bạn cũng chẳng còn mấy thứ để làm
      Trải nghiệm này gần với việc làm việc với một API bên ngoài mà bạn không kiểm soát được và nó cũng không hoạt động đúng như tài liệu hơn nhiều. Mấy thứ như vậy xưa nay vốn đã là phần gây bực nhất của lập trình, nhưng ít ra trước đây bạn còn có thể reverse-engineer cách triển khai thực tế để lách bug. Giờ thì cái “ranh giới” đó thay đổi ngẫu nhiên mỗi ngày, nên ngay cả chuyện đó cũng không thể
    • Thành thật mà nói, tôi thấy chua chát khi những người từng nói kiểu “tôi không quan tâm vì sao máy tính cầm tay ở Pháp không chạy đúng, tôi chỉ sửa vì được trả tiền” có vẻ như đã được sự phát triển công nghệ chứng minh là đúng
    • Kế toán là cực kỳ cần vì lý do pháp lý và tuân thủ, nên đang rất cần kế toán. Có thể vào làm ngay hôm nay
  • Chỉ mất 5 giây để thêm một style guide đơn giản vào CLAUDE.md hoặc AGENTS.md, hoặc đơn giản viết “cấm emoji”, và như vậy đầu ra của LLM sẽ dễ chịu hơn rất nhiều. Một style guide đơn giản có thêm các từ và cụm từ bị cấm cũng rất hữu ích
    Tất nhiên, những giả định sai thì không được giải quyết theo cách đó. Muốn bắt được chúng thì vẫn phải đọc kỹ và suy nghĩ phản biện theo cách cũ

    • Chuẩn hoàn toàn! Tôi có nên viết giúp mấy file markdown đó cho bạn không?
    • Nhân tiện, khi tôi đối xử với ChatGPT như một pair programmer để trao đổi ý tưởng thiết kế, yêu cầu mã triển khai, và đề xuất refactor, thì nó hoàn toàn không dùng emoji
      Nhưng hễ nhờ phân tích dữ liệu hay mô hình hóa là emoji lại bắn tung tóe khắp nơi
      Nghĩ tới những gì tôi đã thấy trên GitHub trong khoảng một năm qua, tôi sẽ tuyệt đối không bao giờ để LLM tự viết README hay tài liệu dự án mà không có người giám sát