Golang won’t even compile with dead code. Unfortunately that’s too strict, you just end up commenting out the whole block instead. At least the commented out code is obvious in review, and some automated checks catch it if you have them.
First thing I do on my projects is enable warnings as errors and increase my warning levels when reasonable.
Unfortunately, the same can’t be said on the projects I work on at work. Drives me crazy that we get likes 300+ warnings whenever we run the app and that we can’t change it because "they’re just warnings*.
It’s not that we want to ignore warnings. It’s just that most warnings take time to fix.
There’s only so many hours in a day. And we have to accept technical debt in order to deliver, and then pay it off later.
My job does it well by doing a “spring” and “summer” cleaning where we can turn out 100+ warnings into the single digits. Then busy season happens again and we’re back to 200+.
Speak for yourself, I promise you the team I work on actively ignores warnings and doesn’t even want to solve them as they pop-up. Being told you can’t compare doubles (because of precision loss) and ignoring it is on the developer and isn’t even that hard to fix. Most of our warnings come from shit like that.
Like, I get it. It’s probably not worth it to hunt down every “unused variable” warning (especially in an API where we used to have a variable for it and we don’t use it anymore and we don’t want to break the existing API so we just leave it there), but there’s things that are just trivial to fix when you’re working on code that’s right next to it.
I feel like modern compilers would turn their nose up at that shit. “Dead code? Ewww! No way I’m letting that into my syntax tree!”
A lot of IDEs would probably throw a warning about unreachable code.
Golang won’t even compile with dead code. Unfortunately that’s too strict, you just end up commenting out the whole block instead. At least the commented out code is obvious in review, and some automated checks catch it if you have them.
var foo is declared but not used
is such a pain in my asshole when doing this.most of my (rust) projects have zero (or maybe 1-2) warnings, unless I’m in the middle of working on a feature
First thing I do on my projects is enable warnings as errors and increase my warning levels when reasonable.
Unfortunately, the same can’t be said on the projects I work on at work. Drives me crazy that we get likes 300+ warnings whenever we run the app and that we can’t change it because "they’re just warnings*.
That’s when you add
#![deny(bad_code)]
, making sure that nobody notices.It’s not that we want to ignore warnings. It’s just that most warnings take time to fix.
There’s only so many hours in a day. And we have to accept technical debt in order to deliver, and then pay it off later.
My job does it well by doing a “spring” and “summer” cleaning where we can turn out 100+ warnings into the single digits. Then busy season happens again and we’re back to 200+.
Speak for yourself, I promise you the team I work on actively ignores warnings and doesn’t even want to solve them as they pop-up. Being told you can’t compare doubles (because of precision loss) and ignoring it is on the developer and isn’t even that hard to fix. Most of our warnings come from shit like that.
Like, I get it. It’s probably not worth it to hunt down every “unused variable” warning (especially in an API where we used to have a variable for it and we don’t use it anymore and we don’t want to break the existing API so we just leave it there), but there’s things that are just trivial to fix when you’re working on code that’s right next to it.
Laughs in Xamarin. Only 300?
Well, it was a year ago, is Xamarin now finally changed to the new thing (what was it’s name)?
Maui!
Right, thanks. The KDE thing.
Guess what? Flight Software usually uses ancient proprietary compilers for specialized hardware running an RTOS, rip 😢
Woah woah WOAH WOAH.
So you’re saying software for the Artemis landers aren’t being built with the latest TypeScript compiler and running on a canary version of v8?!
Lol
SpaceX actually did use some kind of TS/JS chrome browser thing for their docking controls lol…