Is Your Language Doomed? |
Written by Mike James |
Wednesday, 07 August 2019 |
Employment company Dice has been trying to be helpful. It has made a list of five languages that it predicts are headed for extinction. Not that any language ever really goes "extinct" - we are still writing Cobol and Fortran, after all! Even so, we are all aware that there are "hot" languages and ever so slightly cool languages. Of course, if it is your language we are talking about it never cools off. Try to keep confirmation bias in mind when reading the rest of this. Before you read on, see if you can pick five languages that you would place on the endangered list. Dice attempted to be a little more objective and looked at the TIOBE index, Redmonk's index and its own job statistics - even so you can argue against the conclusions. What I will say is that I found the five that Dice single out very reasonable choices, with some slight concern about one of them. The first language on the death watch list is Ruby. I can remember when I was swept along by the sudden enthusiasm for all things Ruby. It seemed to be Ruby on Rails that was the big draw, but when I tried building a couple of websites using it I really couldn't see what the fuss was about. On the other hand, Ruby had a lot going for it. It was, and is, an interesting language with some clever features that made is suitable for meta-programming. And yet here we are today and, to be blunt, I wouldn't spend time learning it or using it. Rails has disappeared from the landscape and been replaced by JavaScript frameworks such as React and Angular. I'm sure there are people still using Rails and still championing Ruby, but its not for me and I wouldn't tell a beginner to learn it. Yes Ruby is on its way out, but it isn't going to become irrelevant any time soon. More cartoon fun at xkcd a webcomic of romance,sarcasm, math, and language The second is Haskell. Now this one really shocked me. I don't write Haskell, but I know enough about it to realize that it is an interesting language. It is a very "pure" functional language that academics and showoffs love to praise or criticize - whichever works to put them above the herd. I know that some argue that Haskell is a toy language that isn't ready for the real world but then again some projects have made serious use of it in mission critical roles, or so I am led to believe. So is Haskell dying? Probably not even though, as Dice points out, is is flat-lining on RedMonk's measure. Haskell is probably never going to be a big name in the language world. and this isn't the reason people learn it. It will probably grumble on, with a big revision in 2020, to the end of time. It occupies a perennial niche. At number 3, unsurprisingly, we have Objective-C. This is the "other", object-oriented, C and while it has some very nice features and can probably claim to be more object-oriented than C++, it is long winded. If you try to do anything much you quickly realize that you are typing a lot of boilerplate code. However, this isn't the reason it is on the watch list. The simple reason is that Apple was its number one patron and the company has moved on to Swift, which is a much better language. So Objective-C will die as Apple programmers move to Swift and as the need to deal with existing Objective-C code lessens. In fact I'm surprised that it still rates as high as it does in Redmonk and TIOBE. Number 4, R, is designed to put the cat among the pigeons. Data science is big and R is the natural language for data science. It isn't a general-purpose language, although it can do most things. It is Dice's opinion that it is being swallowed by Python. Why learn R when Python does it all and is the superstar language of the moment? This is true, but the overhead of learning Python just to do data science is quite large. Python isn't naturally a data language - you have to learn it and then pick a module to get the work done. R is a dedicated data language and comes packed with most things you need to do basic data processing. Yes, you have to use some packages to get things done, but in the main these are easy to find out about and use. So if you are a wannabe programmer doing some data science then pick Python. If you are a wannabe data scientist then use R instead. It's another niche language and I don't think R is going anywhere soon. The final language of our five is probably predictable - Perl. This was the big scripting language of a few years ago. If you have encountered it you will know that it is powerful and mystifying in equal proportions. Write a one-line script in "good" Perl style and it will do the work of hundreds of lines of Bash, or whatever, but take your mind of it for five seconds and you won't understand it when you look back. Perl is wonderful for enthusiasts, but the split into the all new Perl 6 and alternatives for many of the tasks that Perl was a natural have taken a toll. Many think that Perl 5 is a dead end and Perl 6 isn't going to take off and replace it. Both are active languages but would you advise a beginner to learn either Perl? Yes, I think Perl is on its way to being a curiosity - much the same as the way old programmers gather in bars to talk of the days when APL had its own keyboard. So I've rejected two Dices recommendations for soon-to-be-dead languages - the least I can do is offer replacements. One short term - VB.NET, and one longer term - Go. Why? Just code smells... More Information5 Programming Languages That Are Probably Doomed Related ArticlesC++ Experiences Comeback In TIOBE Index Kotlin Enters RedMonk's Top 20 Language Ranking Almost Unchanged Over Time RedMonk Rankings Reveal The Languages We Love Redmonk Language Rankings January 2017 TIOBE Index - Top 10 Languages Slump To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.
Comments
or email your comment to: comments@i-programmer.info |
Last Updated ( Wednesday, 07 August 2019 ) |