from Hacker News

Portability Is Reliability

by adr_ on 5/5/21, 12:01 AM with 25 comments

  • by slver on 5/6/21, 6:38 AM

    Focusing all your might on a single platform can give you reliability and even better performance, and is less work.

    Focusing on portability gives you a set of abstractions to build upon, that will take your time, reduce performance often, and limit your capabilities. But... it can also make you have a better mental problem of the problem you're solving, and allow you to move faster when underlying details change.

    Like everything, it has ups and downs, I think.

  • by lmm on 5/6/21, 6:26 AM

    I don't find the defence in depth approach appealing, because it's never going to get you to 100% reliability. Rather than adding six swiss-cheese layers and hoping the holes don't line up, it would be better to spend more time and effort on a single really solid layer.

    For the same reason, I don't find the argument for fixing bugs in C codebases at all compelling (at least if we're talking about "micro" bugs rather than overall architecture issues that might carry over to a future rewrite). Sure, there's a lot of C out there. Sure, a lot of the bugs in that C code are findable. But so what? However many bugs you uncover, you're unlikely to find them all, and even if you did then how would you know? So isn't fixing bugs in existing C codebases just throwing good money after bad? You know you're inevitably going to have to rewrite it all eventually anyway.

  • by not2b on 5/6/21, 6:28 AM

    Eric Raymond, not Linus Torvalds, said the "given enough eyeballs" quote. Unfortunately there aren't enough eyeballs, so bugs linger for years anyway.
  • by legulere on 5/6/21, 9:06 AM

    Portability is complexity. Complexity is diametrically opposed to reliability.
  • by nottorp on 5/6/21, 8:10 AM

    Nooo node/electron should be enough for everyone.

    Before node/electron, that was msvc.

    There is also the occasional article stating that people with multiplatform development experience are simply better at debugging their code.

  • by jart on 5/6/21, 11:30 AM

    Don't let s390x and msvc drink your milkshake.