TypeScript
Hacker ApprovedRanked 5 of 163 programming languages by recommenders
An expressive type system over JavaScript that catches bugs, shares code between frontend and backend and helps LLMs write better code, though escape hatches and compile-time-only types weaken its guarantees.
An expressive type system over JavaScript that catches bugs, shares code between frontend and backend and helps LLMs write better code, though escape hatches and compile-time-only types weaken its guarantees.
847 people gave an opinion
- recommend it
- 574
- criticize it
- 273
- approval share
- 68%
Recommended in 13 of 13 months
- November 2025: recommended
- December 2025: recommended
- January 2026: recommended
- February 2026: recommended
- March 2026: recommended
- April 2026: recommended
- May 2026: recommended
- June 2026: recommended
- July 2026: recommended
- August 2026: recommended
- September 2026: recommended
- October 2026: recommended
- November 2026: recommended (month in progress)
Owned for 8 years
Median of the 17 owners who said how long they have had it.
Each square is one year.
Why it carries the badge
- 574 people recommend itNeeds 10 or more, met.
- 2.1 recommenders for every criticNeeds 2 to 1 or better, met.
- Recommended in 13 of 13 monthsNeeds 4 or more, met.
The same three rules apply to every product, and the badge can’t be bought. How the badge works
What people say about it
The reasons people give, with the number of comments that give each one. Open a reason to read what they said.
Why people recommend it
Each mark is one comment
Expressive, powerful type system
“it's the programming language that successfully brought high-level type system concepts like type algebra, conditional types, etc. to their widest audiences, and it deserves a ton of credit for that”
Comment from 12 Mar 2026 in “Returning to Rails in 2026” “the never type in TS actually being a proper bottom type + having control-flow based types vastly superior to what rust offers”
Comment from 19 Feb 2026 in “Farewell Rust” “TypeScript's type system is extremely expressive while still allowing you to retain the flexibility of a scripting language.”
Comment from 13 Aug 2026 in “DeepSeek Harness” - Comment from 7 Mar 2026 in “TypeScript 6.0 RC”
- Comment from 10 Jan 2026 in “The Performance Revolution in JavaScript Tooling”
- Comment from 21 Mar 2026 in “OpenCode – The open source AI coding agent”
- Comment from 8 Nov 2025 in “Cerebras Code now supports GLM 4.6 at 1000 tokens/sec”
Shared tooling and rich ecosystem
“typescript is "worse is better" in the right ways that it's a much better choice for both frontend/backend being the same and better type systems”
Comment from 24 Sep 2026 in “Rails World 2026 Opening Keynote [video]” “Having one set of tools to use across everything, being able to share logic and types without needing to go through lossy translation layers”
Comment from 1 Feb 2026 in “The history of C# and TypeScript with Anders Hejlsberg | GitHub” “there's tons of tooling around it, and it's relatively unambiguous that it can solve and express Real World(tm) engineering problems”
Comment from 5 Aug 2026 in “TSON – A JSON superset with immutable, hash-pinned schemas” - Comment from 1 Apr 2026 in “The Claude Code Source Leak: fake tools, frustration regexes, undercover mode”
- Comment from 7 Nov 2025 in “Why I love OCaml (2023)”
Safer than plain JavaScript
“It's hugely beneficial to library users to automatically get correctly type return values from functions without having to do error-prone casts.”
Comment from 23 Nov 2025 in “`satisfies` is my favorite TypeScript keyword (2024)” “my conclusion at the end of my work with Node was that the next time I do anything significant with it, I would start with TypeScript first”
Comment from 6 Oct 2026 in “Friendship ended with Deno, now Node is my best friend” “It might be best to pick languages where it's just harder to screw up, the canonical example being to prefer typescript over JavaScript.”
Comment from 26 May 2026 in “Use Boring Languages with LLMs” LLMs write better TypeScript
“whereas no recent LLM has never ever ever confused .js for .ts or suddenly started writing Node .v12 and angular into a Node 22 and vue project.”
Comment from 2 Mar 2026 in “Go is the best language for agents” “TS provides a significant drop in entropy while benefiting from what is a sweet spot between massive corpus size and low barrier”
Comment from 11 Mar 2026 in “Zig – Type Resolution Redesign and Language Changes” “severe degradation in output quality I have seen from an LLM working with plain JavaScript as opposed to TypeScript”
Comment from 12 May 2026 in “If AI Writes Your Code, Why Use Python?”
What people warn about
Each mark is one comment
Escape hatches undermine type safety
“Most practical type systems are not technically complete, consistent, or reliable, and all have "escape hatches". That doesn't make them useless.”
Comment from 3 Feb 2026 in “Contracts in Nix” “In fact, I'd say (without actually measuring it) that _most_ bugs I've ran into in Typescript are due to someone having bypassed the typing”
Comment from 4 Jun 2026 in “Elixir v1.20 released: now a gradually typed language” “Typescript is a bandaid to make sensible type system on top of Javascript, and it still leaves option open to use Javascript lack of rules.”
Comment from 31 Dec 2025 in “Go Away Python” Adds build step and toolchain complexity
“I personally don't have a need for TS which introduces an extra build step, extra ritual when defining functions, and no performance benefit over vanilla JS.”
Comment from 8 Jul 2026 in “TypeScript 7” “Typescript encourages bad code. It also gets in the way of good code, doesn't really prevent bugs in prod, and complicates the toolchain.”
Comment from 12 Aug 2026 in “Why Go Is an Ideal Language for AI-Assisted Software Engineering” “Something I can't stand with Typescript for example is when the local development server has as strict rules as the production builds.”
Comment from 27 Dec 2025 in “Pre-commit hooks are fundamentally broken” No type information at runtime
“the lack of metaprogramming facilities, no access to the type annotations at runtime, and the lack of operator overloading”
Comment from 30 May 2026 in “Zig: Build System Reworked” “TS being compile time only really limits the language. It was necessary early on to drive adoption, but now days it just sucks.”
Comment from 3 Nov 2025 in “Why we migrated from Python to Node.js” Concerns about Go-based TypeScript 7
“TS7 is going to cause problems for downstream users because Go is the wrong language to use for something that has to run in WASM.”
Comment from 19 Jul 2026 in “Claude Code uses Bun written in Rust now” “TypeScript 7.0 was literally a line by line translation. With essential features necessary for adoption still like a year off.”
Comment from 27 Jul 2026 in “How is the Bun Rewrite in Rust going?”
Other programming languages people recommend
The four most recommended other programming languages, with the same counts for each, so you can compare like for like. The tick on each bar marks the 2 to 1 line the badge needs.
See all 163 programming languages, rankedWhat people said
40 of the 1,121 comments that mention it, newest first. Each links to the original comment.
“The combination of ES5 (and successors), Typescript, and community consensus resulted in everybody using the good parts without even having to think about it”
“my conclusion at the end of my work with Node was that the next time I do anything significant with it, I would start with TypeScript first”
“typescript is "worse is better" in the right ways that it's a much better choice for both frontend/backend being the same and better type systems”
“TypeScript's type system is extremely expressive while still allowing you to retain the flexibility of a scripting language.”
“Typescript encourages bad code. It also gets in the way of good code, doesn't really prevent bugs in prod, and complicates the toolchain.”
“there's tons of tooling around it, and it's relatively unambiguous that it can solve and express Real World(tm) engineering problems”
“TypeScript 7.0 was literally a line by line translation. With essential features necessary for adoption still like a year off.”
“TS7 is going to cause problems for downstream users because Go is the wrong language to use for something that has to run in WASM.”
“It's all under the Apache License 2.0 and certainly big enough that if they started pulling anything untoward, it would see a fork.”
“We've had to paper over it with TypeScript and frameworks that impose constraints just to stop several classes of bugs, and even then it doesn't go terribly well.”
“I personally don't have a need for TS which introduces an extra build step, extra ritual when defining functions, and no performance benefit over vanilla JS.”
“Typescript, Kotlin, Python and Ruby (via Sorbet or DryStruct) are all really easy to write all those data structures and code.”
“In fact, I'd say (without actually measuring it) that _most_ bugs I've ran into in Typescript are due to someone having bypassed the typing”
“the lack of metaprogramming facilities, no access to the type annotations at runtime, and the lack of operator overloading”
“It might be best to pick languages where it's just harder to screw up, the canonical example being to prefer typescript over JavaScript.”
“severe degradation in output quality I have seen from an LLM working with plain JavaScript as opposed to TypeScript”
“TypeScript tried to accurately model (and expose to language services) the actual behavior of JS with regards to null/undefined”
“as it can leverage vast ecosystems of packages, has concurrency features, a solid type system, and decent performance”
“It actually has a very strong type system, while still being a dynamic language that doesn't have to be compiled”
“it's the programming language that successfully brought high-level type system concepts like type algebra, conditional types, etc. to their widest audiences, and it deserves a ton of credit for that”
“TS provides a significant drop in entropy while benefiting from what is a sweet spot between massive corpus size and low barrier”
“TypeScript is smart enough to handle that logic in the if block and know whether animal has been validated as Dog vs Cat”
“It would have been an affront to have a 6.0 that shipped without the means to work for so so many javascript frameworks/libraries.”
“whereas no recent LLM has never ever ever confused .js for .ts or suddenly started writing Node .v12 and angular into a Node 22 and vue project.”
“the never type in TS actually being a proper bottom type + having control-flow based types vastly superior to what rust offers”
“Most practical type systems are not technically complete, consistent, or reliable, and all have "escape hatches". That doesn't make them useless.”
“Having one set of tools to use across everything, being able to share logic and types without needing to go through lossy translation layers”
“I personally used namespaces and I could have only the TypeScript compiler running and producing a single JS file for rapid development”
“a highly pragmatic and well designed general purpose programming language with an unique and very powerful type system”
“Typescript is a bandaid to make sensible type system on top of Javascript, and it still leaves option open to use Javascript lack of rules.”
“Something I can't stand with Typescript for example is when the local development server has as strict rules as the production builds.”
“TS does have some minor things like enums that need to be transformed and are actual code, but those are very few, and leftovers from early days of TS”
“Embracing a functional style in TypeScript is probably the most productive I've felt in any mainstream programming language.”
“it has many advantages having a type system which lets you change whatever you want without fighting against the compiler/transpiler”
“Just because TypeScript allows developers to gently onboard static type checking by disabling or watering down checks, that does not mean TypeScipt is the reason you spend time validating your own bugs.”
“Typescript's type system is very powerful, but without strict compile-time enforcement you still spend a lot of effort”
“It's hugely beneficial to library users to automatically get correctly type return values from functions without having to do error-prone casts.”
“Both Rust and TypeScript have rich type systems that can express many kinds of runtime behavior with just types.”
“the ergonomics are better to me, and the packaging and ecosystem tooling are leaps and bounds above anything else”
“TS being compile time only really limits the language. It was necessary early on to drive adoption, but now days it just sucks.”
Counts come from 1,795,640 Hacker News comments, November 2025 to November 2026. How we count. Report a mistake.