Python 3 can revive Python
21–30 of 242 posts
Re: Python 3 can revive Python
#22But I can not imagine the languages, which are all this, to spread so nice and readable from command line scripts to scientific computing to big server applications.
Python's use cases will not go anywhere, so don't panic: Python is doing just fine and improving in many areas while holding on to its core values.
Re: Python 3 can revive Python
#23I have seen neither evidence that python is "dieing" in any way, nor that people are dropping it because it lacks radical new feature X. Things may be more competitive now but I don't see any stagnation in the community - and that's always been one of python's strongest points.
Re: Python 3 can revive Python
#24https://news.ycombinator.com/item?id=7801004
Besides what already was said. It is also important to emphasize that Python 2 is already pretty good. So it is not that Python 3 is bad, it is just that it is very hard to improve on 2.
Ironing out the warts is good, but this was not the right time. This should have happened 7-10 years ago.
Nowadays I can't imagine a lot of people discounting Python because of the print statement, unicode support, division rules, or lack of yield from statement.
It will be performance, concurrency, ability to create web back-ends, installing packages, testing frameworks, IDE support.
Apart from allowing optional type annotation syntax I just don't see Python 3 providing a good enough carrot to force many projects to switch to it.
Imagine you go to a manger and tell him. "Oh this 800K line project we have in Python 2 will be ported to Python 3, can we have 1 month to do that?". Ok then the manager might say "Well we have these features to implement but if you all say so. But what will we gain by it, to offset the time spent (opportunity cost) and risk of breakages". And if the answer if "oh you know print is not a statement anymore, and many dictionary and sequence methods are not iterators not returning values, and this new Twisted-like async library...' Well you can imagine many a manager might just say "well that is just not enough".
If in turn the dev team came back said "Oh yeah they integrated PyPy, STM module, requests module. Static type checking via annotations, 3x speed improvement, no more GIL so can do some CPU intensive work if need to.". I can easily see this proverbial manager OK-ing that.
Re: Python 3 can revive Python
#25Python is not dying and if so, Go would not be the reason why. Sure, Python is not functional, not compiled, not mobile, not Rails and not in the browser. But I can not imagine the languages, which are all this, to spread so nice and readable from command line scripts to scientific computing to big server applications. Python's use cases will not go anywhere, so don't panic: Python is doing just fine and improving in…
On that topic, I'd spend a day writing cobol or C++98 if I could get QML + Python in browsers. Python as a script/python, and QML as a uri schema (ie, http://foobar.com/baconwitch.qml)
Re: Python 3 can revive Python
#26Python 3 isn't really good. It's not really bad, either. There's really not that many magic bullets (other than proper functional programming, maybe, which isn't about to happen in Python). People are leaving Python for Go because people have always left Python for fast compiled languages. Google ditched Python for C++ and Java. Java! I've seen a lot of projects get re-written in Java from Python, but no-one worried…
We just have to get a bit more daring; check out:
http://research.microsoft.com/pubs/211297/managedtime.pdf
Note the resemblance to Python, it's not an accident.
Re: Python 3 can revive Python
#27Re: Python 3 can revive Python
#28The people I know who use Python, including myself, range from utter beginners to experienced programmers, but are using a relatively small subset of the available libraries, and are just using whichever version we started with. I could translate my code to version 3 in a heartbeat, but have no particular reason to do so. I've translated some of my most important stuff from BASIC to Python after all.
Professional developers will do whatever is right for their projects.
My concern would be for the folks who develop and maintain the libraries -- for whose generosity I'm grateful. If there were some sort of consensus on the direction of Python, I'd hop on the bus just to make life easier for those developers. Their time would be better spent adding useful features or just combing the code for bugs, than coping with multiple Python versions.
Could a single Python interpreter somehow manage a mixture of 2 and 3 code?
Re: Python 3 can revive Python
#29Python is not dying and if so, Go would not be the reason why. Sure, Python is not functional, not compiled, not mobile, not Rails and not in the browser. But I can not imagine the languages, which are all this, to spread so nice and readable from command line scripts to scientific computing to big server applications. Python's use cases will not go anywhere, so don't panic: Python is doing just fine and improving in…
It is a death by multiple paper cuts. Go is just one of the cuts.
Besides Go (and others have mentioned so I am just repeating them). There is Node.js (Javascript), Rust, Dart, Clojure, Julia, C++11, Java (due to Python never making it far on Android). Not one is enough to eat Python's lunch as they say, but they all are taking a little nibble and soon enough Python stays hungry.
Another aspect is that there are multiple forms of deaths. It doesn't have to be an abrupt and dramatic death. But I am afraid it will eventually become like PERL. Still there, still usable, still jobs for it, but not many articles about it. Not much innovation. Not many new developers considering it as an option. It will just be a decline of sorts.
My personal view is also that once someone (or a team) seats down and thinks about cleaning up and doing a re-factoring, of their code, maybe in hopes to move to Python 3, they will be looking at other platforms, and languages as well.
Re: Python 3 can revive Python
#30One pain point I've really felt recently with Python is in the deploy step. pip installing dependencies with a requirements.txt file seems to be the recommended way, but it's far from easy. Many dependencies (such as PyTables) don't install their own dependencies automatically, so you are left with a fragile one-by-one process for getting library code in place. It was all fine once I got it worked out but it would so…