Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

>and if you're starting a brand new Django project there's no reason on earth you should choose Python 2 anymore.

How about millions of lines of code in your company in Python 2, and several Python 2 based services and websites?

Why on earth will you go to Python 3 at huge rewriting costs? To get some fancy syntactic sugar and improved unicode?



>> and if you're starting a brand new Django project there's no reason on earth you should choose Python 2 anymore. > Why on earth will you go to Python 3 at huge rewriting costs?

If you're starting a brand new Django project you're not rewriting anything. If you're rewriting something, it's not really new.

My company is a Django shop and while we have no intention of upgrading Python 2.x codebases to 3, we do start all our new projects on Python 3. It just doesn't make sense not to do it.


Why can't your Python 2 services talk to your Python 3 web app?


Why should I maintain code, servers and libs in 2 versions of a backend programming language?


Then don't. Stick with Python 2 and accept that means you're going to stop getting work done for you for free in 3 years time.


Because one is essentially EOL?


Well, I'm for user driven EOL, as opposed to top-down, we-know-better EOLining.

And the latter doesn't work so well thus far for Python 3.


If enough people like Python 2 that much, I guess someone else can take over maintaining and developing this language version past the official EOL date.


Like Guido's employer, for example. (see pyston)


I think you see this argument used a lot when it comes to Python 3 about it not working so well. I don't see the maintainers changing their minds about EOL on python 2 so either switch to Python 3 or to another language. There is so much toxicity around the Python community because of people thinking they are entitled to have everyone still support Python 2.


Because it is and always has been a sensible middle ground between rewriting everything for every release and never upgrading.


Why do you have to rewrite all the code in your company if you are starting a brand new Django project? Seemingly the brand new means it is separate from currently existing projects.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: