Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #70232 > unrolled thread

Re: Martijn Faassen: The Call of Python 2.8

Started byPhil Dobbin <phildobbin@gmail.com>
First post2014-04-14 20:32 +0100
Last post2014-04-15 15:37 -0400
Articles 11 — 8 participants

Back to article view | Back to comp.lang.python

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: Martijn Faassen: The Call of Python 2.8 Phil Dobbin <phildobbin@gmail.com> - 2014-04-14 20:32 +0100
    Re: Martijn Faassen: The Call of Python 2.8 Mark H Harris <harrismh777@gmail.com> - 2014-04-15 13:32 -0500
      Re: Martijn Faassen: The Call of Python 2.8 Novocastrian_Nomad <gregory.j.baker@gmail.com> - 2014-04-15 12:37 -0700
        Re: Martijn Faassen: The Call of Python 2.8 Mark H Harris <harrismh777@gmail.com> - 2014-04-15 14:54 -0500
          Re: Martijn Faassen: The Call of Python 2.8 Terry Reedy <tjreedy@udel.edu> - 2014-04-15 17:02 -0400
            Re: Martijn Faassen: The Call of Python 2.8 Mark H Harris <harrismh777@gmail.com> - 2014-04-15 17:17 -0500
          Re: Martijn Faassen: The Call of Python 2.8 Ned Batchelder <ned@nedbatchelder.com> - 2014-04-15 17:03 -0400
          Re: Martijn Faassen: The Call of Python 2.8 Andrew Berg <aberg010@my.hennepintech.edu> - 2014-04-15 16:38 -0500
          Re: Martijn Faassen: The Call of Python 2.8 Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2014-04-16 02:51 +0000
            Re: Martijn Faassen: The Call of Python 2.8 Chris Angelico <rosuav@gmail.com> - 2014-04-16 16:14 +1000
      Re: Martijn Faassen: The Call of Python 2.8 Terry Reedy <tjreedy@udel.edu> - 2014-04-15 15:37 -0400

#70232 — Re: Martijn Faassen: The Call of Python 2.8

FromPhil Dobbin <phildobbin@gmail.com>
Date2014-04-14 20:32 +0100
SubjectRe: Martijn Faassen: The Call of Python 2.8
Message-ID<mailman.9259.1397504710.18130.python-list@python.org>
On 14/04/2014 13:56, Mark Lawrence wrote:

> http://blog.startifact.com/posts/the-call-of-python-28.html so in
> response to the last line, who *IS* going to do all of the required work?
> 

On a related note, Guido announced today that there will be no 2.8 &
that the eol for 2.7 will be 2020.

Cheers,

  Phil...

-- 
currently (ab)using
CentOS 6.5, Debian Squeeze & Wheezy, Fedora 19 & 20, OS X Snow Leopard,
RHEL 7, Ubuntu Precise & Saucy
GnuGPG Key : http://phildobbin.org/publickey.asc
Based in London, UK

[toc] | [next] | [standalone]


#70283

FromMark H Harris <harrismh777@gmail.com>
Date2014-04-15 13:32 -0500
Message-ID<lijtva$or1$1@speranza.aioe.org>
In reply to#70232
On 4/14/14 2:32 PM, Phil Dobbin wrote:
> On a related note, Guido announced today that there will be no 2.8 &
> that the eol for 2.7 will be 2020.
>

Can you site the announcement?

Thanks

[toc] | [prev] | [next] | [standalone]


#70292

FromNovocastrian_Nomad <gregory.j.baker@gmail.com>
Date2014-04-15 12:37 -0700
Message-ID<ee1d5f7d-efc5-4be2-9b41-a1e6118eb039@googlegroups.com>
In reply to#70283
On Tuesday, April 15, 2014 12:32:14 PM UTC-6, Mark H. Harris wrote:
> On 4/14/14 2:32 PM, Phil Dobbin wrote:
> > On a related note, Guido announced today that there will be no 2.8 &
> > that the eol for 2.7 will be 2020.
> >
>
> Can you site the announcement?
> 
> Thanks

http://hg.python.org/peps/rev/76d43e52d978?utm_content=buffer55d59&utm_medium=social&utm_source=facebook.com&utm_campaign=buffer

[toc] | [prev] | [next] | [standalone]


#70296

FromMark H Harris <harrismh777@gmail.com>
Date2014-04-15 14:54 -0500
Message-ID<lik2qa$640$1@speranza.aioe.org>
In reply to#70292
On 4/15/14 2:37 PM, Novocastrian_Nomad wrote:
> On Tuesday, April 15, 2014 12:32:14 PM UTC-6, Mark H. Harris wrote:
>>
>> Can you site the announcement?
>>
>> Thanks
>
> http://hg.python.org/peps/rev/76d43e52d978?utm_content=buffer55d59&utm_medium=social&utm_source=facebook.com&utm_campaign=buffer
>

Thanks, guys.

I am noticing the call to 2.8 from time to time (blogs). All along I 
have been seeing the reluctance to migrate to 3.x as either stubborn or 
lazy; or both.

I don't think so any longer. Seems like the reluctance to migrate stems 
from dependencies. Is there a list of primary dependencies ?

As an example:  Is 'twisted' a dependency? ie., twisted does not support 
3.x consequently 'I' can't port my stuff to 3.x because 'twisted' isn't 
there yer.  There are others, gevent, maybe. Has anyone taken an 
inventory of dependencies that must support 3.x before other code(s) can 
be ported?  Maybe there could be an on-line questionnaire regarding 
perceived dependencies?

marcus

[toc] | [prev] | [next] | [standalone]


#70297

FromTerry Reedy <tjreedy@udel.edu>
Date2014-04-15 17:02 -0400
Message-ID<mailman.9299.1397595806.18130.python-list@python.org>
In reply to#70296
On 4/15/2014 3:54 PM, Mark H Harris wrote:

> I don't think so any longer. Seems like the reluctance to migrate stems
> from dependencies. Is there a list of primary dependencies ?


https://python3wos.appspot.com/

-- 
Terry Jan Reedy

[toc] | [prev] | [next] | [standalone]


#70300

FromMark H Harris <harrismh777@gmail.com>
Date2014-04-15 17:17 -0500
Message-ID<likb57$tgb$1@speranza.aioe.org>
In reply to#70297
On 4/15/14 4:02 PM, Terry Reedy wrote:
>
> https://python3wos.appspot.com/
>

That's what I thought. Its really about getting the super-power wall 
fixed up; everything else will fall in place. I do think that Guido 
might be positioning himself as an enabler, of sorts. I can see 
extending through 2015... I think extending support for 2.7 through 2020 
is ridiculous.

The trouble with the super-power wall is that if Guido extends toooo 
much, the super-powers will slack off because the dead-line appears 
further out than it really is. All I'm saying is a little pressure might 
be a good thing.

marcus

[toc] | [prev] | [next] | [standalone]


#70298

FromNed Batchelder <ned@nedbatchelder.com>
Date2014-04-15 17:03 -0400
Message-ID<mailman.9300.1397595854.18130.python-list@python.org>
In reply to#70296
On 4/15/14 3:54 PM, Mark H Harris wrote:
> On 4/15/14 2:37 PM, Novocastrian_Nomad wrote:
>> On Tuesday, April 15, 2014 12:32:14 PM UTC-6, Mark H. Harris wrote:
>>>
>>> Can you site the announcement?
>>>
>>> Thanks
>>
>> http://hg.python.org/peps/rev/76d43e52d978?utm_content=buffer55d59&utm_medium=social&utm_source=facebook.com&utm_campaign=buffer
>>
>>
>
> Thanks, guys.
>
> I am noticing the call to 2.8 from time to time (blogs). All along I
> have been seeing the reluctance to migrate to 3.x as either stubborn or
> lazy; or both.
>
> I don't think so any longer. Seems like the reluctance to migrate stems
> from dependencies. Is there a list of primary dependencies ?
>
> As an example:  Is 'twisted' a dependency? ie., twisted does not support
> 3.x consequently 'I' can't port my stuff to 3.x because 'twisted' isn't
> there yer.  There are others, gevent, maybe. Has anyone taken an
> inventory of dependencies that must support 3.x before other code(s) can
> be ported?  Maybe there could be an on-line questionnaire regarding
> perceived dependencies?

The Python Wall-Of-Shame/Wall-Of-Superpowers shows popular packages, and 
their Python 3 status:  http://python3wos.appspot.com/

>
> marcus


-- 
Ned Batchelder, http://nedbatchelder.com

[toc] | [prev] | [next] | [standalone]


#70302

FromAndrew Berg <aberg010@my.hennepintech.edu>
Date2014-04-15 16:38 -0500
Message-ID<mailman.9303.1397600617.18130.python-list@python.org>
In reply to#70296
On 2014.04.15 16:02, Terry Reedy wrote:
> https://python3wos.appspot.com/
There seems to be a difference of opinion between this page and the Twisted devs on what the "Python 2 only" classifier for PyPI means.

-- 
CPython 3.4.0 | Windows NT 6.2.9200 / FreeBSD 10.0

[toc] | [prev] | [next] | [standalone]


#70313

FromSteven D'Aprano <steve+comp.lang.python@pearwood.info>
Date2014-04-16 02:51 +0000
Message-ID<534df041$0$29993$c3e8da3$5496439d@news.astraweb.com>
In reply to#70296
On Tue, 15 Apr 2014 14:54:53 -0500, Mark H Harris wrote:

> I am noticing the call to 2.8 from time to time (blogs). All along I
> have been seeing the reluctance to migrate to 3.x as either stubborn or
> lazy; or both.

Migrating to 3.x can be a fair amount of work. Not as much work as 
migrating to a new language, you get to keep probably 90-99% of the code, 
but it's not always easy either.

Converting "print spam" to "print(spam)" is the trivial part of it. The 
biggest change between Python 2.x and 3.x is the bytes to Unicode shift, 
and that is *not trivial*. Python 2.x tries very hard to make bytes and 
strings interoperate even when doing so is the wrong thing to do. So 
there is a lot of Python 2 code that is *broken* with respect to strings, 
but *seems okay* so long as you only test it using pure ASCII. Python 3 
no longer tries to hide the difference, it forces you to confront the 
fact that bytes and strings are not the same. To people raised on ASCII-
only programming standards, that's a huge paradigm shift, and a confusing 
one. There's a lot to learn, a lot of pain if you don't learn it, and 
there can be a lot of effort needed to migrate string code to Python 3.

(Depending on what your code actually does. It is remarkable just how 
much string code you can write that works identically in 2.x and 3.x. 
Basic string handling remains basic in both.)

The Python ecosystem is a lot bigger than ASCII users, and everyone else 
had to suffer with Python 2's string handling so ASCII users don't have 
to do anything special. With Python 3, everyone is in the same boat. If 
all your data is ASCII, you might be resentful of the need to go to all 
this trouble for no apparent benefit, and resentful of Python 3 forcing 
you to deal it. But whether you are glad of the changes or wish it was 
1959 and you could forget all about the non-ASCII world[1], there is no 
doubt that the effort required can be painful.

So migrating costs time, and effort, and money. If you have a 100-line 
script, your experience is likely to be very different from somebody 
having to migrate a 100,000 line application. People are reluctant to 
spend that sort of time and money without clear benefit, and for many 
people, Python 2 is "good enough". Apart from Unicode, which many people 
do not need, appreciate or even want[2], the benefits of Python 3 are 
incremental, not revolutionary, and the cost/benefit ratio is on the 
wrong side to justify migration.

This is why Python 2.7 has got such extended support, and why the core 
developers are spending so much effort trying to decrease the cost of 
migration and increase the benefit. But, ultimately, some people will 
decide to never migrate their application to 3.x, because the cost will 
always exceed the benefit. That's okay. That's the great thing about 
software. So long as you can find hardware that will run Python 2.7, you 
can keep running 2.7 for ever. Or 2.3, or 1.5.


> I don't think so any longer. Seems like the reluctance to migrate stems
> from dependencies.

Not anymore. Most -- not all, but the majority -- now support 3.x. Now 
the reluctance stems from cost/benefit. If it takes four people a month 
to migrate your application, and you pay them $40 an hour (a relatively 
low price for software developers, I know some who make in the vicinity 
of $200 an hour), that's a direct cost of $25K. Plus the indirect cost of 
stuff that they could have been working on in that time but aren't. Would 
you pay twenty-five thousand dollars for an upgrade that runs a bit 
slower but otherwise has no new functionality that you care about?

This is why Alex Gaynor calls Python 2.7 "the new Cobol". I expect that 
most, but not all, small and medium sized Python applications will 
eventually be migrated to 3.x, and new applications of any size will be 
written in 3.x, but many existing big Python apps will stay on 2.7 
forever. 



[1] The non-ASCII world includes the USA. Even in the US, there are 
common American-English symbols which cannot be written using pure ASCII, 
the most obvious being ยข the cent symbol.

[2] Sadly, there are still people who consider Unicode to be unnecessary. 
Why can't everyone just learn to write in English? Or if they won't, why 
can't I just ignore them and hope they go away?


-- 
Steven

[toc] | [prev] | [next] | [standalone]


#70318

FromChris Angelico <rosuav@gmail.com>
Date2014-04-16 16:14 +1000
Message-ID<mailman.9313.1397628890.18130.python-list@python.org>
In reply to#70313
On Wed, Apr 16, 2014 at 12:51 PM, Steven D'Aprano
<steve+comp.lang.python@pearwood.info> wrote:
> Converting "print spam" to "print(spam)" is the trivial part of it. The
> biggest change between Python 2.x and 3.x is the bytes to Unicode shift,
> and that is *not trivial*. Python 2.x tries very hard to make bytes and
> strings interoperate even when doing so is the wrong thing to do. So
> there is a lot of Python 2 code that is *broken* with respect to strings,
> but *seems okay* so long as you only test it using pure ASCII. Python 3
> no longer tries to hide the difference, it forces you to confront the
> fact that bytes and strings are not the same. To people raised on ASCII-
> only programming standards, that's a huge paradigm shift, and a confusing
> one. There's a lot to learn, a lot of pain if you don't learn it, and
> there can be a lot of effort needed to migrate string code to Python 3.

Has anyone ever had the same "oh great, now I have to push everyone
through a paradigm shift" feeling about anything else? The only one I
can think of is shifting my whole family off Windows file sharing
(just accessing files everywhere) onto wholesale use of source control
(have a local copy, and push your changes).

> (Depending on what your code actually does. It is remarkable just how
> much string code you can write that works identically in 2.x and 3.x.
> Basic string handling remains basic in both.)

With PEP 461 (slated for 3.5), that's going to get even easier. Not
only will a simple double-quoted string "do the right thing" on both
platforms, but both b"binary" and u"unicode" will support the same
percent-formatting as well. But you do have to limit your definition
of "2.x"; a lot of that commonality is the result of deliberate
design, and NOT just "oh hey look it works", which means that 2.4 and
3.4 are very different. I respect and do not envy those who have to
support both RHEL and Arch...

ChrisA

[toc] | [prev] | [next] | [standalone]


#70293

FromTerry Reedy <tjreedy@udel.edu>
Date2014-04-15 15:37 -0400
Message-ID<mailman.9297.1397590704.18130.python-list@python.org>
In reply to#70283
On 4/15/2014 2:32 PM, Mark H Harris wrote:
> On 4/14/14 2:32 PM, Phil Dobbin wrote:
>> On a related note, Guido announced today that there will be no 2.8 &
>> that the eol for 2.7 will be 2020.
>>
>
> Can you site the announcement?

It is part of a thread on pydev list.


-- 
Terry Jan Reedy

[toc] | [prev] | [standalone]


Back to top | Article view | comp.lang.python


csiph-web