One of my favorite topics in software design is killing new features and instead re-thinking existing ones. I love it because there's a tendency to completely ignore this and only focusing on adding and adding new "exiting" stuff when increasing the version number. This is often what I mean when I refer to software as being "bloated".
It's some how understandable - it's not always nice to look back in the mirror and face the mistakes you made in the past, but I really think it's the way to build better software. One software industry in particular that seems to be facing this issue is the cms industry - maybe because it's quite young. It seems like every new version of a cms comes with tons of new included features - because more is better, right? This lead to thinking - what if the cms industry were to design and market cars?
The evolution of the basics

Let me start by looking at where the car industry are heading. The most important thing - imho - with a car is making it drive. In the old days this included inserting a key, pull the choker, turning the key while holding down the clutch and pressing the accelerator, keeping the clutch down, shift to first gear, releasing the clutch while pressing the accelerator. After some time push the choker back in. Pretty complex if you ask me.
So where are we today? Well, in the most advanced and improved cars today, the car detects you because you wear a keycard in your pocket, so you just press a button saying "start", the gear is automated so to get the car moving you just press the accelerator. Pretty easy if you ask me. But technically and design wise a goal that has taken many years to achieve.
Cars improved by the cms industry
So, let's hand over this design and engineering wise masterpiece to your average designer of a cms:
- "Hello mr. CMS Designer. Do you think you could improve this?"
- "Oh my good. Sure - this is terrible design"
- "It is?"
- "Yes, let's start by looking at customization. The way it starts makes it absolutely locked"
- "It seems very simple and perfect to me?"
- "Simple is bad. Come back in a month and I'll have it improved"
Now of course it didn't took a month, but after around a year, the cms team had finally made a release (though achieved by pushing the deadline one week at the time, making the client quite frustrated).
The personalized, features bloated car - introducing the cms vehicle
- "Welcome back. It has been a hard task, but we've made incredible progress and have a fabulous product."
- "I'm excited - show me the improved car"
- "Before I show you, let me tell you that it wasn't really a car you gave us one year ago. Actually - it couldn't really do anything"
- "It got me here didn't it"
- "Sure, but did you enjoy the ride - could you customize it?"
- "Ehmm - I don't really follow?"
- "Nevermind - let me show you the car"
And the cms designer and his huge team (it takes quite a lot of staff adding so many improvements) proudly revealed their work:

- "Let me tell you about this new masterpiece in engineering. First we added the key instead of the button. This allows you to set the car in different initial modes for increased security. You see turn the key to level one and you're able to use the electric windows and turn on the radio. Turn it to level two and you can verify that the car works by looking at all these different icons in the dashboard. Turn it to level three and you can start the engine. Neat, huh?"
- "Well…"
- "Wait - there's more. Remember the way you used to start the engine? Totally un-personal, right. We really had to work hard on that, but we've added a lot of neat features that really will make you enjoy the product."
- "Okay?"
- "First - let me show you something we call 'the chocker' (patent pending). It's a simple lever that let's you customize the amount of gasoline running to the engine. So if it's cold outside or you haven't used the car for a while you just pull it all out and leave it for a couple of minutes. Next - there's the clutch. And this is genius. This let's you customize the way you want to change gears. Really neat - by combining the clutch with the accelerator while driving, you can actually adjust the amount thrust coming to your car when you move up a gear. It is hours of fun, I tell ya! What do you think?"
- (thinking) "I actually liked my start button. Is this really an improvement? This upgrade has been pretty expensive, there are a lot of new features and they really allow me to start and operate my car in a customized way".
- "I know what you're thinking. Could I really drive this car before all our need features where added? Unbelievable, right. I tell you - you don't wanna look back from here. We're actually already working on version 2.0 - we figured that we could go even further. So we'll introduce something called a plane next year - just look at all these buttons and icons - it's personalization heaven. And it will take you really fast once the engines are started, and you'll only need minor modifications to where you start and stop your journey, but we can offer them too - we'll call them airports:"