News for hackers. Stuff that matters.
Re:How complex systems fail (2002) [pdf] by ryanmarsh on Sunday August 13, 2017 @12:28PM (#15003528)
The system practitioners operate the system in order to produce its desired product and also work to forestall accidents. This dynamic quality of system operation, the balancing of demands for production against the possibility of incipient failure is unavoidable. Outsiders rarely acknowledge the duality of this role. In non-accident filled times, the production role is emphasized. After accidents, the defense against failure role is emphasized. At either time, the outsider’s view misapprehends the operator’s constant, simultaneous engagement with both roles.

So much this. I coach and train my clients (Fortune 500) in extreme programming (unit testing, TDD, CI, CD, etc). The duality these developers live with and managements obliviousness to their own detriment create a toxic and anxiety inducing work environment. It's very upsetting to me how these developers live with the manager/stakeholder constantly breathing down their necks to cut corners and "get it done" meanwhile holding them accountable for any mistakes.

Re:How complex systems fail (2002) [pdf] by Jtsummers on Sunday August 13, 2017 @02:29PM (#15004187)
jdjebc82747's dead comment: >"get it done" meanwhile holding them accountable for any mistakes. Sorry, is there an area of business that is not like this?

It's not that other areas of business aren't like this, it's that management creates an environment where mistakes are more likely (and in some cases almost certain) to happen, and then penalizes people when they happen.

An example: Bosses refuse to provide funding for materials and time to automate the test framework (embedded systems). So testing is done mostly manually, this consumes a great deal of time or tests don't get conducted due to the lack of time or capability (I can't flip a switch 10 times in a second, or at a particular and precise time). So either we don't have enough time to take the test feedback and correct the system, or we never get the test feedback (because some tests aren't done) in order to correct the system. Errors are virtually guaranteed to slip into production if you're operating on either short schedules or complex systems under these circumstances.

Management expects perfect results, but ties the engineers hands too much so that they aren't able to execute effectively, and then blames (and often dismisses) the engineers as a result.

Re:How complex systems fail (2002) [pdf] by kudokatz on Sunday August 13, 2017 @02:17PM (#15004119)
> constantly breathing down their necks to cut corners and "get it done" meanwhile holding them accountable for any mistakes

It's not just cutting corners in the actual implementation, but also the metrics and management infrastructure for post-release operations.