Throughout my career, I have experimented with a vast array of methodologies around productivity, organization, software development, and product management. The more experience I've gained, the more I've realized actual prescriptions matter far less than the underlying principles of those methodologies.
Because you create a more flexible and sustainable system when it has clear guiding principles. You're able to evolve and grow your system without abandoning the principles you fortified. And you can add new principles, change existing ones, and use that as your lens for building changes into the system.
Let's look at a quick example, shall we?
At Differential , we used ZenHub heavily for some time many moons ago. Because of this, a lot of our documentation for our Product Teams was centered around using the specific features and tools inside of ZenHub. But then we took a step back and thought about the underlying principles.
- How do we handle "estimates" and scoping out work?
- How do we think about the process of creating an issue to work on?
- What is the overall flow (pipeline, stages) an issue goes through?
When we thought about these questions at a higher level, we ignored the tool. We didn't care whether it was in ZenHub or GitHub or GitLab or what-have-you. We only cared that the underlying principles were followed to achieve the most amount of value.
This applies in a variety of places. Try and think about the apps, products, and tools you use, and determine what the underlying, abstract principles are for that tool. You will then be able to create more flexible and sustainable systems.