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

I've often wondered if software engineers would benefit from the accountability of licensing like other engineering disciplines, especially as it pertains to safety critical systems.

It's a bit shocking for me to know a mechanical, electrical, or civil design in, say, a power plant may require a Professional Engineer to officially stamp it but any ol' software engineer can write code on that system and fire it up. My understanding is that NCEES lists a controls systems license but I have yet to meet a single person with it or hear of a project that required it.

To a certain extent, I wonder if software development rigor/oversight is in an adolescence similar to what it must have been like for mechanical systems during the early parts of the industrial revolution.



That's because other than the name "software engineering" has nothing to do with "engineering", as in a prescribed process and set of standards and practices that are required to be followed in the design and implementation of projects.


This was a big debate in the 90s. The "industry" headed it off at the gates (partly thanks to communication media such as ... usenet :) It might resurface, but I expect to hear the same arguments used against it, all over again. I'd be suprised if it ever came to pass in the same sense as PE requirements.


What were the main arguments back then?


Well, there were a couple that I remember.

1) programming is more like an art than a science, and so should not be regulated like engineering

2) the capital/labor requirements for programming are minimal - basically anyone could do it - so we should not worry about trying to license something that people could (and do) do at home.

3) there's no agreement about what would be required to get a license.

4) free software would die

Of course, some of these really do not hold up to close inspection. It's true that there is an "art" to programming, but not much more than there is in architecture for example, and there's no reason you couldn't require a license for cases where you do work for others rather than yourself. Since the 90s, it's become a _little_ more clear what the components of a s/w dev license might be, but perhaps still not enough to really pin it down. And yes, it would probably kill the free software world.


I wonder if they could parallel other engineering disciplines and give exemptions for specific areas or other avenues to ease the burden.

For example, as long as a certain percentage of principal engineers are licensed, others within the company don’t have to be. Similar with working under a licensed lead or specific article industry exemptions.

It would also give some power to the developers over management in key decisions. I’ve seen managers try to back engineers into a corner and when the engineer ultimately said they wouldn’t sign off on a design, management backed down because they didn’t have an equivalent to “just ship it now” and get it stamped later.

I understand the fear of it, but sometimes it seems like the sw development is run like the Wild West.




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

Search: