better developers

Walking Through a Minefield AntiPattern

Velocity is an important part of modern software development.  However, there is also that adage that “speed kills.”  Therefore, we need to strike a balance to avoid the “walking through a minefield’ antipattern.  We have to avoid throwing away quality in our pursuit of quick turn around times. Defining the Walking Through a Minefield AntiPattern In this case, the name of the anti-pattern may be the best description.  However, we can add a little color to it. [Click Here to See The Page] “Walking Through a Mine Field, as the name adequately suggests, is a situation encountered, most often, with software components and products which are not adequately tested and thus have residual bugs. These bugs turn up at critical... Read more

better developers

The Dead End AntiPattern – The Name Says It All

Over the years, we have built tiny up to large systems that provide a launching point for other applications.  These solutions are built on the hard work and ingenuity of those that went before us.  Therefore, we want to take advantage of that work and not have to reinvent the wheel.  When we customize our solutions in a way that breaks our ability to continue to take advantage of a product, we have achieved the dead end antipattern. Defining the Dead End AntiPattern The simplest definition of this anti-pattern may be the best. [Click Here to See The Page] “Direct modification of commercial software or reusable software creates significant maintenance burdens for a software system.“ In short, a dead end... Read more

develpreneur podcast

The Copy Paste AntiPattern – An Easy Trap To Fall Into

We all do it.  There is a chunk of code that almost does what we need.  So, we copy and paste it where we want it then make some modifications.  When we do this in our systems instead of proper code re-use than we are implementing the Copy Paste AntiPattern.  Now let’s look closer at why we should avoid this. Defining the Copy Paste AntiPattern I want to use the Wikipedia definition for this anti-pattern to help us get a better feel for when and how it may occur. [Click Here to See The Page] “Copy-and-paste programming, sometimes referred to as just pasting, is the production of highly repetitive computer programming code, as produced by copy and paste operations. It is primarily a pejorative term;... Read more

better developers

The Lava Flow Pattern – After The Code Cools Down

While lava is hot and deadly early on, it becomes hard to move once it cools down.  The is the thinking behind the name for the lava flow pattern.  This anti-pattern is one that occurs for more often than one would think and can be quite tricky to clean-up. Defining the Lava Flow Anti-Pattern There is nothing like a rant blog entry to give us a good definition for an anti-pattern. [Click Here to See The Page] “Successive, well intentioned, changes to architecture and technology throughout the lifetime of an application can lead to a fragmented and hard to maintain code base. Sometimes it is better to favour consistent legacy technology over fragmentation.“ In my experience, the most common trait... Read more

develpreneur podcast

The Poltergeist Anti-Pattern – When Design Goes Bad

Best practices are like everything else.  There are times to ignore or break the rules.  The anti-pattern we cover in this episode results from not doing so.  The poltergeist anti-pattern occurs when we have a bunch of infrastructure code that serves the design but is otherwise useless.  When you are creating methods and classes solely as place-holders or pass-throughs, then you are feeding this anti-pattern. Defining the Poltergeist Anti-Pattern Once again, I found the best definition for our purposes in a blog article about anti-patterns. [Click Here to See The Page] “Useless classes with no real responsibility of their own, often used to just invoke methods in another class or add an unneeded layer of abstraction.“ You might think of... Read more

develpreneur podcast

The Boat Anchor Anti-Pattern

Sometimes ideas that are good at one time become horrible later on.  This is one of many ways to get stuck in the boat anchor anti-pattern.  It is a situation that is well-described by the anti-pattern name.  We find ourselves dragging along a product or code that is doing little other than slowing us down. Defining the Continuous Obsolescence Anti-Pattern Although it may be bad form, I found a good definition of this anti-pattern on a site covering the anti-pattern much like we are here. [Click Here to See The Page] “A Boat Anchor is a programming anti-pattern that occurs when a part of a system is kept in that system despite it no longer having any use.  Generally this... Read more