The interesting thing about humans is we're all different, but at the same time, we're all pretty much the same in core ways. When it comes to our brain, the way neurons fire, how the prefrontal cortex works, and how humans can work effectively, are all the same. The major concern with society in today's world is we're trying to move faster and do more, but the fundamental way that our brains work hasn't changed since the caveman era.
In this blog post, you'll learn how our mind plays a huge role in how we think about our technology environments, how we're creating technology stacks and the pain that misconfigurations can create when not managed correctly.
Decisions Throughout The Day
Humans often make around 35,000 decisions per day. That can be anything from what to eat, what brand of milk to get, or how an entire tech stack will run on a massive scale. Every decision you make gets you closer and closer to mental burn-out.
The question then becomes - what decisions should you make every day?
For example, there's an interesting blog post about successful people wearing the same type of clothes daily. Albert Einstein had so many decisions that he had to make throughout his day that he didn't want one of those decisions to be what he wore because, in hindsight, it didn't matter.
Every human has X amount of decisions that they can make per day before the burn-out starts to kick in, and regardless of how motivated you are, burn-out still occurs and there's no way to fully stop it.
One of the decisions that you can avoid making per day, much like Albert Einstein's theory on the clothes he was going to wear, is misconfigurations. Misconfigurations for your tech stack can be avoided. You aren't bound to configuration data not being where it's supposed to be or the wrong values throughout your configuration data. The solution is to have a platform that manages all of the cognitive load of misconfigurations for you, leaving your mind open to more value-driven work.
Focus On Value
Everyone has different parts of their day that aren't value-driven. Going out and putting gas in your car, although important, is something that's going to be considered a value-driven piece of work.
However, when you're working, you can make the most of your work day and ensure that it's as value-driven as possible.
Three of the primary ways to remove shallow work for engineers in today's world are by:
- Not constantly checking your email
- Not constantly checking Slack
- Putting your cell phone in another room
Once you do those three things, you're able to focus on more meaningful work that makes sense for your organization, and once you start removing distractions, a new consensus pops up - value-driven work vs busy work.
The definition of busy work is the wheels are spinning in your brain, but you're on autopilot. It doesn't take much cognitive load, but it's very time consuming. For example, let's think about configuration data. If you have a manual deployment that's done daily, and you have to log into a server every day and update the parameter or variable for the deployment, that would be considered shallow work. You're simply on auto-pilot. Not to mention, manual efforts like that cause a massive amount of misconfigurations.
Value-driven work is work that you have to truly think about and make real decisions that can make or break what you're working on. It's a decision that's driving business value, whether that's for the business to make money or the business to operate better, and it's a decision on ensuring that the engineering teams can operate better with your new change. Value-driven work is never "putting out a fire", but instead, moving the business and engineering teams forward.
As you learned in the previous section, doing things like leaving your cell phone in another room and not constantly checking email is the perfect way in today's world to remove distractions and keep your mind free for value-driven work. Although it may sound easy, doing something like leaving your phone in another room can make you feel incredibly "off". In reality, cell phones and checking social media have become an addiction like any other addiction.
Because of that, creating good habits is so incredibly crucial. As we all know, it's much easier to create bad habits and stick to them than it is to create and stick to good habits. It's a lot easier to eat Mcdonald's every day than it is to eat grilled chicken every day (at least in the US).
The same goes for your technology stack. If you know that you have to log into a web server, open up a
web.config file, and update a parameter value every time a new deployment occurs, that may feel a lot easier for your brain than taking on the challenge of automating that solution. Our brains are constantly trying to get us to do something that's easier. The reason why is because our brain wants to save as much energy as possible, and doing something difficult takes more energy. It's a defense mechanism of sorts. Some also think of it as an addiction to only doing work that's easy.
However, the "easy" way, like manually SSHing into a server and updating a parameter, often leads to misconfigurations. There's a way around this though. Instead of having to think about things like "where am I going to store the configuration data" and "how am I going to get my app or environment to ingest the configuration data", there are tools out there that can automatically do it for you.
Begin With The End In Mind
Stephen R. Covey, the author of The 7 Habits Of Highly Effective People, said that "begin with the end in mind is to begin today with the image, picture, or paradigm of the end of your life as your frame of reference or the criterion by which everything else is examined". When you really think about that and remove "end of life" with something like "end of my tenure at this organization" or "end of this project", things become a bit more clear on how you should approach the way your tech stack is operating.
Often times, organizations are in a hurry. From startups to the Fortune 500, organizations want to move fast and get things out the door. On many occasions, doing so will lead to a massive amount of misconfigurations and duct tape spread across the environment. It may "work" out of the gate, but what about in 1 year? 2 years? 5 years?
Instead of thinking only of the present and how the feature needs to get out into the wild, organizations should think with the end in mind.
Misconfigurations are often a leading cause of security breaches, poorly created tech stacks, and users having an awful experience on the platform. The good news is that misconfigurations don't have to occur. You just need a centrally managed platform that can hold all of your configuration data, in which case your environment wouldn't have a choice but to have the proper configurations.
The problems listed in this blog post are the same problems that almost every organization faces in one way or another. Whether it's the entire organization or a team inside of the organization, misconfigurations occur and engineers have to utilize cognitive load when in reality, there are better ways.
CloudTruth can help.
If you'd like to check it out for free, you can get a Forever Free version at the link below.
Tag(s): Configuration Management