The mind of the beginner is empty, free of the habits of the expert, ready to accept, to doubt, and open to all the possibilities.
in Zen Buddhism, “Beginner’s Mind” is the idea of approaching a task or situation with an open and unbiased perspective, as if one is encountering it for the first time. The beginner is the student, who is encountering new concepts for the first time, as opposed to the master, who already knows how things work.
In software development/delivery, a new member of a team will have the gift of Beginner’s Mind for a very short period during onboarding, and immediately afterward as they come up to speed.
In my career as a consultant, I’ve have a number of opportunities to experience this, and I’ve learned how important it is to treat this beginner state as a chance for the team to learn and re-examine their systems and processes in a fresh light.
Fresh team members are open to new ideas, willing to ask questions and not make assumptions, and willing to learn and adapt to new ways of working. They don’t know yet ‘Why’ something is the way it is, so they can ask questions or offer new ideas that trigger valuable insights.
Some (real life) examples:
- Why are all the e2e tests disabled?
- Why don’t we have documentation for this external system integration?
- How did we decide on this (Architecture/Database/Vendor)?
The experienced mind may impatiently dismiss these questions, or simply answer them with established facts, but consider:
The questions are the valuable thing, not the answers.
As the new person learns, these questions will become less frequent. During that brief onboarding time, the questions can be a literal road map to the gaps and flaws in your team or process.
Once you realize the potential to learn from a new person as they assimilate the practices and policies of your team, you may also realize that this is beneficial to you as a manager. In spite of what you already know, you can cultivate this mindset with intention.
Much of what we take for granted in software development falls into two categories:
- Existing process/practice/setup (We’ve always done it this way)
- Accepted limitations (We can’t do that, because…)
Be willing to challenge these assumptions, because they may not remain true over time, and they may not be serve the team as goals shift.
Cultivating Open-mindedness
-
Approach each task or situation with an open and curious attitude: Instead of approaching a task or situation with preconceived notions or biases, try to approach it with an open and curious attitude, as if you are encountering it for the first time.
-
Be willing to ask questions: Don’t be afraid to ask questions, even if they may seem basic or obvious. Asking questions is an important way to gain a deeper understanding of a task or situation.
-
Be willing to make mistakes: Making mistakes is a natural part of the learning process. Being willing to make mistakes, and learning from them, can help you develop a beginner’s mind.
-
Be open to new ideas: Be open to new ideas, even if they may seem strange or unconventional. Being open to new ideas can help you develop a beginner’s mind and approach tasks and situations with a fresh perspective.
-
Let go of assumptions: Try to let go of any assumptions or preconceived notions you may have about a task or situation. This can help you approach it with a beginner’s mind, free from biases or prejudices.
There will always be limits to what a team can change, so this practice must balance the possibilities against the existing realities. It’s important to balance these competing goals as we seek the best path forward.