Live data from Hacker News

Why software sucks?

scottberkun.com

21–30 of 82 posts

Re: Why software sucks?

#21
post #7

There is one thing that makes software suck, and that's how far apart its developers and users are. I dream of going to SAP's offices in Germany and seeing how they book their own vacation and submit their own expenses. I can't believe they do it with their own product, or it would be slick...

What else would they use? Oracle? Axapta? Some custom-built system?

Anyone from SAP care to chime in?

Re: Why software sucks?

#22
post #7

There is one thing that makes software suck, and that's how far apart its developers and users are. I dream of going to SAP's offices in Germany and seeing how they book their own vacation and submit their own expenses. I can't believe they do it with their own product, or it would be slick...

surprising thing is: they do

Let me guess they send an email to a secretary and they do the rest ?

Re: Why software sucks?

#23
post #7

There is one thing that makes software suck, and that's how far apart its developers and users are. I dream of going to SAP's offices in Germany and seeing how they book their own vacation and submit their own expenses. I can't believe they do it with their own product, or it would be slick...

There certainly can be a disconnect which impacts a developers ability to see what a user wants, but even if there is no disconnect, bad software can still result. Consider internal software - there is literally no disconnect whatsoever, but very often the software is terrible. This is relevant because it raises the issue that the business simply may not care about quality, and thus putting in the work required to ma…

At the risk of sounding like a broken record: Paper protoyping. Even if it's for yourself, it never feels the same to interact with a product than you think it will. This holds even more true when it's for other people.

For internal projects, investment is obviously a huge problem, and once you've built the wrong thing you're unlikely to get more money to do it right. But for a given price point, there's a huge range of quality you can obtain. Paper protoyping helps you maximize that at very low expense.

Re: Why software sucks?

#24
Surely the banner of user experience, and it's component disciplines, try to directly tackle this problem? There is a disconnection between the motivation of developers and the needs of users, but areas like IxD, IA, usability research, user experience planning and HCi all help to bridge the gap.

Re: Why software sucks?

#26

Software is too complicated. Now that we have a generation growing up with computers software engineers are happily brain-damaging them into expecting hugely complex software that doesn't really work. The browser is the perfect example. Why can the user manually reload a page? Shouldn't it all update automatically? The answer is: it's that way because it was convenient for lazy designers a long time ago and nobody bo…

Refresh does have a bit of an "implementation model of yesteryear" feel to it. On the other hand I've never observed it to be a massive pain point for users and removing it would need to be done very carefully so as not to create more problems than it solves.

A warning from experience if you are thinking of implementing Alan Cooper's theories on the topic of legacy UI: Be very careful when removing conventional things because they seem archaic and make sure that they respond to a genuine pain point and your dev team has the chops to fully implement the solution you propose. Otherwise you're going to end up with a half-arsed unconventional UI which will just confuse everyone.

Re: Why software sucks?

#27

Software is too complicated. Now that we have a generation growing up with computers software engineers are happily brain-damaging them into expecting hugely complex software that doesn't really work. The browser is the perfect example. Why can the user manually reload a page? Shouldn't it all update automatically? The answer is: it's that way because it was convenient for lazy designers a long time ago and nobody bo…

Your first sentence is in conflict with your example. The UI complication of the refresh button is minuscule in comparison to the technical complexity of implementing universally canonical web page views. But even assuming you could make that work well enough it's impossible to make software that anticipates all needs correctly. A good example was brought up on 5by5 a few weeks ago: should the iPhone alarm be silenced by silent mode. People will expect it to work one way or another and they will be burned badly when it doesn't do what they expect (think setting an alarm to catch an early flight vs being in an opera).

It's easy to sit on a mountain top and spout off declarations about how things should be, but in no place is the old adage "the devil is in the details" more apropos then software development. Even the UI designer runs into these fundamental conflicts, but the low-level programmer is inundated with them. And worse yet, software stacks are so deep and CPUs so powerful that the scope of what software actually does is increasingly difficult to mentally model. The only way out of this is to ruthlessly narrow the scope and have an organization-wide emphasis on UX. This works for Apple, but consider that in order to do this they basically punt on all the hairiest business requirements because it just doesn't serve their vision. Nevertheless those requirements are real and unignorable which is why SAP et al thrive.

The reason most software is bad is not for lack of effort, it's just damn hard to do right. It's good to ask big questions, but then go try to solve some of them rather than admonish those of us who pour our lives into this.

Re: Why software sucks?

#28
post #12
post #9

Earlier quoted context omitted.

"HTTP is not NFS" is a technical challenge that is potentially solvable. With single page apps the reload button is becoming increasingly irrelevant anyway though.

Writing desktop apps within a browser running on a desktop is what's crazy... Pointless layers of abstraction.

What are the practical issues you're concerned about? Dev time? performance / reliability?

Re: Why software sucks?

#29
post #18
post #15

Earlier quoted context omitted.

It's only pointless because we are still using the "Desktop" model. I'm not advocating one over the other but as we see Mozilla try boot to gecko and Google trying Chrome OS we are seeing the early stages of the "webtopbrowserthing" being refined. We are in that transition state where we are trying to figure out what platform is where the money is.

Those of us who have been around for a while look at what Google are doing with a sense of deja vu http://en.wikipedia.org/wiki/NeWS And NeWS was better in the sense that it used PS for everything rather than an unholy mess of JavaScript, CSS, HTML, etc etc.

It just goes to show that market forces do not care about technical merit and ultimate purpose in the least. NeWS never got traction, yet the advance of the web is inexorable. Why?

Well the web is supported everywhere because it was simple. The fact that it is available everywhere (which is actually pretty amazing and unique in the entire history of media if you stop and think about it) meant people kept pushing the boundaries. The limitations caused standards to be pushed forward. Wide use of the standards means no platform can break free from supporting it (Microsoft did their best for almost a decade!).

Obviously it looks like a Frankenstein monster from an engineering perspective, but it doesn't matter because that's where the investment is going. The good news is it will evolve and improve, and soon enough the grey beards who remember that there could have been a better way will all be dead; a lot like UNIX actually ;)

edit: I'd appreciate if bitter GUI developers would respond rather than misdirect their anger at the down vote button.

Re: Why software sucks?

#30
Software sucking is a direct outcome of future user's involvement in the design process.

as in: if you're writing software for a client and the client drives the specs directly, the outcome will suck balls.

evidence: all enterprise software installations ever done. from ERP to CRM, the vanilla software packages might even have good UX/UI, but once implementation with all its "critical" customizations is done, you'll end up with a turd.

Post reply on HN