Live data from Hacker News

Ask HN: Is Python dying?

news.ycombinator.com

81–90 of 369 posts

Re: Ask HN: Is Python dying?

#82

Earlier quoted context omitted.

Be aware that PyPI isn't a great way to get accurate statistics. One of the reasons is when tox tests via a matrix, Python 2.7 is usually the first python listed, and if it fails then Python > 3 will not be tested. Also, it'll reuse libraries from the pip download cache. I don't doubt that python 2.7 accounts for the majority of the downloads, but I sincerely doubt 2.7 usage is at ~85%. 2.6 usage is probably almost e…

Also it's important to remember that system-wide packages get installed once, while pypi stuff will get redownloaded a lot. It means that for example users of recent arch, ubuntu and other distros which install python3 by default are more likely to have some of the dependencies already there, while anyone installing just python2 base package will download deps from pypi. Also pip itself got upgraded to use caching by…

Debian Popcon is interesting too, but don't rely on it either: https://qa.debian.org/popcon-graph.php?packages=python3.4%2C...

Re: Ask HN: Is Python dying?

#83
There's projects where you're trying something new, and there's projects where you're trying to get something done. I recommend keeping the two separate, and for the second type using whatever you feel most productive with. Mixing the two just increases the risk of your project for no real benefit.

Re: Ask HN: Is Python dying?

#84
post #48

In case of Go, it is a dead baby, the language and the tooling suffer from dogmatism and inflexibility. Python is stable and good now, it does not need to change that much. Thus, those who mix up version numbers with stock prices and become happy when they increase switch away and complain. Ignore them.

>the language and the tooling suffer from dogmatism and inflexibility

The inflexibility and dogmatism of the language is its biggest strength, lending it to create universally readable codebases that any Go programmer can pick up and be productive with.

The tooling has never stopped improving, and Go 1.6 is going to make the VENDOREXPERIMENT an official, supported part of the language.

Plus the real reason why backend devs are abandoning Python for Go is a numbers game that Python, short of PyPy pulling a miracle, will never even hope to compete against.

Re: Ask HN: Is Python dying?

#85
> Go for systems and backend

Certain sorts of systems and certain sorts of backends maybe. There is a reason people prefer dynamic languages for web based backends for example - the amount of text mangling and arbitrary data structure manipulation becomes a serious headache in a compiled language, be it Go, C/C++ or what-have-you.

I work on a large system written entirely in Python -we've considered introducing Go to speed up certain processes, but Python will remain the foundation for the foreseeable future.

Re: Ask HN: Is Python dying?

#86
All the interns we've recently interviewed all have Java and Python skills so neither language is dying in any sense of the word. In fact I would probably say that those (plus Javascript) are probably the languages new programmers are learning first.

Both languages are however going through transition periods, with Python the 2.x to 3.x migration is still dragging on and shows no sign of ending. Java is in a period of libraries rebasing themselves around Java 8 and Java 9 will similarly be a disruptive release once project Jigsaw finally lands. But both languages will continue to be around for a long time.

Re: Ask HN: Is Python dying?

#87
post #54
post #39

Earlier quoted context omitted.

At my work we recently needed to hire a developer. We gave them all a very basic problem to solve and told them "use any language, use any libraries". The idea was to get a feel for their coding style - do they comment their code, is their logic something the rest of the team could follow, will they address unmentioned issues, will they press for clearer requirements, etc. A few notable solutions: 1) The C guy. Damn…

One of my favorite pieces of code I've written is a 150 line Python script I made to solve a really ugly text processing problem. I have tried to use it as a code sample when talking to potential employers, but it backfires because it makes the original problem look so simple that they wonder why I bothered to send it.

If it's any consolation, Peter Norvig's Sudoku solver seems so readable on the surface that I've fallen into the trap of thinking it looks easy, or that I fully get it. :)

0: http://norvig.com/sudoku.html

Re: Ask HN: Is Python dying?

#88
post #5

That may be a view through the distorted HN lenses. Spend some time on Lambda the Ultimate and you'll think imperative programming is dying. Go is new and has lots of issues. It's annoying on many fronts and badly needs improvements in packaging area. It's good for some things and worse for others. JS is for frontend, because it's the only supported language. (although there are python-to-js compilers available if yo…

Next year has always been the year that functional programming will take over the world. It's been like that since I started programming in the early 90s. While functional concepts have leaked into imperative languages, Haskell is the only pure functional language that so far has come close to breaking out although Lisp has also gotten close a few times.

(see also next year will be the year of Linux on Desktop)

Re: Ask HN: Is Python dying?

#89

Not only is Python not dying, but it's stronger than it's ever been. The majority of top colleges are now teaching CS using Python. It's completely dominant in academia, finance, and startups. It has the best libraries and documentation of any language. And Django has arguably the strongest community of any open source project period. That's not to say there are zero problems, but Python is so much better than all th…

Agreed. It's much easier to hire for Python skills today than it was even 2-3 years ago.

While Python may be 'under assault' from a conceptual point of view, the job market would beg to differ!

Re: Ask HN: Is Python dying?

#90

Earlier quoted context omitted.

Be aware that PyPI isn't a great way to get accurate statistics. One of the reasons is when tox tests via a matrix, Python 2.7 is usually the first python listed, and if it fails then Python > 3 will not be tested. Also, it'll reuse libraries from the pip download cache. I don't doubt that python 2.7 accounts for the majority of the downloads, but I sincerely doubt 2.7 usage is at ~85%. 2.6 usage is probably almost e…

Be aware that PyPI isn't a great way to get accurate statistics. You can't just ignore a bunch of statistics because they aren't convenient to you; that's not how maths works. Statistical sampling is based on the premise that your sample is randomized from the total population; I would argue that the stats from pypi represent a reasonable random sample of python users around the world. Certainly, you can argue otherw…

GP has argued otherwise. PyPI sampling is not random. It is heavily influenced by automatic downloads and such and completely ignores that most simple 2.x libs / non-3.3-tagged libs will work just fine on python 3.

In other words, it is neither random nor representative of python 3 usage, failing the premise you yourself mentioned.

There's no easy way to determine Python 3 usage overall. Your best bet is to go around polling companies of all sizes as well as indie devs. What you will find is that:

1. Some amount of people still use Python 2.x because they don't know any better

2. Some amount of people want to use 3.x, but still use Python 2.x because of incompatible dependencies.

3. Some amount of people (companies mostly) still use Python 2.x because a migration to 3.x is currently too costly.

1 -> This is partly caused by FUD. Hating on Python 3 has become a popular past time of people who don't know how to be productive otherwise. It's also caused by the very high amount of tutorials etc around the web that "require" 2.x because, for example, they have an unparenthesized print call (relevant XKCD: 353). Arguably this is one of the big failures of the 3.x push.

2 -> That number is constantly diminishing as more dependencies become available on 3.x. The most recent big win is Scrapy, a massively popular scraping framework, which just finished its 3.x port a couple weeks ago. It's an ongoing process - we are in a much better state than we used to be, the Py3WOS is looking almost entirely green.

3 -> This number is mostly irrelevant as it tends to be in closed ecosystems. So maybe CloudShareBuzzr Inc. is using Python 2.7 internally, but they don't produce anything open source so it doesn't affect the rest of the ecosystem. As new, major features are constantly added to Python 3.x (venv in 3.3, pip in 3.4, async def in 3.5), eventually the cost of switching will be worth it.

Post reply on HN