I don't see the BS. Coming from a traditional engineering discipline, I'd agree with each of those. The scariest to me is on professional standards and ethics: it seems to be an almost point of pride among some HN commenters that they operate outside of any formal standard. That baffles me.
OK. What standards and ethics would you recommend we adhere to?
First, do no harm? One, define harm. If I'm depriving a corporation of money by automating something for consumers, is that harm? How about if I write a clone of netcat, am I liable for its use in nefarious scanning of ports?
Thou shalt not write bugs? That would be awesome, were it possible. I can't think of many developers who wouldn't want to get to this point, assuming of course it didn't result in a 1 month project plan to write a sorting algorithm.
http://googleresearch.blogspot.com/2006/06/extra-extra-read-...
It doesn't seem that different from other professional codes.
Also regular constraints don't apply to software that normally would in construction fields. Gravity and mass and other real constraints are not present in program construction. Time and complexity are massive issues, but imagination and the mental model of a process is the usual barrier. Just think about anything web scale, (google docs?) its impressive for 'meh' engineering.
None have taken me up on the offer.
BS.
We're still exploring the space, and most of the time the things we build are good enough to work - just like the first wooden planks across streams were good enough.
We also do have the capability of designing and building the software equivalent of suspension bridges across the bay, using tools and processes like Ada, Coq, formal software proofs, etc.
Most engineering projects don't live up to your high standards, either. I knew a Blacksmith who would make circular staircases, and would regularly have to work around floors which were 4-6" higher or lower than specced. Or bridges which were put into earthquake zones, but not designed to withstand earthquakes. Or highways built with inappropriate foundations that buck like a bronco with frost heaves after the first winter passes. Or cities built under the freaking water table.
Ease up here folks. Our tooling and processes are still undergoing growth, as we take in the incredible scope of what we are capable of. Rome wasn't built in a day, and the understanding of stoneworking, woodworking, and city planning which enabled the building of Rome certainly took more than the < 100 years we've had.