Các báo cáo về cái chết của code đã được phóng đại quá mức
Tin tức chung·Hacker News·1 lượt xem

Các báo cáo về cái chết của code đã được phóng đại quá mức

Reports of code's death are greatly exaggerated

AI Summary

AI hỗ trợ "vibe coding" giúp khởi tạo dự án nhanh hơn, chuyển ngôn ngữ tự nhiên thành code. Tuy nhiên, nó không xóa bỏ được sự phức tạp. Thách thức xuất hiện khi những yêu cầu tưởng chừng đơn giản bằng tiếng Anh lại "lộ" ra sự phức tạp ẩn giấu khi quy mô ứng dụng lớn hơn hoặc thêm nhiều tính năng. Điển hình là trường hợp một ứng dụng viral từng gặp sự cố do độ phức tạp của tính năng live collaboration bị ẩn đi. Các developer cần hiểu rằng AI chỉ là một công cụ hỗ trợ quá trình phát triển lặp đi lặp lại, chứ không thể thay thế việc thấu hiểu và xử lý các vấn đề kỹ thuật sâu sắc. Việc làm chủ sự phức tạp thông qua kỹ thuật **abstraction** hiệu quả vẫn là yếu tố then chốt để xây dựng phần mềm mạnh mẽ và có khả năng mở rộng.

Ngày 21 tháng 3 năm 2026 Một thông số kỹ thuật đủ chi tiết là mã bắt đầu bằng truyện tranh đáng yêu này: Có một sự căng thẳng sâu sắc ở đây: các thông số kỹ thuật tiếng Anh có cảm giác chính xác bằng trực giác cho đến khi bạn học tốt hơn từ cay đắng...

Thông số kỹ thuật đủ chi tiết là mã bắt đầu với bộ truyện tranh đáng yêu này:

image.png

Có một sự căng thẳng sâu sắc ở đây: thông số kỹ thuật tiếng Anh cảm nhận bằng trực giác chính xác cho đến khi bạn học được tốt hơn từ kinh nghiệm cay đắng. (Tất cả đều ở trên khuôn mặt đó biểu thức của khung cuối cùng.)

"Mọi thứ đều mơ hồ đến mức bạn không nhận ra cho đến khi bạn cố gắng làm cho nó chính xác."

– Bertrand Russel

Lập trình, giống như viết, là một hoạt động trong đó người ta liên tục mài giũa những gì họ đang làm như họ làm điều đó. (Bạn sẽ không thể tin được tôi đã viết bao nhiêu bản thảo của bài luận này.)

AI giúp bạn điều này vì nó – ngày càng trở nên nhanh chóng và hiệu quả hơn Tiếng Anh vào mã chạy. Sau đó bạn có thể phản ứng với nó – “di chuyển nút tới đó; làm cho nó xanh hơn" – để dần dần hiểu chính xác hơn những gì bạn muốn.

Đây là lý do tại sao "mã hóa rung cảm" lại là một cụm từ hoàn hảo: bạn tiếp tục hoạt động ở mức mức độ rung cảm ở trình độ tiếng Anh của bạn trong khi phản ứng với các tạo phẩm do AI tạo ra giúp bạn rèn luyện tư duy.

Tuy nhiên, mã hóa rung cảm tạo ảo giác rằng rung cảm của bạn là sự trừu tượng chính xác. Họ sẽ cảm thấy như vậy cho đến khi họ rò rỉ, điều này sẽ xảy ra khi bạn thêm đủ tính năng hoặc có đủ quy mô. Bất ngờ hành vi (lỗi) đó xuất hiện từ mức độ trừu tượng thấp hơn mà bạn không hiểu sẽ lẻn vào và phá hỏng cả ngày của bạn.

Đây là trải nghiệm của Dan Shipper khi anh ấy Ứng dụng soạn thảo văn bản Vibe-coded đã lan truyền rộng rãi rồi ngừng hoạt động . Hóa ra, "cộng tác trực tiếp cực kỳ khó khăn."

"Cộng tác trực tiếp" có cảm giác trực quan giống như một thông số kỹ thuật hoàn toàn chính xác. Tất cả chúng tôi đều đã sử dụng Google Docs, Notion, v.v. nên cảm thấy xác định chính xác. Đó là cực kỳ khó để biết được điều này không phải như vậy.

Lý do duy nhất mà cá nhân tôi biết khác là vì tôi đã cố thêm một trình soạn thảo văn bản cộng tác cho một sản phẩm mà tôi đang thực hiện cách đây 10 năm, và đó là một cơn ác mộng phức tạp bất ngờ.

Việc đó có gì khó khăn? Tôi không nhớ! Đó là một phần của vấn đề! Độ phức tạp có thể cực kỳ nhàm chán, khó chịu khi nghĩ đến và khó nhớ tất cả các chi tiết và trường hợp cạnh. Ví dụ: sơ đồ cổ điển về cách Slack quyết định thời điểm gửi thông báo cho bạn:

image.png

Nhưng đây cũng chưa phải là kết thúc của câu chuyện. Chúng tôi may mắn có được một điều vô cùng công cụ mạnh mẽ để làm chủ sự phức tạp.

Tóm tắt

Bộ não con người có một giới hạn cơ bản. Chúng ta chỉ có thể nghĩ đến 7 (cộng hoặc trừ đi 2) thứ cùng một lúc. Vì vậy cách duy nhất để nghĩ về nhiều hơn 7 điều là nén nhiều thứ thành một thứ duy nhất. Hạnh phúc thay, chúng ta có thể làm được điều này đệ quy, vô thời hạn, đó là lý do tại sao con người có thể làm chủ được độ phức tạp không giới hạn. Bước nén đó được gọi là trừu tượng.

Mục đích của sự trừu tượng hóa không phải là mơ hồ mà là để tạo ra một ngữ nghĩa mới mức độ mà người ta có thể hoàn toàn chính xác.

— Edsger Dijkstra

Ví dụ, Sophie Alpert đã sử dụng sự trừu tượng thông minh để cấu trúc lại sơ đồ Slack thành sơ đồ đơn giản hơn nhiều:

Đúng vậy, về cơ bản, trình soạn thảo văn bản cộng tác rất phức tạp, nhưng đó chỉ là có nghĩa là chúng ta liên tục tìm kiếm những khái niệm trừu tượng tốt hơn để giúp chúng ta nắm vững sự phức tạp, như ReactJS hoặc TailwindCSS đã làm trong các miền tương ứng của chúng.

AGI

Nhưng hãy chơi trò này trong 1, 2, 5, 10, 100 năm nữa nhé. AI đang nhận được tốt hơn/nhanh hơn/rẻ hơn với mức giá đáng kinh ngạc, nhưng bất kể khi nào, trừ khi bạn tin vào phép thuật, chỉ là vấn đề thời gian cho đến khi chúng ta đạt đến điểm mà trí thông minh của máy không thể phân biệt được với trí thông minh của con người. Chúng tôi gọi đó là điểm AGI.

Có vẻ như thế giới AGI là một thế giới rung cảm. Nếu ai có đủ khả năng 100 Những thiên tài cấp Karpathy với mức lương 1000 đô la / tháng, tại sao lại phải bận tâm với bất kỳ điều gì? chi tiết rắc rối? Chỉ cần nhờ đội quân Karpathy xử lý chúng giúp bạn.

Đối với tôi đây là một trò đùa. Đây rõ ràng chỉ là điều bạn nghĩ trong trừu tượng, trước khi công nghệ này xuất hiện.

Nếu bạn nói với tôi rằng tôi đã tiếp cận được mức độ thông minh đó thì chẳng có gì cả một phần trong tôi sẽ dùng nó để vận chuyển thêm nữa. bạn đang hoảng loạn à đùa à?? Tất nhiên là không.

Tôi nghĩ chúng tôi đang bối rối vì chúng tôi (không chính xác) nghĩ rằng mã đó chỉ dành cho phần mềm nó tạo ra. Đó chỉ là một phần về điều đó. Bản thân mã này cũng là một hiện vật quan trọng trung tâm. Khi làm đúng, đó là thơ. Và tôi không chỉ nói điều này bởi vì tôi mắc Hội chứng Stockholmn hoặc có lợi ích đặc biệt đối với nó – kiểu như một tay đua ngựa có thể đối mặt với việc phát minh ra ô tô.

Tôi nghĩ điều này sẽ rõ ràng hơn nhiều nếu bạn so sánh với việc viết. Phải không chết tiệt nói rằng không ai nói về "văn viết rung cảm"?

Chúng tôi không nhầm lẫn với việc viết lách vì chẳng có gì thần bí cả các câu đúng về mặt cú pháp giống như cách chạy mã. Không ai ở ngoài đó tuyên bố rằng ChatGPT đang đưa các tiểu thuyết gia vĩ đại hoặc nhà báo mất việc. Tất cả chúng ta đều biết điều đó là vô nghĩa.

Cho đến khi chúng ta có được AGI. Sau đó, theo định nghĩa, máy móc sẽ viết không bị trượt và nó sẽ rất vinh quang.

Tình huống tương tự cũng đúng với việc viết mã. AI sản xuất (ngày càng ít hơn) mã chết tiệt. Tất cả chúng ta đều biết điều này. Tất cả chúng ta đều giải quyết được hạn chế này. Chúng tôi sử dụng AI bất chấp mã xấu.

Như Simon Willison nói, AI sẽ giúp chúng tôi tạo ra mã tốt hơn. Và khi chúng ta có AGI thì việc này sẽ dễ dàng.

Khi chúng ta có AGI, những việc đầu tiên mà chúng ta sử dụng nó sẽ là việc khó khăn nhất của chúng ta các vấn đề trừu tượng Chúng tôi sẽ sử dụng nó để giúp chúng tôi tạo ra sự trừu tượng tốt hơn để chúng ta có thể hiểu rõ hơn và làm chủ được sự phức tạp.

Bạn có thể nghĩ rằng nhu cầu về mã tốt sẽ không còn nữa khi AI ngày càng thông minh hơn, nhưng đó không phải là như dùng ChatGPT để viết cẩu thả hơn. Khi chúng tôi có được AGI, chúng tôi sẽ sử dụng chúng để tạo ra trừu tượng tốt hơn, thư viện soạn thảo văn bản cộng tác tốt hơn, v.v.

Ảnh chụp màn hình 2026-03-21 lúc 18.48.14@2x.png

Nếu bạn biết bất kỳ đoạn mã nào khác có thể nắm vững tất cả sự phức tạp đó như đẹp quá, tôi rất muốn xem nó.

Các báo cáo về cái chết của mã bị phóng đại quá mức

Có vẻ như 99% xã hội đều đồng ý rằng mã đã chết. Mới hôm qua thôi tôi đã nghe podcaster Sam Harris của mọi người một cách tự tin nói về cách mọi người đồng ý viết mã đã chết và không ai nên học cách viết mã nữa.

Thật là buồn. Cũng giống như việc nghĩ rằng việc kể chuyện đã chết ở phát minh của máy in. Không, đồ ngốc, mã chỉ mới bắt đầu thôi. AI đang diễn ra trở thành một lợi ích cho việc viết mã.

Thay vì coi nghĩa vụ sử dụng các ký hiệu hình thức là một gánh nặng, chúng tôi nên coi sự tiện lợi của việc sử dụng chúng như một đặc ân: nhờ có chúng, học sinh có thể học làm những việc mà ngày trước chỉ có thiên tài mới có thể đạt được.

Khi tất cả được nói và kể lại, "sự tự nhiên" mà chúng ta sử dụng tiếng mẹ đẻ của mình lưỡi nói lên sự dễ dàng mà chúng ta có thể sử dụng chúng để thực hiện những tuyên bố vô nghĩa không rõ ràng.

– Edsger W.Dijkstra, Về sự ngu xuẩn của "lập trình ngôn ngữ tự nhiên"

Có hai cách để xây dựng một thiết kế phần mềm: Một cách là làm cho nó trở nên như vậy. đơn giản là rõ ràng không có thiếu sót nào, và cách khác là thực hiện nó phức tạp đến mức không có thiếu sót nào rõ ràng.

Tony Hoare, h/t Paul Buchheit

Lượng ý nghĩa được nén vào một không gian nhỏ bằng các dấu hiệu đại số là một hoàn cảnh khác tạo điều kiện thuận lợi cho những lý luận mà chúng ta quen thuộc tiếp tục nhờ sự trợ giúp của họ."

– Charles Babbage, được trích dẫn trong Bài giảng Giải thưởng Turing của Iverson, được trích dẫn trong Sự ngắn gọn là sức mạnh của Paul Graham

Tác giả: stevekrouse

#discussion