Foreword by Robert Martin

The pendulum has swung again. This time it has swung toward craftsmanship. As one of the leaders of the craftsmanship movement, I think this is a good thing. I think it is important that software developers learn the pride of workmanship that is common in other crafts.

But when the pendulum swings, it often swings away from something else. And in this case it seems to be swinging away from the notion of engineering. The sentiment seems to be that if software is a craft, a kind of artistry, then it cannot be a science or an engineering discipline. I disagree with this rather strenuously.

Software is both a craft and a science, both a work of passion and a work of principle. Writing good software requires both wild flights ...

Get The Essence of Software Engineering: Applying the SEMAT Kernel now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.