I have written several posts regarding job trends in programming languages. However, I have not really written any posts that looked towards the future of programming languages. With job trends, I have been focusing on more heavily adopted languages. In this case, I wanted to look at some other languages that are gaining popularity but have not really become one of the top languages to use. Part of this analysis uses the Tiobe December 2010 rankings, some from ReadWriteWeb’s recent programming languages post (based on this Dataists post), and the rest comes from the job trends that are included. Two languages from the normal job trends posts that will continue to see solid growth and deem mentioning are Objective-C and Python. Obviously, with the growing Apple ecosystem, Objective-C continues to grow. Python is being used in data analysis, which is growing rapidly, as was mentioned in my recent post on some O’Reilly data.
I have not split these languages into any particular type, like traditional and scripting, because I wanted to look at everything together. Some of the jobs data is difficult to include because of the amount of noise from other industries. Go and R have a lot of noise in particular and are not included in the graphs. However, they are included due to their origin (Google) and usage (Data Analysis) respectively. First, let’s look at the languages themselves ordered by Tiobe rank (Tiobe ranking and RWW & Dataist Tier included) :
- Go (Tiobe: 21 , Tier: 4)
- R (Tiobe: 26, Tier:3)
- Lua (Tiobe: 27, Tier:3)
- Scheme (Tiobe: 29, Tier:3)
- ActionScript (Tiobe: 37, Tier:2)
- Erlang (Tiobe: 49, Tier:3)
- Groovy (Tiobe: 50-100, Tier: 3)
- Scala (Tiobe: 50-100, Tier:2)
- Clojure (Tiobe: 100+, Tier:3)
Interestingly enough, there does not seem to be a correlation between the Tiobe rank and the Dataist Tier. If anything, it almost looks like a reverse correlation, but I am going to ignore correlation for now. So, how does the ranking data compare to the job demand data?
First, let’s look at the job trends from Indeed.com:
As we have seen in other job trends posts, SimplyHired focuses on short term trends:
Both graphs show ActionScript with more jobs but a fairly poor trend. Scheme has been growing slowly and has seen more recent interest. Groovy has been growing nicely, but not showing a really strong trend. The others have limited data, so there is not much we can see of the trends.
The job trend graph that could be more useful in this case is the relative growth from Indeed:
The relative growth is my favorite trend graph because it shows the rapidity of change. So in our case it can show which languages may be prepared for a breakout year. The two obvious trends are Lua’s strong growth and the explosion of Clojure in the past 18 months. Other notable trends are the growth of Erlang, Groovy and Scala. Scheme and ActionScript have fairly flat trends here.
So, I have presented a good amount of data, but I have not really said anything specific. All 9 languages should be watched in the next year as they all have some interesting level of activity in one area or another. Google searches, GitHub projects, StackOverflow questions and job trends are all flawed in some way. But if you look at them together, they present an interesting picture of what programming languages are really seeing activity or adoption. Without further ado, here is my ranking of what programming languages watch in the next year:
- Lua – The language is seeing some good activity on GitHub and StackOverflow. It has a solid Tiobe ranking, but more importantly, jobs for Lua are becoming available. The relative trend for Lua is a great indicator that it is ready to go mainstream.
- R – With data analysis and big data becoming a part of every web startup, languages catering to the data crowd will become popular. The job trend data will be the most interesting part to watch here.
- Clojure – While not popular within the Tiobe index, it is popular in some programming circles. In particular, its job trend growth is showing that it could be posed for a big year of adoption.
- Go – Only Tiobe really shows this as a popular language. It is not ranked well in the Dataist Tier, and job trends are not very reliable yet. However, with a parent of Google it may not need purely organic growth.
- Erlang – This has been around for a few years and has decent trends all around. With the continued growth of real-time technologies like XMPP (eJabberd specifically), PubSubHubbub and others, 2011 could be a year where it becomes the next Python.
- Scala – This is one of the interesting trends. Scala has a very good showing in the Dataist Tier, but is not really ranked in the Tiobe index. With the solid job growth trends and popular adopters (i.e. Twitter), Scala could gain a serious amount of acceptance.
- Groovy – More than anything, I believe Groovy missed its window of opportunity. It is a solid scripting language with decent job growth trends, but how can it differentiate itself from Ruby, Python, Erlang and Scala?
- Scheme – For whatever reason, this language refuses to go away and has even picked up some interest. Without decent job growth, we could be another year away from Scheme breaking out again, at least 30 years after it broke out the first time.
- ActionScript – ActionScript is included in this list because of its high ranking on Tiobe and the Dataist Tier. However, the job trends do not point to good things for the language. It could be a temporary slump, so you should keep an eye on it next year.
I know people will have lots of comments on this, but specifically I am looking for other languages that may be gaining popularity. Let me know what I missed in the comments.
UPDATE: This article is translated to Serbo-Croatian language by WHGeeks.
15 thoughts on “9 Programming Languages To Watch In 2011”
[…] This post was mentioned on Twitter by Rob Diana and RegularGeek, twitips MV. twitips MV said: 9 Programming Languages To Watch In 2011: I have written several posts regarding job trends in programming langu… http://bit.ly/gcJBxL […]
[…] So, what “Dynamic Programming Language” refers to and does it … 9 Programming Languages To Watch In 2011 | Regular Geek – regulargeek.com 12/11/2010 I have written several posts regarding job trends in programming […]
Groovy differentiates itself based on Ecosystem and Interoperability. Yes, all languages have some sort of ecosystem and some sort of interoperability. But IMO Groovy is the leader for the tools that I need to use at work. There is room for all languages, and I am bashing no one here. But the groovy learning curve for Java developers has always been it’s major advantage.
It is funny that you say “Groovy is the leader for the tools that I need to use at work”. That is the situation I am currently in. However, we also have people using Ruby and Python because they feel they are easier to use. Groovy does not seem to be talked about as much as the others either. Lately, I have been getting the feeling that Groovy has been getting overlooked primarily because of its close resemblance to Java. I am not saying Groovy is dead, but I am wondering if it is only going to become the scripting language for Java.
I am personally interested in Erlang, Lua, Clojure and Groovy but I need to say that at least in my experience business has come through Java and Groovy. I have spent the last 10 years developing Java based applications and in the last couple of years I have incorporated Groovy as well. I find great acceptance of such language in companies that are already using JSE and JEE. In several cases Groovy has been even adopted by operation teams as a scripting language. Such teams have no or little experience with Java but need the benefit of the JSE and JEE infrastructure and libraries deployed.
I must admit that my experience has been the opposite. Operations and administration have been moving to python or ruby. Granted, this is just my experience, and I actually hope I am wrong about Groovy. I am using it most days, but I will be learning more python and ruby this year because of external forces.
You should actually look at some of those job listings – particularily the ones regarding “Scheme” often do not have anything to do with the language. I guess that the number of actual scheme jobs is far lower than shown.
I thought I did look at some of the job listings for the languages, because there is a lot of noise in some cases. I must have missed some of that with Scheme as there is a decent amount of noise there as well.
[…] Programming Languages in 2011: Go, R, Lua, Scheme, ActionScript, Erlang, Groovy, Scala, Clojure (here, via @grammarware) — This article tries to parse the different job demand data available to […]
[…] via Twitter, um link bem interessante sobre quais linguagens de programação nós devemos aprender em 2011. A lista incluia Scala, Erlang e Lua, entre outras, cada uma com uma bela justificativa sobre por […]
[…] 原文链接：https://regulargeek.com/2010/12/11/9-programming-languages-to-watch-in-2011/ […]
[…] 原文链接：https://regulargeek.com/2010/12/11/9-programming-languages-to-watch-in-2011/ […]
You forget Ruby.
I purposely omitted more mainstream languages like Ruby, Python and Objective-C because of the amount of adoption they already have. This post was trying to determine what languages may have a breakout year.
And i am just on PHP basic right now, 😦
boy do i have a LONG LONG way to those!
Comments are closed.