After two decades in this industry, I've come to the same conclusion. Developers may use logic in coding, but trend-wise, we're bunch of herds following whatever others are doing. We forget whatever lessons we learned previously whenever something new comes out. It's good to see there are others who see insanity in it as well.
There is a logic to following trends, but it has nothing to do with the problems being solved and everything to do with remaining relevant in the workforce.
I agree with this. I've seen the same but the core problem is we don't learn from others mistakes: we prefer to rely on our own tool-making skills to demonstrate increased facility while making similar mistakes.
The thing missing in developers that I have decried over and over in this devop/agile movement is that SAs had discipline and an ordered idea and that developers exist to perturb the norm to better effect. The two ideas are not readily reconcilable.
If you're a new programmer, I don't think you should start from OO. OO-based languages are built on procedural, structural and imperative programming foundations. Starting from OO may force you to see everything as an object even when it doesn't fit.
The less you start off with, the better your understanding will be, and then you should learn to expand your horizons with other programming paradigms: logical, functional, and many others.
I know that a lot of universities (mine included) introduce programming through object oriented programming so this could be a problem for a lot of people going into university without much if any programming experience, much like I did. I've been interested lately and reading more about functional programming though.
Through object oriented programming or through a programming language that can do it? Many programming introductions start with mostly procedural/imperative, while using a language that has OO (and which is then introduced later in detail).
Totally agreed on other paradigms not being teached enough though.
I also have that theory, and it's not a stretch since the act of business is to commoditize everything. I especially saw it in the IT consulting business.
It's simply, "think for yourself." Do you ever talk to someone on a topic (in technology or politics) and it feels like you're talking to list of commonly accepted prepackaged talking points?
I was asked that question in my recent interview, and I told them that beyond the basics of the intent for using the index and some basic commonalities, it's hard to explain the details of how it works due to the fact:
1) All RDBMS vendors work differently.
2) It's an abstraction that's best handled by the RDBMS implementation, and is bound to change over time as versions change.