Gần đây các bài viết xoay quanh AI và tác động của nó lên kỹ sư phần mềm, hay ngành phần mềm nói chung, ngày càng nhiều. Một trong những yếu tố hay được nhắc đi nhắc là là “taste”. Vậy “taste” ở đây là gì, trong ngữ cảnh ngành phần mềm liệu nó sẽ có vai trò như thế nào?
Đối với mình, “taste” có thể nhìn nhận qua hai khía cạnh chuẩn mực chất lượng (quality standard) và gu cá nhân (personal preference).
Chuẩn mực chất lượng là gì? Có nhiều cách để định nghĩa, ở đây, mình sẽ định nghĩa quality standard là những quy tắc đo đếm được mà chúng ta dùng để đánh giá một phần mềm là tốt. Nhưng tiêu chí này có thể bao gồm nhưng không giới hạn ở những điều sau:
- Tốc độ và sự ổn định: Ứng dụng phải chạy nhanh, mượt mà, không có lỗi vặt.
- Giao diện người dùng (UI) trực quan: Các nút bấm, menu được đặt ở vị trí hợp lý, dễ tìm, dễ hiểu. Người dùng không cần phải “học” cách sử dụng một tính năng cơ bản.
- Trải nghiệm người dùng (UX) liền mạch: Luồng sử dụng sản phẩm phải logic và không gây khó chịu. Mọi tương tác đều cho cảm giác trôi chảy và có chủ đích.
- Sự chỉn chu trong chi tiết: Từ con chữ (typography) dễ đọc, khoảng cách giữa các thành phần được căn chỉnh hợp lý, cho đến những hiệu ứng chuyển động (animation) tinh tế.
Trước đây, để đạt được chuẩn mực thì đòi hỏi một hoặc nhiều người có kinh nghiệm và tay nghề cao cùng phối hợp. Nhưng giờ đây, khi AI đang tự động hóa khâu sinh code rất nhiều, thì chi phí cần thiết để đạt được những chuẩn mực này sẽ càng ngày càng thấp. Những tiêu chí chất lượng trong quá khứ sẽ trở thành yêu cầu tối thiểu của bất cứ phần mềm nào được tạo ra.
Và khi đó, để một phần mềm trở nên khác biệt thì “gu cá nhân” của người phát triển sẽ thành quan trọng. Gu cá nhân trong phần mềm lúc này sẽ phản ánh thông quan:
- Phong cách thẩm mỹ: Sản phẩm của bạn theo đuổi sự tối giản (minimalism) của Apple, sự phá cách (brutalism) hay sự vui tươi, màu sắc?
- Triết lý sản phẩm: Những giá trị mà bạn tin tưởng và gửi gắm vào sản phẩm. Bạn ưu tiên sự đơn giản hay sự đa tính năng? Bạn muốn người dùng dành nhiều thời gian trên ứng dụng hay hoàn thành công việc nhanh nhất có thể?
- Giọng văn (Tone of Voice): Những thông điệp, thông báo lỗi, … sẽ có tông giọng như thế nào?
Đây là những lựa chọn không có đúng, sai tuyệt đối. Nó phụ thuộc vào tầm nhìn của người sáng tạo và đối tượng người dùng mà họ hướng tới. Đây chính là thứ AI không thể tự quyết định được.
Bạn có thể yêu cầu AI tạo ra 100 mẫu thiết kế giao diện, nhưng chính bạn, với “gu” của mình, mới là người chọn ra phương án duy nhất thể hiện đúng tinh thần sản phẩm và có khả năng kết nối với người dùng. Bạn có thể dùng AI để viết nội dung, nhưng chính bạn phải định hình giọng văn và thông điệp cốt lõi.
Tính ra, gu cá nhân không phải một chủ đề mới. Khi làm lâu trong ngành, bạn sẽ thấy các lập trình viên kinh nghiệm cũng hình thành những lựa chọn riêng về cách thiết kế class, interface, API, modules, … Nhưng điều này thường chỉ xuất hiện khi kinh nghiệm đủ dày, vì gu cá nhân chỉ được hình thành sau rất nhiều lựa chọn tại những thời điểm khác nhau trong quá khứ, và mỗi lựa chọn đều tốn nhiều thời gian và công sức để triển khai.
Trong tương lai, khi con người có thể đưa ra những lựa chọn và thực thi nhanh lựa chọn đó, một sự bùng nổ về gu cá nhân có thể xuất hiện khi ai cũng có thể xây dựng một phần mềm của mình và cho mình hoặc nhóm người giống mình.
