Hacker News new | ask | show | jobs
by logfromblammo 3915 days ago
There's no way in Hell that I will consent to be held responsible for the output if I do not have full control over the inputs.

If I am an employee of the company, and someone else is telling me what to do for my job, and particularly if they are telling me how to do my job, they must necessarily share responsibility for anything that I do pursuant to obeying those instructions.

And threat of retribution leads to stupid practices:

  public void CoverYourAss()
  {
    try
    {
      int x = 0;
    }
    catch
    {
      throw;
    }
  }
This is a simplified example of a real-world coding standard. At one of my former workplaces, everything had to be wrapped in a try-catch block, including statements that would only ever generate run-time exceptions, like out-of-memory exceptions. It didn't matter if you re-threw the exception you just caught. You just had to make sure the try-catch was there. In every function. Or you're fired. I am not making this up. If the software ever crashed to desktop for any reason, including a bad memory module in the computer running it, or someone nuking parts of the filesystem while it was running, or even a bullet striking the motherboard, someone was getting blamed for it on the development team, and fired. As it would be a witch hunt anyway, the inquisition squad would obviously look at the code written by those most threatening to them, or least popular, or both, before anyone else, and seize upon any irregularity to lay blame.

You'd better believe I was sending out resumes the day I found out about that.

I can only imagine how bad it would be if the penalty was to be fired plus arrested and/or sued.

1 comments

But if there were a standard set of industry-specific tests that the program had to comply with, it's not like it would just be on you.
You really have to remove the incentive to cheat from the software group before the tests happen.

A defeat device does not get installed accidentally. It's not like a mutation propagating through evolution of living things. Someone decided to put it there, and someone got paid to do it. There was an additional requirement added, one that had no official test coverage. It was to increase fuel economy and produce more pollution when no one was paying attention to the emissions.

As far as the developers were concerned, they did everything right. They built the code their employers asked them to build. It passed the official tests. This was a triumph; I'm making a note here: "huge success!"

The developers worked for the automakers, not the testers or the public. They did what VW wanted, which was to game the system to make more money. You're not ever going to do more than start an arms race as long as the developer is taking orders (and getting hired or fired) by the guy who just wants to sell more cars.