Software Engineering: An Art of Discovery, Not Just Engineering

Software engineering is not merely an engineering practice; it's more of an art, full of the joy of discovery. The article uses early computer animations as an example to illustrate how a deep understanding of underlying technologies can lead to unexpected creativity. It argues that in software development, the interplay between vision and engineering is bidirectional and nonlinear, rather than linear. The author critiques the drawbacks of over-reliance on abstraction layers and black-box thinking, arguing that this limits creativity and innovation. The same applies to software organizations: over-emphasizing team autonomy while neglecting inter-team collaboration leads to low overall efficiency. The author calls for a return to understanding underlying technologies to spark true innovation.