3 ms·
I think it’s important to acknowledge that human error is in part systems design error. The recent Atlassian error was human error. Or was it? My boss at YouTub
by more_corn 4y ago
I think it’s important to acknowledge that human error is in part systems design error.
The recent Atlassian error was human error. Or was it? My boss at YouTube used to write shell scripts in lane duck mode. By default they output a dry run. Why does he do this? Preventing human error. That’s a systems design to eliminate the vast majority of misuse of a shell scrip.
If Atlassian had implemented a similar scheme, especially for a dangerous script they wouldn’t have accidentally deleted hundreds of client records.
Had they planned for data recovery and practices it they could have written partial data restore scripts at their leisure rather than when 300 clients were down.
Had they split functionally of safe scrips away from dangerous scripts, had they described dangerous behavior in the script, warned or required confirmation, had they trained users in proper use of dangerous scripts, had they documented proper processes…
Human error just means you designed a system that can be misused. It’s not reasonable to design for eliminating all error but it’s certainly possible to prioritize risk and plan for avoiding high risk errors.