On Sat, Feb 08, 2020 at 09:44:20AM +0100, Prof David West wrote: > Jon, > > As an observer of software "engineering" since its inception in 1968 (my first > job as a programmer was that fall, and that spring/summer is when the NATO > conference first coined the phrase), I can and will (braggadocio here) state > that most software CANNOT be engineered, precision or otherwise, and all that > we have learned in the past 52 years in both computer science and software > engineering is essentially irrelevant to the production of application level > software.
As someone who graduated from being a "programmer" to a "software engineer" somewhere around 2008, I can testify there is a world of difference between the two. A programmer will happily churn out programs up to 1000 lines of code, and maybe manage a 10,000 loc program by dint of extreme hoeroic effort. Using software engineering techiniques, including object orientation, extensive regression testing, continuous integration, source code management and so on, a single programmer can easily manage a 10 Kloc program, and up to 100Kloc loc by dint of heroic effort (ie an order of magnitude more complex). A small team of 5 coders can perhaps manage a 1Mloc codebase (albeit probably not 10x as complex as the 100Kloc codebase in my experience), but requires much more intrateam communication, via daily standups etc. For larger projects eg the Linux kernel (ca 30Mloc), it is only feasible by being extremely modular, which cuts down on the amount of intrateam communicaton. Noone, not even Linus, has a clear picture of the whole. But none of these larger projects would be possible without the discipline of "software engineering". Whether "software engineering" is actually "engineering" or not is a pub argument, but it clearly works when applied pragmatically and not idealogically. If not "engineering", we would still need a name to cover the set of techniques that help tame complexity, and manage software development at scale. -- ---------------------------------------------------------------------------- Dr Russell Standish Phone 0425 253119 (mobile) Principal, High Performance Coders hpco...@hpcoders.com.au http://www.hpcoders.com.au ---------------------------------------------------------------------------- ============================================================ FRIAM Applied Complexity Group listserv Meets Fridays 9a-11:30 at cafe at St. John's College to unsubscribe http://redfish.com/mailman/listinfo/friam_redfish.com archives back to 2003: http://friam.471366.n2.nabble.com/ FRIAM-COMIC http://friam-comic.blogspot.com/ by Dr. Strangelove