Sergey Nivens - Fotolia

TypeScript's co-creator speaks out on TypeScript 4.0

A co-creator of Microsoft's TypeScript programming language says TypeScript 4.0 improves developer productivity and moves toward first-class status in the JavaScript ecosystem.

Luke Hoban, CTO at Seattle-based infrastructure-as-code platform provider Pulumi, co-created TypeScript while working at Microsoft.

In this Q&A, Hoban discusses the beginnings of TypeScript, the features he likes in the newly released TypeScript 4.0 and what he looks forward to in the future for the language.

At Microsoft, in addition to co-creating TypeScript with prominent coders Anders Hejlsberg and Steve Lucco, Hogan developed Go support for Visual Studio Code, was part of the design teams for ECMAScript and C#, and served as technical assistant to the corporate vice president of Microsoft's Developer Division.

Upon leaving Microsoft and prior to his role at Pulumi, Hoban did a stint at AWS, where he led product definition and business planning for EC2 instance families including GPU, field programmable gate arrays and T2 compute offerings.

What are your thoughts on the popularity of TypeScript?

Luke HobanLuke Hoban

Luke Hoban: It's been the fastest-growing programming language in the world for much of its life, and is now among the most used programming languages in the industry. The TypeScript team and community continue to execute exceedingly well on the vision and promise of TypeScript to this day. We are now seeing TypeScript lead a new generation of technologies, beyond just the browser and the server, as the primary language for the evolving modern cloud infrastructure management space.

Why did Microsoft decide to do a superset of JavaScript? What does that even mean?

Hoban: In 2010, Microsoft had many teams across the company, and especially in Office, moving toward building very rich web-based applications, not just the traditional websites. The engineers working on these projects were used to the tools and IDEs they used to manage software complexity on Windows -- with C++ and C# and Visual Studio -- and were struggling to manage the scale of the applications they wanted to deliver on the web.

TypeScript was one of several efforts inside and outside Microsoft in those few years to try and tackle this need -- first for large companies like Microsoft and Google, but ultimately for the broader industry that was all moving in the same direction. Other options, like Google Dart, tried to replace JavaScript, but this proved to present too large a compatibility gap with the web as it was and is. TypeScript, by being a superset of JavaScript, was compatible with the real web, and yet also provided the tooling and scalability that were needed for the large and complex web applications of the early 2010s. Today, that scale and complexity is now commonplace, and is the standard of any SaaS company or internal enterprise LOB [line of business] application. And TypeScript plays the same role today, just for a much larger segment of the market.

What do you like about TypeScript 4.0?

Hoban: There are tons of great new language features that help unblock things for clearer and simpler APIs in 4.0. But the thing that I am most excited about is the focus on editor improvements. The value of TypeScript has always been most significant in the minute-to-minute experience inside an IDE or editor -- getting feedback about errors, hints on how to refactor code or help text to understand an API. [Version] 4.0 takes this further in several important directions, and provides these benefits to users in many IDEs -- from the Visual Studio family to a long list of other editors and IDEs.

How does TypeScript 4.0 help in terms of developer productivity and ease of use?

There are some big opportunities to tighten the developer experience even more now that TypeScript is a truly universal part of these platforms.
Luke HobanCTO, Pulumi

Hoban: TypeScript's biggest contribution has been in bringing amazing developer tools and IDE experiences to the JavaScript ecosystem. By bringing types to JavaScript, so many error-checking, IDE tooling, API documentation and other developer productivity benefits light up. It's the experience with these developer productivity benefits that has driven hundreds of thousands of developers to use TypeScript.

What could have been done better in TypeScript 4.0, or what was left out that should have been included?

Hoban: Honestly, the TypeScript team has done a great job staying focused on the core belief that adding types to JavaScript -- and not inventing a totally different language to try to displace JavaScript -- would be highly valued by developers and the ecosystem. This necessarily meant not doing a lot of things that might have seemed appealing, but it has had a critical impact on the growth and impact of TypeScript. That said, I would still love to see the ecosystem embrace TypeScript in a more first-class way -- native browser support for TypeScript, native Node.js support for TypeScript. There are some big opportunities to tighten the developer experience even more now that TypeScript is a truly universal part of these platforms.

Dig Deeper on API design and management