Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

  > These jobs are both extremely difficult for completely
  > different reasons, and neither person can do the other
  > persons job. What is good practice for one is an
  > abhorration for the other. We are both programmers.
This applies to pretty much any job description in the world. You're always generalizing at some level; that's a fairly straightforward necessity. Depending on the requirements, you adjust your description. No two accountants do the exact same thing; doesn't mean they're not accountants. Neither does the fact that everybody's doing some accounting make them anything other than accountants.

Stating that "programmer" is too broad a term means drawing an utterly arbitrary line. Because for the all the same reasons and at some level, "AI researcher" is too broad. So is "graphics programmer". So is "HLSL shader coder". Etc.



I don't think he's saying "programmer" isn't accurate; he's saying "programmer" isn't precise enough - and hence, isn't useful in most of the contexts we use it.

As he alludes to, "scientist" is a perfectly sensible word, with a meaning that most people would agree on, but at the same time the divisions within it - from botanist to nuclear physicist - are also very clear. We all understand that those are two very different roles with a fairly small intersection of skill and knowledge.

He argues that the same should be true for programmers, but that we don't acknowledge that.


Except that this is comparing apples to carrots.

Scientist includes "computer scientist". At a certain level of competency "programmer" is comparable to "electrical engineer", and while "electrical engineer" does not defined which project you are working on at the moment, it does not need to, and neither does programmer when you are talking about "engineer class" programmers (lot of people are "engineer class" programmers without an engineering degree, but because they learned by themselves; this is fine).

The problem with "programmer" is not the field. It is the level of competency. Only entry/medium level programmers with few theoretical knowledge or only few to medium work experience are unable to work in every areas. That's why you need to precise for them what they are able to do, and implicitly that they are not able to do other things, or that learning how to do those other things would take lot of time. "Engineer class" programmers are generalist programmers, and that is comparable with electrical and other kind of engineers.




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

Search: