It has become a mantra for our whole industry which hasn't changed said industry for the better.
What is our primary responsibility, to make our whole industry better or to make our customers better? Sometimes, there are tradeoffs.
Why bother, it will be replaced, superseded, marginalised and out of fashion before you're half way done.
Why bother when you will never use it? There's enough to do already without learning every nuance of every tech out there. Lots of software running the world is using only 10% of the tools of the given technology.
...developers differentiating themselves based on soft skills rather than developer skills – seems a bit twisted.
Developers differentiate themselves on what needs to be differentiated. Sometimes that's deep tech. Sometimes it's shallow tech and deep domain knowledge. Sometimes it's good people skills. The only thing "twisted" is thinking that any one is better than the others.
You seem like an expert without ever being an expert...
Only to your customers, but not to other experts. One of the best pieces of advice I ever learned was, "All you have to do is stay one step ahead of your customers. No one else really matters."
You can't learn something if you don't know it exists.
Absolutely! The question then becomes, "How do I find out what exists?" There are several ways. Reading a book is one. Getting your ass kicked by a competitor is another. Which do you think gets more attention?
...there is a billion lines of code out there right now which can be replaced with a million lines of faster, cleaner, better code simply because whoever wrote it didn't know what they didn't know.
No question. Who's going to pay for that?
...skimming subjects doesn't allow you to retain anything, our brain doesn't work that way.
Our brain learns best by doing. If HaveProblem + SkimmingSubjects leads to Doing, then SkimmingSubjects serves it purpose. We can't possiblity learn everything. The trick is knowing what to learn based upon the problem at hand and the stuff we pick up along the way. Skimming is an invaluable tool to help make these choices.
OP brings up lots of great points. If the existing code base is any indication, our industry really needs to advance. Too many developers are building too much stuff with the same hammer and screwdriver from years ago.
Nothing scares me more, however, than the vision of developers becoming academics, learning the technology du jour and still not being able to build what's needed by the great masses. We've been down that path before and it takes a long time before anything is pretty. There has to be a middle ground.
There's nothing wrong with focusing completely on your customers - after a couple of years you're likely to find yourself a good businessman and a good-enough coder. There is something wrong with just coasting as a programmer, though: after a couple of years, you'll still just be a good-enough coder.
What is our primary responsibility, to make our whole industry better or to make our customers better? Sometimes, there are tradeoffs.
Why bother, it will be replaced, superseded, marginalised and out of fashion before you're half way done.
Why bother when you will never use it? There's enough to do already without learning every nuance of every tech out there. Lots of software running the world is using only 10% of the tools of the given technology.
...developers differentiating themselves based on soft skills rather than developer skills – seems a bit twisted.
Developers differentiate themselves on what needs to be differentiated. Sometimes that's deep tech. Sometimes it's shallow tech and deep domain knowledge. Sometimes it's good people skills. The only thing "twisted" is thinking that any one is better than the others.
You seem like an expert without ever being an expert...
Only to your customers, but not to other experts. One of the best pieces of advice I ever learned was, "All you have to do is stay one step ahead of your customers. No one else really matters."
You can't learn something if you don't know it exists.
Absolutely! The question then becomes, "How do I find out what exists?" There are several ways. Reading a book is one. Getting your ass kicked by a competitor is another. Which do you think gets more attention?
...there is a billion lines of code out there right now which can be replaced with a million lines of faster, cleaner, better code simply because whoever wrote it didn't know what they didn't know.
No question. Who's going to pay for that?
...skimming subjects doesn't allow you to retain anything, our brain doesn't work that way.
Our brain learns best by doing. If HaveProblem + SkimmingSubjects leads to Doing, then SkimmingSubjects serves it purpose. We can't possiblity learn everything. The trick is knowing what to learn based upon the problem at hand and the stuff we pick up along the way. Skimming is an invaluable tool to help make these choices.
OP brings up lots of great points. If the existing code base is any indication, our industry really needs to advance. Too many developers are building too much stuff with the same hammer and screwdriver from years ago.
Nothing scares me more, however, than the vision of developers becoming academics, learning the technology du jour and still not being able to build what's needed by the great masses. We've been down that path before and it takes a long time before anything is pretty. There has to be a middle ground.