Indeed front-end development in software can be painful. Much of the cruft can be attributed to computing's byzantine history of incremental experimentation. You might take some comfort in knowing that the biological analogue is vastly more complicated: the transformation of genotype to phenotype. Trying to figure out the evolutionary pressures and various mutational accidents that drove particular biological changes feels way harder than trying to figure out WTF Project X was thinking when they decided to pivot from being a social network for dog walkers to a low-latency query planner for a database no one has heard of.