Who says that this feeling is not entirely correct and most of software development is insanely broken, i.e. software development as of today actually mostly means working around these insane problems such that not already a monkey that was conditioned using electrical shocks realizes how broken everything is.