Why Turbo’s Creator Dropped TypeScript and What It Means for Front‑End Dev
The article explains why Ruby on Rails creator David Heinemeier Hansson removed TypeScript from Turbo 8, outlines community backlash, and discusses the broader implications for JavaScript‑centric front‑end development and the Hotwire ecosystem.
Reader’s note: the author claims TypeScript is still not as good as native JavaScript.
David Heinemeier Hansson, the creator of Ruby on Rails, has removed TypeScript from the upcoming Turbo 8 framework, stating that he has never been a fan of TS. Many Turbo users protested, calling the decision hasty and disruptive.
In the GitHub pull‑request discussion about removing TypeScript, a comment read, “It’s a step backward for both library users and contributors.” The comment has received 357 likes and only 8 dislikes, indicating broad support.
Turbo is a framework for delivering HTML pages, aiming to dramatically reduce the amount of custom JavaScript. It is sponsored by Hansson’s company 37signals, which also produces the Basecamp project‑management platform and the Hey messaging system.
Turbo powers Hotwire and stands for “HTML over the wire,” preferring to send HTML itself rather than JSON data or JavaScript code.
Although Turbo is not among the most popular frameworks, Ruby on Rails is globally renowned and is used by major sites such as GitHub and Shopify.
Hansson explained that TypeScript “pollutes the code with types, makes my development experience unpleasant, and often brings considerable sadness. Things that should be easy become difficult.”
David Heinemeier Hansson praised the “glorious spirit” of JavaScript without TypeScript on Twitter.
However, most community members feel confused and disappointed, not only because of the change itself but also because of how the change was made.
One developer warned, “Switching back to JS means many Hotwire ecosystem packages will break. All currently open PRs are now completely outdated. From my perspective, some people are very good candidates. IDEs will no longer provide as much autocomplete as before.”
Another developer complained, “The change was rushed, ignoring all public comments… This sets a precedent. Will Ruby on Rails develop the same way? Just because one person had a whim?”
Hansson responded, “We send love and appreciation to contributors who like TypeScript. This is a debate whose arguments are unlikely to change anyone’s fundamental stance, so I won’t try to force it.”
He added, “We now write all client‑side code at 37signals in pure JavaScript, and the same applies to any internal libraries. This will keep everyone consistent on that point.”
Microsoft’s Anders Hejlsberg invented TypeScript because he believed that using a strongly‑typed language for complex applications makes them more robust and easier to maintain.
TypeScript’s popularity in the programming community shows that many agree with this view, and some of its concepts (including type annotations) are being incorporated into ECMAScript, the official name of the JavaScript standard. TypeScript code compiles to JavaScript, which can run in browsers or environments such as Node.js.
Author: 万能的大雄
21CTO
21CTO (21CTO.com) offers developers community, training, and services, making it your go‑to learning and service platform.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
