Thechno-Sensationalism and Engineering Magic
Exploring the Effect of the Modern Zeitgeist on Engineering Culture.
There is nothing so absurd that it cannot be believed as truth if it is repeated often enough and dressed in complex language.—Michel de Montaigne
The zeitgeist of our time is the tendency to reward novelty and sensationalism. It has touched many aspects of our life, including engineering. I have already written about this tendency in a previous article, trying to underline how that tendency is replacing expertise with product knowledge and vague terms that are trending in social media.
The incentives governing modern technical communication increasingly reward the appearance of sophistication and rapid consumption, creating a gap between how engineering is represented and how it is actually practiced.
After years of reading and listening presentations, talks, lectures and tutorials about engineering, I've become skeptical of how technical knowledge is presented online. I often get the impression that appearing sophisticated matters more than offering a sober and realistic view of engineering. I think the way we talk about engineering matters in subtle ways and has consequences in the real world.
There is genuinely good educational material out there, what I'm saying is that in the past that production was deliberately intended to be educational. Nowadays we can find more and more attempts to endow advertisements with the qualities of a lecture. I fear this tendency is spilling over to the less technical side of the IT industry and it's persuading people that technology is more akin to magic than deliberate design based on principles.
Technological Magic
A junior engineer today might learn a few basic commands of Kubernetes before process management, distributed systems before transactional consistency, data lakes before relational modeling and event sourcing before CRUD. There seems to be an inversion in how these subjects should be learnt.
Another classic are the tutorials that promise life-changing knowledge after watching a 10 minute video. This is a well-known criticism that I'm not going to indulge on.
This isn't a critique aimed at tutorials. I'm highlighting that, though we may be guided by good intentions, we may still produce undesirable effects. I feel part of the IT industry may be led to believe that a "petabyte-scale, event-driven, idempotent, architecture with exactly-once-delivery guarantees" is obviously appropriate in any scenario, and that expertise coincides in deploying such systems with the push of a button or with a prompt.
A Return to Reality
There’s also another subtle effect: tutorials often remove the negative space of engineering. Real engineering is mostly tradeoffs, constraints, legacy systems, budgets, politics, and partial knowledge.
"Social-media Engineering" presents systems in idealized vacuum conditions where every technology cleanly fits its intended purpose. I think I'm going to call this "Champagne Engineering".
A healthy engineering culture would teach:
- start with the simplest thing that works
- complexity is a liability to justify
- architecture exists to reduce operational risk
- scalability problems are rarer than maintainability problems
The irony is that genuinely senior engineers often converge toward simplicity after years of exposure to complexity failures. Too much is done to chase trends and this attitude has shadowed what's solid and reliable.
Conclusion
This criticism is not really against teaching or tutorials. Presenting technical content in a clear and compelling manner is a difficult endeavor. I'm pointing at how the prevailing spirit of our time is giving an image of engineering as easy magic. Technology is increasingly presented through narratives of novelty, transformation, and apparent sophistication, while the underlying constraints, tradeoffs, and principles become less visible. The result is an image of engineering that resembles magic more than design and perhaps the tutorial industry is contributing in giving this image.