I agree, the classic engineers like to work problems with an easily definable end result (so that business types don't tell them what to write).
It's a pity though, there's a huge space of products that are needed but the talent is going into slugging it out in societally useless and relatively low paying niches (such as many of the most talented programmers entering the game industry or social networking or linux kernels). Meanwhile dumbasses are raking in millions with shit like SAP and the like.
While I agree on your remark about talented programmers in game and linux kernels. I don't necessarily agree with lumping social networking with the two fields aforementioned. I also disagree of your remark about SAP.
I don't necessarily agree with SAP or SAP consultants but there are cases where people would prefer to use SAP to implement some of their core: http://www.infoq.com/presentations/Building-a-Hybrid-Cloud-a.... SAP is a complex, specialized tools that requires specific knowledge on how to tame it.
(I'm not arguing if complexity is good, bad, or anything like that. I'm focusing on what SAP is good at).
It's a pity though, there's a huge space of products that are needed but the talent is going into slugging it out in societally useless and relatively low paying niches (such as many of the most talented programmers entering the game industry or social networking or linux kernels). Meanwhile dumbasses are raking in millions with shit like SAP and the like.