<div dir="ltr">On Sun, Apr 7, 2013 at 6:53 AM, Christian Tismer <span dir="ltr"><<a href="mailto:tismer@stackless.com" target="_blank">tismer@stackless.com</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote">

<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
  
    
  
  <div bgcolor="#FFFFFF" text="#000000">
    <div><div class="im">On 07.04.13 14:10, Skip Montanaro wrote:</div></div><div class="im"><blockquote type="cite">
      <pre>Where I work (a trading firm that uses Python as just one of many
different pieces of technology, not a company where Python is the core
technology upon which the firm is based) we are only just now
migrating from 2.4 to 2.7. I can't imagine we'll have migrated to
Python 3 in two years.  It's not like we haven't seen this coming, but
you can only justify moving so fast with technology that already
works, especially if, like Python, you use it with lots of other
packages (most/all of which themselves have to be ported to Python 3)
and in-house software.

I think the discussion should focus on who's left on 2.x and why, not,
"yeah, releases every six months for the next couple years ought to do
it."

</pre>
    </blockquote>
    <br></div>
    when I read this, I was slightly shocked. You know what?<br>
    """<br>
    
    <span style="text-indent:0px;letter-spacing:normal;font-variant:normal;text-align:start;font-style:normal;font-weight:normal;float:none;line-height:21px;text-transform:none;font-size:15px;white-space:normal;font-family:Arial,Verdana,Geneva,'Bitstream Vera Sans',Helvetica,sans-serif;word-spacing:0px;display:inline!important">We are pleased to announce the release of<span> </span></span><strong style="text-indent:0px;letter-spacing:normal;font-variant:normal;text-align:start;font-style:normal;line-height:21px;text-transform:none;font-size:15px;white-space:normal;font-family:Arial,Verdana,Geneva,'Bitstream Vera Sans',Helvetica,sans-serif;word-spacing:0px">Python 2.4, final</strong><span style="text-indent:0px;letter-spacing:normal;font-variant:normal;text-align:start;font-style:normal;font-weight:normal;float:none;line-height:21px;text-transform:none;font-size:15px;white-space:normal;font-family:Arial,Verdana,Geneva,'Bitstream Vera Sans',Helvetica,sans-serif;word-spacing:0px;display:inline!important"><span> </span>on November 30, 2004.<br>


      """<br>
      <br>
      I know that companies try to save (time? money?) something by not
      upgrading<br>
      software, and this is extremely annoying.<br></span></div></blockquote><div><br></div><div style>I'm in the same boat as Skip (just now moving from 2.4 to 2.7), and Python *is* a core technology for us. It has nothing really to do with saving time or money, its about priorities. The transition from 2.3 to 2.4 was actually fairly painful (don't ask me why, I don't even remember anymore), but we got stuck on 2.4 not by any specific decision -- it simply worked, and our time was always focused upon solving problems and improving our software itself. </div>

<div style><br></div><div style>Could we have solved our problems easier if we upgraded Python and had new tools? Some, yes. (Some features we have added had me actually walking through third party code bases and backporting it -- converting with to try/finally is an amusing big one for example)</div>

<div><br></div><div style>For one thing, even with this relatively ancient Python, we almost never ran into bugs. It just worked and worked fine, so when we looked at our development plan the list of feature requests and issues for various customers (especially those that were potential new clients) overrode "infrastructure" upgrades as priorities. </div>

<div><br></div><div style>However, in a huge system that has many tens of thousands of lines of code, doing a platform upgrade is just a serious endeavor -- and its often not even Python's fault itself, but the reality that it means we're going to be upgrading *everything* and involves a much more involved QA cycle and often runs into third party software. We are finally upgrading now because the time to work around certain bugs in both Python and third-party libraries that no longer support 2.4 are enough for us to say, okay, we finally really do need to get this done. </div>

<div style><br></div><div style>Migration to Python 3 ... IF it ever happens is more of a question then when.</div><div style><br></div><div style>That's not a indictment of Python 3 or a problem with the current plan (for what its worth, the bugfix every 6 months until 5 years is up seems totally reasonable). </div>

<div style><br></div><div style>Any new product we do, I'd seriously consider starting from Python 3. (Though PyPy supporting Py3 would help that argument a lot) The case for migrating existing products is a lot harder to make.</div>

<div style><br></div><div style><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div bgcolor="#FFFFFF" text="#000000">

<span style="text-indent:0px;letter-spacing:normal;font-variant:normal;text-align:start;font-style:normal;font-weight:normal;float:none;line-height:21px;text-transform:none;font-size:15px;white-space:normal;font-family:Arial,Verdana,Geneva,'Bitstream Vera Sans',Helvetica,sans-serif;word-spacing:0px;display:inline!important">But I think every employee (including you) can quite easily put
      some pressure<br>
      on his company by claiming that Python 2.x is a dead end, and
      everybody is<br>
      about to move on to 3.x.<br>
      This does not have to be true, I just recognize that by claiming
      it and doing it<br>
      with your projects, the movement becomes a reality. Just say that
      we all need to<br>
      move on and cannot care about companies that ignore this
      necessity.<br></span></div></blockquote><div><br></div><div style>The thing is, 2.7 works. Some third-party libraries we rely upon have no clear sign for when they will be ported (such as wxPython), and though we are transitioning away from certain others (omniORB for Apache Thrift for example), that process itself is planned to be a gradual thing for the next year, at least.</div>

<div><br></div><div>My concern is for the health of my company, and happiness of my customers; I love Python and am an advocate for it, but in my day job, pushing things forward is just about at the bottom of my list of concerns. (Though, our migration to 2.7 is actually part of a long term strategic plan to embrace pypy)</div>

<div><br></div><div style>And now I go back to lurking.</div><div><br></div><div style>--Stephen</div><div><br></div></div></div></div>