Live data from Hacker News

Ask HN: Is Python dying?

news.ycombinator.com

351–360 of 369 posts

Re: Ask HN: Is Python dying?

#351
post #36

http://www.simplyhired.com/search?q=python Showing 1-10 of 169,970 Python jobs http://www.simplyhired.com/search?q=ruby Showing 1-10 of 128,305 Ruby jobs http://www.simplyhired.com/search?q=java Showing 1-10 of 190,126 Java jobs http://www.simplyhired.com/search?q=golang Showing 1-10 of 219 Golang jobs http://www.simplyhired.com/search?q=julia Showing 1-10 of 206 Julia jobs http://www.simplyhired.com/search?q=%22pyth…

Keep in mind that scripting languages are often mentioned in job postings as secondary skills. There are TONS of "Java/C++ developer, would be nice if you knew some Python or Ruby" which get counted as "Python jobs" when you do something like this.

And if you look at Rails vs Django, while some say Ruby is dying, the job market is definitely in Ruby's favor in the webspace. The thing is even posting this generates more hype for Python, even though it was researched rather unscientifically. It's marketing.

Re: Ask HN: Is Python dying?

#352

Earlier quoted context omitted.

Well I don't think functional languages are something new and by reading the latest death and doom I'd wonder how we ever got this far and why suddenly it's so much harder to do concurrency. I confess that I don't write low level software for lunar modules but just the regular enterprise stuff and having worked with high level concurrent constructs like ConcurrentHashMap, LinkedBlockingQueue, RingBuffers on the jvm I…

Most of the bugs I see in the wild are of the "runaway state" variety; in other words, a state the programmer(s) involved forgot to imagine might happen. This class of bugs includes EVERY bug or crash that is fixed by a restart of an app or system (because all that does is reset state to a "known" a.k.a. "modeled" state, bringing it back within the code's, i.e. programmer's understanding). Therefore, anything (whethe…

I'm going more pragmatic and I think most of the bugs were/ are NullPointerException the kind that today's IDE(due to their maturity of working for years and years with the language) can now even warn you about, compared to obscure ones that force you to do resets. On the other hand I don't see why the concepts of immutable values cannot be adopted in OOP languages. There is http://javaslang.com/ and immutable collections were long time present in Guava library. Sure immutability might not be enforceable in the language itself but you can do it. Java8 has streams for a functional approach to collections. Hell you can even use Akka if you cannot do without an actor framework in java.

But suggesting we need to start from scratch with new untested 3rd party libraries(that other people take for granted) and rewriting some of them. Even the simpler stuff like suffering the quirks of the extra tooling(build tools, IDEs) for a new language and all because of the death and doom we are supposedly seeing today(which I dont and I've yet to see people doing nightly restarts of web servers for some years). Unless you do consultancy for that language(or are seeking employment in a niche market) I think it's a little mad.

For me to declare the defeat of OOP and win of a FP language I first need to hear the voice of people having to do maintenance work on legacy code in that language as I'm too old to only believe there is such a thing as panaceea or there are only upsides to an alternative.

Re: Ask HN: Is Python dying?

#353
post #332

Earlier quoted context omitted.

Interesting. What's the size / overhead of a Docker container? Not familiar with it, though know what it is, and that it is smaller than a complete VM.

It depends on the Linux distribution you use. Using Alpine Linux as a base can keep the overhead as low as a few megabytes.

Got it, thanks.

Re: Ask HN: Is Python dying?

#354

Earlier quoted context omitted.

What's wrong with `''.join()`? It's fine as is, I think, same logic as '{}'.format().

Re. join, I think Perl got that one right: `join(glue, pieces)`. `','.join(pieces)` just seems unnecessarily weird, and present simply for OO's sake. Not everything needs to be some object's method.

Yes but then you can map things more easily without having to create partials, and it's consistent with how all other methods work in Python (e.g. format method)

    >>> phrases = [['a', 'b', 'c'], ['d', 'e']]
    >>> print(list(map('-'.join, phrases)))
    ['a-b-c', 'd-e']

Re: Ask HN: Is Python dying?

#355
post #237

Earlier quoted context omitted.

I'm not sure that's true. My objection to 3 was it did nothing for me. All I got out of it was work dumped in my lap just so my code would continue running. Giving us a GIL-less pypy with jvm-scale performance would be worth a lot of hassle.

> My objection to 3 was it did nothing for me...Giving us a GIL-less pypy with jvm-scale performance would be worth a lot of hassle. worth a lot of hassle to you . I imagine there are people who wouldn't find it worth the hassle. e.g. people who use python as a glue language where it's not close to being near the performance bottleneck - breaking the language to make it 'faster' would do nothing for them.

the people using it for glue code really won't be upgrading their version anytime soon. My team uses python in production and we are still on 2.6

Re: Ask HN: Is Python dying?

#356

Earlier quoted context omitted.

My prediction is that one day some alternative Python interpreter (Stackless, or GIL-less, or which compiles ahead of time to machine code, or something like that) will go from being merely an interesting concept to a dominant runtime. Python is such an excellent language, and it only has a small handful of elements holding it back from being even better. I feel like eventually something has to give, and either there…

Would it be possible to port it to the erlang-vm?

The Async stuff, generators & yields surely. Maybe even yield from.

One obstacle is that Python code is often not recursive nor makes use of pattern matching.

So it all depends on what kind of Python you want to port.

Re: Ask HN: Is Python dying?

#357
post #292
post #291

Earlier quoted context omitted.

Old style classes. No way to subclass built-in types. No metaclasses.

Sure, but non of those things made it a bad language, or where really unreasonable things to have left out.

There is a big difference between unreasonable and bad.

Python was always a good language because it was basically the same pseudocode we all scribbled on blackboards anyway -- with the added advantage that computers could execute it.

I just found 1.x to be unreasonable. I also find 3.x unreasonable for unreasonable reasons.

Re: Ask HN: Is Python dying?

#358

Yes, Python is dying, that's why it just moved up in the Tiobe rankings to #5, displacing PHP (which obviously no one ever uses): http://www.tiobe.com/index.php/content/paperinfo/tpci/index.... It's dominance of science is why Python has 25% science talks this year at PyCon, and why we see articles like: http://www.infoworld.com/article/3012442/application-develop... But yes, if you didn't know any languages, then of…

Python is dying the same way Apple is dying. Only to people addicted to the new and the exciting.

The snag with that is that once I really digged into them, I found Python (and Ruby) just as exciting as the new stuff (Go, JS on Node). So back I went. Same experience with Apple.

Re: Ask HN: Is Python dying?

#359

Earlier quoted context omitted.

My prediction is that one day some alternative Python interpreter (Stackless, or GIL-less, or which compiles ahead of time to machine code, or something like that) will go from being merely an interesting concept to a dominant runtime. Python is such an excellent language, and it only has a small handful of elements holding it back from being even better. I feel like eventually something has to give, and either there…

Object-oriented languages are Dead Men Walking due to the problem of global mutable state management in any medium- to large-sized codebase, coupled with dependency/inheritance hell, leading to complexity hell, leading to geometric progression of tech debt. Compounding this is the lack of good unit test suites across the board, meaning that even if you write absolutely perfectly tested and maintainable Python (or Rub…

This either or thinking is not very productive. FP existed before OOP, it's hardly reasonable to think it will replace it.
Post reply on HN