5 Ngày Từ Ý Tưởng Đến MVP: Khi Lập Trình Không Chỉ Là Code

5 Ngày Từ Ý Tưởng Đến MVP: Khi Lập Trình Không Chỉ Là Code

TL;DR: Tâm sự mỏng cuối năm: Trong 5 ngày cuối năm, mình đã build một MVP Pomodoro timer dạng web extension, sử dụng Cursor (AI code editor) để tăng năng suất gấp 10 lần. Dự án giúp mình học hỏi về prompt engineering, UI/UX, debugging, và rút ra nhiều bài học về vai trò của lập trình viên trong thời đại AI. Slogan của sản phẩm: “Regain your focus. Regain your life”. Đây là một hành trình kết hợp công nghệ và mindfulness để hiện thực hóa ý tưởng trong thời gian ngắn.

Sau vài thảo luận với coding sensei, mình quyết định sẽ làm 1 web extension cho side project lần này. Thực sự nhờ project này mà mình đã được trải nghiệm 1 quy trình phát triển rất khác khi sử dụng AI so với khi còn làm ở công ty cũ.

Timer Setting - Dark mode

Timer Setting – Dark mode

Hồi mới tập tành dùng AI coding assistant (mà “tình đầu” của mình, chắc cũng như bao người, là GitHub Copilot) cho bài tập trên trường (vì giáo viên mình cho phép), mình có hơi ngợp và nghi ngờ nhân sinh 😂 Với cách tiếp cận cũ của mình trong việc học lập trình, thì để biết code được, mình phải tự tay code, không biết code như nào thì tra Google với StackOverflow chán chê rồi thử tới thử lui debug đến khi được thì thôi. Cơ mà cái lúc có AI mình cũng hơi rén vì lắm lúc mình chưa kịp hiểu đề bài nó đã sinh code xong rồi, hơi choáng với cũng lo sợ mình sẽ bị lệ thuộc nó riết rồi lụt nghề trong khi mình biết mình đã yếu sẵn rồi. Cơ mà dù sao thì deliver result vẫn là ưu tiên nên thôi, cứ xài cơ mà phải thận trọng hết sức có thể.

Bởi vậy mà mình cố gắng làm thật kĩ khâu lên ý tưởng và thiết kế UI/UX, rồi khi code cùng Cursor, mình ứng dụng những kỹ thuật prompting học được từ những lớp học Natural Language Processing (NLP) trong và ngoài trường chẳng hạn như One-Shot Prompting, Few-Shot Prompting, Chain-of-Thought Prompting để viết prompt sao cho hiệu quả để AI code ra được result như mình kỳ vọng. Sư phụ mình cũng cố vấn và giúp mình phần architeture design, debugging cũng như bổ túc thêm kiến thức cho mình trong suốt quá trình.

Cơ mà cùng với đó, thì mình lại tự hỏi, rồi lập trình viên mà không còn phải code nữa thì học gì và làm gì? Trải nghiệm 5 ngày này cũng cho mình nhận ra một vài hướng đi mà mình xin phép mạnh dạn chia sẻ ở đây.

Thứ hai, AI code hộ cho gần hết rồi không có nghĩa là mình không cần học code và không cần biết code. Ngược lại, mình vẫn cần phải học, biết và hiểu code để có thể debug được code do AI tạo sinh. Không ít lần trong quá trình làm việc, code của AI chạy chưa được như ý và cho ra rất nhiều những kết quả kì quái không như mong đợi khiến tụi mình phải ngồi lại và tự tay tìm và sửa lỗi. Thậm chí để có thể viết prompt hiệu quả, mình cũng cần phải biết rõ mình đang muốn code thứ gì, expected result là gì. Song, có lẽ việc tiếp cận kiến thức lập trình của người học trong thời đại AI sẽ có nhiều khác biệt so với trước đây để đảm bảo dù không tự code nhiều nhưng vẫn phải có khả năng đọc hiểu và sửa lỗi hay thay đổi logic trong code.

Nhưng có lẽ ý nghĩa nhất với mình sau trải nghiệm lần này, ấy là mình có một góc nhìn mới lạc quan hơn về thực trạng AI code thay cho lập trình viên. Nếu trước đây mình thấy lo sợ sẽ lụt nghề với AI, thì bây giờ, mình lại thấy AI là trợ thủ đắc lực để mình nhanh chóng hiện thực hoá những ý tưởng. Và vì AI làm giúp mình gần hết low-level tasks nên mình có thêm thời gian để tập trung lên kế hoạch, suy nghĩ và làm những thứ high-level hơn. Miễn sao deliver được final result một cách chỉn chu, hoàn thiện thì có lẽ dần dần, code do AI viết hay mình viết cũng không còn quá quan trọng. Mình mơ hồ tự hỏi, có lẽ nào trong tương lai gần, một dev team sẽ chỉ cần AI tool(s) cùng 1 đến 2 người nhưng kiêm nhiều vai trò project manager, designer, coder, prompt engineer, tester, v.v cùng lúc không nhỉ? Có lẽ thay vì lo lắng, sợ hãi, chúng ta hãy nên cởi mở đón nhận và học cách thích nghi. Kỳ thực, mình nghĩ tiến bộ công nghệ nào cũng đem đến cả cơ hội và thách thức cùng một lúc, hãy nên tỉnh táo và linh hoạt để nhận diện và tận dụng những cơ hội cũng như khắc phục những thách thức. Let us human stand on the shoulders of giants 😉

Block view

Block view

Mình đọc và tìm hiểu nhiều về Phật giáo, chánh niệm và luôn muốn mang chánh niệm vào cuộc sống thường ngày nhiều nhất có thể. Với mình thì khả năng tập trung là một biểu hiện của chánh niệm. Mình được truyền cảm hứng nhiều từ những người thầy tâm linh như Thầy Thích Nhất Hạnh và Thích Minh Niệm – những vị thầy luôn nhắc nhở mọi người hãy quay trở về với thực tại trong hơi thở của chánh niệm để giành lại chủ quyền cuộc sống sau chuỗi ngày trôi lăn theo những phiền não của bộn bề mưu sinh. Trong thời đại bùng nổ thông tin này, con người ta dễ cảm thấy bất an và bị phân tâm do từng ngày từng giờ có quá nhiều cơn lũ thông tin ào ào kéo đến khiến tâm trí quá tải khi phải tiếp nhận. Rồi chưa kể thói quen tiêu thụ nội dung nhanh và ngắn tràn lan khiến cho attention span của chúng ta suy giảm, thực trạng này đáng báo động đến mức mà “Brain Rot” trở thành từ khoá của năm 2024 theo thống kê của Oxford. Vậy nên mình hy vọng câu slogan này sẽ như một sự nhắc nhở nhẹ để ta quay về tập trung vào công việc cần giải quyết trước mắt và làm nó trong sự tỉnh thức. Cứ mỗi một công việc được giải quyết, là một nút thắt trong cuộc sống được tháo gỡ để tâm trí ta bớt bộn bề, ngổn ngang. Thêm nữa là bạn sẽ thấy mình sử dụng nhiều biểu tượng 🪷, lí do cũng đơn giản thôi vì hoa sen là loài hoa thường xuất hiện trong Phật giáo song cũng là quốc hoa của quê hương Việt Nam mình, và hoa sen trong tiếng Anh là “lotus” hiệp vần với “focus”.

Related Posts

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *