The secret driven-development/design acronyms
- 📅
- 📝 450 words
- 🕙 2 minutes
- 📦 Entertainment
- 💬 18 responses
We’ve all heard of BDD, DDD and TDD but that still leaves 23 letters unaccounted for.
I can now exclusively reveal more! You may recognize some from projects you’ve already worked on but didn’t know had a name much less a recognized methodology.
ADD, Agro Driven Development
Developers code features directly proportional to the amount of heat they are getting from users, sales or managers. Results in a jack-of-all-trades, master of none.
CDD, Clone Driven Design
Features and design are achieved by cloning somebody else’s product thereby removing the pesky overhead of having to come up with ideas of your own. Sure fire way to stay firmly behind the leader.
EDD, Ego Driven Design
Where the direction of the project is dictated purely on an individuals ego and their ability to shout long and hard until they get their own way. The individual involved is rarely the target audience for the product which is often the ego-bruising trigger in the first place.
GDD, Golf Driven Design
Where features and specifications are agreed on the golf course by people who neither use the software nor are responsible for implementing it but want to write off the whole trip as a business expense. With any luck they won’t check the final product.
LDD, Lunch Driven Development
Where features, goals and APIs are decided over lunch by the developers and users who care enough to meet up over their lunch-time. Lunch must not be provided or you stray into Golf Driven Design instead.
PDD, Psychic Driven Development
Where specifications are not so much decided through real communication but rather obtained via a psychic link with potential users with mixed results. Often seen in conjunction with Ego Driven Design.
QDD, Query Driven Development
Every page or screen starts with a question to the user what they want to see, writing that as a SQL/LINQ query statement and then dumping results out via a simple UI. Would likely be better off in Access or Excel but people involved want to claim they have intraweb experience.
XDD, Xenophobic Driven Development
Where the majority of development time is given over to making sure others can’t do anything BUT what the original developers wanted. Typically observed by large sets of exception messages, the absence of hooks and a sprinkling of the sealed keyword.
YDD, Yesterday Driven Development
Features added today are the ones the customers thought they were getting yesterday. Generally used in very-tight rapid methodologies.
ZDD, Zzzzz Driven Development
Every waking hour is given over to the development process at the expense of quality and design ideas that are only appreciated by the sleep-deprived. Normally observed on tight schedules such as those in the gaming industry.
[)amien
18 responses to The secret driven-development/design acronyms
MDD — Mortgage Driven Development.\nDeliberately make the code unmaintainable, so even if by some miracle or moment of insanity somebody actual puts it in production, there is a job for life. Build all of the whimsical, ego driven features first, and then rebuild them again in a different technology stack, so that development never gets round to building something useful.
CDD — Comment Driven Design. Comment out code untill it works!
HDD — Hype Driven Development
Nobody is sure of what the requirements are, or why the project started — but you’re gonna code in the hot new language of the week, use the coolest framework of all time or have it running in no time on the hippest flavour of Linux, or all of the above.
I thought the acronyms were all for real but its a joke after all. :) You made me smile.
HDD — Home Driven Development Do whatever it takes to get the job done and go home not in crazy ass hours, where all the real fun programming begins.
Normally happens when project is not inline with the team’s career goals.
Having other team doing a more exciting project could increase the effectiveness of Home Driven Development to a point where team start to make excuses to go home early. One of the most popular excuse is “I don’t need to be here. I can do it from home”.
ADD should be Alcohol Driven Development. The best way to write pragmatic code is under the influence :D.
TDD — Alternate Acronym
Tea Driven Development: A Tea based approach to developing computer software; The belief that software is best developed in an environment where there is plenty of Tea;
http://www.danielflippance.com/blog/09–02–24/TDD_-_Tea_Driven_Development.aspx
Funny. Quite an entertaining list.
My favourite (I can’t remember who coined the term now) is
CDD — Christmas Driven Design
Where you coded how you wished the language worked, rather then how it really works.
You don’t have an F entry, so here you go. This is from my upcoming book, “The Nomadic Developer”, where I define some terms for the consulting industry:
Faith Driven-Development
A development practice also known as “code n’ pray” or “Waterfall”. It relies on an ever knowing business analyst write an Old Testament like book known called “The Requirements”; non-coding architect to write New Testament like book called “The Design”. Once those are done and cast in stone tablets, a developer (you) is called upon to code the system, with results in a situation that resembles the last chapter in the New Testament, called “Revelations”, in which the forces of good and evil fight on a giant battlefield, with massive bloodshed (a process known as “Testing or Quality Assurance”) after which there is a promise of a thousand years of utopia.
Sadly, it seldom ends this well.
Uber LOLz ;)
ExDD — Exception-driven development. 90% of the code is in catch statements.
RDD, Randomly Driven Development Requirements are defined and re-defined randomly with no thought to end-user expectations, needs or simple common sense. Often closely related to EDD.
HDD, Hack Driven Development
Code looks like spaghetti. Every change in a program is a hack and can be made only by original author.
Simply brilliant. Thanks for making me laugh on a Friday afternoon.
PDD, Panic Driven Development
All the developers are panicked because of the tight deadlines. And because of this panic and rush they create more bugs and become more panicked. Usually this follows the YDD…
Ha ha ha!
VDD, Vapor Driven Development
Pre-announced projects often used together with CDD to take the wind out of competitors releases. More and more features are added with no real release date in sight. See Duke Nukem Forever for the canonical example.