Are programmers engineers?

Software is a broad, immature, and rapidly evolving science so there is no possible way to apply standard engineering qualifications to it.

Some positions involving money, personal data, or projectiles require periodic training to ensure the safety of the public and the employees. The traditional engineering equivalent would be grounding, power emissions, flammability, etc. It makes sure that your circuit doesn't burn a house down but it has nothing to do with it working well.

Sun, Oracle, Microsoft, and others have created certification programs that are generally not accepted as any proof of abilities. Many can memorize the test without knowing how to apply any of it.

--
I will not see posts from astraweb, theremailer, dizum, or google 
because they host Usenet flooders.
Reply to
Kevin McMurtrie
Loading thread data ...

Reading those definitions of "engineer", I notice that none require any standards be applied to *any* "engineer". I checked further, and could find no definition of "engineer" that involved certification of any sort.

Perhaps certificaton can be used by some to show that the results of their actions are generally safe for the public to use, but that seems to be independent of the actions themselves.

So while we can constructively argue about whether programming is engineering (personally, I think it is, as a programmer is creating a complex system based on scientific and mathematical knowledge, which seems to be the common relevent definition of "engineer"), I don't think we can argue that the lack of third-party certification is a disqualifying factor (it's merely a third party's opinion about how well you program).

Reply to
DJ Delorie

ISO9000 mainly relies on the customers assumption that quality is determined by the number of cubic yards of controlled quality process documentation in circulation. It is no guarantee of actual quality.

ISO9000 ensures reproducible outcomes which isn't necessarily true quality. I have seen situations where a process was deliberately not improved because updating the quality manuals was too painful!

Quality system sceptics ISO9000 toast making process:

  1. Insert thick cut bread in toaster and switch on at maximum setting.
  2. Wait for smoke and flames to be emitted.
  3. Scrape charred toast back until a uniform light brown* all over.
  4. Save removed black crumbs in envelope.
  5. File envelope with date and time stamp.
  6. Label and deliver uniform light brown thin toast to customer.
  • Pantone 723 shade reference card

There are organisations that do true quality and ISO9000 but you should be aware that ISO9000 in itself only ensures process reproducibility.

--
Regards, 
Martin Brown
Reply to
Martin Brown

Not in my world, or in lots of others'. You get to be a wizard by being a one man band doing hard things.

Because even if everybody is a hotshot, they get squashed by the load of crap. ;)

Cheers

Phil Hobbs

Reply to
Phil Hobbs

You obviously know a pretty high class of programmers. "Scientific and mathematical knowledge"? Maybe in some of the guys who wrote the compiler, but not in a good 90% of the rest, for sure.

Cheers

Phil Hobbs

Reply to
Phil Hobbs

Not quite. ISO9000 also requires quality measurements and feedback into the process. This isn't stressed much, though, and in practice the whole thing isn't much more than a revenue source for compliance organizations.

Reply to
krw

As opposed to artistically or randomly arranging those pesky keywords :-)

It does seem to indicate that HTML is not a programming language though... I, for one, couldn't write a good story to save my life, but I make a decent living writing software. They're both typing. What's the difference?

(My son is first year CS, it's interesting watching him learn to program, and how it's changing the way he thinks about problems.)

Reply to
DJ Delorie

We had a houseguest, the Dean of a CS department at a pretty big university. I made the mistake of asking her what sort of programming they teach these days. She was highly offended. "We don't teach programming."

Does your kid know what a state machine is? Most programmers don't.

--

John Larkin         Highland Technology, Inc 
picosecond timing   precision measurement  

jlarkin att highlandtechnology dott com 
http://www.highlandtechnology.com
Reply to
John Larkin

It's true that most programmers can't read scientific and mathematical notation. I can't very well. It's a different field.

More software topics-

Local concurrency: Task queues Read/Write locks Lock free (compare and set)

Distributed concurrency: Task queues Change journals Immediate vs eventual consistency Maintaining data redundancy Managing relational data across nodes

Response times: Big-O complexity (CPU and storage) Data indexing Data latency/locality Tiered levels of storage Concurrency Maintaining bandwidth during overload Session management

Quality control: Unit, system, integration, and full testing methodologies Isolating code dependencies Secure testing APIs Crafting positive and negative test data

Security: User authentication User authorization Data authentication Asymmetric encryption Safely crossing security level boundaries Preventing escalation of features

Information science: Key-value storage Relational data Structured query language Data modeling Serialization Encapsulation and abstraction Inheritance

Data processing: Multidimensional samples Resampling and compression Multidimensional clustering Statistical predictions Fraud detection Cause/effect analytics Transactional operations Repeatability/auditing

And on and on. The list will never end.

--
I will not see posts from astraweb, theremailer, dizum, or google 
because they host Usenet flooders.
Reply to
Kevin McMurtrie

This is ultimately an argument about the meaning of words.

I.e. pointless.

Sylvia.

Reply to
Sylvia Else

Personally, I don't care what the title is, as long as the paychecks clear. Most other folks seem to get worked up pretty good if you call them the wrong thing. Others just want nonstop title changes to indicate they're climbing some sort of corporate ladder.

It's not too hard to judge the skills for a given task somebody has, if you talk to them for a while. It just isn't possible any other way in the computing world.

I used to share space subletted from a structural engineer. There's no question he knew what he was doing, but to any new clients that questioned his credibility he even had a hallway with all his PE licenses from over a dozen states on display. He firm had the odd specialty of being the go-to for designing staircases and ramps for goverment buildings, schools and stadiums across the US.

There's just no equivalent for programming or project manamgement or things like that. There's lots of certifications you can buy, but they only mean you passed a test, not that you can do anything really useful.

Reply to
Cydrome Leader

It is sad that there seems to be no real discipline of programming, in the sense that a good team could be depended on to produce predictable systems on time and under budget. Multi-billion dollar failures abound.

If some institution invents a scheme for good programming and good programming management, it would be fabulous. But nobody seems interested.

--

John Larkin         Highland Technology, Inc 
picosecond timing   precision measurement  

jlarkin att highlandtechnology dott com 
http://www.highlandtechnology.com
Reply to
John Larkin

Ask a CS academic about programming? TRIGGER WARNING!

Cheers

Phil Hobbs

Reply to
Phil Hobbs

I've known a lot of really really good software folks, partly from having spent half my career at IBM Watson. I was just teasing DJ for applying an old-timey definition of engineering to software, where it's ludicrously ill-fitting.

Cheers

Phil Hobbs

Reply to
Phil Hobbs

sorrree.

--

John Larkin         Highland Technology, Inc 
picosecond timing   precision measurement  

jlarkin att highlandtechnology dott com 
http://www.highlandtechnology.com
Reply to
John Larkin

In corporate America, what you're called is what you are and is what you're paid. It does matter.

Sounds like interviewing for programmers is pretty easy. Another difference between engineers and programmers. ;-)

Reply to
krw

Sorry the previous post slipped out...

What makes you think a PE license is any different?

Reply to
krw

of

e
s

em

r"

e

ed

a
o

There is a programming discipline, and it produces better results than less coherent efforts. When the IBM PC first hit the market, the MS-DOS operati ng system was a whole lot more reliable than it's counterparts, and that's because the IBM programming quality control team had gotten hold of Bill Ga te's software and put it through their procedures.

More recent Windows operating systems haven't been as much better than the competition - Linux chops the tasks up finer, spread them over more people, and take more time before they announce a new version - but they've also b een a great deal bigger than MS-DOS.

Big projects are almost always more difficult than small ones (though a sma ll project that turns out to be based on a misconception can fail messily) and having the best project management in the world isn't going to produce a product on time and on budget if the original specification turns out to have been flawed.

IBM had done it in the early 1980's. There are rules for writing good progr ams, and software professionals have known about them for decades.

You can - in fact - write provably correct code if you go about it the righ t way, but it's horribly expensive.

formatting link

--
Bill Sloman, Sydney
Reply to
Bill Sloman

Oh, such systems are out there but you're right. Nobody is interested.

Reply to
krw

Not unless they have a certificate, degree, or serious work experience in a "hands on" engineering subject such as electrical engineering. Actually hi gh level computer science researchers often lack basic engineering insight that would help them solve real world problems effectively. You cannot reas on how to strike a match using mathematics.

Reply to
sean.c4s.vn

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.