Some people just wake up and choose violence

alphacyberranger@lemmy.world to Programmer Humor@programming.dev – 789 points –
68

You are viewing a single comment

Did it work? How do you know that? A consumer of your package sends a int when your package expects a string.

What now?

Consumer just needs to write 4x as many unit tests to make up for lack static typing. Hopefully the library author has done the same or you probably shouldn't use that library.

4x as many unit tests

Well... the people fighting against TS are simply not testing things thoroughly. So they are not writing those tests.

Some times that's even perfectly ok. But you don't want to build things over a complex library that has this attitude.

(Except for svelte. It's meaningless for svelte, as TS was always a really bad fit for it.)

Theoretically, they'll test and notice that doesn't work and fix their code before they deploy it to production.

Where can you point to other developers evidence that the code in git matches the code you deployed? Deploying locally built packages to prod is an automatically fireable offense because its not auditable

WTF are you talking about? All I'm saying is that if you write code (that in the context of this discussion passes arguments to a method you didn't write, that may not be the type the author of the method expected someone to pass, but really, that's completely beside the point), you should, oh, I don't know, maybe test that it actually works, and maybe even (gasp) write some automated tests so that if anything changes that breaks the expected behavior, the team immediately knows about it and can make appropriate changes to fix it. You don't need a strongly typed language to do any of that. You just need to do your job.