Yes, very related. How to distinguish hype (cool kids doing it), from innovation. Blockchain - hype. JavaScript - here to stay. Neural networks - probably here to stay, but get overused and work like a buzzword for VC.
Re: Retraction of an Obituary
I agree that dead means a different thing for different people. I would say dead - means there is no sense to learn it for a newcomer. If you already know the technology, there will be always a requirement for it. For example, if you know COBOL, there are probably some old companies who still need to support those things. But if you just starting your carrier it makes no sense to learn COBOL. Learning Python, JavaScript, etc. would make more sense - it would be easier to learn because it would be easier to find a mentor, to find a community, to find a job.
I need to say that I don't consider the following technologies dead: C, C++, Java, Ruby on Rails. But as well I would consider alternatives, like Rust, Go, Phoenix (Elixir).
I agree that dead means a different thing for different people. I would say dead - means there is no sense to learn it for a newcomer...But if you just starting your carrier it makes no sense to learn COBOL.
On the contrary, some of the most stable and highest paying jobs go to developers who can maintain legacy systems. There are many among us who actually enjoy this! (And it's easier for a COBOL developer to find good employment than a JS developer, in some cases!)
So your statement is both patently false and dangerously misleading, albeit unintentionally. It's helpful to encourage them to learn modern languages and practices along the way, but one should never ever ever EVER dissuade someone away from a technology or subspecialty they find interesting. (Besides, the old often informs the new more than we care to admit.)
If someone wants to start with COBOL, there's actually no harm in it. It's most important starting out to learn the fundamentals of programming. Each language presents a curve anyhow.
On the contrary, some of the most stable and highest paying jobs go to developers who can maintain legacy systems.
But is there a high number of such positions? Probably not. Which means that your choice is limited, which means that would be unsuitable for some people, for example
If the developer is in a different country and it is hard for them to get a visa
if the developer from an underrepresented group and they don't want to deal with a toxic environment. Higher chances to find a better place if more companies are hiring for those technologies.
Supporting legacy system is two sided sword. Yes it can be high paying. But then one day they will fire you and it can be very hard to find a new position for that technology.
Those high paying positions to support legacy systems probably looking for seniors. So if newcomer starts to learn outdated technology it may be hard for them to find a job.
You really would be surprised. The job market is far more varied and intricate than you would expect. Job posting represent an extraordinarily small segment of positions.
Supporting legacy system is two sided sword. Yes it can be high paying. But then one day they will fire you and it can be very hard to find a new position for that technology.
Once again, not necessarily.
Becoming well versed in a variety of technologies is always important. Only knowing COBOL is just as unwise as only knowing Javascript.
Don't lose the more important point in the midst of it: technologies don't die. Any technology you are interested in, learn it. If it does what you need, use it. And for the love of all things digital, don't try to steer people away from the technologies they like into yours.
I may have skewed picture. but I monitor job market regularly.
It's not possible to monitor things that realistically. All you can do is spot trends in posted jobs, nothing more. You're taking measurements of the tip of the iceberg, which while interesting and helpful, has no correlation to the majority of the reality.
For a hobby, for self development, for fun - yes sure. For a higher chances to get hired - maybe not
If you're learning anything purely to get a job, lacking any appreciation of it, you're doing it wrong. The last thing you want is a career working in a language you resent.
And, once again, you don't know how COBOL experience may impact someone's chances with a particular job. You're trying to replicate a very intricate painting with exclusively broad strokes, here. ;)
If you're learning anything purely to get a job, lacking any appreciation of it, you're doing it wrong
Nope. There is nothing wrong to learn programming simply to get a job, without any appreciation of it. People simply want to get stable job to feed their family.
I mean there are people who can afford to learn programing, because they appreciate it. But as well there are lot of people who are simply for money.
I am speaking about learning a particular language or tool, not learning programming as a whole. Two different points; you have addressed only the point I did not make.
There are hundreds of languages, and thousands of technology stacks, from which to choose. One should not feel obligated to pick up and master Language They Hate because someone (you) told them they couldn't find work in Languages They Love, when in fact, there were jobs had they built the skills.
On COBOL I suggest It’s COBOL all the way down - it's definitely not dead and some companies are trying to train people either to maintain or to modernize the code
Note that simply learning COBOL won't get one any far. Mainframes use a completely different development workflow, for example. Their OSes are also unlike anything found in daily life now, starting from unusual terminology.
People who make lots of money maintaining legacy systems are so valuable precicely because they know how to maintain the whole system.
Not to dissuade anyone from learning that, but it's much more than just learning a new language.
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
This is something I've written about before.
All The Cool Kids Are Doing It
Jason C. McDonald ・ Nov 22 '17
Also, technologies virtually never "die", and we need to stop using that term altogether...
Retraction of an Obituary
Jason C. McDonald ・ Dec 28 '18
Re: All The Cool Kids Are Doing It
Yes, very related. How to distinguish hype (cool kids doing it), from innovation. Blockchain - hype. JavaScript - here to stay. Neural networks - probably here to stay, but get overused and work like a buzzword for VC.
Re: Retraction of an Obituary
I agree that dead means a different thing for different people. I would say dead - means there is no sense to learn it for a newcomer. If you already know the technology, there will be always a requirement for it. For example, if you know COBOL, there are probably some old companies who still need to support those things. But if you just starting your carrier it makes no sense to learn COBOL. Learning Python, JavaScript, etc. would make more sense - it would be easier to learn because it would be easier to find a mentor, to find a community, to find a job.
I need to say that I don't consider the following technologies dead: C, C++, Java, Ruby on Rails. But as well I would consider alternatives, like Rust, Go, Phoenix (Elixir).
On the contrary, some of the most stable and highest paying jobs go to developers who can maintain legacy systems. There are many among us who actually enjoy this! (And it's easier for a COBOL developer to find good employment than a JS developer, in some cases!)
So your statement is both patently false and dangerously misleading, albeit unintentionally. It's helpful to encourage them to learn modern languages and practices along the way, but one should never ever ever EVER dissuade someone away from a technology or subspecialty they find interesting. (Besides, the old often informs the new more than we care to admit.)
If someone wants to start with COBOL, there's actually no harm in it. It's most important starting out to learn the fundamentals of programming. Each language presents a curve anyhow.
But is there a high number of such positions? Probably not. Which means that your choice is limited, which means that would be unsuitable for some people, for example
Supporting legacy system is two sided sword. Yes it can be high paying. But then one day they will fire you and it can be very hard to find a new position for that technology.
Those high paying positions to support legacy systems probably looking for seniors. So if newcomer starts to learn outdated technology it may be hard for them to find a job.
You really would be surprised. The job market is far more varied and intricate than you would expect. Job posting represent an extraordinarily small segment of positions.
Once again, not necessarily.
Becoming well versed in a variety of technologies is always important. Only knowing COBOL is just as unwise as only knowing Javascript.
Don't lose the more important point in the midst of it: technologies don't die. Any technology you are interested in, learn it. If it does what you need, use it. And for the love of all things digital, don't try to steer people away from the technologies they like into yours.
I may have skewed picture. but I monitor job market regularly.
For a hobby, for self development, for fun - yes sure. For a higher chances to get hired - maybe not
Agree
It's not possible to monitor things that realistically. All you can do is spot trends in posted jobs, nothing more. You're taking measurements of the tip of the iceberg, which while interesting and helpful, has no correlation to the majority of the reality.
If you're learning anything purely to get a job, lacking any appreciation of it, you're doing it wrong. The last thing you want is a career working in a language you resent.
And, once again, you don't know how COBOL experience may impact someone's chances with a particular job. You're trying to replicate a very intricate painting with exclusively broad strokes, here. ;)
Nope. There is nothing wrong to learn programming simply to get a job, without any appreciation of it. People simply want to get stable job to feed their family.
I mean there are people who can afford to learn programing, because they appreciate it. But as well there are lot of people who are simply for money.
I am speaking about learning a particular language or tool, not learning programming as a whole. Two different points; you have addressed only the point I did not make.
There are hundreds of languages, and thousands of technology stacks, from which to choose. One should not feel obligated to pick up and master Language They Hate because someone (you) told them they couldn't find work in Languages They Love, when in fact, there were jobs had they built the skills.
On COBOL I suggest It’s COBOL all the way down - it's definitely not dead and some companies are trying to train people either to maintain or to modernize the code
Note that simply learning COBOL won't get one any far. Mainframes use a completely different development workflow, for example. Their OSes are also unlike anything found in daily life now, starting from unusual terminology.
People who make lots of money maintaining legacy systems are so valuable precicely because they know how to maintain the whole system.
Not to dissuade anyone from learning that, but it's much more than just learning a new language.