If most developers knew both sides of the coin, then most projects would choose which approach was a better fit for their situation.
But what happens is, developers work for years only knowing one way, thinking it is the only way. They start to notice problems/friction/"code smells", and they follow the resulting thought process till they eventually discover the other way.
At this point, they might mistakenly think the newly discovered way better in all cases. They might also mistakenly think it is their invention.
But what happens is, developers work for years only knowing one way, thinking it is the only way. They start to notice problems/friction/"code smells", and they follow the resulting thought process till they eventually discover the other way.
At this point, they might mistakenly think the newly discovered way better in all cases. They might also mistakenly think it is their invention.
Learning theory really is a powerful shortcut.