Why do companies keep changing software and web sites? Tinkeritis maybe?

There’s an interesting thread in Mundane about the original Google Map being taken away. Forcing people to use there so called “new and improved” version. A version that’s deficient in many key features from the original. This happens all the time. The Microsoft Office programs today look nothing like the 2003 Office that I and many other people prefer and use. Windows 8 was a failure because they made drastic changes the public hated. Web sites change. Sometimes for the better, and sometimes not.

What is it about Software and Web sites that companies and their programmers can’t leave them alone?

Imagine building a nice dresser for your bedroom. You personally select the cherry boards. Carefully cut the pieces. Hand plane the joints. Then you spend a hundred hours painstakingly hand sanding. Apply 5 coats of lacquer and sand between each coat. It looks great. Works great. You’re so proud of it. Something you will use every single day for the rest of your life. One of your kids will inherit it. Would you one day, say, oh what the hell. Lets redo the drawer layout? Grab that jigsaw and just butcher it? Of course not.

People don’t realize the complexity of programming. Thousands of man hours can go into the design and development of a big project like Google Maps. There might have been 12 people in that team. Often it’s fine tuned based on User comments. It’s as good as it can be.

I’ve gone through that same programming development cycle many times. The users will give me a request for a report. I may spend a week writing it. After it’s written, they’ll ask for a few mods. The finished report is tailored to fit their requirements. Typically it’s not changed unless there are new data element that need to be added. I understand that the people that use the reports are familiar with the layout. They know how it’s sorted. Where the Group Breaks are. The subtotals for each Sorted Group. How I summarized the data. Tinkering with the design just makes their job harder and more time consuming.

I was talking with other Analysts at work. We’ve pretty much come to the conclusion that it’s all about job security. That the programmers spend a year or two writing a difficult software application or web site. Now, instead of focusing on selling that product. They immediately begin a new development cycle. Ensuring their jobs are required. You only need one or two guys to maintain software. :wink: You need a team to write a new version.

Tinkeritis has spread to the public too. They’ve come to expect. New, New, New. Every damn year give me something new. It’s really getting pretty comical. Think about all the products in your home that are exactly the same. A dishwasher today is not much different than the one your mom had thirty years ago. A dvd player today is not much different than one you had in 1995. Product stability is a good thing.

I’ve bitched about this before but the usps.com website used to be barebones, lighting quick to load and the feature most people went there for tracking# was the same, it was the plain and just works ethic like google.com used to be.

Then they went and redid the site, now it was sluggish to load with graphics everywhere and photo slideshows and it no loner worked in all browsers.

:rolleyes:But what is important is a bunch of pics!

BTW the washing machine industry actually went backwards, they added LCD touchscreens that would rust and short out in damp basements etc. Now only the high end machines have touch screen controls, and most are back to mechanical knob controls. I’d NEVER buy a washing machine with electronic controls, learned that lesson with my mom paying twice to replace the LCD electronic elements, some things don’t need fancy innovation.

Sales seems to be the driving force behind tinkeritis. We sold you something day. Now we want to sell you a new version next year. It’s an unrelenting mantra. Change is needed. Change is good. See how different our new version looks? :wink:

When really the program they sold you three years ago does its job perfectly. You’ve trained on it. Your staff knows exactly how it works. But now you’re expected to retrain your entire staff on a new version. Just so that the software company pockets more money.

We’ve all fallen into this scam. We gotta change every damn year.

I’m not suggesting change is always bad. Done correctly sometimes they really can enhance software. Especially if they listen to their users testing the Beta software. Take their suggestions and concerns seriously. Add new features but don’t just change the interface to make it look different.

I am a systems analyst and consultant for a megacorp. I understand the sentiment because I also hate jumping through hoops and over hurdles to keep things that aren’t broken working as new changes come in.

However, the part that you are missing especially on the computer front is that things are still changing rapidly and not everything can be supported forever. That simple application that users love may work just fine on the front-end but it may also depend on an old database running on a server that is going out of support. The reason that database and server are going out of support is partially sales driven but it is very likely that it is also non-compliant with new security standards that have become mandatory because of large-scale and costly breeches among many other things. All of those factors have a domino effect on everything up the chain and are usually non-optional to re mediate.

Someone could rewrite the same application so that it appears to be identical on the front-end but it is also extremely likely that requirements have changed since it was first written so it is the time to rethink the whole approach. I do that all the time and it is very rare for the original application to be as perfect as people originally claim. I almost always get a whole laundry list of flaws and inconveniences that people have learned to live with for years once I really start asking questions.

I won’t deny that it is somewhat common that a new solution can be inferior to an old one but change itself is inevitable especially in the technology world. In the case of Windows 8, there is nothing wrong with the operating itself. It is just that Microsoft misjudged the way that the market was going when they developed it so they screwed up the user interface. I had to buy a new home computer a few weeks ago when mine failed and my new one has Windows 8.1. It took me all of 10 minutes from opening the box to set it up and fix the user interface by downloading the free ClassicShell. The overall process was many times easier than older Windows versions including Windows 7. Windows 10 will be out in a few months and it is already getting really good reviews.

My job requires that I know most everything about hardware and software from the most current to the 1970’s era and sometimes even older. Take off your rose colored glasses and give me the newer stuff any day. Besides trivial user interface complaints (which are usually fixable), the new stuff is light years better once it has had a chance to get settled in and people work the kinks out.

I wish there was more interaction between the Software developers and their user base. The people in the trenches know that interface inside out. They know what needs updating and what features are essential.

I’ve never been a formal software Beta tester. I’ve installed Beta software and evaluated it for my bosses. But no one from the Software developers knew if I liked it or what needed changing. :smiley: I guess somewhere there are super Beta testers that the Developers actually listen too. Maybe they monitor their user forums and get ideas from there.

I should add one confirming example that you hinted at. I have been a MS Office developer for decades and I still hate the “new” ribbon toolbar even though it has been the standard for over a decade. I can use the newer versions just fine but it has never seemed correct or intuitive. I am always thrilled when I get on a computer that has an old version of Office installed with proper drop-down menus. The newer versions seem like sadistic pretenders that want you to go on an Easter Egg hunt for every little thing that you don’t commonly use.

I admit that I have no good explanation as to why they decided to fundamentally change the interface of some of the most common applications in the world to something much less intuitive.

I’ve got my machine set up just how I want it. It’s an old CPU box with and old version of Linux and an old version of Firefox. It has served me well for years. I’ve fiddled and diddled with any number of little configuration files to set up hosts; SMB (in-house network file sharing); apache (in-house web server); several obscure Firefox settings in their about:config file; and on and on.

I DON’T WANT TO HAVE TO DO ALL THAT SHIT OVER AGAIN FROM SCRATCH ON A NEW MACHINE!!!

So I stick with my old machine, just as it is, because over the years I’ve got it just the way I want it.

Now, with so many web sites updating their sites just because to use all the newest-fangled HTML5 and CSS-whatever features, I’m finding that more and more sites work poorly or not at all on my box. I’m talking about sites that worked just fine with the old code they had.

One by one, they’re all fixing sites that aren’t broke until they are.

Latest example, which I first discovered by reading that Google hate-fest thread right here: On my box, the new Google Maps is 100% non-functional! Everyone else is complaining about the bad layout, the weird or slow behaviors, the loss of neat old features . . . On my mochine, when I go there, all’s I get is a completely blank screen! I see more and more sites doing that too.

Fuck them all. If it drives me to abandon the Internet completely and go back to living like we did in the 60’s, so much the better. Snail-mail and paper road maps have been around longer and have greater stability to this day. I’ve already abandoned one web site where I’ve long paid a certain utility bill, and gone back to snail-mailing hand-written checks which I manually inscribe on slices of dead trees.

That’s the direction I see the world going.

ETA: Ditto Shagnasty about teh Evil Ribbon. WTF were they thinking?

Don’t blame the programmers. The web design people (who know what colors go together and what is hot in layout) give the directions. To some extent if they say “the site is fine” they’re out of a job.
There is also a grass is greener attitude. I run a web site, and we’re finally hiring someone to do a redesign. One of the people on our committee, who is an actual Marketing person, didn’t like the new design and suggested an existing site - which looks just like the current site except more crowded.
And half the people like it one way, and half the other way. Once the site is up the nitpickers start to gather steam until it switches to the other way of doing it.
Then repeat ad infinitum.
Sometimes it gets better - but at least half the time it gets worse.

It’s called planned obsolescence. Computer technology and styles always changing. Systems that are being implemented today have capabilities that they didn’t have even a few years ago and businesses want to be able to leverage those capabilities. It’s the same reason car companies don’t keep selling the same car model from 1978. Because no one would buy one.

I’ve worked in technology consulting for years. The programmers don’t make these decisions. They are told what to program. In the case of products like Office, typically some sort of product manager makes the decisions. As soon as a new version is released, they start working on the next one. Because if they don’t, some other company will suddenly come out with some new product and Office joins Wordperfect and Lotus Notes at the Museum of Software No One Uses.

Similar process with web sites and enterprise systems. Webs sites can look dated pretty quickly if they aren’t updated.
I know people like to get all nostalgic about the software they used to use. But my firm consults for a lot of insurance companies and for some reason, they are all using Lotus Notes running on ten year old Windows XP computers.

It’s not just about planned obsolescence. User needs and expectations do change, especially on the Web. The change has been gradual, but look at old versions of familiar sites and see how clumsy they look.

Publishing on the Web used to be done by HTML specialists (and amateurs), but this didn’t scale well. Today they’ve managed to separate the job into more specialised niches: the content, the appearance and the logic can be handled by different people. Then there’s the whole Responsive thing: people want Web sites that work well with their tiny phone screens and their fat fingers (about half of today’s Web traffic is mobile), so Web publishers need to adapt (and Google just forced their hand last week).

For desktop programs like Office, it is silly the way they keep adding features nobody needs. The Office 2007 Ribbon was jarring at first, but once I saw this video from Jensen Harris I actually agreed that it was a clever solution to the problem of menu clutter. I still don’t think every program needs it, though.

The USPS site is definitely worse, it now seems like it runs code on every character you type, so the site is sluggish and I can easily out-type it.

Also I used to be able to fill in forms for things like Priority Mail automatically by including the variables in the URL, like Shipping | USPS Now that no longer works. I’d have to use their full API to do that now, and it’s the sort of thing that it’s easier to just type in the few a day I ship rather than go through their hoops.

Speaking of less intuitive, I really don’t understand the growing popularity of the new “flat” look in web applications. Buttons can no longer look like buttons, and hot spots that you can click on to do something aren’t distinct from unclickable areas of the screen. I wonder if it’s because someone (no idea who decides these things) figures that we’ve all been using computers long enough now that we should all know we can click on things. But that still seems lame. Anybody know the rationale for it?

Good design trends towards simplification for the most part. Once people recognize the Nike swoosh, get rid of the name, it’s just clutter. Once people recognize the Shell Gas logo, get rid of the Shell name, once people know what Xerox does, get rid of the tagline, once people recognize the Mercedes logo, get rid of the words. So on and so forth. Less clutter, same recognition.

This is the same tendency in websites. Nobody wants to look at 50 buttons, simplify it. We know links exist these days, they don’t need to be underlined, that’s just visual clutter, get rid of it. Button edges are just a callback to a real-life thing so people know what to do with it (see skeuomorph) But now that people know you can click things, we don’t need the visual reminder, get rid of it.

Sometimes design falls into “look at this fancy new thing I can do!” and gradients and fake buttons and fake marble looks were much of that. When photoshop made gradients and beveled edges super easy to make in the 90s, everyone used it. But because everyone used it, it became cliche and cheesy very quickly. It said that you were falling back on a crutch to gain attention rather than design something good from the ground up. So things like that are frowned upon as amateurish today if not used carefully.

If you want fancier stuff with lots of flourishes that are unnecessary for usability, we’ll have to induce a revival of art nouveau or other ornamental art movement.

I disagree with almost everyone in this thread.

I’m a software developer, and the main reason that people keep iterating on software is that most software sucks. It’s hard to use, it’s finicky, it requires all sorts of unintuitive mental modeling. It’s unstable. It’s unsafe. It scales terribly.

It’s incredibly rare that I use a piece of software and can’t find five things I’d change in the first few minutes.

Now, you have to balance that change with the fact that people have built up habits and patterns, and they’ve painstakingly learned how to use a given interface, how to navigate around the potholes and dead ends. And every time you change things, you confuse them. But that doesn’t mean that the old way was actually good. It just means that you were used to it.

And, of course, not every change is a good one. Sometimes because it was just a bad idea. Sometimes because it was poorly implemented. Maybe the change is a good one, but it’s too different for most to grasp. We’re still figuring out a lot of stuff.

If software development were engineering, we’d still be at the point where bridges fall down every few years. The methodology just isn’t there yet.

The OP talks about building a nice dresser, but it’s not a good analogy because we already know how to build a great dresser. The basics were figured out hundreds of years ago. Suggesting that we shouldn’t change software is like saying “hey, knock it off with that smelter. I can make a stone knife in half the time”.

I haven’t used the USPS website much, but it wouldn’t surprise me if the website gets 100x as much use as it did 10 years ago. That’s crazy. Can you think of anything else you could design that could deal with that sort of increase in use? What do you do with that nice dresser that will last forever when your spouse says “That’s beautiful, honey. Hey, let’s adopt 100 kids. They can all put their clothes in that dresser, right?”

I’m also a software engineer (although now in Program Management) and I agree with you. People who say the software is perfect aren’t reading bug reports, usability complaints, and enhancement requests from customers, or dealing with the spiraling maintenance and scalability costs.

It works for you. Great, that’s important feedback. But it doesn’t work for everyone, costs too much to maintain, and is missing important features that support the company’s long term road map. Sorry, release deadline is coming up, gotta review the documentation.

Okay, so if the site needs to be fixed to handle more traffic, that’s your job as an engineer : to fix it.Make it more efficient under the hood …But without changing it for the average user.
Mechanical engineers know this—software enginerers do not.
Every year, mechanical engineers put a new, more efficient engine under the hood of your car…but they don’t force you, the driver, to take lessons before you can drive the new model…

I used to manage, among other things, a custom application that was used exclusively in house by most of my employer’s employees. For me it was a rare opportunity to have basically unlimited access to the end users during development. I could sit with people and ask them to explain how they do their work and fully take it into account when making design decisions.

Unfortunately, what I found is that some people really do know what needs updating and what features are essential, and others are really unthoughtful dolts who can’t or won’t think of software as a useful tool to help them. Or maybe they know it’s a useful tool, but it’s THEIR tool and nobody better change it. Not even if you’re asking what kind of changes would improve their productivity, and let alone if you’re adding a feature that’s critical to others but impacts them too. The real problem is nobody knows which group they’re in.

You say that as though cars didn’t go from crankshaft to self-starting, windows didn’t go from crank style to powered, stereos haven’t gone from knobs to touchscreens. We’ve been reinventing the car and how we interact with it all the time. We’ve gone in and out of button/switch ignition systems and where we put the button. All the basics are still the same, sure, you turn the wheel left to go left, push the brake to stop. And in the programs you use, you still click the buttons to make them do things and press the X button to close.

If it helps, think of software development as still being at the stage where we’re figuring out if these tubeless tires are good for all vehicles or what.

Ever tried the BWM iDrive? :slight_smile:

Computer interfaces are a lot more complex than cars. And they do a lot more. And aren’t perfect for everyone at the same time. Software interfaces aren’t nearly as mature as auto interfaces and shouldn’t be expected to be as stable. Looking at bug reports (which I do every day) what you think is perfect may be considered barely palatable by someone else. How to I decide when the UI is just right?

And when the data model and corresponding workflow changes to add new functionality that will inevitably change the UI. Unless you want to shoehorn new concepts into a rigid methodology - which will result in a cludgy, unsupportable mess.

Certainly some UI changes are unnecessary and counter productive. But many are necessary and vast improvements. The innovation creates more valuable and productive products. Or they doom software to the dustbin of history. Either outcome is possible.

“If it ain’t broke, fix it 'til it is.”