Preview Mode Links will not work in preview mode

Develpreneur: Become a Better Developer and Entrepreneur


Mar 22, 2022

The "warm bodies" anti-pattern is sometimes subtle.  However, it can be frustrating and sink more than a project.  This approach is based on the fallacy that more developers or resources will create better software sooner.  Instead, the reality is closer to the idea of getting nine women to give birth to a baby in one month.

Warm Bodies Defined

This anti-pattern is an attempt to work faster or get a project back on track by adding resources.  It often is identified by a manager hiring more team members to address complex or time-consuming parts of a project.  Unfortunately, architecture is not immune to this.  The challenge comes when the architecture is complex, and there is a temptation to fix that by creating a more extensive implementation team to compensate.  That is where the anti-pattern rears its head.

The Anti-Pattern In Action

Fortunately, this anti-pattern is easy to spot once it kicks in.  The response to design and architecture challenges is to add to the team.  When team size is driven by architecture or design, you are on the slippery slope to an anti-pattern.  It harkens back to a common practice in the past of improving an application response time by purchasing more or larger servers.  Resources are not a good way to fix design flaws.  Likewise, laws of time and physics preclude the "warm bodies" approach to improvement.

 

Avoiding The Anti-Pattern

Simplicity is always going to be the better approach than a complex solution.  We can avoid this anti-pattern by sticking to realistic expectations and designing accordingly.  Part of your estimation strategy and improvements should be an attempt to determine minimum time frames around projects.  For example, you will find a minimum time required to create even the most straightforward solution given unlimited resources.  General overhead and interactions make it impossible to do better.  Once you know some basic metrics like minimum deployment time, you can set baselines and assess estimates.  Glaring mistakes and over or under-estimating will make it easy to adjust and get on track before this anti-pattern appears.