Technical Solutions versus Processes
lucaskostka.com
lucaskostka.com
When change requests were not accurate, we removed change requests by automating auditing of the infrastructure, so people could see exactly what state it was actually in, instead of relying on change requests.
When the process for paging someone broke down, we built automation for paging people.
There were many other examples. But always we would look for ways to eliminate process, and for ways to automate around failures instead of introducing new processes.
You just go from a process where someone has to remember something to a process where a computer checks a condition thousands of times a day or whatever.
I guess part of what is being talked about here is that people sometimes have trouble reasoning about automation vs reasoning about some human mediated activity.
Skepticism of software is high; people seem to only trust things they can type into the terminal & crank out themselves. They see automated systems as too fancy, too dangerous, as unknowable. Companies and people don't take the time or opportunity to learn, understand and grow: they are committed only to the work ahead of them rather than a broader project of improving themselves & the org broadly.
It's all so backwards & sad. Seeing such persistent anti-commitment to getting good. Regularly taking the most reductionist take on what simple is, even though it so often involves complex tribal/oral knowledge with many unstated embedded choices baked in in how the org handles things.
It's a hard sell, because the base fact is that there is kind of a low cowardice pushing against creating code. Nothing is as well defined, well shareable, as explicit as code. The opportunity to learn from code is as infinite as you are willing to chase it. But people don't want to have to engage in systems or computers. They prefer informal knowledge & having regurgitated oral knowledge passed down, they dont have the fire to investigate & watch for themselves.
I hope we can keep finding ways to make automated systems better explain themselves, better show their work. Automation is just so amazing, but dealing with the fear insecurity & "I have no time for this" factor has been a miserable ever-lowering factor at most orgs I've seen. I wish geeks & orgs could believe more in trying, weren't so predisposed against figuring out good ways to pave the cowpaths.
Lots of out of touch leadership types automate away system design flaws IME. Rather than automating for speed or consistency.
Reagrdless of whether we agree here, the question stands of what we do when action is required.
This is key. As the old quote goes “Automating a mess means you get an automated mess”. I’ve seen too many managers use process, and too many developers use code, to avoid digging into a mess. A mess involves ugly human emotions and motivations; understanding why the mess is there is scary work. Ignoring that work and focusing on the "technical" leads to weird requirements that then leads to bad software.
It's a real pain to maintain a prematurely automated solution to a social problem. It makes the mess worse.
The most consistently implemented procedure is the one that doesn't require anyone to do anything.
I agree that when looking at a process that seems bloated and inefficient, we should be mindful of the XY problem: https://en.wikipedia.org/wiki/XY_problem
In my experience most procedures are created not due to a deep nuance to the problem space that makes procedures superior to automation, but rather one of the following:
1. Leadership lacking the technical background to understand what automation would look like or accomplish. (In extreme cases, this can manifest as people creating processes that are redundant with automation capabilities built into the tools they are already using.)
2. Leadership lacking confidence that the organization has the skills or resources to automate effectively.
> Bloaf, it's the employee's job to bring the case for automation to their leadership...
3. People in senior technical roles shooting down automation efforts because a significant amount of their expertise is "expertise in navigating existing processes" and they don't want this expertise to be undermined.
That sounds like a really great process.
Don't know what code that dude encountered, but that hasn't been my experience.
I'd be nice if the site didn't depend on javascript for navigation though