top | item 14394299

Ask HN: Why is Python popularity rising?

14 points| galfarragem | 8 years ago | reply

The other day I saw a chart where Python popularity seems to be rising a lot. Is it because of machine learning?

https://insights.stackoverflow.com/trends?tags=python%2Cjavascript

11 comments

order
[+] joeclark77|8 years ago|reply
It's easy for beginners to learn programming, and it doesn't necessarily ever reach a performance bottleneck where you outgrow it and need something different. Python has libraries for practically everything, so you can use it for everything from coding a web app, to automating server administration tasks, to statistical analyis and data graphics, to orchestrating a MapReduce job on a cluster, so you also never really come to a task that forces you to choose a new language.

Therefore, even if other languages are better for certain tasks, the Python programmer is rarely ever forced to go looking for them.

[+] aprdm|8 years ago|reply
Why wouldn't it be rising?

From my perspective, I used to work with embedded systems and we used python from ARM processors to automating tests of embedded systems.

Now I use it to build microservices, to do machine learning... It seems that it's used from A to Z.

Python 3.x has interesting features regarding async io which some say perform better than node.

It's a solid proven language.

[+] CarolineW|8 years ago|reply
It has its wrinkles, absolutely, but in general it's clean, consistent, and even beginners tend to write code that's clear.

There's very little syntactic noise, very few mysterious incantations, the easy is easy, the difficult isn't so bad, and it stays out of the way of the expert and just lets you get on with it.

You can program in OO style, FP style, and where it's appropriate, imperative style. It comes with libraries that cover almost everything you need (although that's where many, many wrinkles can be found).

And when you need speed, it plays nicely with other languages, is easily extended, and can be compiled to run on the metal.

Yes, it has its problems, but the above list is why Python is my "go to" language for play, experiments, and in some cases, deployable packages.

[+] fiedzia|8 years ago|reply
Machine learning and programming education in general.
[+] ern0|8 years ago|reply
It seems very tiny issue, but what I can write 5 lines in other languages (from PHP to CPP), it's only 2 lines in Python. I am writing my tools in Python, and there are lot of 1-line methods.
[+] almostkorean|8 years ago|reply
I just attended Pycon and the keynote was about why Python is an effective tool for science. I recommend watching the video, Jake is an astronomer and gave a great presentation: https://www.youtube.com/watch?v=ZyjCqQEUa8o

His four main points were (I'm stealing this directly from his slides):

1. Interoperability with other languages

2. "Batteries Included" + third-party modules

3. Simplicity and dynamic nature

4. Open ethos well-fit to science

[+] insulanian|8 years ago|reply
Besides simplicity, IMO being opinionated matters a lot. People don't like choices when starting to learn the language.
[+] smt88|8 years ago|reply
It's increasing use in science/statistics is probably helpful. I know data scientists, lab scientists, an economist, and people in finance who only know Python and haven't considered learning anything else (including R).
[+] adamb_|8 years ago|reply
I heard a lot of computer science departments started picking it as the introductory programming language a few years ago.