stefcep2 wrote:
Its a croc. Todays programmers are the laziest ever. I am not a programmer but I did it for 1 semester at university years ago. Just by writing better code we more than doubled the search speed and halved the file size of a little database proggie we had to write. Today its: "who cares: we'll have double the processor speeds in 18 month time, lets write for that.." An this extends to the OS programming as well.
If the software didn't cripple the hardware, people would simply not buy hardware often enough to make manufacturing PC hardware profitable! A PC used to be considered to have a lifespan (free from hardware failure) of about 3 years. These days, you can expect a brand-new PC that never sees smoke or other environmental factors that cause damage to last you twice as long.
If Dell had to wait 6-7 years for repeat customers, they'd be screwed. They rely on Microsoft (and other software vendors) to up the ante with bloated crap software that needs ever increasing amounts of CPU time, disk and RAM. The average user is not a gamer who 'needs' to have the latest system; he is not even the owner of the computer - because he uses it at work, to do computationally trivial work that could have been accomplished on a 486 DOS box.
Granted, there is a (more) diverse set of applications now that do need some level of performance to run at all (digital video comes to mind and I'm sure there are others but it's too early for me to think of them), but the vast majority of users get by with just ie or firefox, word and excel.
The reason for this, of course, is that there are any number of tasks that computers can do now that they simply couldn't a few years ago, which are not prevalent enough to make the economies of scale sufficient to support manufacturing high-end systems for them. So we all have to suffer with crap software in order to get the average user to keep buying new computers, just to keep costs down for commercial applications! These rarely run on the desktop operating systems, instead you see them on linux or windoze's server variants (which are much more efficient, imho, than XP or Vista).
I am a programmer by trade, and I will tell you that is a sad fact that most programmers are _very lazy_ in their code. They will happily type garbage for an hour to avoid thinking for half of that time; their ideas are all similar to each others (they call this 'improving readability') and they are well and truly attached to their von Neumann programming languages and methodologies. This is an antiquated system which needs to be destroyed through education.
Sadly, most universities (and university professors) have given up on teaching alternate methods of programming that could have a great impact on software performance. They still offer their courses on programming languages, but they end up being weak surveys of scheme or lisp and prolog, which never delve deep enough into the material to empower the students to use these languages in the real world. The students also just do not care about this material (which is why people are understandably disinterested in teaching it) because they do not see ads on dice.com for prolog or lisp programmers - they see C# and Java and .Net.
Those programming languages are crap, because they force programmers to use libraries that are ever increasing in size and complexity without providing more functionality than one could produce in a few prolog statements. The only area in which I consider so-called modern programming languages at all efficient is in the changes they cause in the learning curve for database- and network-oriented programming. (When you write code that has to be viable in the real world, it still takes just as long, but you can get basic models that promote understanding running with much less effort than using the POSIX system libraries from C/C++ or Pascal.)
Sorry if I ranted a bit - I'm facing major feature creep this morning.
