Microsoft lead engineer: Programming language TypeScript took off thanks to Google's Angular

TypeScript, Microsoft's strongly typed superset of JavaScript, might not be the hit programming language it is today were it not for Google writing its Angular JavaScript framework in it, according to the lead engineer on Microsoft's TypeScript team.
Developer
Microsoft took the wraps off TypeScript in 2012, a new take on JavaScript from Microsoft Technical Fellow and father of C# Anders Hejlsberg. Eight years on, in Stack Overflow's 2020 developed survey, TypeScript was the second 'most-loved' language, behind Rust and just ahead of Python, a top-three programming language.
Microsoft designed TypeScript for large JavaScript web applications, and it is now a top-10 language in Redmonk's programming language popularity language rankings.
SEE: Hiring Kit: Python developer (TechRepublic Premium)
Programmer adoption is key to every language's survival, and according to Ryan Cavanaugh, Microsoft's engineering lead for TypeScript, a pivotal moment on that front happened in 2015 when Google decided Angular 2 would be built using TypeScript.
Stack Overflow's Ryan Donovan asked Cavanaugh whether a specific event kicked off TypeScript adoption, but at that stage Cavanaugh recalls it could have become a language used only by the Angular community.
"Oh, it was definitely Google announcing that they were going to use TypeScript with Angular," said Cavanaugh.
"That's kind of lost to time now. But if you look at the graphs for TypeScript, literally any graph – GitHub stars, downloads, pull requests – you can see the exact point when that Angular announcement came out. And the graph just changes. It never looks back. You can't see that little bend in the curve anymore because the curve kept going. That was a real inflection point.
"And I think it's been interesting that people thought at the time that TypeScript was going to be just what Angular people use and not much else. That didn't turn out to be the case. Obviously, we're still popular among Angular devs. But that was a real momentum builder for us."
Cavanaugh also offers his take on why Microsoft targeted the 20-year-old JavaScript for TypeScript and how it improves the language.
TypeScript is just one more thread in Microsoft's long history with JavaScript. JavaScript creator and Mozilla project co-founder Brendan Eich recently outlined how the scripting language helped shape today's web since it emerged in the 1990s with Netscape, Sun's Java language and Microsoft's early versions of Internet Explorer, Visual Basic and JScript.NET.
Cavanaugh says JavaScript gets a "bad rap" as a language, but argues it is still a "great functional language" that lets developers be dynamic and international, albeit without TypeScript's static type checking, which comes in handy when refactoring a large amount of code that works first time when run afterwards.
"TypeScript shores up that last rough edge on JavaScript and gives you something that's just really fun to work with and runs everywhere. I think if TypeScript were a language that was built on top of a less universal language or a less fun language, I don't think it would be as successful. It's really taking something that's great and making it better."
But part of JavaScript's success comes down to it starting in the browser, and thanks to the server-side runtime Node.js and other tools, the server too.
"JavaScript started at the bottom – or maybe the top – as a very high-level language that only works in browsers and then worked its way down until it was something that you could run at a lower level interacting with the file system," noted Cavanaugh.
However, no browser currently supports TypeScript, which is instead typically transformed into JavaScript before running in the browser.
SEE: JavaScript creator Eich: My take on 20 years of the world's top programming language
Cavanaugh offered some thoughts on Deno, the new server-side JavaScript runtime from the creator of Node.js, which attempts to address Node.js design problems and provides first-class support to TypeScript.
He thinks Deno is "cool" on the server side, but doubts whether it makes sense for clients to support TypeScript.
"I love that someone's built this tech and is seeing what would happen with it," he said of Deno. "I think the browser case is really interesting because it seems like it makes sense. Then, every time I walk five steps ahead in my head, it all breaks down for me."