Turbo 8 is dropping TypeScript

By all accounts, TypeScript has been a big success for Microsoft. I've seen loads of people sparkle with joy from dousing JavaScript with explicit types that can be checked by a compiler. But I've never been a fan. Not after giving it five minutes, not after giving it five years. So it's with great pleasure that I can announce we're dropping TypeScript from the next big release of Turbo 8.

Radium,

Fuck DHH. Fuck his shitty racist blog posts that he inter mixes with inflammatory bullshit that he does to the rails community.

Rails needs him gone desperately

exohuman,
@exohuman@programming.dev avatar

Honestly, having used both extensively at different points for years I can say that I understand his approach for smaller projects, but Typescript coupled with coding standards, makes working with large teams and large code bases 1000x better. Being able to immediately know what data is being passed where at a glance is invaluable.

ShustOne,
@ShustOne@lemmy.one avatar

I think the best take on this is from Rich Harris at Svelte. They are dropping it for internal Dev because they get the same feature set from JSDoc and have no build step, but they keep it for Svelte users who want TS.

superfes,

Cool, Typescript is basically useless.

wafer,

That's bait undefined.

asdfasdfasdf,

My thoughts on this are:

  1. Static typing is objectively better for any non-trivial project / script. I don’t have any idea why anyone who has any degree of experience with this doesn’t understand it.
  2. TypeScript does suck, and I almost understand moving away to JS. JS is like a friend with benefits; it makes no promises, and there are no false hopes between you. Well designed statically types languages like Rust are like marriage; you trust it, and respect it a lot for that. It’s more complex but in a way that gives you confidence. TypeScript, on the other hand, makes promises but lies to you. It also makes you do shitty things to uphold those promises. In a way, that’s worse than making none at all.
noughtnaut,
noughtnaut avatar

I appreciate the imagery you bring here, but I'm quite interested in concrete examples of how TS "makes promises but lies". Don't shoot me (just yet), I'm not a TS developer, just a curious person wanting to become wiser.

magic_lobster_party,

Not OP, but my experience with TS is that the promises of type safety only works if all you’re doing is to interact with other TS code. As soon you need to interact with vanilla JS, which is often, all the type safety guarantees you were promised goes through the window.

So it’s some kind of weird hybrid. I prefer statically typed languages myself, but TS is not really it. It’s nice when it works though.

asdfasdfasdf, (edited )

Sure! Here’s an example: www.youtube.com/watch?v=u1WmiqlrqL0

IMO one of the most fundamental, important aspects of type systems is the invariants defined in your model; if I say a field is an array, that needs to be the source of truth and enforced throughout the program. That’s the whole point. Same with if something is immutable or other aspects of the type.

parpol,

I hope I never have to work with this person. What a shit take.

v_krishna,
@v_krishna@lemmy.ml avatar

There’s likely a lot of reasons one wouldn’t want to work with DHH. It’s unfortunate because he is clearly really brilliant but seemingly fails to realize that a huge amount of software engineering involves working together with other people, many of whom aren’t that brilliant.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • programming
  • PowerRangers
  • DreamBathrooms
  • everett
  • magazineikmin
  • osvaldo12
  • Youngstown
  • InstantRegret
  • slotface
  • ngwrru68w68
  • rosin
  • hgfsjryuu7
  • kavyap
  • tsrsr
  • thenastyranch
  • Leos
  • Durango
  • cisconetworking
  • ethstaker
  • tacticalgear
  • mdbf
  • khanakhh
  • vwfavf
  • cubers
  • modclub
  • GTA5RPClips
  • tester
  • normalnudes
  • anitta
  • All magazines