Computer scientists today are in the position of economists in the early 2000s(statmodeling.stat.columbia.edu) |
Computer scientists today are in the position of economists in the early 2000s(statmodeling.stat.columbia.edu) |
This is an insanely US-centric perspective. In Germany, being a programmer is more like what is described in the song "Code Monkey" by Jonathan Coulton:
https://www.youtube.com/watch?v=qYodWEKCuGg
Update: Just to be clear: there exist tides when programmers are more vs less tolerated (during the dot-com bubble, the tolerance for programmers was larger), but programmers were always very far from the apex of any "prestige" (whatever you associate with this term) hierarchy.
"Computer scientists" do exist, they create theoretical underpinnings of the hardware and software that millions of engineers then use to create things, but majority of people working in IT are engineers.
Now, don't get me started on "data scientists"...
It's just a label on a box to put people in. I don't really know what "science" or "engineering" is anymore--my SO is a neuroscience phd and has maintained "science is not synonymous with the scientific method; a lot of 'research' science is just collecting and publishing data and it does not need to be reproducible" which makes enough sense but challenges a lot of my priors.
Engineers don't traditionally even "build" anything and there are both upper-case and lower-case engineers in title and legal designation.
Comparatively and in sum the distinction between computer scientist and programmer is actually somewhat simple and quaint.
Engineering is also a scientific discipline; there is a reason why in German the umbrella term for all engineering disciplines is "Ingenieurwissenschaften".
While physics is about finding the laws that govern nature, engineering (say, mechanical or electrical engineering) is about accepting these laws as foundation, and using these laws to build or improve things. This is not less scientific than physics; (classic) engineers are just experts in a special, more applied sub-discipline of physics.
Similarly, software engineering is about applying the foundations that mathematics, electrical engineering or computer science brought in a similar scientific way.
On the other hand, many people who call themselves "software engineers" don't apply rigorous principles based on the mentioned foundations in a scientific way. Such people are not engineers, but scammers, and should be named this way. :-(
> Now, don't get me started on "data scientists"...
Data science is actually a serious science. It was based on the observation that statistics is just one part of the whole data workflow, so we need people who have a good knowledge about all of the phases of this workflow.
On the other hand, many people who call themselves "data scientists" are rather scammers, and should be named this way. :-(
This is a dangerous conflation. It's a conflation that society is currently making, and we should note that, but we should not make the same mistake when analyzing it. "Computer scientists", e.g. people who care about the craft, and computer business people tend to have opposing goals with regard to privacy, software distribution, etc.