| > Thing is, it's pretty easy to code for a machine. It's REALLY hard to program in a way that other developers can understand you. I feel this statement is way too subjective and has been used very often in the industry in a negative way. Just because one does not understand the depth of the problem or style doesn't necessarily mean the style is bad or the solution is bad. I first realized this when I picked up AOCP. > OO can definitely be overused, but honestly 99% of the problems I face are people just writing unmaintainable, procedural code. I've seen unmaintainable OO code and maintainable procedural code. > OO can often be less simple (harder to read all at once) but that's the trade off we devs need to balance when writing code. And it's often vague when rules of maintainability pops up somewhere and people try to pick that up. Suddenly, it feels like there is no need of "Science" in CS. > I don't want to sound condescending but is it possible you are making excuses for learning hard things. Maybe it's the people you work with who are pushing it down your throat the wrong way. May be it is the people but then you have to deal with people in the industry. Not too sure about what you mean by "hard things". The hardest problem I've faced at work was the interview question (in a Fortune 500). |