Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I’ve noticed I can predict a lot about the quality of code an engineer produces by listening to their opinions on testing in strange environments.

People interested in stamping out undefined / nondeterministic behavior / compiler warnings welcome bug reports from platforms that find new bugs.

They also are more conservative about including dependencies, and their code is much, much more maintainable over time.



> People interested in stamping out undefined / nondeterministic behavior / compiler warnings welcome bug reports from platforms that find new bugs.

Why not use a language that doesn't have such problems in the first put (hint, any language that is not C or C++).


Someone dedicated to debugging complex software on strange environments probably writes no code at all, since they spend all their time investigating bugs.

Your comment is rudely dismissive of people giving you the product of their labor for free.


Do you disagree with their personal experience? Does it not match yours?

Their experience matches mine. It’s one of the reasons I appreciate projects like Net and OpenBSD, who actively keep old hardware around. They find bugs, by actually exercising their code base in unplanned ways (e.g. endian differences, alignment constraint differences).


It doesn't match mine since there's usually far more work to do than time available to do it. Most projects have to heavily triage bug reports and "your program fails on my platform that no one has built in 30 years" has a very low rate of "helpful to anyone else but the bug reporter".


Do you never stop and think “why is our code base busted in this person’s environment?” I mean, it could just be that the bug filer just hasn’t done their due diligence on upgrading (why won’t win 3.11 play crysis).

It also could be that your code quality sucks and you’re writing something non-portable.


But why would the code quality suck if features or maintenance of supported systems was prioritized ahead of arcane architectures? Time is a limited resource, so why should extreme portability be considered the holy grail?


Did anyone write "extreme" portability? You can pick a ton of random architectures (e.g. PowerPC) that aren't common, but aren't extreme. The bugs that they find can be useful, and I evaluate them when I get them.


IMO, you both might be correct. A programmer welcoming of bug reports from other platforms and spending time solving them wouldn't write a lot of code, but the code they do write, would probably be very maintainable (unless the fixes were completely different code paths for different platforms).




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: