Don't you hate it when a mechanical engineer tells you that computer programming is NOT engineering?

Page 6 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.

esun

Platinum Member
Nov 12, 2001
2,214
0
0
Wow, I can't believe a topic this long has formed over an argument about semantics. All of you bitching who should or shouldn't be called engineers, shouldn't be engineers yourselves. We're the type of people that do stuff, not complain about trivial things.
 

talyn00

Golden Member
Oct 18, 2003
1,666
0
0
Originally posted by: Queasy
Heh, if you think "Software Engineer" is funny then you'll love the folks that call themselves "Quality Assurance Engineers". :D

Quality Assurance Engineers in software development are also called Software Test Engineers. They are a fairly important part of the software development cycle. There are usually a lot of errors that aren't caught by developers, and QA people have to test to ensure a program follows the specs.
 

EngenZerO

Diamond Member
Dec 24, 2001
5,099
2
0
Originally posted by: KillerCharlie
If you don't have a bachelors from a program accredited by ABET (Accreditation Board for Engineering and Technology) and called an "engineering program" by them, THEN YOU ARE NOT AN ENGINEER.

In fact in some countries you legally can't call yourself an engineer unless you're accredited by whatever engineering accreditation they have there.

Otherwise we have the sanitation engineers (garbagemen), domestic engineers (housewives), etc...

winner!!!

my comp sci engineering program at tOSU was accredited by the ABET. hence I am an engineer by their standards... tOSU actually encorporated many eningeering classes from other engineering programs into our program...

edit... this means as a software engineer i get to take the FE and PE exams if i wish
 

Phoenix86

Lifer
May 21, 2003
14,644
10
81
Looking up engineering, I don't see how some level of code monkeys aren't engineers. Not all of them, but at the higher levels, they would fit the definition.

Engineers use their knowledge of science, mathematics, and appropriate experience to find suitable solutions to a problem. Creating an appropriate mathematical model of a problem allows them to analyze it (perhaps, but rarely, definitively), and to test potential solutions. Usually multiple reasonable solutions exist, so engineers must evaluate the different design choices on their merits and choose the solution that best meets their requirements.

Engineers typically attempt to predict how well their designs will perform to their specifications prior to full-scale production. They use, among other things: prototypes, scale models, simulations, destructive tests, nondestructive tests, and stress tests. Testing ensures that products will perform as expected. Engineers as professionals take seriously their responsibility to produce designs that will perform as expected and will not cause unintended harm to the public at large. Engineers typically include a factor of safety in their designs to reduce the risk of unexpected failure. However, the larger the safety factor, the less efficient the design may be.


Not sure sure about that last part for software engineers. ;)
 

sao123

Lifer
May 27, 2002
12,653
205
106
Originally posted by: Phoenix86
Looking up engineering, I don't see how some level of code monkeys aren't engineers. Not all of them, but at the higher levels, they would fit the definition.

Engineers use their knowledge of science, mathematics, and appropriate experience to find suitable solutions to a problem. Creating an appropriate mathematical model of a problem allows them to analyze it (perhaps, but rarely, definitively), and to test potential solutions. Usually multiple reasonable solutions exist, so engineers must evaluate the different design choices on their merits and choose the solution that best meets their requirements.

Engineers typically attempt to predict how well their designs will perform to their specifications prior to full-scale production. They use, among other things: prototypes, scale models, simulations, destructive tests, nondestructive tests, and stress tests. Testing ensures that products will perform as expected. Engineers as professionals take seriously their responsibility to produce designs that will perform as expected and will not cause unintended harm to the public at large. Engineers typically include a factor of safety in their designs to reduce the risk of unexpected failure. However, the larger the safety factor, the less efficient the design may be.


Not sure sure about that last part for software engineers. ;)

Originally posted by: sao123
http://en.wikipedia.org/wiki/Engineering

Engineering applies scientific and technical knowledge to solve human problems. Engineers use imagination, judgment, reasoning and experience to apply science, technology, mathematics, and practical experience. The result is the design, production, and operation of useful objects or processes.

I see nothing here which excludes Programmers as engineers.
Engineering does not always require the use of practical sciences such as chemistry or physics.


Agreed...
 

gopunk

Lifer
Jul 7, 2001
29,239
2
0
Originally posted by: KillerCharlie
If you don't have a bachelors from a program accredited by ABET (Accreditation Board for Engineering and Technology) and called an "engineering program" by them, THEN YOU ARE NOT AN ENGINEER.

In fact in some countries you legally can't call yourself an engineer unless you're accredited by whatever engineering accreditation they have there.

Otherwise we have the sanitation engineers (garbagemen), domestic engineers (housewives), etc...

1) i think most of us are talking about america, not whatever country you're talking about
2) is there any reason why we should use your definition as opposed to the one found in dictionaries?
 

Zombie

Platinum Member
Dec 8, 1999
2,359
1
71
Originally posted by: herm0016
im a mechanical engineer. . . dont hate me! wow. you guys are gettin real up tight about this. engineering is usually described as doing something physical. like finding a problem with a car and making a part to fix it. that is engineering in genral. anyone can "engineer". most computer and software engineering criculims that i have encounterd dont teach real engineering practices like statics and thermodynamics and meterial science, they teach you how to use a computer and how to build one. i belive that engineers need the background in the physical world that most computer degrees dont give you.

those are my thoughts. now you can rip them apart. . .



I am sorry but you are confusing IT and Software Engineers. Nobody tought me how to build a computer or how to use a computer in school.

It may depend on school but I had to take more advanced math classes than any EE or ME. Towards the end if I had taken 2/3 more math classes I could have been a double major (Math & CS) and isn't engineering all about math ?
 

EngenZerO

Diamond Member
Dec 24, 2001
5,099
2
0
Originally posted by: gopunk
Originally posted by: KillerCharlie
If you don't have a bachelors from a program accredited by ABET (Accreditation Board for Engineering and Technology) and called an "engineering program" by them, THEN YOU ARE NOT AN ENGINEER.

In fact in some countries you legally can't call yourself an engineer unless you're accredited by whatever engineering accreditation they have there.

Otherwise we have the sanitation engineers (garbagemen), domestic engineers (housewives), etc...

1) i think most of us are talking about america, not whatever country you're talking about
2) is there any reason why we should use your definition as opposed to the one found in dictionaries?

1) abet link, he is talking about the US.
2) surf the link and learn... hopefully it answers your question.
 

Metron

Golden Member
Oct 16, 2003
1,163
0
0
Originally posted by: alphatarget1
Computer science is not engineering in a traditional sense.

Stuff you do as a licensed professional engineer carry a lot of liability (human life, for instance). I don't see a programmer dude's failure will lead to fatalities.

How about the person programming the system used by FAA Air Traffic Controllers?

or the on-board software used to control a fly-by-wire aircraft?

There are definitely gray areas that combine both talents.
 

talyn00

Golden Member
Oct 18, 2003
1,666
0
0
Originally posted by: Metron
Originally posted by: alphatarget1
Computer science is not engineering in a traditional sense.

Stuff you do as a licensed professional engineer carry a lot of liability (human life, for instance). I don't see a programmer dude's failure will lead to fatalities.

How about the person programming the system used by FAA Air Traffic Controllers?

or the on-board software used to control a fly-by-wire aircraft?

There are definitely gray areas that combine both talents.

The reason why most people don't consider computer science as engineering is because it simply hasn't been around as long as the more "traditional" forms of engineering.

The wikipedia definition for Engineering is correct:
http://en.wikipedia.org/wiki/Engineering

Engineering applies scientific and technical knowledge to solve human problems. Engineers use imagination, judgment, reasoning and experience to apply science, technology, mathematics, and practical experience. The result is the design, production, and operation of useful objects or processes.
 

Phoenix86

Lifer
May 21, 2003
14,644
10
81
Originally posted by: eits
Originally posted by: OdiN
Well...it's not.

agreed.

<4th grader>
Yes it is.
</4th grader>

'splain, please, see above definition.

edit: you folks seriously don't think software errors can cause harm? WTF, am I on the right board??????????? This is AT, where people have some clue about computer, right?

Software runs: Stock markets, internet, jet planes, rockets, nuclear freaking reactors, etc.

Yeah, no risks there. :roll: C'mon folks, don't be ignorant on purpose.
 

DVK916

Banned
Dec 12, 2005
2,765
0
0
Originally posted by: sao123
Originally posted by: Phoenix86
Looking up engineering, I don't see how some level of code monkeys aren't engineers. Not all of them, but at the higher levels, they would fit the definition.

Engineers use their knowledge of science, mathematics, and appropriate experience to find suitable solutions to a problem. Creating an appropriate mathematical model of a problem allows them to analyze it (perhaps, but rarely, definitively), and to test potential solutions. Usually multiple reasonable solutions exist, so engineers must evaluate the different design choices on their merits and choose the solution that best meets their requirements.

Engineers typically attempt to predict how well their designs will perform to their specifications prior to full-scale production. They use, among other things: prototypes, scale models, simulations, destructive tests, nondestructive tests, and stress tests. Testing ensures that products will perform as expected. Engineers as professionals take seriously their responsibility to produce designs that will perform as expected and will not cause unintended harm to the public at large. Engineers typically include a factor of safety in their designs to reduce the risk of unexpected failure. However, the larger the safety factor, the less efficient the design may be.


Not sure sure about that last part for software engineers. ;)

Originally posted by: sao123
http://en.wikipedia.org/wiki/Engineering

Engineering applies scientific and technical knowledge to solve human problems. Engineers use imagination, judgment, reasoning and experience to apply science, technology, mathematics, and practical experience. The result is the design, production, and operation of useful objects or processes.

I see nothing here which excludes Programmers as engineers.
Engineering does not always require the use of practical sciences such as chemistry or physics.


Agreed...


By these definition a Statistician is an Engineer. They use mathematical models along with science and technology to solve problems. They even create tools for engineers and programers such as mathematical algorithms.
 

ThaPerculator

Golden Member
May 11, 2001
1,449
0
0
Computer Engineers are actual engineers... CIS/CS/SE's aren't.

I've been in CS, then changed to Computer Engineering, and now found and love Biomedical Engineering. I can tell you that programming is NOT engineering. Computer Engineering IS Engineering with a side of programming.
 

Phoenix86

Lifer
May 21, 2003
14,644
10
81
Originally posted by: DVK916
By these definition a Statistician is an Engineer. They use mathematical models along with science and technology to solve problems. They even create tools for engineers and programers such as mathematical algorithms.

I fail to see the problem.

If something = the definition it is what it is. That's why there are definitions. You are proposing 1 != 1, or blue colored things aren't blue because the definition of blue is incorrect.

In other words your argument has no point. You can say the definition isn't good (say why, and perhaps provide an alternate definition), but that's not what you are saying at all. I just grabbed the definition off of wiki for ease.

Originally posted by: ThaPerculator
Computer Engineers are actual engineers... CIS/CS/SE's aren't.

I've been in CS, then changed to Computer Engineering, and now found and love Biomedical Engineering. I can tell you that programming is NOT engineering. Computer Engineering IS Engineering with a side of programming.

Why? see above.
 

sao123

Lifer
May 27, 2002
12,653
205
106
Originally posted by: DVK916
Originally posted by: sao123
Originally posted by: Phoenix86
Looking up engineering, I don't see how some level of code monkeys aren't engineers. Not all of them, but at the higher levels, they would fit the definition.

Engineers use their knowledge of science, mathematics, and appropriate experience to find suitable solutions to a problem. Creating an appropriate mathematical model of a problem allows them to analyze it (perhaps, but rarely, definitively), and to test potential solutions. Usually multiple reasonable solutions exist, so engineers must evaluate the different design choices on their merits and choose the solution that best meets their requirements.

Engineers typically attempt to predict how well their designs will perform to their specifications prior to full-scale production. They use, among other things: prototypes, scale models, simulations, destructive tests, nondestructive tests, and stress tests. Testing ensures that products will perform as expected. Engineers as professionals take seriously their responsibility to produce designs that will perform as expected and will not cause unintended harm to the public at large. Engineers typically include a factor of safety in their designs to reduce the risk of unexpected failure. However, the larger the safety factor, the less efficient the design may be.


Not sure sure about that last part for software engineers. ;)

Originally posted by: sao123
http://en.wikipedia.org/wiki/Engineering

Engineering applies scientific and technical knowledge to solve human problems. Engineers use imagination, judgment, reasoning and experience to apply science, technology, mathematics, and practical experience. The result is the design, production, and operation of useful objects or processes.

I see nothing here which excludes Programmers as engineers.
Engineering does not always require the use of practical sciences such as chemistry or physics.


Agreed...


By these definition a Statistician is an Engineer. They use mathematical models along with science and technology to solve problems. They even create tools for engineers and programers such as mathematical algorithms.


Ok fine... lets use the ABET criteria...
Engineering programs must demonstrate that their students attain:
(a) an ability to apply knowledge of mathematics, science, and engineering
(b) an ability to design and conduct experiments, as well as to analyze and interpret data
(c) an ability to design a system, component, or process to meet desired needs within realistic constraints such as economic, environmental, social, political, ethical, health and safety, manufacturability, and sustainability
(d) an ability to function on multi-disciplinary teams
(e) an ability to identify, formulate, and solve engineering problems
(f) an understanding of professional and ethical responsibility
(g) an ability to communicate effectively
(h) the broad education necessary to understand the impact of engineering solutions in a global, economic, environmental, and societal context
(i) a recognition of the need for, and an ability to engage in life-long learning
(j) a knowledge of contemporary issues
(k) an ability to use the techniques, skills, and modern engineering tools necessary for
engineering practice.


PROGRAM CRITERIA FOR
SOFTWARE
AND SIMILARLY NAMED ENGINEERING PROGRAMS
The curriculum must provide both breadth and depth across the range of engineering and computer science topics implied by the title and objectives of the program.
The program must demonstrate that graduates have: the ability to analyze, design, verify, validate, implement, apply, and maintain software systems; the ability to appropriately apply discrete mathematics, probability and statistics, and relevant topics in computer science and supporting disciplines to complex software systems; and the ability to work in one or more significant application domains.


Since ABET specifically can and does regularly software engineering as engineering... your arguement still holds as much water as a bucket with a hole driled through the bottom. And i dont see any reason why a statistian cant be considered an engineer.
 

ryan256

Platinum Member
Jul 22, 2005
2,514
0
71
Originally posted by: alphatarget1
You can't do that with a building. You'll know whether an Engineer failed or not in a major event. Same goes for MEs, look at what happened to Challenger & Columbia.

Actually no... its management's fault for the Challenger blowing up. They are the ones that told NASA the shuttle was safe to launch while the engineers were saying it wasn't.
 

her209

No Lifer
Oct 11, 2000
56,336
11
0
Originally posted by: DrPizza
You wouldn't believe how many sanitation engineers are bothered by the same statement about them.
I don't think anyone would say a "sanitation engineer" is an engineer by any means (unless of course you're referring to Civil Eng. who have to design plants that deal with sanitation). :)
 

JinLien

Golden Member
Aug 24, 2005
1,038
0
0
Originally posted by: SaturnX
In Canada, well Ontario at least, you cannot legally refer to yourself, or call yourself an Engineer unless you have a Professional License, otherwise the Professional Engineers of Ontario can take legal action against you.

It's a highly regulated term, there was an issue with MCSEs and referring to themselves as Engineers here in Ontario, although the situation was dealt within between Microsoft and the PEO.

--Mark
IIRC, Microsoft MCSE are allow to call themselves engineers and the Canadian Council for Professional Engineers lost in court on this issue, however they still threaten individual at the provincial level because the court decision invalidated, rendered the CCPE ?Godly? authority.

Many older/retired engineers that I have talked to think that the CCPE should step down, because the CCPE are so out of touch with reality.


 

gopunk

Lifer
Jul 7, 2001
29,239
2
0
Originally posted by: EngenZerO
Originally posted by: gopunk
Originally posted by: KillerCharlie
If you don't have a bachelors from a program accredited by ABET (Accreditation Board for Engineering and Technology) and called an "engineering program" by them, THEN YOU ARE NOT AN ENGINEER.

In fact in some countries you legally can't call yourself an engineer unless you're accredited by whatever engineering accreditation they have there.

Otherwise we have the sanitation engineers (garbagemen), domestic engineers (housewives), etc...

1) i think most of us are talking about america, not whatever country you're talking about
2) is there any reason why we should use your definition as opposed to the one found in dictionaries?

1) abet link, he is talking about the US.
2) surf the link and learn... hopefully it answers your question.

1) don't see where it says it is illegal to call yourself an engineer unless you're accredited, but you're welcome to point it out, i didn't look that hard
2) care to summarize?
 

gopunk

Lifer
Jul 7, 2001
29,239
2
0
Originally posted by: ThaPerculator
Computer Engineers are actual engineers... CIS/CS/SE's aren't.

I've been in CS, then changed to Computer Engineering, and now found and love Biomedical Engineering. I can tell you that programming is NOT engineering. Computer Engineering IS Engineering with a side of programming.

oh ok, thanks for clearing that up.
 

markgm

Diamond Member
Aug 23, 2001
3,291
2
81
I started off at Drexel as a Mech E, and after 4 years tranferred to Info Sys after working at a few jobs realizing that I didn't care how heat transferred from two objects. I don't consider what I do Engineering. I make more money now than I would have as an Engineer, but I do like the title, even if I think it sounds corny to call computer folks "System Engineer" or "Server Engineer." Just because it sounds cool doesn't make it right.

I know that Drexel merged the Comp Sci department into the Engineering department...talk about outrage!
 

thereaderrabbit

Senior member
Jan 3, 2001
444
0
0
Speaking as someone who has a BS and PhD from engineering programs accredited by ABET-

Most people who work in computer science are what I would consider engineers. These distinctions of which many of you speak only exist in a person's mind that is attached to a body with a chip on its shoulder.

My gut instinct was to say that ?engineering? requires a melding of disciplines for complex problem solving along with an BS degree minimum, but that's just me wanting engineering to be more exclusive and cooler : )

-Reader