The legal system should have similar responsibilities. If citizens can report crimes, some citizens will incorrectly report non-crimes. If the legal system can't handle that, the that is entirely the fault of the legal system.
The legal system should have similar responsibilities. If citizens can report crimes, some citizens will incorrectly report non-crimes. If the legal system can't handle that, the that is entirely the fault of the legal system.
-Lyndon B. Johnson
You really have to take the adversarial mindset when thinking about large scale systems like this, to make sense of how they can break.
No, they'd rather not coordinate any of that and just play the blame game.
Many workplaces employing software engineers are actively hostile towards any kind of engineering. I have a very hard time believing anyone writing code is sloppy on purpose. Incentives are often very misaligned. These are pretty much always organizational problems.
Instead of immediately blaming software engineers, you should consider questioning whether it ever makes sense to have non-technical leadership in charge of them. Most places where "real" engineering is done don't have idiots at the wheel.
When I write software, every line of code is accompanied by the thought "I'm a blackhat hacker, with execution thread. How do I leverage this line of code?"
The executive and judicial branches hold equal responsibility to this problem. Why not include them in the solution?
Occasionally, we see well meaning policies going astray - the "must arrest someone" domestic calls in jurisdictions are a contentious-but-great example. Sometimes calls get put in spuriously and now someone must go to jail for a relative non-issue / non-altercation that a neighbor called in.
Problem here is that the success of policing in politics is measured by number of closed cases or by how many people got convicted after their arrest. By crime rate and success in fighting it. This of course creates perverse incentives for the most part. Budget fights and politics leave justice far behind.
If there is no more crime in a country, it shouldn't mean that police are getting pressured because they arrest fewer people. But exactly that would probably follow in a political discussion.
Writing code to affect millions of people’s data, or controlling millions of people’s actions they can perform with software, has a lot in common with passing legislation that will affect millions of people, in terms of the edge cases and unintended consequences that you must consider beforehand.
Not to mention the potential for malicious actors.
Dumb things like spamming others, issuing hundreds of unnecessary requests to external APIs or databases, trashing all the memory of a system, filling up the disk... A "general purpose" language which basically doesn't exist?
Anything even a bit non-trivial can be used to do dumb things. It is a responsibility for everyone in the chain not to do them, and if dumb things happen, everyone in the chain _is_ responsible.
We can debate how much blame each of them should take, but we should not ignore the blame an individual doing a dumb thing should take simply because there were people in "official" roles being even dumber.
I mean, this was already depicted in the South Park when all the parents get sent to jail by their kids.
Metaphorically it feels like we've adopted a model that has safety interlocks and authenticated access for every screwdriver and light switch in your house. Some of the inaccessible to the end user without serious reverse engineering. To some extent I get why absurd proliferation of IoT devices necessitates some of this but I think there's a better way. A world where we have a decent lock on the front door and you're the one who's responsible for not putting the drill through your eyeball, not the drill.
I feel like I would have done this 1000 times by the time i was 8 in the rural Australia, is the danger in the US that much larger ?