18 Dec Old Habits Die Hard
As part of our Digital + Personal Transformation (DxPx) series, we’re showcasing parallels between transformation in our digital and personal lives. We’re analyzing patterns in both software development and personal growth to learn and share how we can become better professionals and people.
In our previous post, we explored the difference between monolithic and iterative rollouts, particularly how too much change all at once can adversely affect results in any endeavor.
Today, we’re exploring the structure and system of replacing, not erasing, bad habits in our personal and digital lives. It’s easy to fall into the mindset that a bad habit should be cleanly and quickly eradicated from our routines. If we want to improve our situation, we should cut out the negative “root” of the problem and everything will be fine, right? Not exactly. In order to create true, meaningful change, we must take a step back to examine and reshape our habit systems from the ground up.
But first, a story.
One of my worst habits was stress eating. Stress eating is a powerful habit to break for a few reasons. When we eat, our brain tells us that we’re doing something right. This causes the brain to release “feel-good chemicals” in our reward system, one of which is the neurotransmitter dopamine (a.k.a the “pleasure” chemical). Since our brains are incentivized to chase that dopamine release, we become addicted.
Another aspect of stress eating for me was the nostalgic connection to relaxation. I subconsciously associated the act of eating with the act of sitting in front of a TV for hours watching cartoons as a kid. For me, eating whatever I wanted went hand-in-hand with the simple, easy days of being a child.
In order to break this habit, I had to do more than simply say to myself “stop stress eating.” Since habits like this are hardwired into our DNA, we can’t just will it into existence. I had to fill that craving with something else. I chose to start eating healthier and at structured times. I didn’t flip a switch—I replaced the switch altogether.
The Science Behind Changing Habits
Once you can identify which habits you want to develop and which ones you want to change, it’s important to know how changing a habit works. The common idea that “old habits are hard to break” is misleading. Habits aren’t broken. They are replaced, not erased. While it may sound like we’re splitting hairs with this, it’s important to recognize the distinction. We must look beyond simply casting aside an old, bad habit and carefully consider what our new, good habit will be.
For example, another bad personal habit I had was watching TV in bed every night until I fell asleep. It became a habit because I thought it helped me sleep better. However, watching TV before bed actually blocks melatonin and keeps you awake. It was making me sleep worse! Once I decided to make a change, I chose a new habit to replace it. Instead of attempting to eradicate this habit, I simply swapped it out with a more beneficial one: reading. This allowed me to get more sleep, and I actually stuck with the new habit because I made a natural, gradual change instead of drastic reduction.
How does this apply to software development?
Habit change in our personal lives can be challenging, and the same is true for how we apply habit change to technology. When we develop a program for a client, it’s crucial that our systems, processes and team members are building software efficiently and effectively as possible. Our goal is to solve business problems, and we can’t do that unless we infuse healthy habits into our workflow and culture.
Here are two common examples of bad habits in the software world that can be replaced with good ones.
A common issue with new software developers is over-commenting. Code commenting is the act of adding short, usually single-line notes, called comments, throughout a program’s code. Comments help describe how the program works as well as the coder’s intentions behind the code. Comments don’t affect the program at all, but can be useful for other people reading your code.
When a new developer weaves too many comments into their code, it comes from a good place. They are trying to be clear, but in the process, they are actually adding unnecessary work and creating redundancies. If we want another developer coming into the project to be able to read this code, we need to reduce comments.
As a leader, we can’t simply tell these new developers to “stop over-commenting the code.” Changing this habit requires replacing that behavior by giving specific actions that improve the process, including:
- Use meaningful function names
- Only comment on complicated blocks of code
- Focus on writing “clean” code that doesn’t require as much explanation
By shifting the focus of the communication away from “habit-breaking” and toward habit replacement, we are significantly increasing this employee’s performance and investing in a long-term, meaningful habit change for them. This makes outside developers’ jobs easier, the product better and the organization’s workflow smoother. And it all stemmed from the conscious decision to replace, rather than erase.
Constructive Conflict 101
Everyone wants satisfied clients, bosses and partners, and it’s no different in the tech world. When you start a software project, you are embarking on a long, complex journey that can involve completely restructuring or building a solution from scratch.
A successful project includes: consistency in the scope, staying on budget and within schedule as well as adhering to assumptions and dependencies. When additional, out-of-scope work is requested by a project decision-maker, many teams feel pressured to do this work because they don’t want to disappoint the stakeholders. The team doesn’t push back when an agreed-upon dependency is violated, mainly because they don’t want confrontation. This behavior leads to scope creep and, eventually, an unsuccessful project. The impact of the change doesn’t get discussed, deadlines get rushed and the quality of the work suffers.
Instead of trying to erase the bad habit—telling a development team “don’t do this work”—there needs to be a replacement habit put into place. The solution? Constructive conflict, early and often. Teams should have frequent and candid conversations with stakeholders as soon as a potential issue arises. The stakeholder’s needs are addressed, the team is given the time needed to complete the work, and the work itself improves.
Implementing Habit Change
As you look ahead to 2020, take some time to reflect on the habits you’d like to change, whether in your personal or professional life. Do you want to improve your health? Your spirituality? What about your communication in the workplace or your productivity? There are endless ways we can all improve. The key is to think proactively about how you can weave good habits into your life while phasing out the bad ones. Audit yourself to find the gaps, create a system of habits that works for you, and remember: don’t be too hard on yourself!
Enjoy a wonderful holiday season with friends and family! We look forward to catching up in the new year.
You can sign up for our newsletter, which includes notifications for the “Intersection of Digital & Personal Transformation” content series here.