The Atlantic is running an article on the friction between the computing world and Professional Engineer societies. This discussion has been going on for a long time, and is meaningful to me personally - I quit a 10-year career as server administrator with 'engineer' in my job title when I graduated with a Mechanical Engineering degree, and have since earned my Professional Engineer license. In a world where most software comes with a disclaimer of liability due to defects, where would an ethical, civic-minded programmer even practice Professional Engineering? Angry Birds probably doesn't have any responsibility to the public safety, so there's little need there; on the other hand, Google's self-driving car program is a good candidate.
I'd love to welcome the programming profession into the circle of licensed Engineers, provided that the industry manages to agree on standards of quality and accountability. I don't see the methods (such as Agile) used by programmers as a significant obstacle, either; the programming motto of "move fast and break things" (which the article wrongly decries) is echoed in the motto "fail early, fail often" that is held by many Mech Eng R&D shops. I just fear that the halting problem will be solved before any such standards become widely accepted and implemented in the industry.
(Score: 5, Insightful) by BK on Saturday November 07 2015, @03:33PM
Hey guys who passed math in high school, don't call yourself engineers. Every five-year-old knows the real engineers are the guys that the drive train. Just because you wish you had a cool job is no excuse for giving guys with a real job a bad name.
...but you HAVE heard of me.
(Score: 0) by Anonymous Coward on Saturday November 07 2015, @06:40PM
What if I am allowed to blow the train whistle?, but still don't get to invite comely passengers to check out the kaboose?
(Score: 0) by Anonymous Coward on Monday November 09 2015, @02:00AM
How about splitting into two groups?
a. If you work on simulations of physical systems then you are a software engineer. You build tools that are used by other engineers as part of a larger design process. In due time this might have a professional certification.
b. If you work on business logic and just about everything else, you are a programmer.
I run a small engineering consultancy, we make custom engineering/analysis software tools. I've tried to use good programmers several times, but they require much too much direction to be cost effective. Now I hire engineers that also happen to be able to program. If my company was larger I'd probably keep one good programmer around to help solve all the niggling interface issues that require specialist knowledge of computers, operating systems, compilers, etc.