While I think that most of the points the author makes are valid, I'd disagree with this:
"On top of all this, the language that you thought was the next big thing was a passing fad and nobody is using it 5 years later. Now you’re on to the next cool language, which might not be used 5 years from now. You constantly have to stay on top of things."
In most areas of programming, there's no need to chase the next hot language. Many of the languages being used today, such as Python, Ruby, Java, JavaScript, C++ and C have been around for a very long time. Outside of web and mobile development, the frameworks and libraries don't change that quickly.
"There’s a ton of stuff you need to know, and it keeps changing! It’s not something you can be truly great at unless it’s your main focus. You can’t be a 'weekend programmer.'"
There are many fields in which you can. For example, if your weekend project is writing a program to do electronic music composition on a PC or a Mac, you'll be pretty much unaffected by the trends in languages and frameworks. The code you write this year will still run just fine five years from now, and user interfaces on desktop machines won't change all that much in the next five years.
It has been a while since I was at school and I am sure things have changed since then, however, most of the reasons cited here are not evident at that formative, career deciding stage. At school/university you don't know about 'death marches', the obligation to work in a focused manner for more hours in the week than the stereotypical 'junior doctor' (allegedly they put in all the hours) or that projects are likely to be managed by people that cannot be bothered to learn the slightest thing about how things work 'under the hood'.
The same could be said for almost any other profession - teachers go into it with idealism then get jaded once they find out the reality of what is asked for them. Same with anything else to varying extents.
IMHO there are lots of different types of programmers with different motivations. Some are product/client/customer focused, plenty are not. Some fail to see programming as a creative endeavour - it might as well be car mechanics to them. For some people programming is all they are cut out for, only a miracle will move them on to something else or some late spurt of personal development might enable that.
At the end of the day programming is hard work. But this is not the same sort of hard work that most people consider to be hard work. In some ways this difference is a bit like the difference between 'hot courage' and 'cold courage'. ('Hot courage' is what soldiers have when they do something courageous under fire, 'cold courage' is what Edward Snowden has.)
2 comments
[ 2.9 ms ] story [ 15.2 ms ] thread"On top of all this, the language that you thought was the next big thing was a passing fad and nobody is using it 5 years later. Now you’re on to the next cool language, which might not be used 5 years from now. You constantly have to stay on top of things."
In most areas of programming, there's no need to chase the next hot language. Many of the languages being used today, such as Python, Ruby, Java, JavaScript, C++ and C have been around for a very long time. Outside of web and mobile development, the frameworks and libraries don't change that quickly.
"There’s a ton of stuff you need to know, and it keeps changing! It’s not something you can be truly great at unless it’s your main focus. You can’t be a 'weekend programmer.'"
There are many fields in which you can. For example, if your weekend project is writing a program to do electronic music composition on a PC or a Mac, you'll be pretty much unaffected by the trends in languages and frameworks. The code you write this year will still run just fine five years from now, and user interfaces on desktop machines won't change all that much in the next five years.
The same could be said for almost any other profession - teachers go into it with idealism then get jaded once they find out the reality of what is asked for them. Same with anything else to varying extents.
IMHO there are lots of different types of programmers with different motivations. Some are product/client/customer focused, plenty are not. Some fail to see programming as a creative endeavour - it might as well be car mechanics to them. For some people programming is all they are cut out for, only a miracle will move them on to something else or some late spurt of personal development might enable that.
At the end of the day programming is hard work. But this is not the same sort of hard work that most people consider to be hard work. In some ways this difference is a bit like the difference between 'hot courage' and 'cold courage'. ('Hot courage' is what soldiers have when they do something courageous under fire, 'cold courage' is what Edward Snowden has.)