Francis posted an interesting tidbit about the technology totem pole. It got me thinking about it. Francis took the technology angle an dived. The perspective I would like to take is one of a balance to explain the sometimes condescending behaviours of programmers. If we think of a spectrum in software you have one end which is pure technology, and the other which is pure business.
In mind mind the technology end is where one will find Linux Kernel Hacking, C++, etc... While at the business end one can find more the VB like skills. At the technological end we have functionality based engineering, while at the business end we have task based development, business needs. The business end of the spectrum is you've guessed it by now much more rooted in solving a problem for a business to go better, faster, bigger with much more efficiencies with no degree of separation or very little between the end result(the need) and the software person/team.
At the technology spectrum end most of the time for the kernel hacker the link to a very specific business improvement in a given project is not there. How many times have you been in a discussion where - if only the kernel could do this, then I would rack in that much more money. The point is many more avenues will be explored before one even think about the kernel, so the connection to the business is not nearly as strong.
The reality, and this is where I high five Francis', in my my mind if I'm from one end of the spectrum and I want to go work at the other end I will have a steep learning curve. In one case it maybe technological, and in the other it will be in business "saviness". Neither one can't be taken lightly they are both crucial to the success of any given project.