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

develpreneur podcast

The Continuous Obsolescence Anti-Pattern

As hard it is to spell the Continuous Obsolescence anti-pattern is easy to fall into.  The lure of shiny new versions of products often leads us into this trap.  We want to stay current with the latest features.  However, the cost of keeping up-to-date can put us in a pattern of upgrades over enhancements. Defining the Continuous Obsolescence Anti-Pattern The wiki c2 site provides a beautiful, pessimistic view of this particular anti-pattern. [Click Here to See The Page] “Continuous Obsolescence: This is the hardest Anti-Pattern to overcome. Corporations have their pet system that they mutate every time a new computer language and/or buzz-word builder comes down the pike to the developers. As soon as the pet system is migrated into... Read more

develpreneur podcast

Spaghetti Code Anti-Pattern

The spaghetti code anti-pattern is one that has become less prevalent in applications.  However, we can still see some excellent examples in the world of scripting and other less structured code.  This anti-pattern typically comes out of short cuts and slapping together a solution.  That makes it easy to avoid.  The cost of repairing this anti-pattern makes avoiding it completely worthwhile. Defining the Spaghetti Code Anti-Pattern I am not often a fan of using the Urban Dictionary to find definitions.   Nevertheless, it has an excellent summary of this anti-pattern. [Click Here to See The Page] “In computer programming, code which flagrantly violates the principles of structured, procedural programming. Usually this means using lots of GOTO statements (or their equivalent in whatever... Read more