Ask Slashdot: What's New In Legacy Languages? 247
First time accepted submitter liquiddark writes "I was listening to a younger coworker talk to someone the other day about legacy technologies, and he mentioned .NET as a specific example. It got me thinking — what technologies are passing from the upstart and/or mainstream phases into the world of legacy technology? What tech are you working with now that you hope to retire in the next few years? What will you replace it with?"
I'd replace Java with Perl, for one. (Score:5, Insightful)
Why .Net? (Score:5, Insightful)
Why was .Net mentioned as a legacy technology? Its actively developed, has a decent community, and is widely used - apart from some poor articles and conclusions that were jumped to here on /. There is no reason to consider .Net a legacy technology.
What is more likely is that the person was referring to projects that are stuck on specific versions in maintenance hell, which can happen with any language - Ive been stuck with VB.Net 2.0 WebForms projects, while at the same time I've been using MVC 4 and .Net 4.0. One I would consider a legacy project, the other not, but both use the same line of tech.
Re:C/C++ (Score:4, Insightful)
Jobs in C/C++ are rare these days
This is more a reflection on your lack of knowledge than the state of the software industry as a whole. C/C++ is where you make the big bucks.
Re:C/C++ (Score:3, Insightful)
Re:I'd replace Java with Perl, for one. (Score:5, Insightful)
So you'd switch from a newer technology to an older one?
I do not think it is the case with perl and java, but newer is not always better. For example, Unity, Gnome Shell, Windows 8, and so on... And I have upgraded many Windows 8 computers to Windows 7 for clients, on request. So, yes, I would "switch from a newer technology to an older one" if it was better.
Re:Depends on your definition of legacy (Score:5, Insightful)
i'd have to argue that 95% of all programmers under the age of 28 would never consider using .Net for any web-based stuff, so in there young minds it *is* "legacy"
The really disturbing thing is that "95% of all programmers under the age of 28" never consider that some stuff is not web based... (Note that I am not defending .net in any way with this... Just bemoaning the death of local applications.)
Re:Important question (Score:4, Insightful)
I guess the question, then, is do I(we) double-down on our current expertise and become indispensable in a small fraction of the job market, or do we accept the pros and cons of partially re-inventing our careers (and setting back our salaries) to retool?
As someone who has been in the field for about 30 years now, and can still easily find work in spite of how everyone claims IT is ageist... I think I can answer this for you long term.
Always be learning.
Seriously, you always need to be re-inventing yourself, studying and working to stay at the edge of the curve. Whatever is being done now will turn old (and then new again and then old again...) and you better have some way of dealing with it.
However, you do not need to take a pay cut to do so. Start learning Ruby on a personal project. Then get a side gig converting some existing applications to web enabled ruby. Now you have the creds to demand a hell of a lot more than the 20 year old ruby guy because you can actually understand what the have, and fuse them together. All the new guy can do it burn it all down and start over. This has real value to a lot of businesses.
And the fact that at 40+ you have a long list of skills but have stayed current with the latest stuff as well really makes you stand out on your resume.
Re:Anything that isn't C (Score:2, Insightful)
Have you considered Objective-C for mobile development...
Re:Why .Net? (Score:5, Insightful)
Why C# is the best language for mobile development...
http://blog.xamarin.com/eight-... [xamarin.com]
http://www.remobjects.com/elem... [remobjects.com]
* You can develop native apps in it for Android and iOS
* It is a more advanced language than the alternative languages, e.g. with its "async" language support. (which has been recently copied into Python, and is under committee review for inclusion JS and C++, but has been in VB/C# for four years already).
(disclaimer: I work on the C#/VB language design team at Microsoft. And I'm darned proud of it.)
Re:Depends on your definition of legacy (Score:4, Insightful)
"Legacy" is a buzzword for "old."
Multisyllabic and euphemistic, I'm sure it first came into being from the lips of an advertiser.
But if you want to think, write, and reason clearly about a subject, stick to the old, short words, the ones that your mind retranslates the words to anyway after hearing them.
Re:I'd replace Java with Perl, for one. (Score:4, Insightful)
So you'd switch from a newer technology to an older one?
It is common to replace code quickly written in recent language, by something faster written in ancient C.