That is interesting! I knew Python was hot, but I didnât know it was going to be this at all. I havenât looked through the methodology in great detail yet. Too many words without pictures, so I got bored. But, it does seem a bit different than StackOverflowâs results from their survey: https://insights.stackoverflow.com/survey/2018/#most-popular-technologies
Aww ⌠I was ready to dust off my old hard drive.
I believe stack overflow used a survey, right? While the posted article tried to analyze trends from a bunch of different sources. I would say that asking people directly would provide a better insight into these things, especially as far as something like âpopularityâ goes, but I think the other data is interesting as well.
My problem with trends is that it can skew different ways depending on other factors. For example a less used programming language may be seen more popular because its also a more difficult language to learn. As a more difficult language, youâre going to have people searching for it more. Then again whatâs surprising is that Python is at the top of their lists - not a language I would necessarily call difficult. Of course theyâre saying HTML is #9 in web rankings which seems a little odd to me, but again, probably a consequence of that methodology.
Does anyone know why Python is picking up steam all of a sudden? For example Rails put some momentum behind Ruby for a while. Is there something similar behind the Python popularity? Is it big data? And what about big data lends itself to Python? Wouldnât you want something more low level/performant for that kind of stuff?
Itâs the default/easy language binding for âbig dataâ or data science environments like Spark and Databricks, and the default/easy binding for machine learning technologies like Turi Create and TensorFlow.
Performance-wise, the Python bindings are either FFI wrappers over C/C++, or serve as metaprogramming libraries that do codegen for distributed systems.
By metaprogramming, I mean that your sequence of map
s and filter
s and reduce
es usually arenât operating on your actual datasets, theyâre just serializing a description of what your Python script did, then running that code in a different language on other remote machines, then giving you a promise back that lets you do more meta-work on the results. But it looks like normal code more-or-less.
That makes sense. Thanks!
I wish I learned Python instead of smelly R.
Another reason for Pythonâs increasing popularity may be seen in Râs small decline. R peaked at No. 5 in 2016, dropped to No. 6 last year, and is now in seventh place.
Iâm sorry.
Additionally, Python is embedded in several softwares that cater to 3D modelling, and is used as a scripting language to interface with it (for instance, generate different geometries that donât necessarily come prepackaged for you).
I personally sketch ideas in python, itâs just easier to do and I find it discouraging to write verbose code if Iâm still struggling with an idea. I eventually translate/port it to Java/GLSL for real-time speed.
Itâs never too late!
Itâs a little late as I have other priorities at the moment. Maybe someday.
If someday comes and you needed something Google couldnât provide, you can drop me a line.
Thanks!
Coincidentally, this post was bumped by spam at the same time as I wrote my first Python script.
How did that work out for you?
The documentation for the package I was trying to use is horrendously poor, so it was kind of frustrating. But it worked out in the end.
Why canât there just be one language that you can use for everything? And why canât that language be ActionScript?
I used to think about this a lot more than I do now, but thereâs a sentiment from a research paper that still sorta makes sense to me now:
Linguists recognize something above syntax and semantics, what they call pragmatics, which addresses the more abstract social and cognitive functions of language: situations, speakers and hearers, discourse, goals and uses, and performance. We are entering an era of comparative programming language study in which the issues are higher level, social, and cognitive.