Comment on the myth of type safety
Lowpast@lemmy.world 11 months ago
Sounds like you don’t know how to properly use TypeScript…
Comment on the myth of type safety
Lowpast@lemmy.world 11 months ago
Sounds like you don’t know how to properly use TypeScript…
Zangoose@lemmy.world 11 months ago
If I had the willpower or time to go through a multi-thousand line (not including the html templates) legacy Angular 6 codebase where almost every property is typed ‘any’ then I assure you I would have, it’s driving me insane 🙃, also why I prefer backend
0xSim@fedia.io 11 months ago
The boy scout technique: fix your types when you're working on a bug or a feature, one file at a time. Also try to use
unknown
instead ofany
for more sensitive parts, it will force you to typecheck.WhatAmLemmy@lemmy.world 11 months ago
The fuck the lemons technique: resign and seek an employer that didn’t fail at the most basic level of engineering management and development culture for years and years — because life is short and we’re all running out of time… always.
DudeDudenson@lemmings.world 11 months ago
So basically change careers
Hupf@feddit.de 11 months ago
combustible lemon
roadrunner_ex@lemmy.ca 11 months ago
I kinda feel your pain. A project that I helped launch is written in Typescript technically, but the actual on-the-ground developers were averse to using type safety, so
any
is used everywhere. So, it becomes worst of both worlds, and the code is a mess (I don’t have authority in the project anymore, and wouldn’t touch it even if I could).I’m also annoyed at some level because some of the devs are pretty junior, and I fear they are going to go forward thinking Typescript or type safety in general is bad, which hurts my type-safety-loving-soul
Zangoose@lemmy.world 11 months ago
In theory I’m a fan of the inferred but static typing systems that most modern languages use (kotlin, rust, TS, etc.) where most local variable types can be inferred and only return types/object fields/parameters need explicit types.
I just despise typescript because it feels more like someone put a bandaid over JavaScript and all of its oddities instead of making a properly fleshed out language, and allowing the option for an ‘any’ type to be used freely by default emphasizes that.
Zikeji@programming.dev 11 months ago
Based on your description it sounds like you haven’t given it a fair shake. I’ll take TS over JS any day, at least there is room for improvement. I will say however I personally haven’t been unlucky enough to run into projects that abuse the any type. The worst I’ve run into is a JS library with no typings I have to manually type.
Traister101@lemmy.today 11 months ago
TypeScript is JavaScript and not in the literal it’s compiled to JS sense but in the think of TS as a linter not a language sense.
Lowpast@lemmy.world 11 months ago
One file at a time. Make strong pre-commit eslint rules (that way you don’t impact existing code), eventually update tsconfig. You’ll get there :)
walter_wiggles@lemmy.nz 11 months ago
Print the code out and burn it