Skip to main content

Fifty (-One) Years Later. Modern-Day Design Reflections on “Essays on Software Engineering” by Fred Brooks (1975)

with Marc de Kruijf

Event Details

Date
Friday, February 27, 2026
Time
3-4 p.m.
Location
Description

Abstract:  Large-scale systems engineering is inherently difficult, and managing complexity remains a constant challenge. Over fifty years ago, Fred Brooks published his seminal "Essays on Software Engineering" to address the "tar pit" of systems programming. But how well do his classic lessons hold up in the modern era of software development? 

In this talk, I revisit Brooks's work to explore which concepts have survived and which need a modern update. Bypassing project management concerns, the presentation will dive specifically into four key areas of systems design: Conceptual Integrity: Why Brooks's rigid separation of architect and implementer is fading, making system cohesion a shared responsibility among all modern engineers. Resources and Externalities: How to combat the volatility of customer needs and non-fungible resources by prioritizing optionality and "late binding" over rigid upfront budgeting. Design Iteration: Navigating the dangerous "second-system effect" and confronting the reality that software maintenance inherently increases system entropy.  Self-Documenting Code: The enduring importance of embedding documentation in your code to leave a helpful trail, because bad designs will inevitably outlive our memory of them.

Ultimately, the talk culminates in a singular, modern guiding principle for engineers: "Can I Change My Mind?". 

Bio: Marc de Kruijf is a Software engineer at Google in Madison, Wisconsin, where he has spent more than a decade. He earned his PhD in Computer Sciences from University of Wisconsin–Madison in 2012, specializing in computer architecture, and works on large-scale computing systems and reliability in modern hardware and software platforms.

Cost
Free

Tags