But I’ve never been on a team where I’ve thought, “If only that person had a better understanding of inheritance/encapsulation/polymorphism than s/he would be more productive.” I’m not questioning whether these form the philosophical foundation of OOP, but can anyone please provide an example of how they practically affect an individual’s ability to contribute?