Stop the Memory overflow error, like StackOverflow for humans
It helps to keep things simple even if you think you are smart developer!
In college, I knew a guy we nicknamed, “Earache”. I bet you have met someone like this. They tell you about all they know.
He would tell you about current events, his classes, and what food he liked. Most people would find an excuse to leave his side. “Wow, I need to study for my final next year…”
Lazy Humans
I recently had an exchange with Dustin Thostenson. He shared some great insights.
Humans are lazy. Make it easy for them to understand you. Give them the problem and the solution. If they want more details, they will ask. They will be thinking about the details so your answer will make sense.
This reminds me of the basics behind Kanban. Essentially it is a pull model. Don’t push things into the system.
Memory Overflow error
Then Dustin shared this gem with me.
If you are giving all the details that brought you to your answer, you will lose them. Memory Overflow error.
I spit up my coffee when I heard that one! That is an apt analogy that us technical types can understand.
Analogy: a comparison of two otherwise unlike things based on the resemblance of a particular aspect. From Merriam-Webster.
Dustin’s analogy really makes sense to developers. We have seen this before. Of course, we have all used StackOverflow too.
KISS Method
During high school, I had a portly and opinionated Agriculture teacher. He would often pontificate. He would cover many topics.
Repeatedly he would tell us to use the KISS method. Keep it Simple Stupid. Don’t overcomplicate things.
Developers are guilty of this. We create detailed processes. Then code overcomplicated solutions. Strive for simplicity instead.
Design
I recently read Clean Architecture by Bob C Martin. He cautions us about overengineering. “Uncle Bob” shares his disdain for overblown solutions.
Having worked for an Oracle partner in the past that hit home. I worked on Oracle SOA projects. We created gargantuan answers to simple questions.
The hardest part of the design is making it just right. It takes a lot of experience to get it right. So make some mistakes and learn.
Relationships
“No one cares how much you know until they know how much you care” — President Theodore Roosevelt.
Initially, as an introverted developer, I believed the best idea always wins. Then I began to notice a pattern. We tend to agree more with people we like.
For instance, Jim and Laura both joined the company at the same time. They previously worked together before.
Working with them both I saw great rapport. Jim would push Laura on her ideas. It looked tense at times but, they knew how to collaborate.
Credit
“It is amazing what you can accomplish if you do not care who gets the credit,” said Harry Truman.
Great ideas rarely come from one person. As we work together we help others find solutions. Collaboration is the name of the game.
Improv is a fantastic skill to learn. It is not just for comedians to use. The simple “Yes, and …” exercise can help us start.
Build on the previous ideas. Don’t worry about who gets the credit. Optimize for the team. Work completed is the goal. Not having the best idea.
Wisdom
In college, I took an elective in Philosophy. One definition of philosophy is “a pursuit of wisdom.” Working in technology that moves so frenetically, wisdom can seem elusive.
Dustin closed our exchange with this. “Just use your over-analytical mind to work through all the details and have the correct, simple answer. “ Then he shared this image. It ties this together quite well.