Software is complex and made from slime.
It is complex both in the everyday sense, and in the more technical sense used by complexity science. It is slime in that software is continually forced to engage with real world systems very unlike the laws of highschool physics, systems where rules are very local and contingent. William Wimsatt calls this "ontological slime".
This complexity is why agile software development and design are effective, including the usefulness of human feedback and of reducing localised complexity in code. We also have an agile idea, from Peter Naur, that a large part of programming is building and improving a model of the system in the programmer’s head. What does that imply about the worldview of an effective programmer? Because software is a complex system, a great developer needs survival techniques for navigating and building beautiful machines out of causal thickets and ontological slime.