# A Song of Types and Agents

Roberto Stagi · Ratel · AI Engineer World's Fair 2026: Online Track

> Vì sao TypeScript vượt Python trên GitHub và đang chiếm application layer của AI agent: coding agents, npm, một codebase, Zod end-to-end.

Topics: Agents, Coding Agents, Dev Tools

Canonical: https://homus.dev/talks/a-song-of-types-and-agents

## 1. Một bản ca về ngai vàng của AI

![Slide mở đầu A Song of Types and Agents, How TypeScript is taking the AIron Throne, Roberto Stagi, CTO, Ratel](https://homus.dev/photos/UlFB6efYN5Q-0000.jpg)

Slide mở đầu: "A Song of Types and Agents, How TypeScript is taking the AIron Throne". Cả talk được kể như một bộ truyện kiểu Game of Thrones, chia thành các "Book", và ngai vàng ở đây là chiếc "AIron Throne" của thế giới AI.

Roberto mở đầu bằng lời cảm ơn người nghe, rồi giới thiệu rằng hôm nay anh sẽ kể "bản ca về types và agents" này. Về cơ bản, đây là một bản ca nói về các ngôn ngữ lập trình đánh nhau để giành lấy ngai vàng trong vương quốc AI, và về lý do anh nghĩ rằng TypeScript có thể thực sự đang thắng cuộc chiến đó.

Nhưng hãy bắt đầu từ đầu. Vài năm trước, bất cứ ai build thứ gì trong AI thì gần như chắc chắn đang dùng Python. Chuyện đó không có gì phải bàn cãi. Mọi ngôn ngữ khác đều cúi đầu trước Python, vì Python thống trị (dominion) cả thế giới AI.

![Slide The Iron King: ngai vàng mang chữ Py, bên dưới là các ngôn ngữ JS, Java, C++, R, Go, Rust, Julia đang cúi đầu](https://homus.dev/photos/UlFB6efYN5Q-0032.jpg)

"A few years ago, whenever the subject was AI the throne was Python's, and Python's alone." Python ngồi trên ngai, còn JS, Java, C++, R, Go, Rust và Julia đứng phía dưới như những kẻ chư hầu cúi đầu.

## 2. Book I, The Iron King: Python lên đỉnh

Rồi tới năm 2022, ChatGPT ra mắt. Mọi người bắt đầu tự hỏi, và dần hiểu ra, rằng AI đang trở thành một thứ lớn hơn. Nó đang bước ra khỏi cái bong bóng mà nó đã sống trong suốt nhiều năm, để trở thành một thứ tham vọng hơn. Và cùng với nó, Python, ngôn ngữ tiêu chuẩn của AI, cũng trở nên tham vọng hơn.

![Slide Then in 2022, ChatGPT was released, and Python became more ambitious](https://homus.dev/photos/UlFB6efYN5Q-0056.jpg)

"Then in 2022, ChatGPT was released, and Python became more ambitious." Ngai vàng của Python giờ được chiếu sáng hơn.

Đó là cách mà vào năm 2024, Python leo lên bậc thang và trở thành ngôn ngữ phổ biến nhất trên GitHub. Ai cũng vui: Python cuối cùng đã chạm tới đỉnh.

![Slide So it conquered GitHub too, claiming the first place, kèm trích GitHub Octoverse 2024: AI leads Python to top language](https://homus.dev/photos/UlFB6efYN5Q-0120.jpg)

"So it conquered GitHub too, claiming the first place." Tấm biển bên cạnh ngai trích tiêu đề của [GitHub Octoverse 2024](https://github.blog/news-insights/octoverse/octoverse-2024/): "AI leads Python to top language".

Nhưng họ đâu có biết rằng đang có một kẻ tranh ngôi khác. Một kẻ tranh ngôi đang trỗi dậy để thách thức quyền của Python đối với ngai vàng. Và kẻ đó, như bạn có lẽ đã đoán ra, chính là TypeScript.

![Slide But little did they know, another contender was rising to challenge their claim to the throne, với một dấu hỏi đỏ ở góc](https://homus.dev/photos/UlFB6efYN5Q-0144.jpg)

"But little did they know, another contender was rising to challenge their claim to the throne..." Dấu hỏi màu đỏ ở góc trái là kẻ tranh ngôi chưa lộ mặt.

## 3. Roberto Stagi là ai

Trước khi nói tiếp về TypeScript, Roberto tự giới thiệu. Anh là CTO và co-founder của [Ratel](https://ratel.sh), một context layer cho AI agents. Anh cũng là EU ambassador của [AI Socratic](https://aisocratic.org), một cộng đồng toàn cầu của những người build AI, gặp nhau mỗi tháng một lần để bàn về những tin mới nhất trong AI.

Anh còn là một developer JavaScript lâu năm, về sau chuyển sang TypeScript. Và về cơ bản, đó là lý do hôm nay anh đứng đây nói về TypeScript.

![Slide About me: Roberto Stagi, Co-founder & CTO tại Ratel, EU Ambassador tại AI Socratic, long-time JavaScript chuyển sang TypeScript developer](https://homus.dev/photos/UlFB6efYN5Q-0208.jpg)

Slide giới thiệu: Co-founder & CTO tại Ratel ("a context layer for AI agents"), EU Ambassador tại AI Socratic, "Long-time JavaScript → TypeScript developer". Hai huy hiệu bên phải là House JavaScript, "the old king", và House TypeScript, "the riser".

## 4. Book II, The Shift in the Stack: AI đi lên application layer

Vậy là bắt đầu. Như đã nói, AI bắt đầu đi lên trên stack. Nó dịch chuyển từ tầng infrastructure của các model, của machine learning và cả hệ sinh thái quanh đó, lên tới **application layer**.

Điều đó có nghĩa là AI không còn là thứ bạn train nữa. Nó trở thành thứ bạn ship bên trong ứng dụng của mình. Các ứng dụng bắt đầu có tính năng AI, có những feature chạy bằng AI. Nói cách khác, chúng ta bắt đầu có những ứng dụng biết suy nghĩ.

![Slide AI stopped being something you train. It became something you ship.](https://homus.dev/photos/UlFB6efYN5Q-0256.jpg)

"AI stopped being something you train. It became something you ship." Slide trước đó nêu luận điểm xuyên suốt (the throughline) của Book II: "AI moved up the stack, to the application layer."

Và application layer thì không phải của Python. Application layer đã thuộc về TypeScript từ khá lâu rồi.

![Slide And the application layer is owned by TypeScript, not Python](https://homus.dev/photos/UlFB6efYN5Q-0328.jpg)

"And the application layer is owned by TypeScript, not Python."

Roberto nói rõ: đừng hiểu sai ý anh. Anh vẫn nghĩ Python có chỗ đứng riêng của nó. Anh vẫn nghĩ "bộ não" của agent, và của cả thế giới AI, thực ra vẫn do Python nắm giữ. Toàn bộ phần training, research, GPU serving đều là của Python. Nó đã là của Python từ đầu, và sẽ còn là của Python trong một thời gian dài nữa.

![Slide Python owns the brain; TypeScript increasingly owns the app around it. House Python: training, research, GPU serving. House TypeScript: the agent, the UI, the deploy](https://homus.dev/photos/UlFB6efYN5Q-0336.jpg)

"Python owns the brain; TypeScript increasingly owns the app around it." Cột House Python (The brain) gồm training, research, GPU serving. Cột House TypeScript (The app) gồm the agent, the UI, the deploy.

Thứ đang thay đổi là application layer. Vài năm trước, nếu bạn muốn build một thứ có AI tích hợp sẵn trong ứng dụng, bạn buộc phải dùng Python. Còn ngày nay thì không còn như vậy nữa, và toàn bộ sự dịch chuyển (shift) nằm ở chỗ đó. TypeScript không chỉ sở hữu UI hay back end. Nó đã bắt đầu sở hữu cả **agentic layer** của ứng dụng.

## 5. Book III, The Overtake: tháng 8/2025 TypeScript vượt Python

Đó là lý do vào tháng 8 năm 2025, TypeScript đã vượt Python để trở thành ngôn ngữ được dùng nhiều nhất trên GitHub.

![Biểu đồ: In August 2025, TypeScript passed Python to become GitHub's most-used language. Đường TS 2.64M cắt đường Python 2.59M, JS 2.17M ở dưới, ghi chú khoảng 42k ahead, khoảng 1.6%](https://homus.dev/photos/UlFB6efYN5Q-0432.jpg)

"In August 2025, TypeScript passed Python to become GitHub's most-used language." Biểu đồ đi từ Aug '24 tới Aug '25: đường TypeScript (đỏ) cắt đường Python (xanh) và kết thúc ở 2.64M so với 2.59M, tức hơn khoảng 42k, chừng 1.6%. JavaScript ở mức 2.17M. Slide ghi nguồn là GitHub Octoverse 2024 và 2025, với các điểm năm 2024 được suy ra từ tỉ lệ tăng trưởng theo năm (YoY).

Điều buồn cười là lý do mà báo cáo của GitHub đưa ra vẫn y như cũ. Năm 2024, báo cáo nói "AI leads Python to top language", còn năm 2025 thì nói "AI leads TypeScript to #1". Và trong cả hai lần, như bạn thấy, số developer toàn cầu đều đang tăng vọt. Năm 2025, thậm chí cứ mỗi giây lại có một developer mới gia nhập GitHub.

![Slide GitHub crowned a new #1 two years running, hai tiêu đề Octoverse 2024 và 2025 đặt cạnh nhau](https://homus.dev/photos/UlFB6efYN5Q-0448.jpg)

"GitHub crowned a new #1 two years running." Bên trái là tiêu đề Octoverse 2024, "AI leads Python to top language as the number of global developers surges". Bên phải là [Octoverse 2025](https://github.blog/news-insights/octoverse/octoverse-a-new-developer-joins-github-every-second-as-ai-leads-typescript-to-1/), "A new developer joins GitHub every second as AI leads TypeScript to #1".

Vậy rốt cuộc trong năm đó điều gì đã thay đổi? Đúng là chúng ta bị ngập trong developer mới. Năm 2024, những người mới đến này, hoặc có khi cả những developer sẵn có, với tay tới Python. Còn năm 2025 thì họ với tay tới TypeScript.

![Slide Same reason, both times: AI didn't drain the field. It flooded it. 2024 the newcomers reached for Python. 2025 they reach for TypeScript.](https://homus.dev/photos/UlFB6efYN5Q-0528.jpg)

"Same reason, both times: AI didn't drain the field. It flooded it." AI không rút cạn cánh đồng mà làm nó ngập nước. "2024 the newcomers reached for Python. 2025 they reach for TypeScript."

## 6. Điều gì đã đổi: coding agents grew up

Thứ thay đổi giữa 2024 và 2025, theo Roberto, chính là **coding agents**. Các coding agent đã trưởng thành. Chúng ta thấy những người chơi lớn tự khẳng định vị trí của mình, như Lovable, Claude Code, Cursor, Codex. Chúng trở thành cách mặc định để build ứng dụng. Và ngôn ngữ mặc định mà các coding agent này dùng để build ứng dụng chính là TypeScript.

![Slide What changed in 2025: The coding agents grew up. Lovable, Claude Code, Cursor, Codex, now the default way to build apps.](https://homus.dev/photos/UlFB6efYN5Q-0544.jpg)

"What changed in 2025: The coding agents grew up." Lovable, Claude Code, Cursor, Codex, giờ đã là cách mặc định để build app.

Thêm nữa, ngày nay gần như mọi ứng dụng mới đều là một agent, vì chúng ship kèm những khả năng AI và agentic. Chúng "đói", chúng muốn nhúng AI vào bên trong mình. Nhu cầu tích hợp AI ngày càng nhiều đó không rơi vào Python. Nó rơi vào TypeScript.

![Slide A raven arrives: An AI lab even acquired a JavaScript runtime, kèm thông báo Anthropic acquires Bun as Claude Code reaches $1B milestone, Dec 3, 2025](https://homus.dev/photos/UlFB6efYN5Q-0656.jpg)

"A raven arrives: An AI lab even acquired a JavaScript runtime." Con quạ đưa tin mang theo thông báo "Anthropic acquires Bun as Claude Code reaches $1B milestone", ngày 3/12/2025. Slide ngay trước đó viết: "And now nearly every new app is an agent, hungry to embed AI. That demand lands on one stack: TypeScript. Build your agent's app layer in Python and you're on your own. Build it in TypeScript and the whole realm builds with you."

Và gần như mọi công cụ chúng ta đang dùng để build AI ngày nay đều đã chạy trên TypeScript. Chúng ta thậm chí đã thấy một AI lab mua lại một JavaScript runtime: tháng 12 vừa rồi, [Anthropic mua lại Bun](https://www.anthropic.com/news/anthropic-acquires-bun-as-claude-code-reaches-usd1b-milestone).

## 7. Câu hỏi thật lòng: build agent bằng TypeScript có hợp lý không?

Dù vậy, được rồi, ai cũng đang dùng TypeScript vì coding agents, và nhu cầu nhúng AI vào ứng dụng TypeScript ngày càng nhiều. Nhưng điều đó có nghĩa là chúng ta nên làm vậy không? Roberto gọi đây là một câu hỏi công bằng. Một câu hỏi thật lòng, và đáng được trả lời. Slide Book IV, "The Bannermen", đặt nó thẳng ra: "But does building AI agents in TypeScript actually make sense?"

Theo ý kiến của anh, câu trả lời có thể là có, vì nhiều lý do.

**Lý do thứ nhất:** vì TypeScript là ngôn ngữ mặc định của coding agents hiện nay, ta có thể kỳ vọng chúng sẽ ngày càng giỏi TypeScript hơn. Lý do là chúng ta đang có ngày càng nhiều ứng dụng viết bằng TypeScript, và chính những ứng dụng đó sẽ nuôi (feed) quá trình training của các coding agent thế hệ sau. Rồi chúng ta còn có những tích hợp sâu hơn, native hơn từ các coding agent này tới TypeScript. Nên có thể kỳ vọng chất lượng output bằng TypeScript từ các coding agent sẽ ngày càng tốt. Và vì chúng ta đang build ứng dụng, mà ai cũng muốn ứng dụng có chất lượng cao nhất, thì việc build agent, thứ ứng dụng kiểu mới, bằng TypeScript là có lý.

![Slide Why yes: AI already scaffolds and builds in TypeScript by default. More code in the world plausibly feeds back into the next models. A loop you would expect.](https://homus.dev/photos/UlFB6efYN5Q-0736.jpg)

"Why yes: AI already scaffolds and builds in TypeScript by default." Dòng phụ: càng nhiều code TypeScript trên đời thì càng có khả năng nó quay lại nuôi các model kế tiếp, một vòng lặp đúng như ta đoán. Slide ghi nguồn là các mặc định của v0, Lovable và Bolt năm 2026.

**Lý do thứ hai:** dùng TypeScript là bạn đang khai thác (tap into) thứ có lẽ là package manager giàu có nhất hiện nay. npm có mọi thứ, gần như mọi thứ: authentication, payments, UI, infra. Theo Roberto, đó là cái "đuôi" app layer sâu nhất đang tồn tại. Và một lần nữa, vì AI đang tiến về application layer, chúng ta cần tích hợp với tất cả những thứ đó ngay bây giờ, nên đi qua npm là một cách rất tiện.

![Slide For the model, PyPI wins. For everything around it, you reach into npm. Auth, payments, UI, SaaS, infra: the deepest app-layer tail there is.](https://homus.dev/photos/UlFB6efYN5Q-0840.jpg)

"For the model, PyPI wins. For everything around it, you reach into npm. Auth, payments, UI, SaaS, infra: the deepest app-layer tail there is." Dòng nhỏ trên slide so sánh npm khoảng 3M package với PyPI khoảng 820K, và nói rõ đây không phải chuyện code tốt hơn mà là tầm phủ rộng hơn: các integration mà một app phải ghép lại với nhau đều coi JS là first-class.

## 8. Một codebase, một type chạy từ model tới browser

**Lý do thứ ba:** build bằng TypeScript, bạn có thể dùng một ngôn ngữ duy nhất xuyên suốt codebase. Bạn có thể có một codebase cho cả ứng dụng, vì bạn dùng TypeScript cho agent loop, cho tools, cho backend service, cho UI.

Còn nếu dùng Python, có lẽ bạn sẽ phải tách ra ít nhất thành hai service. Một service dùng FastAPI, Pydantic AI hay gì đó tương tự. Rồi một ứng dụng React riêng, và bạn phải đồng bộ giữa hai bên bằng một contract mà bạn phải tự duy trì và đồng bộ.

![Slide In TypeScript the whole agent is one codebase and one deploy; in Python it is usually two. House TypeScript: the agent loop, the tools, the API route, the UI. House Python: FastAPI + the agent, a separate React app, a hand-kept contract.](https://homus.dev/photos/UlFB6efYN5Q-0912.jpg)

"In TypeScript the whole agent is one codebase and one deploy; in Python it is usually two." House TypeScript, một codebase một deploy: the agent loop, the tools, the API route, the UI. House Python, hai service hai deploy: FastAPI cùng agent, một React app riêng, và một contract giữ bằng tay.

**Lý do thứ tư**, nói tới contract: với TypeScript, bạn có một hệ typing duy nhất, nhất quán trên toàn ứng dụng. Còn nếu dùng Python, tới một lúc nào đó bạn sẽ dừng lại ở một ranh giới (boundary). Bạn sẽ có agent, có thể cả backend, v.v. với một bộ typing nhất quán, rồi ứng dụng React hay Vue hay gì đó lại có một bộ typing khác, và bạn phải đồng bộ giữa hai bộ.

![Slide One type runs from the model's tool call to the browser, while Python's stops at the boundary. Chuỗi TypeScript: schema, tool, stream, Component, the browser. Chuỗi Python: schema, tool, typed server, rồi đứt ở browser JS, untyped.](https://homus.dev/photos/UlFB6efYN5Q-0952.jpg)

"One type runs from the model's tool call to the browser, while Python's stops at the boundary." Chuỗi của House TypeScript đi liền schema → tool → stream → <Component/> → the browser. Chuỗi của House Python đi schema → tool → typed server rồi đứt ở "browser JS, untyped". Dòng chú thích trên slide nói công bằng rằng PydanticAI thực sự có typing; vấn đề là việc vượt qua browser: một agent Python và một UI JS là hai bộ type có thể trôi lệch (drift) khỏi nhau.

Vì vậy nếu dùng TypeScript, bạn có thể dùng [Zod](https://zod.dev) làm một schema duy nhất cho toàn bộ ứng dụng, rất tiện. Bạn định nghĩa type một lần. Bạn dùng type này ở backend và ở phía model, và dùng đúng type đó trong UI. Một type, được check từ đầu tới cuối (end-to-end).

![Slide One Zod schema becomes the tool, the stream, and the typed UI, checked end to end, kèm đoạn code ba bước](https://homus.dev/photos/UlFB6efYN5Q-1032.jpg)

"One Zod schema becomes the tool, the stream, and the typed UI, checked end to end." Ba bước trên slide: định nghĩa type một lần, model điền type đó qua một tool được stream, rồi browser render nó với đầy đủ type. Dòng cuối: "defined once · checked everywhere".

Đoạn code trên slide, chép lại để bạn dùng thử (cú pháp theo kiểu [Vercel AI SDK](https://ai-sdk.dev)):

```
// 1 · define the type once
const Recipe = z.object({
title: z.string(),
steps: z.array(z.string()),
})

// 2 · the model fills it, as a streamed tool
const recipe = tool({ inputSchema: Recipe })
streamText({ model, tools: { recipe } })

// 3 · the browser renders it, fully typed
function Card({ part }: {
part: UIToolInvocation
}) {
return
}
```

## 9. Hệ sinh thái AI đang tăng tốc, và năm lý do gộp lại

**Lý do thứ năm:** build bằng TypeScript hôm nay cũng hợp lý vì chính hệ sinh thái AI trong TypeScript đang tăng vọt. Lấy ví dụ [Vercel AI SDK](https://ai-sdk.dev). Chỉ trong một năm, nó đi từ 1.6 triệu lên 15.1 triệu lượt download mỗi tuần, tức là tăng khoảng 9 tới 10 lần chỉ trong một năm.

Lượt download mỗi tuần của Vercel AI SDK theo con số Roberto nêu: từ 1.6M lên 15.1M trong vòng một năm, gấp khoảng 9 tới 10 lần.

Cuối cùng, để gộp mọi thứ lại: theo ý kiến của Roberto, đúng là build AI agents bằng TypeScript là hợp lý, vì:

- bạn tận dụng được ngôn ngữ mặc định trên thực tế (de facto) của coding agents;

- bạn có một ngôn ngữ duy nhất cho cả ứng dụng và cả codebase;

- bạn tham gia vào một hệ sinh thái AI đang lớn nhanh;

- bạn có typing nhất quán trên toàn ứng dụng;

- và bạn khai thác được package manager giàu nhất hiện có, npm.

![Slide Why the app layer is TypeScript: Put it together, and the app layer keeps landing on TypeScript, năm ý đánh số 01 tới 05](https://homus.dev/photos/UlFB6efYN5Q-1120.jpg)

"Put it together, and the app layer keeps landing on TypeScript." 01 các web app-builder scaffold bằng TypeScript theo mặc định; 02 một ngôn ngữ cho cả app; 03 một hệ sinh thái AI lớn nhanh trong TypeScript; 04 type giữ nguyên từ model tới browser; 05 cái đuôi package app layer rất sâu của npm.

## 10. Book V, The Prophecy: Atwood's Law và những năm tới

Vậy bạn có thể hỏi: tất cả chuyện này có phải là không thể đoán trước? Câu trả lời thực ra là không. Đã có người tiên đoán chuyện này từ nhiều năm trước, gần 20 năm trước. Jeff Atwood từng nói: "Any application that can be written in JavaScript will eventually be written in JavaScript", mọi ứng dụng có thể viết bằng JavaScript rồi sẽ được viết bằng JavaScript.

![Slide The Prophecy: trích dẫn Any application that can be written in JavaScript will eventually be written in JavaScript, Jeff Atwood, Coding Horror, 2007. And now TypeScript is coming for everything.](https://homus.dev/photos/UlFB6efYN5Q-1200.jpg)

Lời tiên tri: câu nói nổi tiếng của Jeff Atwood trên blog Coding Horror năm 2007, về sau được gọi là [Atwood's Law](https://blog.codinghorror.com/the-principle-of-least-power/). Dòng dưới: "And now TypeScript is coming for everything."

Và như có lẽ bạn đã biết, vài năm gần đây chúng ta có thêm một hệ quả (corollary) của câu này: mọi ứng dụng có thể viết bằng JavaScript rồi sẽ được viết bằng TypeScript. Nên về cơ bản, có thể nói rằng mọi ứng dụng, kể cả những ứng dụng agentic, rồi sẽ được viết bằng TypeScript.

Roberto nhắc thêm: những gì anh trình bày hôm nay mới chỉ là sự khởi đầu, chúng ta chỉ vừa mới bắt đầu thôi. Bạn có thể phóng chiếu chuyện này ra vài năm tới, và sẽ thấy rằng ở application layer, khoảng cách giữa TypeScript và Python thực ra sẽ còn nới rộng ra từ đây.

![Slide And we're just getting started: This is just the beginning. Picture the app layer a few years from now, with agents writing most of it. The gap between Python's brain and TypeScript's app layer only widens from here.](https://homus.dev/photos/UlFB6efYN5Q-1248.jpg)

"This is just the beginning. Picture the app layer a few years from now, with agents writing most of it." Dòng nhỏ: khoảng cách giữa "bộ não" Python và app layer TypeScript chỉ có nới rộng từ đây.

Như anh đã nói, model vẫn có thể chạy trên pip, nhưng agents, tức application layer ngày nay, những agent gọi tới model, có lẽ sẽ được ship trên npm. Mọi thứ ở inference layer sẽ là Python, nhưng mọi thứ còn lại có lẽ sẽ là TypeScript hết.

![Slide The model runs on pip. The agent that calls it ships on npm. vLLM, SGLang, the vast majority of open-model inference, Python-led.](https://homus.dev/photos/UlFB6efYN5Q-1304.jpg)

"The model runs on pip. The agent that calls it ships on npm." Dòng nhỏ nhắc rằng vLLM, SGLang và phần lớn inference cho open model vẫn do Python dẫn dắt.

## 11. Train in Python, Build in TypeScript

Roberto để lại một lời khuyên. Hãy tiếp tục train bằng Python; như anh đã nói, anh không thấy chuyện đó sớm biến mất. Nhưng hãy cân nhắc build agents và ứng dụng bằng TypeScript. Vì nếu bạn không làm điều đó ngay bây giờ, nếu bạn bỏ qua TypeScript, có lẽ bạn sẽ bị tụt lại phía sau.

![Slide Train in Python, Build in TypeScript, bên cạnh ngai vàng giờ mang chữ TS](https://homus.dev/photos/UlFB6efYN5Q-1328.jpg)

"Train in Python, Build in TypeScript." Chiếc ngai giờ đã đổi chủ: huy hiệu trên ngai là TS.

![Slide Skip TypeScript now, and you might fall behind](https://homus.dev/photos/UlFB6efYN5Q-1352.jpg)

"Skip TypeScript now, and you might fall behind."

Đó là tất cả phần của anh hôm nay. Roberto cảm ơn mọi người đã lắng nghe, mời quét QR code trên slide cuối để lấy bộ slide, và mời liên hệ với anh dù bạn đồng ý hay không đồng ý, hay có bất kỳ feedback nào, để cùng kết nối.

## Nguồn và liên kết

- [Trang talk chính thức trên ai.engineer](https://ai.engineer/talks/UlFB6efYN5Q) · [Video gốc](https://www.youtube.com/watch?v=UlFB6efYN5Q)

- [Ratel](https://ratel.sh): context layer cho AI agents, nơi Roberto là CTO & co-founder

- [AI Socratic](https://aisocratic.org): cộng đồng AI builder họp hằng tháng

- [Octoverse 2024: AI leads Python to top language as the number of global developers surges](https://github.blog/news-insights/octoverse/octoverse-2024/)

- [Octoverse 2025: A new developer joins GitHub every second as AI leads TypeScript to #1](https://github.blog/news-insights/octoverse/octoverse-a-new-developer-joins-github-every-second-as-ai-leads-typescript-to-1/)

- [Anthropic acquires Bun as Claude Code reaches $1B milestone](https://www.anthropic.com/news/anthropic-acquires-bun-as-claude-code-reaches-usd1b-milestone) · [Bun](https://bun.sh)

- [Vercel AI SDK](https://ai-sdk.dev) · [Zod](https://zod.dev)

- [Pydantic AI](https://ai.pydantic.dev) · [FastAPI](https://fastapi.tiangolo.com)

- [The Principle of Least Power](https://blog.codinghorror.com/the-principle-of-least-power/): bài năm 2007 của Jeff Atwood, nơi ra đời Atwood's Law

- Roberto Stagi: [GitHub](https://github.com/rstagi) · [X](https://x.com/rstagi_) · LinkedIn: linkedin.com/in/rstagi
