develpreneur podcast

The Input Kludge AntiPattern

It is hard to think of the word “kludge” and anything other than an anti-pattern.  Thus, the input kludge antipattern is an obvious name.  This example of how not to code is focused on the concept of garbage in – garbage out.  When you allow data with questionable quality to enter your system, then it should be no surprise that the solution suffers in quality. Defining the Input Kludge AntiPattern The best definition I found this time around is on the DZone site listed with several other anti-patterns. [Click Here to See The Page] “An input kludge is a type of failure in software (an anti-pattern) where simple user input is not handled properly. This may cause a buffer overflow security hole, issues during... Read more

better developers

The Ambiguous Viewpoint AntiPattern

The ambiguous viewpoint anti-pattern is one that goes to the heart of object-oriented design.  We want to abstract and isolate functionality in a way that follows a pattern of logic.  This goal is often achieved, in part, through segmenting functionality by viewpoint.  Thus, we have the business, data, and view related code grouped in their separate areas. Defining the Ambiguous Viewpoint AntiPattern I found a good explanation of this anti-pattern on a page worth checking out for several others as well. [Click Here to See The Page] “Object-oriented analysis and design  models are often presented without clarifying the viewpoint represented by the model. By default, this models denote an implementation viewpoint that is potentially the least useful. Mixed viewpoints don’t allow... Read more

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