All the Perl that's Practical to Extract and Report

Navigation

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Without JavaScript enabled, you might want to
use the classic discussion system instead. If you login, you can remember this preference.

Software is information, not material. Good code is code where all meaningful repetition is abstracted away and all of its parts as different from each other as possible.

Engineering is about making processes dependable and repeatable while labouring under the constraints of a reality of physical laws.

I fail to see what applicability the latter can possibly have to the former. You may possibly be able to profit from rigorous engineering discipline to systematise the production of software, but even so, that is for the “discipline” part, not the “engineering” part.

Literally? Because I know that an architect would put three identical arcs next to each other on his blueprints without blinking; if a programmer wrote the same subroutine three times in a row, he wouldn’t get to work on anything noteworthy on my watch, if at all.

Software is not like construction in that the only part of software development that actually manufacturers a good for end-user use is bundling the compiled (or aggregated) version for deployment.

Software is like construction in that all of the bizarre changes of architecture and requirements seen in software development also happen during physical construction of a building, sometimes even without regard for physical laws.

Having done both software development and construction, I find the classical view