TypeScript 7.0 Beta, Undocumented const Generics, and the Software Brain

Published on 24.04.2026

bash — 80×24$pnpm dev▶ ready on localhost:3000$git commit -m "feat: og images"$npx tsc --noEmit✓ 0 errorsCODING

TypeScript 7.0 beta: the Go rewrite is here

TLDR: TypeScript 7.0 beta has arrived, featuring a full port of the compiler from TypeScript/JavaScript to Go, delivering roughly 10x faster performance with parallel parsing, type-checking, and emitting.

Summary: The most significant change in TypeScript's history is here. The team has rewritten the entire compiler from TypeScript/JavaScript to Go, and the results are impressive. We're looking at roughly 10x faster compilation across the board. But what does this actually mean for developers? The new native compiler enables parallel parsing, type-checking, and emitting all happening simultaneously, not sequentially. That's the key architectural shift. Companies like Bloomberg, Vercel, and VoidZero are already running it in production, which tells you this is more than experimental. Installation is straightforward with npm install -D @typescript/native-preview@beta and you run it via the tsgo command. There are breaking changes to be aware of: they removed deprecated options like target: es5, moduleResolution: node, and AMD/UMD/SystemJS modules. The programmatic API is coming in version 7.1, and the stable release should drop within two months.

Key takeaways:

  • The compiler rewrite delivers approximately 10x performance improvement over TypeScript 6.0
  • Parallel parsing, type-checking, and emitting replace the previous sequential pipeline
  • Breaking changes include removal of deprecated options like target: es5 and moduleResolution: node

Why do I care: This is a massive deal for developer experience. If you've ever waited minutes for TypeScript to finish type-checking on a large codebase, this rewrite changes the calculus entirely. The parallel pipeline means type-checking no longer blocks emitting, so your edit-refresh cycle could drop from seconds to milliseconds. However, the removal of target: es5 means you'll need to update your tsconfig if you're supporting older browsers. For teams on modern tooling, this is essentially a free performance boost with minimal migration effort.

TypeScript 7.0 beta: the Go rewrite is here

I Can't Believe This TS Feature Has No Documentation

TLDR: TypeScript has an undocumented feature called const generics that automatically applies as const semantics to generic type parameters, giving you the strictest possible literal type inference without manual assertions.

Summary: Here's something wild: there's been an undocumented feature hiding in TypeScript this whole time. It's called const generics, and you add the const keyword before a generic type parameter. What does it do? It automatically applies as const semantics to any value passed into the function. This gives you the strictest possible literal type inference without requiring callers to manually append as const everywhere. The feature works silently, without documentation, which is fascinating given how useful it is. You essentially get tuple types preserved as readonly tuples, literal types maintained as literals, and object properties locked as readonly without any extra effort on the caller's part.

Key takeaways:

  • Const generics automatically apply as const semantics to generic type parameters
  • Enables strictest literal type inference without manual type assertions
  • The feature remains undocumented despite being stable and useful

Why do I care: Before today, if you wanted literal types preserved through generics, you had to jump through hoops with as const assertions at every call site. Now you can bake that behavior into your generic constraints. This is particularly relevant for anyone building type-safe APIs where you need guarantee that callers aren't accidentally widening your carefully crafted literal types into broader string or number types. The lack of documentation is puzzling, but the feature clearly works.

I Can't Believe This TS Feature Has No Documentation

Learn Software System Design

TLDR: A free 2-hour freeCodeCamp course covers foundational to production-ready system design concepts including databases, scaling strategies, load balancing, and security.

Summary: System design remains one of the most challenging areas to self-learn, and here's a free comprehensive resource to fill that gap. The freeCodeCamp course covers the full spectrum from foundational concepts to production-ready patterns. You'll learn about database types: SQL versus NoSQL versus Graph databases, and when each makes sense. Vertical versus horizontal scaling, load balancing strategies, health checks, and identifying single points of failure. The course also walks through API design and protocols including REST and GraphQL, the TCP and UDP transport layer differences, and covers authentication, authorization, and security fundamentals. It's essentially a condensed computer science education in system architecture, all free.

Key takeaways:

  • Covers database types, scaling strategies, load balancing, and failure identification
  • Includes API protocols, transport layer concepts, and security fundamentals
  • Free 2-hour course from freeCodeCamp on foundational to production-ready concepts

Why do I care: System design interviews are typically where frontend developers hit a wall. We're great at UI and interactions, but ask us to design a rate limiter or explain database choice tradeoffs, and things get fuzzy. This course addresses exactly those gaps. Even experienced developers benefit from formalizing knowledge they might have picked up haphazardly. The breadth is impressive for a 2-hour resource.

Learn Software System Design

Beware Software Brain

TLDR: Nilay Patel argues the "software brain" worldview explains the growing gap between tech industry enthusiasm for AI and widespread public hostility toward it.

Summary: This is a more philosophical piece, but it's worth your time. Nilay Patel introduces the concept of the "software brain" — a worldview that reduces everything to databases, algorithms, and automatable loops. The core thesis is fascinating: it explains why tech people are so enthusiastic about AI while the broader public has grown hostile. The polling data shows majorities of Americans, especially Gen Z, view AI negatively. There's a fundamental disconnect between how technologists see the world and how everyone else does. The software brain flattens human experience into optimization problems, and that reductionism is exactly what people push back against.

Key takeaways:

  • "Software brain" describes a worldview reducing everything to data and algorithms
  • Explains the gap between tech industry AI enthusiasm and public hostility
  • Polling shows majorities of Americans, especially Gen Z, view AI negatively

Why do I care: This matters because we build these systems. Understanding why the public feels threatened isn't just good for empathy, it's good for building better products. When your non-technical stakeholders resist features, it might not be resistance to progress — it might be an instinct that something is being lost in the optimization. The solutions we build encode values whether we intend to or not.

BEWARE SOFTWARE BRAIN

Trees, from Pierre

TLDR: @pierre/trees is an open source React file tree rendering library with automatic virtualization, keyboard navigation, and drag-and-drop functionality.

Summary: Here's a specialized but useful library for anyone building developer tools. @pierre/trees handles file tree rendering in React applications, and it does so with some impressive defaults. Automatic virtualization handles tens of thousands of items without performance degradation. Built-in keyboard navigation and WCAG 2.1 accessibility are included. Drag-and-drop file and folder movement works out of the box. Git status indicators integrate naturally, and there's search with multiple modes. The library is currently in v1.0.0-beta.3, so it's not yet stable, but the feature completeness is notable.

Key takeaways:

  • Automatic virtualization supports large trees with tens of thousands of items
  • Includes keyboard navigation and WCAG 2.1 accessibility compliance
  • Features drag-and-drop, git status indicators, and multiple search modes

Why do I care: If you're building any file browser, IDE-like interface, or dashboard with hierarchical data, this library could save weeks of work. The accessibility consideration is particularly noteworthy — most tree components scrimp on keyboard navigation, but this one delivers it built-in. For commercial projects, the virtualization alone justifies adoption.

Trees, from Pierre