[FRIAM] Curmudgeons Unite!

Prof David West profwest at fastmail.fm
Sun Feb 9 08:00:30 EST 2020


Russel,

Software Engineering has indeed enabled the construction of 100MLoc+ software constructs.

But why do we assume that such monstrosities need to be built?

davew


On Sun, Feb 9, 2020, at 2:04 AM, Russell Standish wrote:
> 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     hpcoder at 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
>



More information about the Friam mailing list