# TypeScript

574 Hacker News commenters recommended TypeScript and 273 criticized it, November 2025 to November 2026. It was recommended in 13 of 13 months; owners who said how long report a median of 8 years (17 owners). It meets the Hacker Approved badge rule.

**Verdict:** 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.

## Why people recommend it

- Expressive, powerful type system (7 comments): "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" ([source](https://news.ycombinator.com/item?id=47348917)) "the never type in TS actually being a proper bottom type + having control-flow based types vastly superior to what rust offers" ([source](https://news.ycombinator.com/item?id=47080145)) "TypeScript's type system is extremely expressive while still allowing you to retain the flexibility of a scripting language." ([source](https://news.ycombinator.com/item?id=49290568))
- Shared tooling and rich ecosystem (5 comments): "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" ([source](https://news.ycombinator.com/item?id=49835002)) "Having one set of tools to use across everything, being able to share logic and types without needing to go through lossy translation layers" ([source](https://news.ycombinator.com/item?id=46847815)) "there's tons of tooling around it, and it's relatively unambiguous that it can solve and express Real World(tm) engineering problems" ([source](https://news.ycombinator.com/item?id=49184729))
- Safer than plain JavaScript (3 comments): "It's hugely beneficial to library users to automatically get correctly type return values from functions without having to do error-prone casts." ([source](https://news.ycombinator.com/item?id=46019922)) "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" ([source](https://news.ycombinator.com/item?id=49978535)) "It might be best to pick languages where it's just harder to screw up, the canonical example being to prefer typescript over JavaScript." ([source](https://news.ycombinator.com/item?id=48277146))
- LLMs write better TypeScript (3 comments): "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." ([source](https://news.ycombinator.com/item?id=47224342)) "TS provides a significant drop in entropy while benefiting from what is a sweet spot between massive corpus size and low barrier" ([source](https://news.ycombinator.com/item?id=47332281)) "severe degradation in output quality I have seen from an LLM working with plain JavaScript as opposed to TypeScript" ([source](https://news.ycombinator.com/item?id=48103146))

## What people warn about

- Escape hatches undermine type safety (3 comments): "Most practical type systems are not technically complete, consistent, or reliable, and all have "escape hatches". That doesn't make them useless." ([source](https://news.ycombinator.com/item?id=46867709)) "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" ([source](https://news.ycombinator.com/item?id=48398227)) "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." ([source](https://news.ycombinator.com/item?id=46443733))
- Adds build step and toolchain complexity (3 comments): "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." ([source](https://news.ycombinator.com/item?id=48838895)) "Typescript encourages bad code. It also gets in the way of good code, doesn't really prevent bugs in prod, and complicates the toolchain." ([source](https://news.ycombinator.com/item?id=49268767)) "Something I can't stand with Typescript for example is when the local development server has as strict rules as the production builds." ([source](https://news.ycombinator.com/item?id=46405928))
- No type information at runtime (2 comments): "the lack of metaprogramming facilities, no access to the type annotations at runtime, and the lack of operator overloading" ([source](https://news.ycombinator.com/item?id=48335250)) "TS being compile time only really limits the language. It was necessary early on to drive adoption, but now days it just sucks." ([source](https://news.ycombinator.com/item?id=45805759))
- Concerns about Go-based TypeScript 7 (2 comments): "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." ([source](https://news.ycombinator.com/item?id=48967212)) "TypeScript 7.0 was literally a line by line translation. With essential features necessary for adoption still like a year off." ([source](https://news.ycombinator.com/item?id=49071243))

## Alternatives hackers recommend

- [Rust](https://hackerapproved.com/p/rust.md): 2039 recommend
- [Go](https://hackerapproved.com/p/go-programming-language.md): 1254 recommend
- [Python](https://hackerapproved.com/p/python.md): 1067 recommend
- [Zig](https://hackerapproved.com/p/zig.md): 743 recommend
- [Java](https://hackerapproved.com/p/java.md): 553 recommend

## Cite as

Hacker Approved, "TypeScript", https://hackerapproved.com/p/typescript/ (counts from 1,795,640 Hacker News comments, November 2025 to November 2026).
