Has programming really changed in the last decade? One way to answer this is by looking at Google searches. Changes in search queries is hopefully a meaningful proxy for the underlying popularity (but not necessarily influence!) of a tool. For example, using Google’s Trends tool, we can look at how frontend web development has changed by comparing frameworks (query):
A few notes on how to interpret this graph.
The graph above indicates that jQuery was hugely dominant in frontend web development for a long time, but has slowly died off with the rise of other frameworks. We can see the relative proportions today by zooming in to the last two years:
Neat, right? Try doing some searches yourself! Here’s the first example again if you want to play around using my configuration: https://trends.google.com/trends/explore?cat=31&date=all&geo=US&q=jquery,react,backbone,angular,vue
Let’s dive into some other application areas.
Rails is dominant for a while. Django and Flask still far from the mainstream, apparently, although “Node.js” is a little general as a query.
A uniquely last-decade trend. WebGL, Emscripten, and Asm.js kicked off the high-performance web trend, and WebAssembly has started to pick up steam.
Android and iOS are still neck-and-neck, although popularity has dimmed over the last decade.
Flash has been slain at the hands of Steve Jobs. He published his famous “Thoughts on Flash” letter almost exactly a decade ago. Unity and Unreal have filled the void (or maybe Roblox and Minecraft have?).
Another last-decade trend is the overall rise of the data scientist. Correspondingly, their faithful tools have gained popularity: Jupyter, numpy, and pandas all rose with numpy at the top.
The inscrutable Matplotlib leads the data visualization trend, but maybe it just generates more search traffic because it’s hard to use?
While it feels ubiquitous today, even cloud computing is really a last-decade trend. Amazon and Microsoft battle for first, while Google struggles below.
Hadoop passes the baton to Spark as it becomes the leading big data processor.
Machine learning frameworks are on the rise with the popularity of deep learning, with TensorFlow at the top, but falling precipitously. Scikit-learn was doing machine learning before it was cool.
The embedded computing platforms Raspberry Pi and Arduino both hit the big time at the beginning of the decade. Did you know that the Pi is the third best-selling general-purpose computing platform of all time?
The pre-college programming education landscape hasn’t changed significantly in terms of tools specialized to education (e.g. the shift to Python isn’t represnted here). Well, one notable change though…
Since there are existing metrics for tracking programming language popularity, we can look to those to see how PLs changed over the decade. The PYPL measures search interest for language tutorials. For example, the top 6 PLs by popularity:
Note that the graph uses a log-scale on the y-axis. The most notable trend here: Python grew from 3% of total search volume to 30% of total search volume. It wins the language of the decade award, hands down!
A few more comparisons:
C/C++ still hold dominant. Go moderately more popular than Rust.
Scientific computing languages
Matlab starts to die, R gets more popular but seems to plateau.
Look at the elbow on the Swift line!