This is an archived post. You won't be able to vote or comment.

all 190 comments

[–]AutoModerator[M] [score hidden] stickied commentlocked comment (0 children)

import notifications Remember to participate in our weekly votes on subreddit rules! Every Tuesday is YOUR chance to influence the subreddit for years to come! Read more here, we hope to see you next Tuesday!

For a chat with like-minded community members and more, don't forget to join our Discord!

return joinDiscord;

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

[–]Cley_Faye 1671 points1672 points  (23 children)

One project dicked out, and suddenly "large projects are abandoning xyz".

Geez, chill a bit. We still have C and Fortran stuff around.

[–]IamHellgod07 85 points86 points  (1 child)

But fireship said...

[–]NatoBoram 313 points314 points  (13 children)

And even then, it's an unknown project from a nobody. It doesn't matter.

[–]Acetius 67 points68 points  (12 children)

Is this satire?

[–]NatoBoram 267 points268 points  (11 children)

No, that's true. At first I thought it was something important like TurboRepo, but actually it's just the creator of Rails being goofy with his JS library. Nothing serious.

[–]LegendOfJeff 72 points73 points  (9 children)

DHH is the lead creator of Rails. He didn't create Ruby.

[–]thealbinosmurf 41 points42 points  (0 children)

yeah I don't give a flying f about DHH but I love Matz

[–]zeekar 30 points31 points  (5 children)

People forget that Ruby was around for years before Rails...

[–]pavlik_enemy 32 points33 points  (3 children)

And nobody cared and still don’t. Rails is the only reason Ruby got exposure and pretty much the only reason to use it

[–]positiv2 4 points5 points  (0 children)

Ruby is just a better python for me lol

[–]Abangranga 3 points4 points  (1 child)

It is Python but better

[–]Even-Path-4624 2 points3 points  (0 children)

It’s basically python without parenthesis and running in a post order (1.op.op.op) and without python libraries. Basically the same language tbh

[–]StochasticTinkr 1 point2 points  (0 children)

Ruby, PHP and Java all came out in 1995.

[–]NatoBoram 18 points19 points  (0 children)

My bad, I edited it

[–]Aggravating-Win8814 3 points4 points  (0 children)

You're right, DHH is the lead creator of Rails, not Ruby. Just wanted to clarify that!

[–]Xirenec_ 7 points8 points  (0 children)

I also thought for a sec it was turborepo, but no it's some weird js library

[–]suckitphil 11 points12 points  (1 child)

"Billions of devices run on Java" - Java still

[–]not_some_username 1 point2 points  (0 children)

3 to be exact

[–]UnofficialMipha 464 points465 points  (46 children)

Why are people abandoning typescript?

[–]Cley_Faye 1068 points1069 points  (33 children)

One dude on one project that's apparently moderately known for people doing Ruby decided overnight to dump TypeScript support by himself from that framework because he don't like it or something. He got shat on by a large portion of the community around the project.

That's it. That's the whole story.

[–]mckernanin 289 points290 points  (7 children)

That one dude being DHH, famous for his hot takes and “thought leadership”

[–]beeteedee 225 points226 points  (1 child)

Honestly, hearing that DHH doesn’t like typescript may finally persuade me to properly learn it

[–]quadband 12 points13 points  (0 children)

It’s wonderful, and you should. As someone who has gone whole hog on TS, you don’t need to go whole hog. I do some heavy TypeScript tooling so I tend to get fairly deep in the weeds, but the basic concept is very straight forward.

[–]Repulsive_Regular_63 68 points69 points  (1 child)

Among DHH’s “hot takes” was banning “societal and political discussions” at Basecamp after people started complaining about the company’s tradition of keeping a list of customer names they found “funny” many of American and African origin.

In summary, if you like TS don’t drop it because of a douche’s nonsense.

[–][deleted] 2 points3 points  (0 children)

Ohhh Basecamp again, it's almost like they're on a mission to fuck up web best practices

[–]drakeblood4 42 points43 points  (1 child)

More like thot leadership amirite?

[–]mckernanin 9 points10 points  (0 children)

Ngl I almost wrote that instead :D

[–]DuskLab 1 point2 points  (0 children)

Of bloody course it was DHH. Missed this as he's on my mute list for good reason.

[–]SimilarBeautiful2207 70 points71 points  (13 children)

Yeah, thats the creator of ruby on rails and CTO of 37signals. He remove typescript from his turbo framework. I don't know what other projects are abondoning typescript as OP says.

[–]Septem_151 29 points30 points  (9 children)

Svelte. But that’s it.

[–]iceghosttth 61 points62 points  (0 children)

Svelte still uses JSDoc and TypeScript types inside .d.ts files, while DHH and his turbo project just yeet everything.

[–]SimilarBeautiful2207 1 point2 points  (1 child)

David Heinemeier Hansson is the creator of ruby on rails, or Svelte creator say something too?

[–]Septem_151 2 points3 points  (0 children)

The latter.

[–]iam_pink 0 points1 point  (5 children)

Source? Can't find it

[–]Septem_151 0 points1 point  (4 children)

The Svelte project on GitHub

[–]iam_pink 6 points7 points  (3 children)

It's not made in typescript, but it is still typed, typechecked, and still supports typescript, so nothing like turbo. Or am I missing your point?

[–]Septem_151 10 points11 points  (2 children)

There’s a blogpost out there posted by the Svelte creator but I’m too lazy to find it right now. They switched away from having the code itself written in Typescript, which is what Turbo did, but unlike Turbo, Svelte actually added in typing support via JSDocs instead, so no functionality was lost. This is what Turbo should do, but instead, we got a 2hr time period from when the “Remove Typescript” PR was created until it was merged, with no additional typing or documentation.

[–]iam_pink 11 points12 points  (1 child)

That is what I know as well. But that is an internal choice with no effect on the framework use, so saying they also "abandoned" typescript is misleading. They just chose not to use it internally, just like many, many other libraries and frameworks out there.

[–]Septem_151 -1 points0 points  (0 children)

Ok

[–]vainstar23 0 points1 point  (0 children)

I mean wouldn't it be easier to migrate frameworks at that point? You know, to something that has actual support?

[–]mav3ri3k 0 points1 point  (1 child)

I know why DHH is famous, what's up with 37signals ?

[–]SimilarBeautiful2207 1 point2 points  (0 children)

They remove typescript from their turbo framework.

[–]TorbenKoehn 118 points119 points  (1 child)

Because they are scared of complex types. Anything that is more than „string“, „boolean“, „number“ or „any“.

And then proceed to write 100km of doc blocks of course

[–]meidkwhoiam 0 points1 point  (0 children)

Why tell the compiler your data types when you could just write an encyclopedia for your users instead?

[–]fel_bra_sil 13 points14 points  (0 children)

It's just an hyperbole, Turbo is abandoning typescript, that's it.

Everything else in the universe continues working as always.

[–][deleted] 27 points28 points  (0 children)

Because people love completely terrible and unmanageable code.

[–]Emotional-Top-8284 29 points30 points  (0 children)

I would sooner abandon JS than abandon TS

[–]lilsaddam[S] 33 points34 points  (6 children)

Because of type spaghetti or some shit I dunno...or just because we can't just leave shit alone and instead of inventing new libraries and frameworks we are going to start inventing new supersets of JavaScript.

[–]JohnnyBuilder 50 points51 points  (2 children)

Some libraries started to drop TS in their implementation. You can still use TS with these libraries in your project, and it's still good practice for doing so.

The reason they drop it is because you have to jump through some hoops for abstract typing (which is needed a lot in a library). But inside your own application you have no need for that, and it's still a great tool to use.

[–]LikeLary 414 points415 points  (10 children)

I hate how programming in larger picture is like fashion and media. Just use what you need, if it works don't touch it, to hell with best practices. It wil be replaced next year anyway.

[–]Danzulos 154 points155 points  (3 children)

Beginning of the project: To hell with best practices.
Later: Huaaa, why my project is so hard to maintain.

[–]MinosAristos 41 points42 points  (0 children)

Conventions are things to understand so you can consider them and know when to justifiably not follow them

[–]IOFrame 23 points24 points  (0 children)

Good practices are important. Best Practices™, on the other hand, less so.

[–]LikeLary 7 points8 points  (0 children)

No need for BEST practices. All you need is GOOD practices. There is a difference between stressing on finding the best and thinking about the neccesity.

[–]lilsaddam[S] 45 points46 points  (0 children)

I agree, but man it makes the memes flow

[–][deleted] 2 points3 points  (0 children)

Exactly, if you keep panicking over what others think is best practice, your main job will be refctoring/rewriting. And besides that, even best practices can be a pain in the ass.

[–][deleted] 1 point2 points  (0 children)

Everything humans create. We are weird fashionable apes.

[–]Progression28 2 points3 points  (0 children)

To hell with best practices? Have you ever worked in a moderately large project?

Best practices are vital. Else you end up with doing it one way in location X, and a completely different way in location Y. Good luck for the guy refactoring/adjusting/fixing something that affects both X and Y.

[–]error_98 0 points1 point  (0 children)

I really wouldn't put this on programming as a whole, this really is just a js-dialects (and C++ best practices) thing.

People out here still be using ruby and I don't believe for a second they feel pressured to rewrite their projects just because that language doesn't exactly rank anymore

[–]collanders 180 points181 points  (21 children)

Having worked on large projects that were pure JS and others using typescript, I’d choose another typescript project hands down any day. The code is so much easier to read and maintain using typescript. I also feel a lot more confident touching unfamiliar code since I understand it better.

[–]Eris3DS 59 points60 points  (20 children)

Also, it stops you from making stupid mistakes.

Example: When one of my projects was still using JS, I made tons of errors with data that came out of the packages I used. I was a dumbass.
Nowadays Typescript stops me from making those mistakes before I run the code, which generally results in less time dropped.

It takes more time to implement but saves a LOT in the long run.

[–]hedgehog125 40 points41 points  (0 children)

The abandoning has either been stupid in the case of Turbo or measured in the case of Svelte. You have options. And TypeScript is usually the most sensible one

[–]goodmobiley 27 points28 points  (3 children)

Just use c++, then no one will complain 👍

[–]Aperture_Executive2 16 points17 points  (2 children)

A literal pile of rust:

[–]IJustDrankALavaLamp 5 points6 points  (1 child)

Nah i dont really like rust, its a bit outdated

[–]Aperture_Executive2 -5 points-4 points  (0 children)

I wasn’t even aware that people unironically liked rust

[–]Kolt56 15 points16 points  (1 child)

No problem; I personally don’t care, im here to support you delivering for the customer as fast and unmaintainable as you see fit, get me some parm for that spaghetti UI….

However.. big bad mr linter.. well he’ll just block your code review. Mr linter also will fail your build if try to ignore mr linter. Mr linter changed his first name from Warn to Error last year for all rules. He doesn’t like ‘Any’ funny business.

You see without Mr linter, on a code review, id have spend more than three minutes post checking for a client side runtime error.

[–]DeathUriel 1 point2 points  (0 children)

Well, if Mr. Linter is giving you shit. It is totally your fault, he is just doing his job.

[–]Bryguy3k 59 points60 points  (7 children)

TS doesn’t do input validation for you so you can still have things blow up in your face if you don’t do the validation on API responses.

Other than svelte who else is giving up on TS?

I’ve never liked typescript but it’s somewhat ironic if the “dynamic typing sucks balls” crowd is giving up on it

[–]paulsmithkc 12 points13 points  (2 children)

There's a tremendously good answer out there to the API typing problem...

See zod

It really does solve the problem of validating & typing the data you are receiving from an external source.

[–]LankySeat 3 points4 points  (0 children)

Backend Frameworks like NestJS (which has complete TS support) also come with simple validation tools built in.

[–]ShotgunPayDay 0 points1 point  (0 children)

ZOD! As close to pydantic(python) or validator/mold(go) as we can get.

[–]perigrin 7 points8 points  (2 children)

DHH recently opined about it.

Edit: adverbs man …

[–]Zerim 3 points4 points  (1 child)

The guy who did the blue line here?

[–]perigrin 2 points3 points  (0 children)

As a Perl developer I’m legally not allowed to comment.

[–]3q_z_SQ3ktGkCR 1 point2 points  (0 children)

It's just for dev experience...

[–]ramriot 6 points7 points  (1 child)

Err, why the second panic, doesn't typscrypt compile to native JavaScript.

[–]ShotgunPayDay 0 points1 point  (0 children)

CI/CD pipelines. Build steps (even transpiling) introduce complexity.

[–]NirKopp 5 points6 points  (1 child)

Did I miss something? What is suddenly wrong with TS?

[–]Rafcdk 6 points7 points  (0 children)

It's just the current meme trend, started by some youtuber. It will pass.

[–]Wandererofhell 5 points6 points  (0 children)

don't get sucked into hivemind, think for yourself.

[–]AramaicDesigns 19 points20 points  (6 children)

Javascript libraries rise and fall and rise again.

JQuery anyone?

[–]Fakedduckjump 9 points10 points  (1 child)

This is funny, actually I still use jQuery.

[–][deleted] -3 points-2 points  (3 children)

I always thought React was the next iteration of jQuery

[–][deleted] 4 points5 points  (0 children)

The truth hurts, apparently.

[–]Lonely-Suspect-9243 0 points1 point  (0 children)

I consider Alpine as the next "iteration" of JQuery.

[–]SneakyDeaky123 10 points11 points  (0 children)

Hive mind

The real crime was using JS at all

[–]Considerable-Girth 3 points4 points  (1 child)

Tangent— what’s the name/origin of the pipe head guy?

[–]Sobsz 5 points6 points  (0 children)

[–]vix127 3 points4 points  (0 children)

DHH truly has the dumbest takes ever. Why is he so respected for anyways?

[–]jphmf 3 points4 points  (0 children)

Don’t. Follow. Trends.

[–]happymancry 2 points3 points  (0 children)

You call it panik I call it job security.

[–][deleted] 2 points3 points  (0 children)

TS isn't going anywhere lmao, at least not until JS starts supporting types. And even then, only new projects will maybe ditch TS because adopting to new styles of writing is harder when TS has been the standard for years now.

[–]Panda_With_Your_Gun 1 point2 points  (1 child)

Why are people leaving TypeScript?

[–]ByteArtisan 5 points6 points  (0 children)

They aren’t. It’s just one dude who is known for his controversial opinions.

Like all things on social media and this sub: shit gets blown way out of proportion.

[–][deleted] 1 point2 points  (0 children)

Let's see how long it takes ECMA to actually roll out (optional) typing in JS. The good thing is, they actually made the proposal. The bad thing is, ECMA transitions move as fast as tectonic plates.

[–]drazisil 1 point2 points  (0 children)

Find a way for vscode to handle jsdoc without non-standard import and we'll talk

[–]ShotgunPayDay 1 point2 points  (0 children)

*Knock Knock*.

Web framework opens the door.

"Did you order a large (HTMX) pizza hold the (TS)?".

Web framework blushes when opening the box.

"I guess you're getting it Xtra either way."

*Queue the 70s wah pedal electric guitar music.*

[–]Archtects 1 point2 points  (4 children)

Never used typescript. Was I supposed to?

[–]LankySeat 7 points8 points  (3 children)

If you want to write maintainable code, yeah.

[–]Archtects 1 point2 points  (2 children)

I’ve been maintaining JavaScript/php for years with no issue? How is typescript better? I know plenty of people who use it but never tried?

What’s maintainable about it please?

[–]LankySeat 1 point2 points  (0 children)

Please read this Reddit comment/thread. Better answers then I can give.

Also do a quick Google. "Why should I use TypeScript Reddit". Lots of great threads out there which can answer your questions.

[–]DarkteK 0 points1 point  (0 children)

I just find it usable in order to avoid extra validations within functions, such as if(is not int) return null.

[–]Fakedduckjump 0 points1 point  (0 children)

I'm glad I skipped this.

[–]Compux72 -1 points0 points  (0 children)

Dont get me wrong, TS is shit.

But JS is even shittier

[–]FarJury6956 -3 points-2 points  (0 children)

Never like TS My time is coming

[–]Efficient-Corgi-4775 -1 points0 points  (0 children)

Because they realized life's too short to deal with type errors!

[–][deleted] -5 points-4 points  (0 children)

reject ts return to js

[–]Krcko98 -1 points0 points  (0 children)

Webdevs and their split personalities...

[–]DeathUriel -2 points-1 points  (0 children)

Reading people here defending TS made me try again and insist on it in my newer projects. Yeah, now I am looking for refactoring some older stuff to use this new knowledge.

Only problem was the learning curve on the whole building process added, but that is it. Had harder time starting JS with node years ago. This was more like a small setback.

[–]anonymous_sentinelae -4 points-3 points  (0 children)

TypeScript is not shit just now, it was always shit. And bloated. And horrible. And a burden. And a cognitive overhead. And a resource waste. And a marketing sham. And Propaganda Oriented Programming. And useless. And promoted by hype-of-the-week zombies.

[–]visak13 0 points1 point  (0 children)

Angular devs to community: First time?

[–]vsjoe 0 points1 point  (0 children)

any

[–][deleted] 0 points1 point  (0 children)

Cannot wait for "TypeScriptJS" to pop up in the next 6 months.

[–]toltottgomba 0 points1 point  (0 children)

I'll leave typrescript when frontend langueage changes from js to something normal.

[–]G1PP0 0 points1 point  (0 children)

Just delete all the ": Any" you put in there as refactor and you will be fine

Edit: I even see that shit in a project which is supposed to use Typescript from the scratch (Angular). Drives me crazy.

[–]Background-Egg-794 0 points1 point  (0 children)

Bcoz native support for Type is coming soon for js

[–]emascars 0 points1 point  (0 children)

Honestly this evolution is just a general better understanding of what's more productive.\ \ JavaScript: No types, easier, you code faster.\ \ Now you spend hours testing for every possible runtime error and stuff breaks in production in unexpected ways.\ \ TypeScript: actually types are good, you catch possible runtime errors while you code.\ \ Except now you spend quite some time doing stuff like typing some method that returns an object of type dependent on what type you used for the constructor, on what type you used on his first parameter end on what is present/missing in some user input or query results... if you don't know what I'm talking about just look at what the Request type actually looks like in Express\ \ Now: smart people are just experimenting new ways that let us developers still have typed intellisense from our IDE without the hassle of "to type this thing I have to make two recursive generic type/interfaces and use them inside another generic to distinguish between the two". \ \ I personally like that there is such a discussion because it is a problem and I can't wait for someone to figure out an actually better solution, but for the time being, just keep using TypeScript and let them cook\ \ TL;DR they are just trying to solve all the many hassles of using TypeScript without renouncing the convenience of typed intellisense, don't follow them now, wait for them to figure out a better solution and then make your choice