1 điểm bởi GN⁺ 2 giờ trước | 1 bình luận | Chia sẻ qua WhatsApp
  • Phát triển Android bắt đầu từ một khóa học miễn phí được biết đến trong lớp Java năm 2014 và ứng dụng việc cần làm đầu tiên, với động lực đến từ trải nghiệm phần mềm trong lòng bàn tay chạm tới đời thực
  • 10 năm sự nghiệp là quãng thời gian xác nhận mục đích của công nghệ khi bảo trì các ứng dụng mang lại lợi ích thực cho người dùng như ứng dụng hẹn hò, khả năng tiếp cận thuốc men và hỗ trợ du lịch
  • Qua các khóa học, hackathon, công việc đầu tiên và Droidcon NYC, tác giả cảm nhận rằng điều còn lại lâu hơn thành phẩm chính là sự kết nối với con người và việc truyền lại tri thức công khai
  • LLM đã cải thiện tới mức có thể cung cấp mã biên dịch được và cả review, nhưng lại làm suy yếu sự thấu hiểu hình thành từ kiểu khám phá, phản biện, bỏ phiếu và thử-sai như trên Stack Overflow
  • Phát triển phần mềm là một nghệ thuật và nghề thủ công không thể bị thay thế chỉ bằng tự động hóa các công việc lặp lại, và nên là hoạt động con người cùng nhau tạo ra và chia sẻ vì con người

Điều gì đưa tôi đến với phát triển Android

  • Phát triển Android bắt đầu từ một khóa học trực tuyến miễn phí do một bạn cùng lớp chia sẻ trong giờ Java ở đại học năm 2014, và mục tiêu đầu tiên là tạo một ứng dụng danh sách việc cần làm có lưu trữ cục bộ
  • Khoảnh khắc chạy ứng dụng hoàn chỉnh trên điện thoại và cho bố mẹ xem vẫn được nhớ như “khoảnh khắc bóng đèn bật sáng”, vì đó là phần mềm thực sự có thể cầm trên tay và trực tiếp tương tác, nên mang ý nghĩa rất mạnh
  • Ứng dụng luôn hiện diện trong túi như một công cụ giúp sắp xếp và nâng cao năng suất, và qua trải nghiệm này, tác giả cảm nhận rõ rằng mục đích của công nghệ là cung cấp những công cụ tạo tác động tích cực cho con người
  • Năm 2018, tác giả trực tiếp làm việc với một ứng dụng hẹn hò nơi sau này gặp người vợ của mình, qua đó trải nghiệm trực tiếp hơn tác động của phần mềm lên đời thực
  • Trong 10 năm sau đó, khi mài giũa năng lực với vai trò lập trình viên Android, tác giả đã bảo trì những ứng dụng mang lại lợi ích thực cho người dùng như giúp tìm người đặc biệt, tăng khả năng tiếp cận thuốc men và hỗ trợ du lịch

Những con người đã tạo nên hành trình phát triển

  • Điều còn lại lâu hơn chính bản thân ứng dụng là sự kết nối với những con người đã làm nên các ứng dụng ấy
  • Các khóa học và tri thức công khai

    • Mục tiêu ban đầu là hấp thụ càng nhiều thông tin càng tốt, nên hằng tuần tác giả đều theo dõi bài giảng và học nội dung Android mà giáo sư giảng dạy
    • Tác giả cũng học một khóa khác nơi các Googler hướng dẫn cách làm ứng dụng thời tiết, và say mê đến mức tranh thủ cả thời gian giữa các tiết học lẫn giờ nghỉ trưa để làm ứng dụng
    • Tri thức sâu sắc của những con người phía sau máy quay và thái độ sẵn sàng chia sẻ công khai của họ đã để lại ấn tượng mạnh
  • Hackathon và xây dựng đội nhóm

    • Vài năm sau đó tiếp tục là quãng thời gian luyện tập bằng cách tự tay xây dựng, đồng thời tham dự hơn 10 hackathon và kết nối với hàng trăm kỹ sư phần mềm tương lai
    • Tác giả cùng bạn bè đi xe 2 đến 8 tiếng, gần như không ngủ suốt 3 ngày để làm các ứng dụng mạng xã hội, trình theo dõi thú cưng, trò chơi CTF dùng thẻ NFC và nhiều thứ khác
    • Dù phải cầm cự bằng caffeine và tranh cãi về tech stack, phần thưởng lớn nhất vẫn là tiếng cười, tình bạn và niềm tự hào vì đã cùng nhau tạo ra một thứ gì đó như một đội
    • Làm ra cái gì hay có giành giải hay không đều không quan trọng; bản thân trải nghiệm đã là phần thưởng
  • Công việc đầu tiên và RxJava

    • Sau khi tốt nghiệp, tác giả bắt đầu ngày đầu tiên với vai trò lập trình viên Android chuyên nghiệp tại một công ty digital marketing, và được đồng nghiệp ngồi cạnh hỏi “bạn biết gì về RxJava?”
    • Vì hoàn toàn không biết RxJava nên tác giả bối rối, nhưng người đồng nghiệp ấy không phán xét mà giải thích lập trình phản ứng, bối cảnh của ứng dụng cả hai sẽ cùng làm, và cách để nhanh chóng bắt kịp
    • Hai người trở thành những đồng nghiệp mang tiếng cười đến văn phòng, đồng thời vẫn giữ niềm đam mê sâu sắc với công việc và sự trưởng thành
  • Droidcon NYC và việc hoàn trả tri thức

    • Chính người đồng nghiệp đó đã đưa tác giả đến Droidcon NYC, hội nghị Android đầu tiên, và môi trường có hàng trăm kỹ sư cùng chung một mối quan tâm hẹp với hàng chục diễn giả đã tạo ảnh hưởng lớn
    • Hình ảnh các diễn giả tự nguyện chia sẻ tri thức đã trở thành động lực khiến tác giả muốn chia sẻ chuyên môn của mình với thế hệ kỹ sư Android tiếp theo
    • Việc tìm kiếm cơ hội giúp đỡ kỹ sư khác và truyền tiếp về phía trước những gì mình từng nhận được đã trở thành một nguyên tắc quan trọng trong sự nghiệp

Cách làm phần mềm mà LLM hứa hẹn và trải nghiệm thực tế

  • Khi LLM trở nên phổ biến, lời hứa đơn giản rằng “giờ đây không cần học code nữa, chỉ cần nhập điều mình muốn vào prompt là mã sẽ được tạo ra” đã đe dọa cách phát triển phần mềm truyền thống
  • Ban đầu tác giả hào hứng với khả năng của công nghệ mới, nhưng trong thực tế sử dụng, nó đề xuất những phương thức không tồn tại, tạo ra lỗi hiển nhiên, hoặc trong trường hợp tệ nhất là sinh ra mã thậm chí không biên dịch được
  • Sau lời hứa rằng nó sẽ ngày càng tốt hơn, khi dùng lại thì quả thực nó đã cải thiện: viết được mã có thể biên dịch, phân tích stack trace để đề xuất cách sửa và thậm chí còn review code
  • Nhưng năng lực được cải thiện ấy đồng thời cũng làm cạn kiệt trải nghiệm mang tính con người
  • Mỗi khi có điều chưa biết, tác giả bắt đầu hỏi AI và dựa vào câu trả lời đầu tiên có vẻ hoạt động để đạt mục tiêu, thay vì như trước đây học bằng cách lần theo quá trình giải quyết mà một người từng gặp cùng vấn đề đã chia sẻ công khai trên Stack Overflow
  • Trên Stack Overflow không chỉ có sự trợ giúp đơn thuần mà còn có những phản hồi bác bỏ và thách thức các giả định; thông qua tìm kiếm, rà soát và các lá phiếu của cộng đồng, người ta có thể xem giải pháp nào được tán thành hay phản đối để hiểu tận gốc vấn đề và cách giải

Tự động hóa làm suy yếu việc học và cộng tác

  • Kỹ sư vốn yêu thích tự động hóa, nhưng lĩnh vực mà tự động hóa hoạt động tốt nhất là những công việc vụn vặt và lặp đi lặp lại
  • Khi cần tạo ra thứ gì đó, nếu giao phó cho máy móc thay vì dùng kỹ năng đã mài giũa suốt 10 năm, năng lực tư duy phản biện cần thiết để xây dựng phần mềm bền bỉ và sống lâu có thể suy yếu
  • Cũng có quan điểm cho rằng vì LLM viết mã rất nhanh nên con người có thể suy nghĩ phản biện hơn về hệ thống, nhưng như vậy rất dễ bỏ lỡ thử và sai, phần cốt lõi của việc học phát triển phần mềm
  • Thử và sai không chỉ là xem ứng dụng chạy hay crash, mà là quá trình thử nhiều cách để tìm ra kiến trúc, thư viện, pattern và style phù hợp nhất để đạt mục tiêu
  • Ngay cả phản hồi về lời giải cũng sẽ biến mất nếu thay vì ngồi đối diện đồng nghiệp để bàn về lựa chọn triển khai và các trade-off, ta lại đi hỏi một hộp đen; khi đó sẽ không còn những cuộc trò chuyện dựa trên điều gì thực sự hiệu quả hay không hiệu quả trong dự án thật
  • Thảo luận về trade-off thường không phải lý thuyết, mà dựa trên trải nghiệm trực tiếp của người khác, và chính những cuộc trò chuyện như thế làm cho phán đoán triển khai trở nên sâu sắc hơn

Phần mềm vì con người

  • LLM là cỗ máy dự đoán, được định nghĩa là bộ sinh văn bản và hệ thống thống kê được huấn luyện trên sự tận tâm lâu dài của những kỹ sư đã chọn học hỏi và xây dựng ở nơi công khai
  • Việc xây dựng công khai là hành động không giam hãm công nghệ, mà tạo ra những ví dụ thực tế để các kỹ sư trẻ có thể khám phá, thấu hiểu và học hỏi
  • LLM không cùng cười khi mã không biên dịch được, cũng không nuôi dưỡng mức độ thấu hiểu phần mềm đủ để có thể hào hứng giải thích khi ai đó hỏi “cái này hoạt động thế nào?
  • Trên hết, nó không thể tham gia vào niềm vui cùng quay sang mỉm cười và nói “chúng ta đã làm ra thứ này
  • Thói quen kết nối với con người, bộc lộ sự mong manh, chia sẻ khó khăn, rồi sau khi được giúp đỡ lại chia sẻ tiếp qua bài blog hoặc bài nói đã bị suy yếu bởi việc dùng AI, nhưng cần được khôi phục lại
  • Phát triển phần mềm là một nghệ thuật và nghề thủ công đòi hỏi sự tận tâm, kiên nhẫn và một cộng đồng vững mạnh, và phải là thứ do con người tạo ra vì con người
  • Nếu trải nghiệm xây dựng cùng AI thực sự là tương lai, thì tác giả đi đến kết luận rằng trong tương lai ấy, bị bỏ lại phía sau cũng không sao

1 bình luận

 
Ý kiến trên Hacker News
  • Những bình luận chia sẻ các trải nghiệm trái ngược về việc không thuộc về cộng đồng lập trình ở đây đã được đề cập khá tốt, nhưng vẫn còn một điểm khác cần nghĩ tới
    Chúng ta cần nhớ đến những người ở hạ nguồn của toàn bộ phần mềm này, những người mà có thể chúng ta không trực tiếp trò chuyện cùng. Không nhất thiết chỉ là “người dùng”, vì cũng có nhiều phần mềm dành cho nhà phát triển, nhưng dù vậy thì người dùng vẫn cần được cân nhắc
    Việc giao chất lượng phần mềm cho máy ép mã xác suất đang làm suy giảm mạnh chất lượng phần mềm được đưa ra thế giới. Ngay cả trước thời LLM, đã có những vấn đề như sai sót của con người hay các động cơ tài chính méo mó, và giờ chỉ là chồng thêm lên trên. Khi triển khai phần mềm chất lượng thấp và thù địch với người dùng, con người thực sự sẽ phải chịu những tổn hại lớn nhỏ khác nhau. Sự trượt dần sang AI tạo sinh “không thể tránh khỏi” này gây hại cho mọi người mà nó chạm tới, từ nhà phát triển, người dùng cho tới nhà đầu tư. Chỉ vì thiệt hại xuất hiện ở những thời điểm khác nhau, theo những cách khác nhau và diễn ra từ từ nên người ta dễ phớt lờ, chứ nó thực sự đang xảy ra
    “AI” là tác hại. Cứ để tôi bị bỏ lại phía sau

    • Tôi thực sự không biết liệu nhận định rằng giao chất lượng cho “máy ép mã xác suất” sẽ khiến chất lượng phần mềm lao dốc có đúng hay không, và có lẽ bạn cũng khó mà chắc chắn được. Hiện giờ tất cả vẫn gần như chỉ là cảm nhận
      Với tư cách là người vận hành vài dự án cá nhân, tôi có thể nói rằng chất lượng đã được cải thiện một cách khách quan nhờ dùng AI để xây dựng pipeline CI tử tế, mở rộng phạm vi kiểm thử và thiết kế kiến trúc tốt hơn. Trước đây tôi không đủ nguồn lực để đầu tư vào việc gia cố như vậy, nhưng AI đã khiến điều đó trở nên khả thi
      Tất nhiên bạn có thể bảo rằng mã của tôi tệ và kiểm thử cũng chẳng ra sao, nhưng như vậy có vẻ là đã chốt sẵn kết luận. Với 25 năm kinh nghiệm trong ngành, tôi có thể nói nhận định đó là sai. Dù vậy, không ai biết codebase ở mức trung vị sẽ trở thành thế nào. Có thể tôi là trường hợp đặc biệt chăm chỉ. Kỷ nguyên coding kiểu agent mới chỉ khoảng 6–12 tháng, nên vẫn phải tạm hoãn phán đoán
    • Tôi đồng ý rằng phần mềm do LLM tạo ra có khả năng cao sẽ tác động tiêu cực đến cuộc sống của con người. Ngược lại, cũng sẽ có rất nhiều phần mềm mà trước đây không thể tạo ra nay sẽ xuất hiện
      Với một số mục đích sử dụng, phần mềm tệ vẫn có thể tốt hơn là không có gì. Xét tổng thể thì đây sẽ là điều tốt hay xấu vẫn rất khó dự đoán
    • Nếu nhìn theo kiểu “AI là tác hại”, thì lập trình cấu trúc, compiler, lập trình hướng đối tượng, sinh mã và kỹ thuật agent cũng đều có thể bị xem là tác hại
      Điểm chung của những thứ này là chúng đều là công cụ mà người lười biếng có thể dùng như cây gậy chống để tạo ra thứ mã chạy tạm được nhưng có vấn đề. Lười biếng là một lựa chọn, và lựa chọn là thứ do con người có ý chí và trách nhiệm đưa ra
    • Tôi hoàn toàn đồng ý rằng phần mềm chất lượng thấp và thù địch với người dùng gây tổn hại cho người thật
      Nếu chúng ta đang dùng công cụ AI để làm ra phần mềm tệ hơn với tốc độ nhanh hơn, thì cần xem lại cách sử dụng. Nếu dùng thứ này mà không thể cung cấp phần mềm tốt hơn thì tôi không hiểu rốt cuộc dùng nó để làm gì
    • Không có bằng chứng nào cho thấy chất lượng đã đi xuống. Thậm chí còn gần như ngược lại
      Tôi đã thấy các công cụ review code bằng AI cực kỳ hiệu quả trong việc bắt ra những lỗi lẽ ra đã được triển khai
  • Trải nghiệm lập trình của tôi khác tác giả quá nhiều đến mức tôi tự hỏi mình đã bỏ lỡ điều gì. Tôi luôn lập trình một mình, và không nhớ nổi lần nào từng có một cuộc trò chuyện sâu sắc về lập trình, dù là online hay offline. Nghe có vẻ như một điều rất thú vị và hào hứng, nhưng tiếc là tôi chưa từng có cơ hội đó
    Với tôi, AI là thứ lần đầu tiên cho phép tôi nhận được một dạng ý kiến về những vấn đề hay tình huống cụ thể mà tôi gặp phải. Tôi có thể hỏi rất cụ thể đâu là cách tiếp cận tốt nhất cho thứ mình đang làm, rồi đọc và xem xét câu trả lời trước khi quyết định sẽ đi theo hướng nào. Tôi vẫn thường xuyên nhận được những câu trả lời vô lý, nhưng ngay cả khi đó nó cũng giúp tôi nghĩ sâu hơn về cách tiếp cận vấn đề bằng cách tự hỏi “điều AI vừa nói có đúng không?”

    • AI giống như kết hợp Google với gỡ lỗi bằng con vịt cao su màu vàng
    • Trong thời gian dài, cộng đồng Android đã rất gắn bó và liên tục có những cuộc trò chuyện như vậy cả online lẫn offline. Tác giả bài gốc cũng là một người đóng góp khá tích cực
      Đáng tiếc là Twitter trước khi bị mua lại từng là trung tâm, và từ sau đó tôi cảm thấy cộng đồng không còn như xưa nữa
    • Tôi cũng từng như vậy nên đã bắt đầu tự mở workshop, và điều đó thực sự rất tuyệt, mỗi lần đều học được rất nhiều. Nếu muốn gặp gỡ mọi người quanh bất kỳ chủ đề nào, hãy tự tổ chức workshop
    • Cần liệt kê và cân nhắc các hiệu ứng bậc hai. Góc nhìn kiểu bạn đồng hành này có thể chỉ là một trong nhiều góc nhìn, nhưng nó rất mạnh
    • Vấn đề với AI độc quyền là các công ty như Anthropic, Google và OpenAI thu được nhiều lợi ích hơn từ việc người dùng sử dụng AI so với chính người dùng
      Những công cụ như PostgreSQL, GCC, Git, HTTP và Emacs không “thu được” gì chỉ vì được sử dụng. Chúng có thể trở nên phổ biến hơn và nhận được nhiều đóng góp hơn, nhưng chỉ đến vậy thôi. Càng dùng Claude nhiều thì Anthropic càng giàu hơn, và càng dễ đứng ở vị trí quyền lực để thống trị việc lập trình của thế giới. Vì vậy, dù chúng ta có thích AI độc quyền đến đâu, vẫn cần nghĩ lại xem mình đang trao đi điều gì để đổi lấy nó. Đó không chỉ là 200 đô la mỗi tháng
  • Có một câu của Mario Savio khi cuộc cách mạng công nghiệp đạt đỉnh điểm.
    Sẽ có lúc sự vận hành của cỗ máy trở nên quá ghê tởm, trái tim đau đớn đến mức bạn không thể tham gia, thậm chí không thể tham gia một cách thụ động. Khi đó, bạn phải đặt cơ thể mình lên những bánh răng, bánh xe, đòn bẩy và mọi bộ phận của nó để buộc nó dừng lại. Và phải cho những kẻ vận hành và sở hữu cỗ máy đó biết rằng nếu chúng ta không được tự do thì cỗ máy cũng sẽ không thể vận hành chút nào — ý là như vậy.
    Khi đó máy móc cũng đã làm rất nhiều việc, nhưng chúng ta vẫn đang hoạt động ổn. Rốt cuộc cái này cũng sẽ trở thành một dạng sử dụng công cụ, và có lẽ sẽ đưa trí thông minh của con người lên một đỉnh cao khác.

    • Khó mà đồng ý với ý “đưa trí thông minh của con người lên một đỉnh cao khác”. Hiện không thấy tín hiệu nào cho thấy trí thông minh của con người đang ở gần đỉnh cao lịch sử.
      Tri thức của nhân loại thì có thể, nhưng không phải trí thông minh. Xét trên bình diện tập thể, chúng ta ngu ngốc và đang ngày càng ngu ngốc hơn, và xu hướng lười biếng, thiếu suy nghĩ do AI tạo ra sẽ chỉ tăng tốc dòng chảy đó.
    • Tôi không hiểu vì sao phải khuyến khích trí thông minh. Nếu ai cũng “thông minh” thì có gì khác đâu? Cùng lắm ta cũng chỉ sống khỏe mạnh trên tảng đá này khoảng 50 năm.
      Tôi cũng nghĩ mình tương đối “thông minh”, nhưng thấy khái niệm đó bị thổi phồng quá mức. Tôi muốn sống ngu ngơ và không lo nghĩ. Muốn đạp xe, bắn tên lên trời, ăn escargot, rồi đến lúc thì chết trong giấc ngủ. Nhưng thực tế thì vẫn phải đi làm và tìm hiểu viện dưỡng lão.
    • Những công cụ trước đây đã giải phóng chúng ta khỏi lao động tay chân có đưa năng lực thể chất của con người lên một đỉnh cao khác không?
    • Câu đó vốn không nói về công nghiệp hóa tự thân mà là về việc không đồng lõa. Cỗ máy là phép ẩn dụ cho hệ thống, trong bối cảnh thập niên 1960.
    • “Chúng ta” ở đây là ai? Bạn có trực tiếp vận hành máy móc trong nhà máy không? Bạn có biết người điều khiển máy vào năm 1900 cảm thấy thế nào không?
      Dù sao thì sự thay thế mang tính cơ giới và sự thay thế tư duy là hai thứ không thể so sánh, vậy mà những bình luận thân-AI hời hợt nhất lại hay nổi lên đầu.
  • Bài viết này khiến tôi ngộ ra nhiều điều. Tôi nghĩ mình có thể hiểu nỗi đau của tác giả, và đúng là đã cảm nhận rất rõ khi đọc. Điều hơi bất ngờ là chính “con người” đã tạo nên khác biệt, và tôi nhận ra việc bản thân hầu như chưa từng có trải nghiệm đó có thể đã ảnh hưởng lớn đến cách tôi nhìn công nghệ này.
    Với tôi, việc làm phần mềm phần lớn là một quá trình cô độc, và là thứ tôi ám ảnh hơn rất nhiều so với những người xung quanh. Tôi cũng không sống ở khu vực thiên về công nghệ, cũng không ở trong môi trường có thể trò chuyện nhiều với những người hiểu sâu về lập trình, kỹ nghệ phần mềm hay AI. Tôi cũng từng phải học công nghệ mới hay ngôn ngữ mới như tác giả, nhưng không phải nhờ sự giúp đỡ của các lập trình viên giàu kinh nghiệm hơn, mà là tự học một mình ở nhà.
    LLM đã đặt chúng ta vào một tình huống nơi nhiều điều cùng đúng một lúc, và để tiến lên phía trước, ta phải tìm cách điều chỉnh và giải quyết điều đó. Bạn có thể học được khi dùng LLM, mà cũng có thể không học được gì; điều đó là kết quả của cách tiếp cận, nhu cầu và ý chí của người dùng. Dùng LLM, cũng như hầu hết mọi thứ khác, có mức độ thành thạo, và mức độ thành thạo của người dùng ảnh hưởng đến nhận thức của họ về công nghệ cũng như cách những người xung quanh nhìn nhận nó. Người dùng non tay tạo ra nhiều cảm xúc tiêu cực hơn.
    Có người thích tự tay làm những việc mà máy giỏi làm, nên không muốn máy làm thay; cũng có người ghét những việc đó nên muốn máy làm giúp. Có lúc trong năm nay tôi nhận ra mình thích xây dựng hệ thống, thiết kế và giải quyết vấn đề hơn nhiều so với bản thân việc lập trình.
    Phát triển phần mềm là nhiều thứ bị gộp vào với nhau, nên nếu nói như thể nó là một thứ duy nhất thì chỉ càng rối hơn. Có người muốn tự nghĩ ra logic của ứng dụng rồi để LLM viết mã, có người lại muốn LLM nghĩ ra lời giải, hiện thực hóa và kiểm thử luôn. Đây là hai kiểu người rất khác nhau với mục tiêu và mong muốn khác nhau. Khi ai đó nhìn vào Claude hay ChatGPT, họ có thể đang thấy một thứ hoàn toàn khác với thứ bạn thấy.

    • Tóm tắt quá hay. Tôi cũng cùng phe. Tôi hầu như không có ai để trao đổi ý tưởng hay brainstorm về các chi tiết của mã.
      Phần lớn thời gian tôi phải đào sâu sách và bài viết trên mạng để tự xây dựng mô hình tinh thần của riêng mình về cách mọi thứ vận hành, và quá trình đó khá hữu ích.
      Giờ AI đã trở thành một công cụ để học, một công cụ cho thấy cách làm đúng, và giải thích chi tiết điều gì đã xảy ra. Tôi có thể đặt câu hỏi, được chỉ ra sai lầm, qua lại giữa nhiều cách hiện thực khác nhau và cuối cùng trở thành lập trình viên giỏi hơn. Như nhiều người đã nói, AI có ý nghĩa khác nhau với mỗi người. Với tôi, nó là công cụ trao quyền, khai sáng và khiến mình khiêm tốn hơn. Luôn có quá nhiều thứ để học và quá ít thời gian, nhưng giờ cảm giác đó không còn tuyệt đối như trước nữa.
  • Vấn đề của AI độc quyền là các công ty như Anthropic, Google, OpenAI thu được nhiều lợi ích hơn từ việc sử dụng AI so với chính người dùng. Những công cụ như PostgreSQL, GCC, Git, HTTP, Emacs không “thu được” gì khi bạn dùng chúng. Chúng có thể trở nên phổ biến hơn và nhận thêm đóng góp, nhưng chỉ đến thế.
    Bạn càng dùng Claude nhiều thì Anthropic càng giàu hơn, và càng dễ đứng vào vị thế quyền lực có thể thống trị việc lập trình của thế giới. Vì vậy dù bạn có thích AI độc quyền đến đâu, chúng ta vẫn nên nghĩ lại xem mình đang nhường cho nó cái giá nào. Đó không chỉ là 200 USD mỗi tháng.
    Tôi ủng hộ mô hình mở và agent mã nguồn mở, nhưng không muốn trao thêm quyền lực cho các tập đoàn khổng lồ. Nghĩ đến việc 5 năm nữa các đại công ty này có thể có quyền lực lớn hơn với chúng ta đến mức nào trong kỹ nghệ phần mềm là đã thấy đáng sợ. Ví dụ như bắt bạn trả thêm tiền nếu không muốn thấy quảng cáo chen giữa các prompt của Claude Code, hoặc trả thêm nếu không muốn mã được sinh ra cài quảng cáo vào trong ứng dụng. Chúng ta có thực sự muốn trải nghiệm tệ hại mà internet toàn cầu đang phải chịu hiện nay bị cắm sâu vào quy trình kỹ nghệ phần mềm không?

    • Khi cơ sở dữ liệu mới xuất hiện vào thập niên 70~90, từng có rất nhiều công ty cơ sở dữ liệu độc quyền như Oracle, IBM, Sybase, SQL Server, nhưng giờ cơ sở dữ liệu mã nguồn mở mới là lựa chọn mặc định.
      Mọi người đang nhìn vào trạng thái hiện tại của LLM rồi đưa ra đủ kiểu dự đoán cực đoan, nhưng chẳng ai biết thị trường sẽ diễn biến thế nào.
      Năng lực lập trình hay văn hóa vibe coding cũng giống giai đoạn đầu của xe điện. Xe điện có những vai trò phù hợp hơn động cơ đốt trong, nhưng để hoàn toàn làm cùng một việc thì phải mất thêm ít nhất 10 năm nữa. Trong thời gian đó cũng có rất nhiều người hạ thấp xe điện như một món đồ chơi lạ lẫm, phi thực tế, đắt đỏ và nguy hiểm vì thiếu hạ tầng và công nghệ còn non.
      Hiện giờ hào lũy thực sự có vẻ chỉ là nhu cầu trung tâm dữ liệu, nhưng cái đó rồi cũng sẽ mở rộng quy mô và trở thành hàng hóa phổ thông, còn sản xuất RAM cũng sẽ bắt kịp.
  • Hầu hết con người tìm thấy mục đích và ý nghĩa trong công việc. Xưa nay vẫn vậy. Nếu loại bỏ ý nghĩa khỏi cuộc sống của con người trên quy mô lớn thì bạn nghĩ chuyện gì sẽ xảy ra? Chắc chắn sẽ không đẹp đẽ gì

    • Vấn đề không phải là loại bỏ ý nghĩa. Bất kỳ người bình thường nào biết suy nghĩ cũng có thể tự tìm việc để lấp đầy cuộc sống của mình. Thực ra với đa số người, công việc còn cản trở điều đó hơn
      Vấn đề thực sự là mọi thứ bắt đầu trở nên “thú vị” từ lúc bạn loại bỏ tiền lương cần thiết đối với toàn bộ giai cấp vô sản
    • Khi bạn loại bỏ ý nghĩa khỏi cuộc sống con người trên quy mô lớn, thứ xuất hiện sẽ là những câu chữ rác kiểu AI như thế này: “Chuyên gia AI về khả năng gửi email tới hộp thư đến, giúp kiểm tra và sửa email — được hậu thuẫn bởi các chuyên gia Top-Rated”
  • Tôi đồng cảm với bài này. Phản ứng của tôi trước những gì đang diễn ra lúc này cũng là “hãy để tôi ở lại phía sau”
    Tuy vậy, việc nhớ nhung niềm vui của cách trưởng thành như một lập trình viên ngày trước không chỉ là một lý do sai, mà xét theo kiểu Darwin còn rất nguy hiểm. Khách hàng rốt cuộc không quan tâm bạn đã làm bằng cách nào; họ quan tâm đến hỗ trợ dài hạn, chi phí, khả năng dự đoán, v.v.
    Nhưng tôi cũng không biết liệu có thể nói ngành này thực sự đã đạt được tiến bộ với hiệu ứng ròng tích cực hay không. Toàn bộ mọi thứ là một mớ hỗn độn khổng lồ. Trong nhiều trường hợp, AI không chỉ đẩy chúng ta đi cùng một hướng ở chế độ tăng tốc, làm mọi thứ bẩn hơn và đắt hơn, mà còn khiến chúng nguy hiểm hơn
    Tôi nói “hãy để tôi yên” với mớ hỗn độn này vì nếu suy nghĩ tử tế từ những nguyên lý đầu tiên, tôi có thể xem đó là một cơ hội

    • Có lẽ khách hàng cũng có thể quan tâm đến nó được làm ra như thế nào
  • Bài này có vẻ như đang dựng lên một lưỡng phân giả tạo rằng либо hoàn toàn không dùng AI, либо giao hết mọi việc cho AI. Thực tế không vận hành như vậy. Bạn có thể tự chọn mức độ giao công việc cho AI. Vẫn còn cực kỳ nhiều không gian cho chuyên môn của con người, cộng đồng và niềm đam mê với kỹ thuật
    Khi nhìn vào tranh luận công khai xoay quanh AI, tôi lại nghĩ đến các méo mó nhận thức trong liệu pháp nhận thức hành vi. Đặc biệt là tư duy trắng-đen và khuynh hướng thảm họa hóa. Đây cũng thường là triệu chứng của lo âu hoặc loạn thần, nên đôi khi tôi tự hỏi liệu cả xã hội đôi lúc có thể cùng mắc những triệu chứng này hay không
    https://en.wikipedia.org/wiki/Splitting_(psychology)
    https://en.wikipedia.org/wiki/Cognitive_distortion#Decatastr...

    • Với các dự án cá nhân thì tôi thực sự đồng ý. Nhưng ở chỗ làm thì không phải lúc nào bạn cũng có quyền chọn
      Khi đội bắt đầu bị đo bằng sản lượng xử lý PR và lượng token sử dụng, tôi có thể trông “kém” hơn khi đứng cạnh một người hoàn toàn vibe coding. Tôi sợ rằng nếu mình không làm vibe coding thì sẽ bị hụt mất cơ hội thăng tiến
      Những chỉ dấu cho thấy vibe coding có thể tệ là chỉ số trễ. Các vấn đề của vibe coding như hiệu năng, suy giảm dịch vụ, hay những đợt di trú dữ liệu quy mô lớn luôn chỉ lộ ra về sau
    • Đúng vậy. Công bằng mà nói thì sẽ có người ở cả hai phía: chấp nhận toàn diện và từ chối toàn diện, và họ sẽ là những người to tiếng
      Nhưng họ là thiểu số, còn đa số sẽ tìm ra điểm ở giữa
  • Tôi là một lập trình viên PHP senior và gần đây được chuyển sang một dự án Ruby on Rails. Đó là một môi trường hoàn toàn xa lạ. Khách hàng khuyến khích dùng LLM nhiều nhất có thể
    Vấn đề là khi để AI viết code thì gần như không thể học được codebase. Nếu không cố tình đào sâu, bạn hầu như sẽ không bao giờ nhìn quá vài dòng code một lúc, mà yêu cầu về tốc độ có thể còn khiến bạn không có thời gian để làm vậy. Kết quả là không ai trong đội thực sự nắm tường tận bất kỳ vùng nào của code. Điều đó rất khác với cách tôi đã lập trình suốt 25 năm qua, và cũng kém vui hơn
    100 năm trước, bạn chỉ có thể mua đồ nội thất do thợ thủ công làm. Những người thợ thủ công thật sự. Giờ đây lựa chọn là IKEA hoặc đồ thủ công. Đa số không quan tâm nó được làm như thế nào, miễn là nó làm đúng việc, nên họ chọn IKEA. Vẫn có những người thích đồ thủ công, và họ trả rất nhiều tiền cho nó
    Có vẻ phần mềm cũng đang đi theo hướng đó, và đáng buồn là tôi đồng ý. Phát triển phần mềm sẽ trở thành một thú vui. Giống như nhiều người làm mộc lúc rảnh. Có thể sẽ chỉ còn lại một số rất ít chuyên gia thực thụ, chủ yếu làm tư vấn. Có lẽ họ sẽ tạo dữ liệu huấn luyện, hoặc thiết kế framework để AI thành thạo. Tôi không biết. Nhưng chắc chắn tương lai sẽ khác, và không phải mọi thứ đều theo hướng tốt
    Lúc này AI đang xây dựng cho con người, và đôi khi cũng xây dựng cho AI khác. Rất sớm thôi, AI sẽ xây dựng cho AI khác, và thỉnh thoảng cho con người. Về sau, AI chủ yếu sẽ xây dựng cho AI, còn các trường hợp dành cho con người sẽ trở nên hiếm hoi

    • Nơi tôi sống, bạn vẫn có thể mua đồ nội thất từ thợ thủ công. Tôi đã mua một cái giường ở cửa hàng địa phương, hoàn toàn không đắt và tôi khá hài lòng
      Có lẽ bạn nên thử tìm xem ở nước mình có như vậy không. Mọi người hay tự động cho rằng IKEA đã giết sạch mọi cửa hàng địa phương, nhưng nếu tìm thì vẫn có rất nhiều cửa hàng nội thất địa phương
    • Tôi mua IKEA vì tôi không có tiền trả cho thợ thủ công. Không còn đủ thợ để sản xuất ở quy mô có thể kéo giá xuống
  • Bài này trông như do LLM viết, hoặc được viết theo kiểu văn blog tiêu chuẩn dạo này. Bản thân phong cách đó ngày càng trở nên giống LLM hơn
    Sam Kriss gần đây có một bài viết chỉ ra rất đúng những “dấu hiệu” kiểu đó: https://samkriss.substack.com/p/if-you-let-ai-do-your-writin...

    • Đặc biệt trên HN, có vẻ đang diễn ra một trò chơi “săn LLM”, và gần như bài được liên kết nào cũng sẽ có bình luận nói là do AI viết
      Chẳng lẽ mọi người không hiểu rằng “dấu hiệu” của AI, theo đúng định nghĩa, là đến từ con người sao? Bài của Sam Kriss phê phán văn phong màu mè, nhưng rồi lại lấy Salman Rushdie và Arundhati Roy làm ví dụ rằng họ cũng dùng những “mánh rẻ tiền” giống AI; dù có tôn trọng đến đâu tôi cũng khó chấp nhận điều đó. Nó tiến rất gần đến một kiểu quy chụp nguy hiểm rằng cứ dùng ẩn dụ kỳ lạ là bị coi như đã dùng LLM. Con người đã viết kỳ quặc từ rất lâu rồi, không cần LLM
      Và rốt cuộc bài này có “dấu hiệu” gì? Nó đọc rất thẳng, không có ẩn dụ kỳ quặc nào cả. Dấu gạch ngang dài cũng thực ra không phải là manh mối, và việc dùng kiểu khoảng trắng-gạch nối-khoảng trắng như “ - ” như trong bài này lại trông khá là con người. Hơn hết, tôi muốn dành lợi ích của sự nghi ngờ cho một người đã viết bài nói rằng họ không muốn lập trình bằng LLM
      Kiểu như “cỗ máy đánh trẻ mồ côi khiến tôi đầy bất an hiện sinh và sợ hãi, nhưng để truyền tải điều đó tới độc giả thì tôi phải để cỗ máy ấy đánh thêm vài đứa trẻ mồ côi nữa” nghe thật kỳ quặc
    • Tôi không có thời gian để xem rác do AI tạo ra. Tôi phải quay lại bảo Claude viết code giúp đây ;)