Path: csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!news.albasani.net!newsfeed.fsmpi.rwth-aachen.de!proxad.net!feeder1-2.proxad.net!news.tele.dk!news.tele.dk!small.news.tele.dk!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.006 X-Spam-Evidence: '*H*': 0.99; '*S*': 0.00; 'third-party': 0.04; 'killer': 0.07; 'tests.': 0.07; 'users,': 0.07; 'bytes.': 0.09; 'conversions': 0.09; 'exceeds': 0.09; 'parsing': 0.09; 'variable,': 0.09; 'works.': 0.09; 'runs': 0.10; 'cc:addr:python- list': 0.11; 'python': 0.11; 'jan': 0.12; '2.7': 0.14; 'escapes': 0.16; 'internally': 0.16; 'porting': 0.16; 'roy': 0.16; 'summary,': 0.16; 'value"': 0.16; 'subject:python': 0.16; 'wrote:': 0.18; 'module': 0.19; 'differ': 0.19; 'thu,': 0.19; 'help.': 0.21; 'seems': 0.21; 'code,': 0.22; 'import': 0.22; 'putting': 0.22; 'tests': 0.22; 'cc:addr:python.org': 0.22; '2.x': 0.24; 'driven': 0.24; 'passes': 0.24; 'platform,': 0.24; 'unicode': 0.24; 'fairly': 0.24; 'versions': 0.24; 'cc:2**0': 0.24; 'least': 0.26; 'supported': 0.26; 'header:In-Reply-To:1': 0.27; 'point': 0.28; 'on,': 0.29; "doesn't": 0.30; 'message- id:@mail.gmail.com': 0.30; "i'm": 0.30; 'url:mailman': 0.30; 'code': 0.31; '3.x': 0.31; 'piece': 0.31; 'python2.7': 0.31; 'staying': 0.31; 'probably': 0.32; 'compatible': 0.32; 'maintaining': 0.32; "we're": 0.32; 'another': 0.32; 'worked': 0.33; 'url:python': 0.33; 'running': 0.33; 'older': 0.33; 'could': 0.34; "can't": 0.35; 'etc': 0.35; 'but': 0.35; 'received:google.com': 0.35; 'there': 0.35; 'version': 0.36; 'url:listinfo': 0.36; 'doing': 0.36; 'url:org': 0.36; 'effort': 0.37; 'too': 0.37; 'two': 0.37; 'project': 0.37; 'starting': 0.37; 'skip:& 10': 0.38; 'handle': 0.38; 'whatever': 0.38; 'pm,': 0.38; 'rather': 0.38; 'moving': 0.39; 'realize': 0.39; 'sure': 0.39; 'changed': 0.39; 'url:mail': 0.40; 'even': 0.60; 'future': 0.60; 'subject:"': 0.60; 'new': 0.61; 'today,': 0.61; 'simple': 0.61; 'making': 0.63; 'real': 0.63; 'our': 0.64; 'interest': 0.64; 'more': 0.64; 'different': 0.65; 'between': 0.67; 'production.': 0.68; 'smith': 0.68; 'default': 0.69; 'risk': 0.72; 'increase': 0.74; 'low': 0.83; 'gap': 0.84; 'superiority': 0.84; 'tasked': 0.84; 'retention': 0.91; 'average': 0.93; '<>*': 0.95 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=Ee+H/Er0l/SvDXcUCoowsnirCHdTTmkggv/Vn04Pe2A=; b=Uuo7JUJ3S9m9RQlDKvm3xKL+2JRaBJgiYCpB5d3qXLJxVfscY9AWbs38CeIDKImTPU qoD7+ZGr7/mSQCafDJkP2XcjIpxv72/B6VvOUJJedC/7fkMd1xvFpwv5ZMhkJIQuJd3y 9a40RmlXnknGH70H2+tPj3NZ6M96MGV8vm5hEl5GLG+8byy5n+kM5XnexToTGLzZsJFs CFg5ZHKdrD3eneN3auIFx1xfviJLn0AGz3Lp9cUBQc7Z1dIYLCIAQqPkPgUpxqfb9a9A M85Qbt8wyLATtA0DDDobnfwIsfF3WaEs38tBOUdCyeOUafoc2R96dMSru3IWFyZgZ3wn pojA== MIME-Version: 1.0 X-Received: by 10.224.128.134 with SMTP id k6mr140629563qas.68.1388687128472; Thu, 02 Jan 2014 10:25:28 -0800 (PST) In-Reply-To: <52C5A3BA.5080700@chamonix.reportlab.co.uk> References: <52c1dc4c$0$2877$c3e8da3$76491128@news.astraweb.com> <52C1F5EC.3020808@stoneleaf.us> <52c29416$0$29987$c3e8da3$5496439d@news.astraweb.com> <52C5A3BA.5080700@chamonix.reportlab.co.uk> Date: Thu, 2 Jan 2014 13:25:28 -0500 Subject: Re: Blog "about python 3" From: David Hutto To: Robin Becker Content-Type: multipart/alternative; boundary=001a11c1edf6ff30f904ef00ea71 Cc: python-list X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Newsgroups: comp.lang.python Message-ID: Lines: 176 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1388687137 news.xs4all.nl 2913 [2001:888:2000:d::a6]:34060 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:62994 --001a11c1edf6ff30f904ef00ea71 Content-Type: text/plain; charset=ISO-8859-1 Just because it's 3.3 doesn't matter...the main interest is in compatibility. Secondly, you used just one piece of code, which could be a fluke, try others, and check the PEP. You need to realize that evebn the older versions are benig worked on, and they have to be refined. So if you have a problem, use the older and import from the future would be my suggestion On Thu, Jan 2, 2014 at 12:36 PM, Robin Becker wrote: > On 31/12/2013 15:41, Roy Smith wrote: > >> I'm using 2.7 in production. I realize that at some point we'll need to >> upgrade to 3.x. We'll keep putting that off as long as the "effort + >> dependencies + risk" metric exceeds the "perceived added value" metric. >> >> We too are using python 2.4 - 2.7 in production. Different clients > migrate at different speeds. > > >> To be honest, the "perceived added value" in 3.x is pretty low for us. >> What we're running now works. Switching to 3.x isn't going to increase >> our monthly average users, or our retention rate, or decrease our COGS, >> or increase our revenue. There's no killer features we need. In >> summary, the decision to migrate will be driven more by risk aversion, >> when the risk of staying on an obsolete, unsupported platform, exceeds >> the risk of moving to a new one. Or, there will be some third-party >> module that we must have which is no longer supported on 2.x. >> >> > +1 > > If I were starting a new project today, I would probably start it in 3.x. >> > +1 > > I just spent a large amount of effort porting reportlab to a version which > works with both python2.7 and python3.3. I have a large number of functions > etc which handle the conversions that differ between the two pythons. > > For fairly sensible reasons we changed the internal default to use unicode > rather than bytes. After doing all that and making the tests compatible etc > etc I have a version which runs in both and passes all its tests. However, > for whatever reason the python 3.3 version runs slower > > 2.7 Ran 223 tests in 66.578s > > 3.3 Ran 223 tests in 75.703s > > I know some of these tests are fairly variable, but even for simple things > like paragraph parsing 3.3 seems to be slower. Since both use unicode > internally it can't be that can it, or is python 2.7's unicode faster? > > So far the superiority of 3.3 escapes me, but I'm tasked with enjoying > this process so I'm sure there must be some new 'feature' that will help. > Perhaps 'yield from' or 'raise from None' or ....... > > In any case I think we will be maintaining python 2.x code for at least > another 5 years; the version gap is then a real hindrance. > -- > Robin Becker > > -- > https://mail.python.org/mailman/listinfo/python-list > -- Best Regards, David Hutto *CEO:* *http://www.hitwebdevelopment.com * --001a11c1edf6ff30f904ef00ea71 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable
Just because it's 3.3 doesn't matter...the main in= terest is in compatibility. Secondly, you used just one piece of code, whic= h could be a fluke, try others, and check the PEP. You need to realize that= evebn the older versions are benig worked on, and they have to be refined.= So if you have a problem, use the older and import from the future would b= e my suggestion



On = Thu, Jan 2, 2014 at 12:36 PM, Robin Becker <robin@reportlab.com><= /span> wrote:
On 31/12/2013 15:41, Roy Smith wrote:
I'm using 2.7 in production. =A0I realize that at some point we'll = need to
upgrade to 3.x. =A0We'll keep putting that off as long as the "eff= ort +
dependencies + risk" metric exceeds the "perceived added value&qu= ot; metric.

We too are using python 2.4 - 2.7 in production. Different clients migrate = at different speeds.


To be honest, the "perceived added value" in 3.x is pretty low fo= r us.
What we're running now works. =A0Switching to 3.x isn't going to in= crease
our monthly average users, or our retention rate, or decrease our COGS,
or increase our revenue. =A0There's no killer features we need. =A0In summary, the decision to migrate will be driven more by risk aversion,
when the risk of staying on an obsolete, unsupported platform, exceeds
the risk of moving to a new one. =A0Or, there will be some third-party
module that we must have which is no longer supported on 2.x.


+1

If I were starting a new project today, I would probably start it in 3.x.
+1

I just spent a large amount of effort porting reportlab to a version which = works with both python2.7 and python3.3. I have a large number of functions= etc which handle the conversions that differ between the two pythons.

For fairly sensible reasons we changed the internal default to use unicode = rather than bytes. After doing all that and making the tests compatible etc= etc I have a version which runs in both and passes all its tests. However,= for whatever reason the python 3.3 version runs slower

2.7 Ran 223 tests in 66.578s

3.3 Ran 223 tests in 75.703s

I know some of these tests are fairly variable, but even for simple things = like paragraph parsing 3.3 seems to be slower. Since both use unicode inter= nally it can't be that can it, or is python 2.7's unicode faster?
So far the superiority of 3.3 escapes me, but I'm tasked with enjoying = this process so I'm sure there must be some new 'feature' that = will help. Perhaps 'yield from' or 'raise from None' or ...= ....

In any case I think we will be maintaining python 2.x code for at least ano= ther 5 years; the version gap is then a real hindrance.
--
Robin Becker

--
https://mail.python.org/mailman/listinfo/python-list



--
Best Rega= rds,
David Hutto<= /span>
CEO: http://www.hitwebdevelopment.com
--001a11c1edf6ff30f904ef00ea71--