Dữ liệu GitHub Octoverse 2025 đã được công bố, và có một thay đổi đáng chú ý: TypeScript đã trở thành ngôn ngữ lập trình có nhiều người đóng góp nhất trên GitHub vào tháng 8 năm 2025, với 2,636 triệu người dùng hoạt động hàng tháng, bỏ xa JavaScript từng thống trị.
Đây là sự thay đổi lớn nhất trong bức tranh ngôn ngữ lập trình suốt một thập kỷ qua. Nhưng điều thú vị hơn cả con số là nguyên nhân đằng sau—một phần đáng kể của sự xáo trộn này đến từ các công cụ AI.
"Vòng lặp tiện lợi" là gì?
Andrea Griffiths, người ủng hộ nhà phát triển tại GitHub, đã đưa ra khái niệm "Vòng lặp tiện lợi" (Convenience Loop) để giải thích hiện tượng này. Logic như sau:
- Công cụ AI giúp một công nghệ trở nên dễ sử dụng hơn
- Nhà phát triển có xu hướng chọn công nghệ đó nhiều hơn
- Càng nhiều người chọn, tỷ lệ công nghệ đó trong kho mã nguồn càng cao
- Tỷ lệ cao đồng nghĩa với nhiều dữ liệu huấn luyện hơn cho các mô hình AI thế hệ tiếp theo
- AI trở nên mạnh hơn trên công nghệ đó
- Và càng nhiều nhà phát triển chọn nó…
Đây là một vòng quay tự củng cố. Một khi đã khởi động, rất khó để ngắt.
TypeScript chiếm ưu thế tuyệt đối trong vòng lặp này. Lý do nằm ở thiết kế của nó: hệ thống kiểu dữ liệu của TypeScript là tường minh và có cấu trúc, phù hợp với cách các mô hình ngôn ngữ hiểu và sinh mã. Khi yêu cầu AI hoàn thiện một hàm có định nghĩa kiểu đầy đủ, tỷ lệ lỗi thấp hơn nhiều và chất lượng hoàn thiện ổn định hơn so với JavaScript kiểu yếu.
Đây không phải là cảm nhận, mà là sự khác biệt khách quan về chất lượng mã.
Không chỉ là đóng góp từ framework mặc định
Một lời giải thích thường thấy là sự phổ biến của TypeScript chủ yếu đến từ các framework hiện đại như Next.js, Astro đều mặc định sử dụng TypeScript. Đây chắc chắn là một yếu tố, nhưng phân tích dữ liệu của Griffiths cho rằng nó không phải là nguyên nhân chính.
Động lực thực sự là các nhà phát triển nhận thấy trong công việc hàng ngày: trong các dự án TypeScript, chất lượng hỗ trợ từ trợ lý AI cao hơn rõ rệt.
Khi Copilot hoặc Claude Code làm việc trong một cơ sở mã có ràng buộc kiểu, chúng có thể hiểu ngữ cảnh ở cấp độ chữ ký hàm, hiểu mối quan hệ gọi và luồng dữ liệu, từ đó đưa ra các gợi ý có khả năng sử dụng trực tiếp cao hơn, thay vì "mã tham khảo" cần chỉnh sửa nhiều.
Khi các công cụ lập trình AI phát triển từ vài gợi ý mỗi ngày thành đối tác cộng tác suốt ngày đêm, sự khác biệt trải nghiệm này trở thành sự khác biệt năng suất thực sự.
Lựa chọn ngôn ngữ đang có thêm một chiều mới
Trước đây, khi chọn ngôn ngữ lập trình, người ta thường xem xét:
- Hiệu năng có đủ không
- Hệ sinh thái có trưởng thành không
- Nhóm có quen không
- Cộng đồng có sôi động không
Giờ đây, danh sách này cần thêm một mục: chất lượng hỗ trợ của các công cụ AI cho ngôn ngữ đó như thế nào.
Không phải là nó "nên" được thêm, mà là nó "thực tế" đã ảnh hưởng đến lựa chọn của nhà phát triển.
| Ngôn ngữ | Lợi thế hỗ trợ AI | Bất lợi tiềm ẩn |
|---|---|---|
| TypeScript | Hệ thống kiểu rõ ràng, chất lượng hoàn thiện AI cao | Không có bất lợi rõ ràng |
| Python | Nhiều mã huấn luyện ML/AI, cực mạnh trong khoa học dữ liệu | Kiểu yếu gây nhiễu cho AI trong các dự án phức tạp |
| Rust | Việc sinh mã an toàn bộ nhớ đang được cải thiện | Dữ liệu huấn luyện tương đối ít |
| Go | Ngữ nghĩa đồng thời rõ ràng, AI hiểu tốt | Độ sâu hệ sinh thái kém hơn TypeScript/Python |
"Rủi ro lớn nhất của 'vòng lặp tiện lợi' là: những ngôn ngữ có ít mã lịch sử, dù có lợi thế kỹ thuật, cũng sẽ bị bỏ lại ngày càng xa trong vòng quay này."
Lần thay đổi này khác gì so với trước đây
Nhìn lại lịch sử bảng xếp hạng ngôn ngữ GitHub:
- JavaScript thống trị trong một thời gian dài nhờ vị thế tuyệt đối trong phát triển Web
- Python bắt đầu tăng tốc vào khoảng năm 2019, nhờ sự trỗi dậy của khoa học dữ liệu và nghiên cứu AI
- Lần vượt mặt này của TypeScript là lần đầu tiên sự thay đổi bức tranh ngôn ngữ được thúc đẩy trực tiếp bởi chính các công cụ AI
Trước đây, một ngôn ngữ phổ biến vì nó giải quyết được vấn đề trong một lĩnh vực cụ thể. Lần trỗi dậy này của TypeScript có một phần đáng kể được thúc đẩy bởi một lý do duy nhất: "công cụ AI hoạt động tốt hơn trên ngôn ngữ này".
Đây là một sự chuyển đổi tinh tế nhưng quan trọng: quỹ đạo phát triển của hệ sinh thái công nghệ đang ngày càng bị ảnh hưởng bởi phân bố dữ liệu huấn luyện của các công cụ AI, thay vì chỉ được quyết định bởi ưu nhược điểm kỹ thuật của chính công nghệ đó.
Điểm đến tiếp theo của vòng quay
TypeScript đã ổn định vị thế, câu hỏi thú vị tiếp theo là: ngôn ngữ nào sẽ là ngôn ngữ tiếp theo?
Rust đang trở thành lựa chọn phổ biến trong cơ sở hạ tầng AI, dữ liệu huấn luyện đang tích lũy nhanh chóng. Go có lượng lớn mã sản xuất trong lĩnh vực dịch vụ backend, và AI đã hiểu nó khá tốt. Nếu hai ngôn ngữ này xuất hiện dấu hiệu của "vòng lặp tiện lợi" tại một thời điểm nào đó, tác động đến hệ sinh thái JavaScript/Python sẽ rất đáng kể.
Tất nhiên, điều này cũng có thể đi theo hướng ngược lại: Python có lợi thế quá lớn về dữ liệu huấn luyện trong lĩnh vực AI/ML, "vòng lặp tiện lợi" có thể khiến Python tiếp tục mở rộng khoảng cách trong khoa học dữ liệu và phát triển ứng dụng AI—bởi vì chất lượng mã ML do các công cụ AI viết bằng Python rất có thể sẽ cao hơn các ngôn ngữ khác.
Chưa bao giờ có người chiến thắng vĩnh viễn trong hệ sinh thái công nghệ. Nhưng bây giờ, các công cụ AI đã trở thành một phần của trọng tài.
Nguồn tham khảo: CocoLoop, GitHub Data Shows AI Tools Creating "Convenience Loops" That Reshape Developer Language Choices (InfoQ)