The short answer: Because it doesn't make business sense to.
As much as we all complain about programs being slow, at the end of the day a lot of people are not willing to pay substantially more for software that runs 10% more quickly. If you want to work spend more time developing to build a more efficient version, you need to pay your developers for that time, and you won't recoup your costs.
Compare to one of the industries where performance is focused on - Games (disclaimer: I'm a games developer). When you're making real-time games, performance does matter. There's a real, noticeable difference between frame rates (say 20fps vs 30, or 50 vs 60) that will make a big difference to how much players like your game, and ergo it will affect your bottom line.
Maybe people are not willing to pay more for software that runs faster, but I'm sure more people are willing to use your software longer time when they don't have to complain about the user experience.
In the game industry we often see the requirement of needing to buy new computer because we want to play some new game, but we have quite much accepted this because usually those games bring pretty good upgrade on the graphics. Though personally I don't know what is the current situation as I have dropped pc gaming. But I know nothing new has happened in the console side, except new games every week with similar graphics and physics, but different story and setting.
Anyway. One example where global bad image of software is easily seen is the browser wars. When majority of users started to replace their default Internet Explorer installation to alternative like Firefox. Though now the most popular is chrome. Of course the graphical user interface, other features of web browser played big role on this and much of the complain of web developers who did not want to support some browser.
Recently I have had to answer to questions like why Firefox or Chrome is taking something like 50% of cpu to render something. Of course I've asked them how many tabs they have open, etc. But the major cause I've realized is code of Facebook which does ton of stuff in the browser instead of in the server.
One of the business factors is the amount of competition.
If you're in a field where specific features dominate, then sub-second performance differences likely won't make a difference. Modern web browsers are roughly equivalent in feature support, so performance is one of the deciding factors for users. (If you had a web browser which didn't have CSS support but which was 100x faster in page display and Javascript performance, then I suspect you'll have few users)
Now, orders of magnitude performance differences might affect things, but then that's changing the market.
It's true that in a competition where features dominate the performance won't make much difference, but what if your competitor realizes this and matches your feature set with better performance? You just lost pretty much all of your users when your users notice this and move as the competitors users and even if you try to push some new feature your competitor will do it too. So i'm just saying worry about the performance, because if your business actually is good you will get competitors at some point.
Though social networking is annoying because count of users in the network is pretty much a feature of the network. One of the things I think Google never has realized. With larger amount of users you have feature domination easily and the users will keep using your network even if it's slow.
Actually here in Finland we have one major community site which is one of the slowest and most bad mouthed service everyone use it because the users are there and not somewhere else.
Then you're SOL. That's part of being in a competitive environment.
It doesn't happen that often. Features are hard. Performance is hard. Features and performance is very hard. If a company can pull of both then it deserves the new customers.
Comments
The short answer: Because it doesn't make business sense to.
As much as we all complain about programs being slow, at the end of the day a lot of people are not willing to pay substantially more for software that runs 10% more quickly. If you want to work spend more time developing to build a more efficient version, you need to pay your developers for that time, and you won't recoup your costs.
Compare to one of the industries where performance is focused on - Games (disclaimer: I'm a games developer). When you're making real-time games, performance does matter. There's a real, noticeable difference between frame rates (say 20fps vs 30, or 50 vs 60) that will make a big difference to how much players like your game, and ergo it will affect your bottom line.
Maybe people are not willing to pay more for software that runs faster, but I'm sure more people are willing to use your software longer time when they don't have to complain about the user experience.
In the game industry we often see the requirement of needing to buy new computer because we want to play some new game, but we have quite much accepted this because usually those games bring pretty good upgrade on the graphics. Though personally I don't know what is the current situation as I have dropped pc gaming. But I know nothing new has happened in the console side, except new games every week with similar graphics and physics, but different story and setting.
Anyway. One example where global bad image of software is easily seen is the browser wars. When majority of users started to replace their default Internet Explorer installation to alternative like Firefox. Though now the most popular is chrome. Of course the graphical user interface, other features of web browser played big role on this and much of the complain of web developers who did not want to support some browser.
Recently I have had to answer to questions like why Firefox or Chrome is taking something like 50% of cpu to render something. Of course I've asked them how many tabs they have open, etc. But the major cause I've realized is code of Facebook which does ton of stuff in the browser instead of in the server.
One of the business factors is the amount of competition.
If you're in a field where specific features dominate, then sub-second performance differences likely won't make a difference. Modern web browsers are roughly equivalent in feature support, so performance is one of the deciding factors for users. (If you had a web browser which didn't have CSS support but which was 100x faster in page display and Javascript performance, then I suspect you'll have few users)
Now, orders of magnitude performance differences might affect things, but then that's changing the market.
It's true that in a competition where features dominate the performance won't make much difference, but what if your competitor realizes this and matches your feature set with better performance? You just lost pretty much all of your users when your users notice this and move as the competitors users and even if you try to push some new feature your competitor will do it too. So i'm just saying worry about the performance, because if your business actually is good you will get competitors at some point.
Though social networking is annoying because count of users in the network is pretty much a feature of the network. One of the things I think Google never has realized. With larger amount of users you have feature domination easily and the users will keep using your network even if it's slow.
Actually here in Finland we have one major community site which is one of the slowest and most bad mouthed service everyone use it because the users are there and not somewhere else.
Then you're SOL. That's part of being in a competitive environment.
It doesn't happen that often. Features are hard. Performance is hard. Features and performance is very hard. If a company can pull of both then it deserves the new customers.