/glv-rse

Glenn Vanderburg — Real Software Engineering

Real Software Engineering

Glenn Vanderburg . Blog Series . List of the talks

Lone Star Ruby Conference 2010, Aug 26–28

Real Software Engineering . video . slides

Software engineering as it's taught in universities simply doesn't work. It doesn't produce software systems of high quality, and it doesn't produce them for low cost. Sometimes, even when practiced rigorously, it doesn't produce systems at all.

That's odd, because in every other field, the term "engineering" is reserved for methods that work.

What then, does real software engineering look like? How can we consistently deliver high-quality systems to our customers and employers in a timely fashion and for a reasonable cost? In this session, we'll discuss where software engineering went wrong, and build the case that disciplined Agile methods, far from being "anti-engineering" (as they are often described), actually represent the best of engineering principles applied to the task of software development.

JRuby Conf 2010, Oct 1–3

Real Software Engineering . video

RailsConf 2011, May 16–19

Craft, Engineering, and the Essence of Programming . video . review

QCon 2011, Nov 16–19

Craft and Software Engineering . video

QCon 2012, Nov 5–6

Opening Keynote: Real Software Engineering . keynote page . slides

For over 40 years, starting in the late 1960s, the "Software Engineering"crowd has been telling us programmers that we need to get serious and learn how to be real engineers. Most of their prescriptions resembled what we imagine a civil engineer's day might be like: lots of formal methods, specification, diagrams and other documents, design analysis and verification, and the like.

Many of us (including me) listened to that siren song for a while. But for each of the many engineering disciplines, growing up has actually meant becoming comfortable with what makes it unlike other disciplines. In software, ironically enough, getting serious about being good engineers requires rejecting almost everything we've been taught about "Software Engineering". What engineering really means in the context of software is-as it ought to be-very different from what other engineering disciplines practice.

O'Reilly Software Architecture Conference 2015, Mar 17–19

Real Software Engineering . video

I believe strongly that software development is, incontrovertibly, an engineering discipline (albeit still an immature one). But a great many people in our field have decided that it’s not. I think this is a harmful mistake.

But it’s also a natural one, because most programmers have at least a passing familiarity with a body of knowledge known as “software engineering”—a body of knowledge that was taken very seriously for 30 years or so, but which has now been thoroughly discredited. If “software engineering” doesn’t work, then why would anyone say that software development is engineering?

This talk makes the case for software as engineering, and shows that it fits comfortably into the spectrum of engineering disciplines. The talk also explains why the software engineering field spent so long going down an incorrect path, and how we might correct that.

Software Art Thou? 2018

Real Software Engineering . video

The idea is spreading that perhaps software development is simply incompatible with engineering; that software developers are not, and never will be, real engineers. Glenn Vanderburg, VP of Engineering at First, takes a fresh look at what that really should mean for this field. With an extra 45 years of experience about the task of programming, and a broad survey of the varied different engineering disciplines, can we envision a future for a field of “software engineering” that is worthy of the name?