I had a DevOps engineer describe their deployment automation system as a "Giant Rube Goldberg Machine". Which of course, all programming is a giant Rube Goldberg machine, if you think about it. If you take the "Goldberg" analogy to mean "Haphazard" and not well-thought out intentional structuring, I suppose it'd be more appropriate to compare a well-written application to a mechanical swiss watch.
Living beings are more "Rube Goldberg" than "Swiss Watch" - by virtue that they came to being guided not by intention, but circumstance.
I worked on a 25 year project that stretched the tech many times in its life.
On many occasions to get ambitious things to work despite a lack of good support, special subsystems were created with whatever wacky solution could be made to work, wrapped in sane surface API’s so the system as a whole could remain organized and accomplish the task well.
Five or so years after any of these were created, they could have easily been replaced with more reasonable code. But they worked reliably and efficiently. Their API’s were sensible and stable. So they accumulated.
If you reviewed all the code as a whole for the first time it was like finding a secret circus.
Living beings are more "Rube Goldberg" than "Swiss Watch" - by virtue that they came to being guided not by intention, but circumstance.