Term of the Day : Cargo Cult Programming

Posted: May 28, 2009 in Uncategorized

Last week I accused a developer of being a “cargo cult programmer”. He had no idea what I mean so I had to take him on a quick journey through Wikipedia.

What is a cargo cult?

Back in the day, an isolated, indigenous society’s first contact with the outside world was a shock. The best examples existed in some small pacific islands where the native people could barely comprehend the new technologically advanced culture which had arrived.

They often coveted the more advanced society’s possessions which they called cargo. They had no idea how the settlers had amassed so much ‘cargo’ and came to believe that the new comers had been given this vast array of possessions by spiritual means.

This gave birth to cults which worshiped items of ‘cargo’.  These cults crudely imitated behaviour they observed by the owners of the goods and therefore presumed that the spirits would recognise this and send them ‘cargo’ as well.

Good examples of these cult rituals are setting up rooms like offices and dining rooms as places of worship and constructing things like radios out of straw and then dancing around them.

More info : http://en.wikipedia.org/wiki/Cargo_cult
Cargo Cult programming

A modern adaption of the term is ‘Cargo Cult Programming’. You can see the intimation. This style of programming is characterised by the ritual inclusion of code the developer doesn’t understand in the pursuit of a solution they also fail to grasp. All in the hope that something will fix the problem.

An excellent example of this is the ritual worship of code produced by other more advanced developers. Without any understanding of it, the cult member cuts and pastes this code into their program hoping that it will magically work.

This term is so apt in many circumstances, I hope you get as much enjoyment out of it as I did. So Enjoy!

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s