This is the only thing I disagree with. Although this would be good for your career, it does not work for all types of people.
This is the only thing I disagree with. Although this would be good for your career, it does not work for all types of people.
I don't do as much on my own time as I used to... but I absolutely did for the first decade of my career.
To get to the top, you need to put in the extra effort.
We've also been allowed to learn modern languages very quickly, half attributed to our spongey brain, the other to the free time we had growing up. They're the same languages that companies are built on nowadays.
Now we're in the workforce, in a few years time we'll have a wealth of knowledge not considered deep by experts, but "good enough" by many. And if we've stuck with a particular area, or a particular language we'll be able to flout ourselves as "masters", when in reality, we've just screwed the bolt so many times, we know how many screws it takes.
And the bar will be raised. Because you raised it for us, and then you made it easier for us to learn to raise it ourselves.
The complexity of development has increased massively in the last 15 years. Not just the languages (arguably becoming less complex), or the frameworks, or the different patterns or technologies (ala queueing, authentication, architecture and environments).. But the sheer wealth of knowledge required for an entry level dev job.
We're full stack. We can do a DBA's, an architects, a BA's and a technical writers job - we've been doing it on our own since our age reached double digits.
We haven't just built the car. We've designed it, we've tested it, we've pulled it together and have gone on to become professional drivers. Sure some of the parts.. We don't know how they work. But we know that they do work. And we know they're reliable. Why reinvent the wheel when you can import it?
That's a bit too strong a generalization, I believe. To become and remain a top 5-10% developer you need to do varied and challenging projects, but I see no need for them to be personal projects or side work. It is quite possible for one's regular job to provide the variety and challenge necessary to develop and maintain top developer skills. It can be hard to find such jobs, but they are out there.
For a lot of us, we're really blessed to do something that we actually enjoy.