Thank you for the extensive answer! Yes, I guess some code reuse would make sense, but when growing it is difficult to know which abstractoon makes sense, so from the business perspective it is often a better strategy to copy and adapt code, even if that means worse maintainability down the road.