Version Fatigue
An anonymous reader writes "An article in TechCentralStation introduces a useful new term: "version fatigue," which describes what happens when you get tired of learning new ways to do the same old thing with each release of software. This is something that tech designers seem insensitive to, but that drives users crazy. Maybe it's because tech designers are more anxious to be creative than to produce things that users like?"
It seems that the UI of most Unix software (the shell, Emacs, even X) has changed much less over the last 20 years than DOS/Windows, and is still changing more slowly now. Is this an explanation for why Unix users typically learn more of the intricate features of their software? Or does the causation run the other way round - because all the obscure Emacs keybindings are so well known by its users (and developers), they can't be changed?
-- Ed Avis ed@membled.com
Except for Open Source Software, versions don't get upgraded so often. But since hardly anyone (1%) are using OSS, it doesn't really make a difference now, does it?
hahaha. *sigh*
Meanwhile, I'm still looking for hardware to load Debian 2.2 onto.
I have been pwned because my
look at what MS has done over the past 5 years with database access libraries.
We have had ODBC, Jet (various versions), SqlLib, RDO (various versions), ADO (many many versions). ODBCDirect, and now ADO.NET.
All do the same thing...Open the database, Get The data, close the database, and move on.
It is ridiculous.
I'm still working on a clever footer.
This isn't a very useful new term - it's not even a new idea. Fact is that there is a central paradox in the world of commercial software - truly successful stuff doesn't sell. Or rather, it sells once, fixes all the user's problems, and you can't sell him anything else.
Without trying to be too cynical, this is a very obvious reason for the re-release of old apps with very minor changes to the previous version. How many NEW features of your latest word processor/IDE (delete as appropriate) do you really use? Chances are very few.
The re-release cycle is a real problem for consumer oriented companies. In a technical/business backend server market (like telecomms or banking) the problem is even worse - shift an app, which will run for ten years trouble free and provide full functionality, once and you may have destroyed your job! Who needs you once that ships?
Nah. Market forces dictate that broken or incomplete software will be much more dominant in the commercial marketplace.
Designers always are under the impression that "bleeding edge" is the most enticing way to go, and assume that is what the consumer desires. Usually, however this is not the case, people want a stable, easy to use interface.
It's time we let this little tidbit be known. Quit fixing things that aren't broken!
I am the evil aardvark!
Adobe is aweful for this. I dread every photoshop release, I just no they're going to do something complicated and pointless to the interface.
The problem is, interface design is still an art and not a science. What little research that has gone into interfaces has gone completely unnoticed by the industry at large. I suppose there isn't vocal demand for improvement, so it won't happen.
In Capitalist America, bank robs you!
Working extensively with a designer/creative director/art director/etc. has definitely shown me that "version fatigue" is worth paying attention to. Particularly with applications like Adobe Photoshop. I try to stay on top of the new versions and the new features provided by said versions, but whenever I try to get a designer to upgrade, the resistance is magnificent. Changed command keys, different menu hierarchies, basically, different ways to do common things. I have a designer still using Photoshop 5.5 because its the last version she doesn't mind the interface for. Same goes for Illustrator - the "features" added between 8 and 9 (not to mention 10) kept this designer on 8 for over a year after 9 was released.
... but maybe I'm wrong? I dunno.
What I've learned is that when your work (and productivity) depends on a particular flow and interaction with your applications, even the smallest changes can significantly impact that and result in a very sour attitude towards new releases of software.
Now, what's the solution? I keep saying that there's no way for Adobe to add new features w/o incrementally changing the way you interact with the application
I sometimes wonder what goes through the mind of the developers when they change a perfectly good working peice of software, and make it one that is harder to use.
Xaotik Designs
...why good operating systems have strong user interface guidelines. Apple is a notable example, its what makes them so easy to use. every joe blow windows programmer thinks he can revolutionize the UI, which makes running windows so god damn frustrating.
I want 2D games back.
I know much of the time any changes in GUI design is driven by either complaints or changes in tools available. New GUI widgets are being developed at a phenominal rate. To the developer it's almost irresistable to not use somthing that seems to simplify a task.
On the other hand, between my wife and my mom I've had plenty of experience with the frustation users feel at radical changes. For instance the new option in MS Office Apps that default hides infrequently used Menu options and toolbar icons. It took me almost an hour to tell my mom over the phone how to get her right-justify button back.
There is hope though, if Adobe keeps patenting obvious GUI interface concepts we'll all be back to command line programs and the point will be moot.
"God fights on the side with the best artillery." - Napoleon, Marshal of France - speaking truth to power
> This is something that tech designers seem insensitive to, but that drives users crazy.
...
This doesn't sound like the techies I know. I've worked in the computer biz for three decades, and as long as I can remember, there has been a standard excuse for not upgrading to the latest release: "I've learned to use the old one. It's working fine for me. I've got work to do, and I don't want to waste time learning to use the latest version. Maybe when I find I need some of the new features, I'll consider upgrading."
This has always been a fact of life in the "tech" sector, to the frustration of the Customer Support people who are always dealing with people who are 30 revs behind. You don't hear about it much because techies don't make a fuss over it. We just quietly listen to the hype for the latest versions, and we ignore it, unless we hear something that we think will be useful enough to justify the time lost in an upgrade.
There are some linux systems that have been running continuously for around a decade now, without any upgrades at all
Those who do study history are doomed to stand helplessly by while everyone else repeats it.
On the other hand, I still know of people who would still be on Windows 3.1 and word 5.0 if they were not forced to "upgrade" for one reason or another.
heck, even look at webpages. With the new privacy statement implemetations in IE 6.0 people coding in basic HTML will tend to be locked out because the browser will generate an ominous error message about a lack of a privacy policy. The Current implementations of P3P are a legal minefield, so much so that at least one person has advocated dis-avowing p3p altogether, just for your corporate safety.
Version fatigue comes in when the new bells and whistles do not obviously justify the changes needed in work habits, and do not expand the core functionality in a useful and meaningful way.
there are only so many ways to re-invent the wheel.
Microsoft, for example, has got itself on a treadmill, because it has to come out with a new version, regardless of worth, every several years. This has irritated me so much that I hope they trip on the treadmill, fall, and do serious damage to themselves.
"It is a greater offense to steal men's labor, than their clothes"
I see Apache 2.0 as an achievement in this regard. When I was researching the new 2.0 branch I was expecting a new mind-bending config that'll destroy most of the work I had done over the years in standardizing my Apache builds; not so.
I can't say the same for every other software package out there, including almost every new major release of RedHat.
Luck favors the prepared, darling.
*** Rant On ***
As a programmer I can speak to the software end of this conundrum involving "version fatigue." In the companies I've worked for, the programmers are the lifeblood of the enterprise, but often treated as little more than throwaways (albeit usually relatively well-paid). And, software projects/products rarely have a clear definition - so their development is a moving target. So programmers cannot define what they should build - because they lack any control (other than to drive from the backseat) - and no one else can definitively tell them.
What does this have to do with versions you say? Well, for software that actually gets out the door (the minority of projects to be honest), it's almost never *right*; in addition, it has a bevy of unnecessary features, which made it in due to an unclear vision of what the result should be. Therefore another version is needed to "get it right", of course the unclear vision remains so some improvement is made, maybe features are cut (a rarity), and some new unnecessary features are added, and others changed (but not for the better and sometimes for the worse).
A good book on this topic is Alan Cooper's "The Inmates are Running the Asylum" Amazon. It focuses on User Interface Design, which at the end of the day really means developing the disciplines and indentifying the user(s) to actually define what should be done before it's done!
*** Rant Off ***
I don't know who this AC is, but my friends and I are very much aware of the consequences of constantly changing the way you do things.
Our focus was on development, specifically why MS developers seem to have arrested development at about the level of 2 years of real experience. This isn't a slam against them - this was so widespread that we knew it had to be environmental.
We eventually figured out that the problem was Microsoft's constant reinvention of the wheel. We focused on the GUI, and compared the fact that we had been using the same libraries for a decade (Xlib for low-level routines, Motif for lists, menus, etc.), while in the same time MS Windows had released something like 4 separate, and incompatible, graphics libraries.
This mean that while we were able to build on our prior experience - and more importantly build on other organization's experiences as we brought in new employees with fresh ideas - the MS shops were constantly struggling to "stay in place" and there was essentially no institutional memory.
To be honest, I think much of the problems with MS Windows applications can be traced to this. After 10+ years of Unix experience, most people have been bitten by a fair number of "it could never happen" errors, and they instinctively take care to avoid a repeat. A MS Windows developer has probably seen as many errors, but how do you map the solution for a library three generations ago to the current one?
For every complex problem there is an answer that is clear, simple, and wrong. -- H L Mencken
"I can't give you a brain, so I'll give you a diploma" - The Great Oz (blatently stolen sig)
Ever project I've been on that ignored the users ended up crashing and burning and eating up a lot of cash and time. In many cases a programmer doesn't know what a user needs because they have different experiences. I've seen year-plus-long projects go under because users simply refused to use a new system that was forced on them.
Of course its NOT easy to figure out what users want, and it requires some savvy to figure it out and get sign-off. That's part of the programming lifestyle.
I can sympathize with version fatigue, though. I'm tired of companies (read M$) deciding how I think.
"The Sage treasures Unity and measures all things by it" - Lao Tzu
that the title of this story was verizon fatigue... and I had a glimmer of hope that there was a professional diagnosis for being driven insane by their "can you hear me now? good..." adds.
dmarien
Rant mode: On.
This is pure intellectual laziness. What is wrong with being in a "learning mode?" We do it our entire lives! Why should someone want to actually stop learning?
I've noticed a very disturbing trend lately. It could just be my perceptions, but it still gives me cause for concern. Many people (both general consumers and professionals in business) don't want to bother learning anything. They want to tackle complex tasks that could never be done before, but insist on not having to learn the tools to do it. I see it here at work with people who insist on holding on desperately to suboptimal programming tools when others would tackle the job more effectively. I even see it in my own family: I once got a call from my mother, while she was on vacation, asking how to access the voicemail for her cell phone. She called me at work, in the middle of the day, simply because she had never bothered reading the instructions from her service provider! (I taught her the meaning of RTFM that day.)
I understand that many products can be difficult to use, especially software. It takes effort to learn these products, and effort to use them. However, very often we barely have the technology working. How can you expect it to be easy to use as well? Automobiles, television sets, and radios are all products that many now consider fairly easy to use. Now ask the question: How long did it take for them to get to be so simple? Some of these products have been continually developed and refined for over a century. Now consider how long VCRs, camcorders, and software products have been around. By comparison, these are all fresh out of the R&D lab!
People need to realize that complex tasks can't generally be simplified overnight. It takes time to find the solution to the problems at hand, and even more time to refine the solution such that it is both effective and efficient (i.e. it requires a minimum of effort to use.) All of the complaining does nothing but add to the noise.
Rant mode: Off.
Thanks for reading.-kjz
First, I think the article is spot-on. Gods, I'm tired of adapting to so-called upgrades. I rarely upgrade things unless there's a reason, but there are times you're left with no choice (say, a company-wide decision).
The other side of this thats ignored is the programmers. A lot of us are NOT trying to ram out Spectacleware, we'd like to talk to the users, like to go "slow and steady" and don't get the options. We don't often get the chance to make that decision, however, because someone wants something out the door pronto.
Version fatigue? I'd say its being suffered on both sides because the people making the decisions don't care about users or programmers.
"The Sage treasures Unity and measures all things by it" - Lao Tzu
One of the main reasons this happens is as a result of focus group testing and other usability testing on the current version.
If you take the current version of most software and do some usability testing with new users, you'll probably find that there are things that could be done better.
But when you make those changes, to please the new users, you're messing with the users who already know how the thing works.
Microsoft Visual C++ is a perfect example. With each new version they move things around - but they have "compatibility" modes for people who liked the old way. Even with the newest Visual Studio.NET you can still pick the old VC 2.x keyboard layout and use it.
That's a pretty good solution, as long as your app is customizable enough that you can use the customization to emulate the previous version...
The only real problem with this solution is that it makes it so nobody else can use your customized version. If I go over to my co-workers desk to try to fix a bug, I can never remember what hotkey to hit to get it to compile..
(Maybe the solution to this particular problem is to make it easy to set a "guest" profile that temporarily overrides the current profile).
Windows is a huge victim of this problem too - the whole redesigned Start menu in XP annoys most existing users, but new users (users new to computers, what few there are - I helped a friend "get online" and got to watch this) seem to like it..
- Steve
In fact, as a 'tech' person, I switch versions and machines more often then your average Joe.
.emacs file, and have gotten quite adept at fiddling with window manager parameters in short order to get focus-follows-mouse, and that's about all the config I care to do. It'll just get blown away tommorow, why bother?
My Linux friends are often amazed at how uncool my Linux desktops are, or my emacs config files are, or a whole slew of other things. The reason for that is that I am f'in sick of having to completely reconfigure the system every time I upgrade, or hop machines (which is almost always an upgrade or a downgrade; otherwise I could at least carry my config), or change software packages.
I switched which machine was doing my email processing last week, and I just wanted to copy the config across from one to the other. No dice; one ran exim3, the other ran exim4, which has a whole new, completely incompatible config file. The conversion script was wholly unhelpful for my config, so I had to do it by hand.
If versions weren't changing so often, or if it were easier in general to carry configurations around even across versions (an impossible task in general), I'd be much more likely to actually configure things. As it is, I carry around a *small*
Granted, I'm more violent to my systems then your average user, even more then your average Linux user, but it's still exasperating.
People, it's not a mark of manliness that your program requires text file twiddling to configure. Give me an easy, easy, easy method of at least setting the the basic parameters. Like Mozilla: The basic parameters are in the config box, but there's a lot of obscure ones you need to hit the prefs.js directly. That's fine with me.
And don't even get me started on re-re-re-re-re-re-learning keyboard shortcuts.
They also pushed the new version by sacrificing backward compatibility.
& lr=&ie=UTF8& oe=UTF8&selm=tTSK7.1339%24rY1.143064%40dfiatx1-snr 1.gtei.net&rnum=2s ?q=openrecordset+da o+ado&hl=en&lr=&ie=UTF8&oe=UTF8&selm=3b993cc9.3218 4196%40news.charter.net&rnum=6
.Net has completely changed the language, effectively killing Visual Basic.i sual+basic+.ne t+killed&hl=en&lr=&ie=UTF8&oe=UTF8&selm=3a50cbe9.7 644234%40news.clara.net&rnum=6
Every Access version prior to 2000 used DAO (Data Access Objects). In the Visual Basic Library References, DAO was checked.
In Access 2000, they pushed ADO (Active Data Objects), which many have said is more complex and slower. They removed the Library Reference to DAO and sneaked in the Reference to ADO! To make matters worse they duplicated the variable type "recordset" in ADO and DAO, which renders useless almost all Visual Basic Code that worked with a table.
If you used the phrase "Dim x as recordset", you had to do one of the following:
- Uncheck ADO and Check DAO (Forcing it to use the older version)
- OR Check Both ADO and DAO, then search all code and replace every "Recordset" with "DAO.Recordset"
- OR Leave ADO Checked and DAO Unchecked, then search all code and rewrite every line that opened a table.
It's already bad enough that Access Databases start misbehaving when it's shared by too many people or live tables exceed 80,000 records, or the database exceeds 1.9 Gigabytes. At this point you're already thinking about scaling up to SQL server, Oracle, or my SQL.
In addition to that, more and more features are added while the "little Jet engine that could" becomes more and more critical to the operations of an organization.
Does Microsoft think that Access programmers have nothing better to do than get interrupted by every department that has upgraded to Access 2k? How hard would it have been to tell the upgrade wizard to automatically link to the DAO Library and automatically replace every "recordset" with "DAO.Recordset". You might think that it means more money for a consultant but all it does is accelerate the time to burnout. They're getting harder to find every day.
See:
http://groups.google.com/groups?hl=en
http://groups.google.com/group
I've also heard that Microsoft's Visual Basic strategy towards
See:
http://groups.google.com/groups?q=v
It's no wonder that companies are switching to open source. Anyone's patience will wear thin after having to jump every time that Microsoft tells them to.
I, for one, agree. The longer people keep the same system and the same software, the better they learn it.
I don't buy this stuff about how unix is hard and other stuff is easy... I remember LOTS of yuppie boomers who learned old wordperfect just fine.. and that's certainly not wysiwig. Obscure keypresses, hidden markup codes, they understood it all.. and some were really good at it.
The problem is when things change rapidly. Totally.
Emacs keybindings aren't changed because there is no reason to change them. Nobody wants to re-write all that lisp.
software developers, people who only ever use vi or Emacs should shut up when the discussion comes 'round to GUI design principles or software usability.
They have no [expletive deleted] idea what the problems are because THEIR software has been stable for decades.
Using "make" or a shell does NOT make a coder into a user. It does not provide the programmer with any perspective into "user-land."
That's why most Linux GUI stuff sucks, can't copy/paste across applications, doesn't follow guidelines and is so ideosyncratic you just want to strangle the coder.
Being a domain expert is fine if you're working in that domain. But coders are supposed to be experts working in their OWN domain: CODING.
I wouldn't want to look at or use code produced by a domain expert (it'll be correct but it'll probably be buggy, unstructured, unmaintainable perform like a resource pig.)
By the same token, I wouldn't trust code that has been produced by a software God but has not been verified for correctness by a domain expert (it may be sweet and run like blazes but I can't trust that it actually solves the problem its supposed to.)
MSBPodcast.com The opinions expressed here are my own. If you don't like 'em... Think up your own stuff.
That's the best peice of software design advice I've ever received. It came up during a discussion of windows 95, back when that was new, when we noticed that you can still click on the upper left corner of a windows app and get the window menu, or double-click there and close a window, just like you've been able to since windows 3. Really - try it!
Unfortunately, that's about the only prominent example of MS following that advice. After years of working on windows NT 4, for instance, I finally convinced myself to leap to win2k because the amount of supported hardware was just so much better. And I had NO idea how to administrate my machine! Just trying to partition my drives was a huge hassle; I used to be able to open up the disk management node in the control panel and now... well, I found it; it's in "administrative tools -> computer management."
Which is fine, but it was somewhere else for so LONG. Would it REALLY have hurt to leave a link to that program from its old place? And the sad thing is, MS isn't really the worst offender. I'm thoroughly confused every time I get a new version of KDE; in some ways, I'd be just peachy on using KDE 1 just because I remember how to configure it so well (and I would, except that the mail client sucks prior to version 2.2).
In all, I think there needs to be a good deal more attention paid to interface design before the FIRST release. Because, for better or worse, the first interface you give someone is the one they're going to expect from your product. If it sucks, you're just going to be pressured to maintain a sucky interface, or frustrate your customers when you discard what they're familiar with.
The reason why interfaces keep changing is so that software publishers can sell the same software twice. Users won't "upgrade" to a new version if it doesn't look any different than the old version.
Free software though doesn't need to sell itself. Free software is made to solve a problem, not make money. Big difference. Changing an interface between versions only makes a problem worse, since it's harder for the user to use the software. Instead free software is changed each version to help better solve the problem it was designed for. Just another reason to trust Free and OSS more.
Outdoor digital photography, mostly in New Engl
...this "version fatigue". I hope it gets as widely adopted as "vaporware" did. Version fatigue is an excellent way to describe that part of so many new releases of older products that are nothing more than moving the chrome around on the sheet metal, and have nothing to do with the underlying chassis and powertrain.
Sometimes one pithy identification of a problem is enough to cause radical changes for the better. Version fatigue might be a very powerful addition to the lexicon.
If you change your design around so much, you might not have done a good design in the first place. So, you met the deadline, but the design was inadequate. What do you do? You rush for the next deadline, trying to redesign the interface a bit as you go, making it smoother.
Iterate sufficient times, and what you get is version fatigue.
If you had spent enough time in the design phase, possibly with some prototyping, you might have escaped a bit of all these changes.
That said, if you look at Microsoft Word, I would argue that the version fatigue is not that great. Type at the keyboard, change the fonts with the dropdowns, and hit the printer icon. The floppy icon for saving. The looks are slightly changed, but almost everything is done in the same way as before (which is why I'm relatively happy with Word97). Gimme a good reason to get Word XP! If you can, I bet I wouldn't get version fatigue, since the fundamental functionality is relatively stable.
Changing the interface when the interface is flawed is an unpopular but necessary task. Changing the interface for the sake of changing the interface is a PR nightmare.
Stop the brainwash
Why can't a button be just a button, and why do skins seem to automatically mean bitmaps pasted over buttons?
-jhp
/. -- the Free Republic of technology.