For the first time in history of computer science, the speed of computer hardware is so much increased that there is currently almost zero software support to cope up this increase in speed.
With the invent of multi-core processors, chip industry has given simple desktop PC's a speedup of 2 or 4. In near future we are expecting more and more cores to be embedded on only one chip so that you will be having almost 64 processors working in parallel on your desktop machine. But the question is "whether you have, up to same extent, parallel software?" And the answer is, unluckily, NO.
We know that, till now, we were using single core machine for desktop PC's. So all the softwares written for desktop PC's were single threaded. But, now The multi core processors are replacing single core processors used in desktop PC's rapidly. And this is the place where actually hardware is providing something and software is unable to pursue it.
Currently a lot of work is being done in this field but a lot of work is still to be done. So for next may be five years, this will be a good opening for programmers to do new things.
-AmitHK