ARN

TypeScript turns 10 years old

Despite initial skepticism, Microsoft’s typed JavaScript not only survived but continues to thrive after a decade.

After initially being greeted with skepticism, Microsoft’s TypeScript programming language, which brought static types to JavaScript development, has withstood the test of time, a Microsoft official wrote this past weekend.

TypeScript’s 10th birthday occurred on Saturday, October 1, said Daniel Rosenwasser, Microsoft senior program manager for TypeScript, in the blog post.

“To some JavaScript users, a team trying to bring static types to JavaScript might have sounded like an evil plot or a joke,” he said. But TypeScript enabled powerful tools like type checking and rich editor features such as code completion for JavaScript.

Microsoft knew that JavaScript was going to be used everywhere, and developers would want tools to help them write it. “For the team, there was a vision for what TypeScript could be, and in fact, if you look back at our first announcement post, the value proposition was largely the same as it is today.”

Citing the requirements for the fledgling project, Rosenwasser said TypeScript had to be free, open source, and interoperate and evolve with existing JavaScript. It also had to feel like JavaScript. Among the design goals:

  • Imposing no runtime overhead on emitted programs.
  • Aligning with current and future ECMAScript proposals.
  • Preserving the runtime behavior of JavaScript code.
  • Avoiding the additin of expression-level syntax.

TypeScript’s creators focused chiefly on the type system and avoided adding new runtime syntax and behaviors. Today, TypeScript is used by millions of developers, and its popularity is increasing. The language has scored prominently in surveys and language rankings, such as the Pypl Popularity of Programming Language index, CircleCI’s 2022 State of Software Delivery report, and GitHub’s Octoverse report.

TypeScript is leveraged in prominent applications such as the Angular web development framework and the Deno runtime. The current version is TypeScript 4.8. TypeScript 4.9 is in a beta release stage.