Boss: Why are you trying to build the old program?
Me: Because I need to determine behavior of why old program works with data that new program does not.
Boss: Does it affect the output?
Me: No, but...
Boss: STOP! Just filter it.
Me: Okay.
Boss: Go write new fun code, not work on old shit.
Me: Thank you for saving me from myself.

In reference to:

  • 4
    It's the sanest approach

    Not trying to lecture here, but reproducing build environments is most of the time impossible.

    Especially when compilers and / or docker (or similar container / VM solutions) involved.

    Most of the time without an identical stand of versions, command line arguments and validation of build stage you end up with different programs.

    Even minor version bumps can cause a heavy ripple effect - especially in complex build systems or heavy minimized library collections (node / rust / micro libs in general).

    And suddenly you have a deviant little fucker who doesn't do exactly the same as before - except you realize this only after hours of wrecking your brain getting insane.
  • 2
    If it’s different but it still works, it probably isn’t broken.

    If you’re still not convinced, write tests for everything you can possibly think of. You still won’t be convinced, but at least you’ll be a little more comfortable with it.
Add Comment