Hacker News new | past | comments | ask | show | jobs | submit login

What you are missing is the inherently multi-disciplinary nature of programming. People who develop deep technology solutions by necessity have to get a crash course in whatever business system they are automating and improving. If you spend 15 years working on various projects, you have not only stayed current with a shifting base of state-of-the-art tech, you've also been exposed to critical parts of operations and learned what the issues, risks, and drivers are. You don't get that in the EMT world, or the brain surgery world, or the nuclear physics world. In those worlds, you have a single industry and set of problems that you live inside for your entire career.

There's also a huge bedrock of many business-related disciplines that don't change. Want to be a manager? I can throw out every book written in the last 20 years and still sit down and put together a damn effective course in management. Want to learn accounting? While GAAP has changed, many accounting systems are still using the double-entry ledger system that was in place in Dickens' time. The business practices of running an A/R system now is going to look very much the same as running that kind of business did in 1980.

Yes, it's true that great performers in any field will naturally pick up a bunch of things in other fields, but these are mostly peripheral to their job, not a critical part of it. Pilots may learn a bit about how radios work, but it's not the same thing as spending two years writing software radio code. Technology development is unlike any other field of endeavor because it is a meta-discpline: it encompasses all other disciplines. Everything you do in life, including being an EMT, is being assisted by technologists somewhere. Programming and technology development is the bedrock of every other kind of activity. Good technologists are not only experts in one area, they are experts in learning new areas. This is one of the reasons why Google is involved is so many things and so many other companies are not. You have a breadth of capability with 40,000 generic engineers that you simply wouldn't have with 40,000 rocket scientists, fishermen, or history majors.

I well understand your point, and I respectfully disagree.

There's a whole lot more practical knowledge outside of the technologies and tools that the programmers know about and use.

Some of the least educated folks I've worked with are arguably the smartest, and the most practical. Some of the most educated can be the most useless. You never really know what you're going to learn, and from who.

EMTs and firefighters or other folks working in other vocations outside of programming are commonly designing and building and experimenting; you'd be surprised what some of the folks have come up with.

As for the technologists, a lack of field skills or a lack of experience can work detriment of what the programmers are implementing. You need look no further than much of the medical equipment to realize how little the programmers involved truly knew about the problem. (And that's from my own experience using the devices, as well as many years of programming similar systems.)

Everybody thinks they're special, of course. And ego kills brains. Which was my point.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact