Are Features The Enemy?

Even though I’m no Apple fan boy, I got to admit that people are eagerly awaiting every new product they release - just look at all the anticipation for Leopard, which is due next week. Apple add sex to the equation, and this is obviously a good reason people line up to buy your product. And lean is sexy these days …

Food for thought.

I guess I agree in principle with the last 2 posts, but there are some very notable exceptions. I happen to think that the current version of Word is the best. I love full screen viewing and the ribbon frigging rocks (for mouse or key users). It seems to load quickly and the zillion features I don’t use aren’t in my face.
Similar thing with visual studio. Many of the new features make me wonder how I did w/o them. I don’t use Eclipse so I’m not sure how that compares, but I’ll trade the lag and memory footprint for those features any day.

Agreed on Word 2007. From Word 95 to 2003 I didn’t see much difference…and after a few days using 2007 I’d hate to give it up.

What we’re really talking about here is a failure in change management.

This is a great post, and it reminds us that change management isn’t just about how a change IS to be implemented and source versioning systems, but perhaps more importantly, IF a change SHOULD be implemented.

Unfortunately, as most of us seem to agree, immediate (perceived) business needs often supersede such product maintenance issues. This type of issue seems to be more prevalent in software with a large, or poorly defined, target user group, and in highly competitive software markets. I’d be interested in hearing how many people have witnessed a similar trend in more custom development.

kettch said:“I think that the development process in place should make it difficult to put features into the system. Not impossible, but just structured in a way that makes sure that features are vetted for relevance and other criteria.”

I certainly agree that all features should be vetted for relevance, but I’d be cautious of creating an architecture that is explicitly hard to extend.

Jeff, maybe an article that could act as an overview of change management and software maintenance techniques would be helpful? I know I’d like to hear your (further in some cases) thoughts on that subject.

This will get better as the cost of experiencing software decreases and decreases. Feature matrices were essential in the old days of PC Magazine and boxed retail software.

Nowadays, you can easily see a few screens or try something out. Sometimes “the feel” of a particular of an application will win a person over, as apposed to the specific features it has or does not have.

I don’t think think “features” sell cars, for example. I think the purchase is mostly emotional. A well documented case is the PT Cruiser, a car that was not, by any means, technically sophisticated yet sold extremely well.

Maybe, the challenge is to realize when you’ve reached the maximum potential and utility of a product, and to channel that momentum and success into creating something entirely new. Successful product vendors fixate on capitalizing on their success for too long while overlooking other opportunities.

Jeff,

That goes for all the tools that we use for development.
eg VB classic MFC - Winforms - WPF - ?

By the software gets matured, it is killed.
Do you think the bombarding of new release is justified (WPF, WF, WCF, Silverlight, linq, ajax, mvc for asp.net what not)?

I am not sure, how many people in .net space will get to work on .net 3.0 very soon. .net 1.1, 2.0, 3.0 the list goes on.

I would love to see .net 15 years from now. Sometimes, I feel people at MS experiment release products only to compete with other tool vendors rather than coming up with something small growing it over the time.

The poor developer is always in a mad rush to learn things not lag behind. More the buzzword, better it is :frowning:

Jeff Atwood wrote:

You can’t sell features that your salespeople can’t demonstrate, that potential customers can’t see.

That’s not true. A good demo of improved usability (of the features the product already contained), in a real-world workflow, can be very effective. Much more so than, say, a sticker on the side of the box that says “Now with 20% fewer features!”…

And then I remember how people who bought a non-iPod were bashing iPod users because they didn’t have radio or voice recorder, or some other feature that they-have-but-iPod-didn’t. In the end, it results that they don’t use these features so much either (note: I do NOT have an iPod).

Changing the subject, a use nobody talked about for the comparison chart is to look for the feature that they need and then see what program bundles that. Is as if this way of thought wasn’t obvious and people needed to do an extra step to realise it.

I think it’s a bit related to when someone writes a document and indents manually the first line of the paragraph by inserting spaces instead of tuning the paragraph style. Is like they don’t make the separation between the content and the presentation because it’s an extra step and they aren’t used to do it, no matter how many times you told them how it should be done they will keep this way-of-less-ressistance (after all, they are only writing a page or two and it’s not hard to change that by hand, and the comparison chart is for buying something that you won’t have to buy very frequently).


Josh:
Please, no ‘switch to linux’ replies… it’s primarily used as a .NET development machine.

Then switch to Mono first (yes, Mono runs on Windows too!!!) XD

I recall working for one company that was working hard to add the
marketing bullet points and I asked just how many customers were
likely to use the feature. The dev team admitted that the answer
was no-one, but the bullet was on the shopping list for
large institutional buyers.

On another note, your comment about “the market seems to work
properly when faced with buggy software.”:

… but not without expense… I worked for another company who
found a software vendor just didn’t seem to care about fixing the
bugs. This prompted a migration from one POS (point of sale) vendor to another which was quite expensive, painful, and disruptive.

It would have been cheaper to pay for the fixes specifically as consulting fees to the vendor, but they just were not interested.
Weird.

I’ve always wished there were a way to recalculate an ‘overall score’ based on my OWN weights for various features on a feature matrix.
(I’m thinking of consumer reports matrices, but it would apply to feature lists too).

That way I’d know which product had the best mix of features that I needed.

But to look at a feature list without examining which features you
need is just another form of ‘tipping’ (ie: short-cut the decision analysis process) in this case towards the one with most features.

This kind of thing happens all the time:
picking a book because it’s in Oprah’s book club.
buying a honda or toyota based on reputation (or a maytag… opps).
picking a doctor because a friend has the same one.

Another aspect of feature creep and matrix comparisons is that it becomes very difficult for an upstart to challenge an established application. MS Word may be great for office people, but I know a lot of writers who want something totally different out of a word processor. It would be very hard, though, far a start-up to introduce a word processor for professional writers because its column in the feature matrix would be downright anemic next to the big kid on the block.

“But customers will never pay companies to fix bugs in their software.”

Well that’s the Open Source support contract idea screwed, then, isn’t it?

Hey Jeff, you get a blog reply:
http://gatesvp.blogspot.com/2007/10/sofware-is-service.html

I don’t think you are right. As already told in comments, different users want different features.

You told about uTorrent client recently, if I remember correctly, and was happy it has all detailed statistics and info.For many people, this is not needed and only make looking uTorrent more complex.

I think real problem is usability and bugs. This is where most apps really suck.
As for features, the best atnibloating solution is firefox one: add-ins.

ACDsee anyone ?
what was once a neat little piece of software strikes me as the best example of a program that has been completely killed by featuritis…

hopefully http://oldversion.com/program.php?n=acdsee still has the lightweight old versions ^^

I see Microsoft Word and Office has been mentioned a few times.

They were facing massive feature bloat. The solution? They did a complete interface redesign with the Ribbon (which is actually rather good, Alex).

Sure, it’s not Word 1.0, with its tiny feature set and toolbar/menu interface. But they took what was quickly becoming feature-bloated, with feature after feature tacked into the menus (and, shudder, task-panes), and gave it a new lease of life. If only other software companies would do the same.

Features aren’t the issue. It’s when they get tacked onto the user interface in a higgldy-piggldy manner and bloat the program’s speed. I wouldn’t mind any of those features being added to WinAMP providing they didn’t get in my way when I didn’t use them.

I have a certain fondness for the C++ language’s philosophy: “only pay for what you use”. And if only software had “starts up quickly” as a feature.

Adrian: It’s possible to make plugins for Word (and other Office apps). Certainly I think that’s better than having to write an entire word processor that’s comparable to the Office behemoth.

It seems that the commercial model will eventually have to evolve into something similar to the open source approach of doing things: the software itself will probably stop being the main product or software companies and the focus will move towards services. As far as I know, this is the model that open-sourced based companies have been using for a while now to make profit…

“But customers will never pay companies to fix bugs in their software.”

Borland/CodeGear expects its customers to pay for bugfixes. Poor Delphi 8, 2005, 2006 guys out there…

Features aren’t the enemy, features that no one (or not enough people) care about are the enemy.