- Viết bằng AI là một cám dỗ rất lớn trong việc soạn bài báo, viết mã và tài liệu, nhưng lại làm tăng nỗi bất an rằng khả năng tự viết và tự suy nghĩ đang suy giảm
- Khi đọc lại kết quả do AI tạo ra, cảm giác thường là “đúng là đồ AI”, và nó không truyền tải đúng giọng văn hay ý đồ của bản thân
- Trong 1~2 năm qua, tôi đã phụ thuộc rất nhiều vào AI khi lập trình, gần như chỉ viết prompt, và cảm giác mất mát vì dường như đã quên cách tự viết mã ngày càng lớn
- Giờ đây tôi đang cố học lại cách lập trình bằng tay, và cho rằng những người biết đọc và viết mã vẫn sẽ tiếp tục cần thiết ngay cả sau thời AI
- Chính sự thôi thúc muốn dán bài viết vào Claude để kiểm tra lại là một dạng tự nghi ngờ, và AI trở thành thứ phải đối đầu vì nó sống dựa vào sự bất an đó
Nỗi bất an rằng việc dùng AI làm suy yếu năng lực viết và lập trình
- Viết bằng AI là một cám dỗ rất lớn trong việc soạn bài báo, viết mã và tài liệu, nhưng lại tạo cảm giác rằng khả năng tự viết đang bị giảm sút
- Trước đây, dù không xem mình là người xuất sắc trong viết lách hay phát triển phần mềm, tôi vẫn nghĩ mình có năng lực ở mức nào đó; nhưng càng dùng AI nhiều, cảm giác kỹ năng bản thân càng tệ đi càng lớn
- Khi đọc lại kết quả viết bằng AI, nó tạo ấn tượng “đúng là đồ AI”, không khớp với giọng văn hay chủ ý của bản thân, và không diễn đạt đúng điều mình muốn nói
- Nỗi bất an này làm tăng sự tự nghi ngờ và hội chứng kẻ mạo danh, đến mức khiến người ta nghi ngờ cả việc liệu mình có thực sự tự tạo ra được kết quả đó hay không
Lý do muốn học lại cách lập trình bằng tay
- Trong 1~2 năm qua, tôi đã hoàn toàn dùng AI cho việc lập trình, gần như chỉ viết prompt, và cảm giác như mình không tự viết lấy nổi dù chỉ một dòng mã
- Kết quả là tôi có cảm giác như đã quên gần hết cách lập trình, và việc đánh mất thứ từng là trung tâm của cuộc sống khiến tôi buồn và chán nản
- Giờ đây tôi đang tự học lại cách lập trình bằng tay
- Tôi cho rằng ngay cả khi có AI, năng lực phát triển phần mềm cũng sẽ không biến mất hoàn toàn
- Những người biết đọc và viết mã vẫn sẽ tiếp tục cần thiết
- Số lượng người cần đến có thể giảm, nhưng bản thân kiểu người đó vẫn cần thiết
- Tôi cũng hy vọng AI có thể đảo ngược xu hướng cầu vượt cung đối với lập trình viên phần mềm đã kéo dài suốt 20~30 năm qua
- Như trong các bài giảng của Robert Martin (Uncle Bob), trước khi khoa học máy tính trở thành một nghề nghiệp, việc lập trình do các chuyên gia như nhà vật lý, nhà toán học và học giả đảm nhiệm
- Khi nhu cầu với lập trình viên phần mềm tăng vọt, tính chuyên môn theo đó bị mờ nhạt đi
- Dù đây là bài viết được viết không có AI, tôi vẫn lo rằng liệu có chỗ nào kỳ quặc hoặc bị thiếu không, và nảy sinh thôi thúc muốn dán vào Claude để kiểm tra
- Chính thôi thúc đó là sự tự nghi ngờ mà AI sống dựa vào, và vẫn là thứ cần phải chống lại
1 bình luận
Ý kiến trên Hacker News
Tôi không thực sự đồng cảm lắm với lập luận này. Mỗi lần dùng AI để viết code, tôi luôn phải đấu tranh với cảm giác lấn cấn rằng mình cần rà lại toàn bộ những gì AI đã làm rồi bổ sung hoặc sửa lại bằng code của chính mình
Có dopamine khi nhận được một ứng dụng chạy được chỉ sau vài phút vibe coding, nhưng cảm giác lấn cấn đó triệt tiêu hết, và có lẽ sẽ chưa biến mất sớm đâu
Tuy vậy, chắc là vì tôi đã có kinh nghiệm; nếu là một dev junior hoặc mid-level thì rất có thể tôi cũng đã sa vào rồi. Nếu không có những vết sẹo từ đầu sự nghiệp do bị các mentor có chuyên môn soi code review kỹ càng, có lẽ tôi cũng không có cảm giác đó
Những gì Claude tạo ra phải được review code thật kỹ, nếu không codebase sẽ cứ phình ra và tiệm cận 100% nợ kỹ thuật
Tôi review toàn bộ đầu ra của Claude, và khoảng 90~95% trường hợp là kiểu “ồ, chạy đấy. Nhưng code nhiều quá. Giờ cùng ngồi 3 tiếng cắt gọt cho đến khi không còn gì để bớt nữa nhé”
Cần tìm cách cộng tác tốt hơn với agent. Nếu con người review những phần quan trọng cần người nhìn vào, rồi “thuê ngoài” phần còn lại, thì có thể đi đến code và thiết kế hoạt động giống như khi tự lập trình, nhưng nhanh hơn
Tôi cũng review khoảng 90% code do agent viết, nhưng việc chỉ viết hoặc nói vài prompt vẫn dễ chịu hơn nhiều so với tự tay gõ hàng chục nghìn ký tự và liên tục nhảy qua lại giữa các file. Có lẽ đơn giản là tôi đã chán gõ phím
Nhưng với những việc lặt vặt vừa tốn thời gian vừa nhàm chán, tôi thiết kế kiến trúc rõ ràng trước rồi giao phần triển khai cho AI. Dù vậy sau đó vẫn phải kiểm tra lại xem nó có làm ra thứ vớ vẩn gì không
Ví dụ hay gần đây là trong game tôi làm bằng Godot, Codex đã định tự triển khai lại từ đầu hành vi mà Area2D vốn đã cung cấp sẵn
Giao cho AI việc gì có ý nghĩa là sẽ dẫm phải đầy mìn và những lựa chọn kỳ quặc. Có thể nếu đốt vài trăm đô token thì sẽ khác, nhưng với người chỉ tiêu 10 đô một tháng như tôi thì chẳng đáng để đau đầu
Hơn nữa dự án của tôi chỉ là sở thích, và code vẫn còn vui. Tôi chỉ giao cho AI những phần chán ngắt như lưu/tải, parse file dữ liệu, menu cài đặt; còn những phần cần phán đoán của con người thì để nó tránh xa
Tôi muốn tin rằng nếu là mình thì sẽ dùng agent để đào sâu hơn và học nhanh hơn. Ngày xưa việc chắp nối giải pháp từ Stack Overflow, đủ loại kênh IRC, Reddit các kiểu khá vất vả
Nhưng hồi đại học tôi cũng từng chép bài tập và không kiểm tra câu trả lời cho tử tế, nên tôi không dám chắc. Dù sao thì tôi học lập trình vì hứng thú chứ không chỉ để lấy bằng, nên có thể đã khác
Dù thế nào thì tôi vẫn mừng vì đã tích lũy được nhiều kinh nghiệm và thất bại trước khi bước vào thời đại LLM
Code tôi tự viết lúc nào cũng tốt hơn Claude hay GPT
Có lần tôi trích specification từ một dự án đã viết sẵn, đưa cho LLM chỉ đọc spec đó rồi bảo nó triển khai lại để so code; bản của LLM nhìn như bãi nôn
Với tư cách lập trình viên, tất cả chuyện này phần nào lại giống như sự ổn định việc làm
Tôi dùng LLM được một thời gian rồi, thấy khá ổn và cũng thích dùng. Tôi đã vibe coding vài ứng dụng, cảm giác ý tưởng được hiện thực hóa ngay lập tức tạo dopamine rất mạnh
Nhưng theo trải nghiệm của tôi, nếu mù quáng tin vào nó thì chắc chắn sẽ bị cắn. Ngay cả trong các dự án vibe coding, nó cũng liên tục thêm các “tính năng” mà tôi không hề yêu cầu
Nếu là dự án cá nhân thì tôi không quá bận tâm miễn kết quả cuối cùng đúng như mong muốn, nhưng công ty sẽ không linh hoạt như vậy. Khách hàng chắc cũng không thích việc tính năng bị thay đổi hay tự dưng mọc thêm mỗi lần sửa hoặc cập nhật
Tóm lại tình hình hiện tại là nhiều công ty đang đi theo hướng này, và nếu không có kỹ nghệ phần mềm tử tế thì AI sẽ viết nhiều code hơn và vô tình làm ứng dụng chệch khỏi ý định ban đầu
Vì nỗi sợ AI và việc tuyển dụng giảm, số kỹ sư junior gia nhập thị trường sẽ ít đi
Khi mức độ sử dụng AI đạt tới ngưỡng tới hạn, sẽ có những thay đổi khổng lồ và những người “prompt” nó có thể bắt đầu bị quá tải
Số lượng tính năng phải giữ trong đầu sẽ còn nhiều hơn. Vì không thể tin LLM 100%, dev vẫn phải biết chính xác ứng dụng đang làm gì
Cuối cùng bug sẽ xuất hiện dày đặc, và các dev sẽ lại than phiền rằng cần thêm người. Rồi việc tuyển dụng sẽ quay trở lại
Lúc này vị trí khó nhất là dev mới vào nghề, còn vị trí tốt nhất có vẻ là những người đã ở trong thị trường rồi
Họ gần như chẳng chuẩn bị gì để làm cho nó thành công, chỉ mù quáng thuê lựa chọn rẻ nhất, ném cho họ các yêu cầu mơ hồ, rồi gần như không có review kỹ thuật hay giám sát liên tục nào
Diễn biến cũng gần giống như bạn nói. Ban đầu trông như thành công vì prototype được đẩy ra rất nhanh với thứ code bẩn nhất có thể tưởng tượng, nhưng theo thời gian nợ kỹ thuật và các quyết định tồi trở thành lực cản ngày càng lớn, làm tiến độ chậm dần rồi cuối cùng dự án đứng lại hoặc chết hẳn
Lần này có thể sẽ khác, nhưng phần lớn công việc đầu sự nghiệp của tôi là đi dọn dẹp những dự án theo đúng mô thức đó. Tôi mong các dev mới đi lên cũng sẽ có cùng loại cơ hội đó
Trước hết, mức tăng hiệu suất là cực lớn. Lớn hơn bất kỳ công cụ nào ở bất kỳ mức giá nào. Sản phẩm chính của công ty tôi là web app, và vài năm qua chúng tôi đã làm việc viết lại sản phẩm chủ lực
Chỉ trong một buổi chiều, tôi có thể tạo một dự án mới với stack mong muốn, rồi trong vài giờ vibe coding ra một MVP của sản phẩm mà chúng tôi đã mất nhiều năm để làm
Nó chưa hoàn hảo, nhưng tôi yêu cầu từng chức năng một bằng các prompt nhỏ, mỗi cái mất 5~10 phút. Trông khá chuyên nghiệp và theo mọi tiêu chuẩn thì là “đủ tốt”
Nếu có thêm chút thời gian, tôi có cảm giác mình có thể một mình phát hành và duy trì thứ mà trước đây cần cả một đội nhỏ làm trong nhiều năm. Đáng buồn là đây giống một “công cụ thay cả đội ngũ” giá rẻ hơn là công cụ tăng hiệu quả
Còn có cả cơn sốt AI của các CEO không có nền tảng kỹ thuật. CEO và ban điều hành của chúng tôi đã hoàn toàn chấp nhận bộ công cụ agent của Claude, ngày nào cũng dựng mockup, app và chuỗi công cụ
Nhìn là thấy họ bị nghiện, và họ đang trực tiếp cảm nhận lợi ích. Chuyện đó chưa xảy ra, nhưng nếu CEO sa thải phần lớn đội dev rồi cùng vài dev giỏi vibe coding toàn bộ ứng dụng thì tôi cũng không ngạc nhiên
Hiện tại họ nói kiểu “AI không phải thứ thay thế mà là số nhân!” nhưng ngay trong cùng câu lại bảo “nếu nhờ cái này mà vài năm tới khỏi cần tuyển thêm thì quá thắng rồi!”
Tôi từng bị hỏi thẳng tại sao không thể vibe coding toàn bộ ứng dụng, mà thật sự tôi không có câu trả lời sắc bén. Tôi có vài ý hợp lý như “rồi sẽ không biết cách bảo trì ứng dụng”, nhưng Claude vẫn có thể làm được khá nhiều chỉ với một dev ngồi điều khiển
Cũng có chuyện “AI có thể vô tình làm ứng dụng đổi khác và chèn bug”, nhưng với observability phù hợp, test, và vài prompt bổ sung, thường có thể sửa trong vài phút đến vài giờ
Thành thật mà nói, việc công ty tiếp tục duy trì cả một đội dev dường như ngày càng kém hợp lý. Dù có khởi động bao nhiêu dự án hay sáng kiến đi nữa, backlog vẫn giảm rất nhanh còn năng suất của từng dev thì tăng đến mức phi lý
Các CEO phi kỹ thuật không quan tâm đến nợ kỹ thuật, nợ nhận thức, các thực hành thiết kế phần mềm tệ, việc học code, việc giữ cho dev sắc bén, niềm vui giải quyết vấn đề, hay tính nghệ thuật của thuật toán và kiến trúc tốt
Điều họ muốn là sản phẩm chạy tạm ổn, tạo ra giá trị, có người trả tiền, và được tung ra với mức đầu tư rẻ nhất có thể. Đáng buồn là AI gần như đáp ứng điều đó trên mọi phương diện
Tôi hy vọng khối lượng phần mềm mới được tạo ra sẽ kéo theo nhu cầu tăng lên, nhưng lo rằng vẫn không đủ để bù lại mức tăng năng lực sản xuất khổng lồ mà AI đem lại
Tháng sau tôi đã để trống thời gian để học TypeScript. Tôi không định loại bỏ AI hoàn toàn trong quá trình đó
Kế hoạch là đọc một cuốn sách từ đầu đến cuối, rồi sau đó mới viết code. Hình như tôi nghe Mitchell Hashimoto nói về cách này trong một podcast nào đó
Vì tôi đã dành rất nhiều thời gian cho kiểu prompt coding như trong bài gốc, nên vừa háo hức vừa sợ
Không thể vì không tự tay viết code mà trở nên kém thông minh hơn được. Nếu điều đó có thể xảy ra thì mỗi lần đi nghỉ phép ta phải ngu đi mới đúng
Trò chuyện với chatbot không làm các kết nối thần kinh trong não chết đi
Điều thực sự xảy ra chỉ là bạn tạm ngưng sử dụng một kỹ năng có tính kỹ thuật cao. Bất kỳ ai trên Trái Đất này nếu không dùng một kỹ năng trong một thời gian thì cũng sẽ “quên” đi một phần của nó
Nhưng thông tin không biến mất; chỉ là nó bị đẩy xuống ưu tiên thấp hơn bởi những thông tin liên quan hơn. Ôn lại một chút là quay về ngay
Ngay cả trước thời AI, tôi cũng có những quãng vài tháng không viết trọn vẹn một chương trình bằng một trong nhiều ngôn ngữ. Tôi quên cả thứ đơn giản như bắt đầu định nghĩa hàm thế nào
Nhưng tôi không thật sự quên; chỉ cần liếc qua một hàm cũ là tôi nhớ lại toàn bộ các cú pháp khác có thể dùng trong phần định nghĩa hàm. Không cần hoảng, não bạn vẫn đang hoạt động bình thường
Ở trường người ta nói rất nhiều về rủi ro của AI, nhưng cùng kiểu rủi ro đó áp dụng cho bất kỳ môi trường học tập nào
Gần đây tôi bắt đầu một công việc mới, và AI đang khiến việc onboarding khó hơn rất nhiều. Tôi thích nghi với vai trò chậm hơn hẳn so với các đồng nghiệp ít dùng AI hơn
Tôi đang code bằng một ngôn ngữ không quen, nên sức cám dỗ của vibe coding còn mạnh hơn. Dù vậy tôi vẫn đủ trình để nhận ra khi Claude trả lời vô lý hoặc dài dòng không cần thiết
Nhưng càng dành nhiều thời gian bảo Claude viết code hộ, tôi càng ít cảm thấy mình đang phát triển các năng lực mà công việc này đòi hỏi. Khi mở PR, tôi cũng không có đủ tự tin vào phần việc của mình nên thấy rất khó chịu
Thành thật mà nói, còn một chuyện nữa là tôi đang bảo Claude tìm trong Slack và tài liệu những thứ đáng lẽ tôi nên hỏi con người
AI đang nuôi dưỡng chứng lo âu xã hội của tôi, cám dỗ tôi né tránh sự tiếp xúc giữa người với người, thứ vốn tốt cho việc hiểu vấn đề và cũng cần thiết cho tương tác xã hội cơ bản
Nghe thì có vẻ như trốn tránh trách nhiệm, nhưng cần phải chỉ ra rằng một số công nghệ có thể đặc biệt gây nghiện với một kiểu người nào đó và nhốt họ trong vòng lặp hành vi tiêu cực
Nếu tôi trì hoãn sự phụ thuộc vào AI bây giờ, thì sau này có lẽ tôi sẽ phát triển đủ năng lực để dễ xác minh kết quả và giao cho AI những việc lặp đi lặp lại. Khó nhưng cần thiết
Như vậy bạn sẽ học được trong quá trình đó. Không cần dùng nó như công cụ tìm kiếm; chỉ cần hỏi những gì bạn cần biết ngay lúc đó, nó sẽ rung lắc chuỗi token và đưa ra thứ gì đó đặc biệt hữu ích cho người mới với ngôn ngữ đó
Cách này giúp bạn thực hiện kế hoạch là xây kỹ năng trước rồi mới bắt đầu ủy quyền sau
Tôi làm vậy từ trước đến giờ, và với tôi đó là một sự cân bằng tốt. Bảo Claude viết ra đoạn code mà mình không biết đánh giá thì có vẻ như điên rồ, nhưng hình như quan điểm này lại là thiểu số
Thật ra đó là một trong số rất ít use case thực sự hữu ích mà tôi từng trải nghiệm ngoài vibe coding
Tôi không dùng AI để thay thế tư duy, mà để thoát khỏi việc viết những đoạn code lặp đi lặp lại và nhàm chán. Sau khi prototype đã được triển khai, AI đủ năng lực để viết code
Tôi tự viết bản prototype thô sơ ban đầu cho proof of concept. Không chú thích, hardcode biến kiểu vậy. Sau đó AI sẽ mài giũa nó lên mức sản phẩm
Nhờ thế tôi có thể chỉ huy một đội agent thay vì phải quản lý những con người có đạo đức làm việc, năng lực và khả năng giữ chất lượng code cao rất khác nhau
AI cũng thường khá giỏi trong việc giữ theo các pattern sẵn có của codebase hoặc bám theo best practice trong ngành
Khi dùng AI, bạn sẽ không còn viết nhiều bằng ngôn ngữ lập trình nữa. Dù là tiếng Anh hay ngôn ngữ dùng để trò chuyện với LLM, đó sẽ trở thành ngôn ngữ chính của bạn
Phần lớn mỗi ngày của tôi giờ đây là sửa những thứ không hoàn chỉnh mà robot sinh code tạo ra
Tất nhiên tôi không đang mài prototype, mà đang bảo trì, phát triển và hiện đại hóa một sản phẩm quan trọng đã hơn 8 năm tuổi
Thành thật mà nói, trong một dự án thì mấy thứ code lặp nhàm chán đó thực sự chiếm bao nhiêu?
Cần prompt được trau chuốt kỹ, nên bạn phải thực sự hiểu framework nền và ngôn ngữ. Nếu không thì mọi thứ sẽ thành một mớ hỗn độn kinh khủng
Tôi cũng không hiểu quản lý nhiều agent kiểu gì, vì thường chúng kết thúc khá nhanh. Giữa các lần chạy bạn cũng chẳng làm được gì. Nó cứ ở trạng thái “chỉ thêm 1 phút nữa là xong” liên tục
Xong rồi thì bạn phải đánh giá đầu ra. Thành ra trong lúc “làm việc” cũng không thể suy nghĩ sâu. Cảm giác này rất giống mạng xã hội: chú ý liên tục, phần thưởng gần như tức thì
Cuối cùng khả năng tập trung của bạn cứ thế bị phá hỏng, mà là phá hỏng thật
Vấn đề là các kế hoạch kiểu này tan biến chỉ sau vài giờ, rồi sau đó bạn phải phân tích đầu ra và lặp lại để lọc ra những phần ngu ngốc
Xử lý đầu ra của nhiều agent là chuyển đổi ngữ cảnh liên miên. Chúc bạn làm tốt điều đó về lâu dài
Nếu để agent chạy nhảy tự do muốn làm gì thì làm, đầu ra gần như chắc chắn sẽ là một mớ hỗn độn kinh khủng. Hết
Trong dự án hiện tại tôi code bằng Java, Ruby và JavaScript mỗi ngày. Tôi đang tốn rất nhiều token chỉ để xác nhận các khác biệt giữa ngôn ngữ mà trước đây tìm Google đơn giản là ra
Tôi cứ hay nhầm giữa toán tử null-safe của Ruby và JavaScript, hay câu lệnh continue/break của Ruby và Java
Chắc Claude sẽ khá thất vọng vì việc phức tạp nhất tôi bắt nó làm chỉ là refactor các vòng lặp Java cũ sang stream hiện đại hơn. Loại code đó có thể gần như không thể để con người viết ngay tại chỗ
Tự viết collector hoặc dùng những phần hơi obscure hơn của thư viện chuẩn thì càng được cộng điểm
Cũng có ví dụ theo hướng ngược lại. Việc trao đổi ý tưởng với AI ở chế độ /plan, trong lúc tôi bắt lỗi các giả định sai của AI, và khi cần thì AI diễn giải rõ các lỗ hổng kiến thức, thật ra khá kích thích về mặt trí tuệ và có vẻ khiến tôi thành kỹ sư tốt hơn
Điều cốt lõi là phải tiếp cận AI theo kiểu Socrates, suy nghĩ cẩn thận về mọi đề xuất của nó, và đừng để bị thôi miên bởi giọng điệu đầy tự tin cùng logic được cấu trúc hoàn hảo
Tôi lại có trải nghiệm hoàn toàn ngược lại. Có lẽ vì trong lĩnh vực tôi làm, code/phần mềm không phải sản phẩm mà là công cụ
Tôi đang học nhanh hơn và nhiều hơn rất nhiều. Ví dụ hiện giờ tôi làm việc với phần cứng quang phổ như Raman, NMR, và tôi để Claude viết code để giao tiếp với thiết bị ở cấp độ thiết bị/phần cứng
Thay vì tự lục datasheet và viết cả đống wrapper code, Claude làm việc đó giúp tôi
Tôi có thể thảo luận nhiều kỹ thuật với Claude, triển khai rồi kiểm thử, nên tiến nhanh hơn rất nhiều. Trước đây vòng lặp này hẳn sẽ lâu hơn 5~10 lần
Tôi không còn phải tiêu tốn nỗ lực tinh thần vào việc viết mấy đoạn code tủn mủn chỉ để xem kết quả, nên đang học được nhiều hơn hẳn về thiết bị, kỹ thuật và dữ liệu này
Tôi đã làm dev hơn 10 năm. Giờ tôi thấy vui vì cuối cùng cũng đang tiến vào một thế giới nơi có thể dùng code như công cụ thay vì cứ phải nghĩ đến chuyện biến code thành sản phẩm
Tôi nghĩ sẽ không có nhiều người còn được hưởng đặc quyền có thời gian ngồi viết code bằng tay
Nếu nhìn vào loại code chúng ta thực sự viết, thì ít nhất với tôi phần lớn không phải thứ gì mới mẻ hay ngầu; mà chỉ là kiểu “làm backend cho X”, sửa bug đơn giản, những việc lặt vặt cho lập trình viên từ mid tới senior
Những việc khó hơn thường nằm ở các quyết định kiến trúc bên trên code, và tôi cũng đang nghĩ xem có thể xây hệ thống thế nào để LLM không chệch khỏi việc triển khai tính năng
Điều tôi muốn nói là hiện tại việc tự tay viết code có thể còn ổn, nhưng về sau cổ đông hoặc cấp trên sẽ muốn phát hành tính năng và sửa bug nhanh hơn nhờ có LLM hỗ trợ
Nếu bạn không đạt được tốc độ đó thì hiệu suất sẽ bị đánh giá thấp. Cuối cùng điều quan trọng không phải là ta muốn gì mà là cổ đông muốn gì
Tất nhiên nếu bạn không kiệt sức thì vẫn có thể tự viết code bằng tay trong thời gian rảnh. Tôi không muốn nghe như một kẻ bi quan, nhưng tôi nghĩ sớm thôi điều này sẽ khá thực tế