Putt's Law is often followed by Putt's Corollary:
"Technology is dominated by two types of people, those who understand what they do not manage and those who manage what they do not understand." This adage, often referred to as Putt's Law, provides a somewhat cynical view of technical hierarchies, pointing out a common pitfall where competence can become inversely proportional to position. While this law is a broad generalization and doesn't apply to all organizations, it can certainly serve as food for thought when considering the structure and dynamics of a software development team1.
Putt's Law in Software Development
Consider three scenarios in software development where Putt's Law might come into play:
- Feature Prioritization: Often, non-technical managers make decisions about what features to prioritize based on business needs without fully understanding the technical challenges involved. This can lead to unrealistic deadlines and feature bloat.
- Technical Debt: Managers who don't grasp the implications of technical debt may push for faster releases at the expense of code quality. This can lead to a build-up of technical debt that can slow down future development.
- Miscommunication: Managers lacking technical knowledge may have trouble effectively communicating with their development teams. This could lead to misunderstandings and inefficiencies.
Putt's Law and Digital Product Creation
In the context of creating digital software products, Putt's Law can serve as a cautionary tale. To ensure the successful development of a software product, it's crucial to have a balance of technical expertise and managerial competence at all levels of the organization.
Managers should strive to understand the technology they are overseeing. This doesn't mean they need to become expert programmers, but they should have a basic understanding of the technology and its challenges. This will enable them to make informed decisions, communicate effectively with their team, and earn the team's respect.
At the same time, technical experts should be given a voice in strategic decisions, particularly those that impact the technical direction of the product. This can be achieved through practices such as including senior developers in planning meetings or establishing a technical advisory board.
In conclusion, while Putt's Law paints a somewhat bleak picture of technical hierarchies, it also highlights the importance of bridging the gap between management and technical expertise. By fostering mutual understanding and respect between these two key groups, we can drive more effective and successful software development.