472,954 Members | 1,929 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 472,954 software developers and data experts.

How ahead are you guys in the (Python) real world?

Ray
Since I haven't used Python at work, I am using Python 2.5 right now.
However I wonder, how fast are you guys moving from version to version
at work? As an illustration my ex-company just moved to Java 5, which
was released around... what, 2-3 years ago? (While I am running Java 6
at home)

Is it the same in the Python world? What version of Python is used in,
say, Google? Is it even 2.4 yet?

Aug 29 '06 #1
25 1754

RaySince I haven't used Python at work, I am using Python 2.5 right
Raynow. However I wonder, how fast are you guys moving from version
Rayto version at work?

At my day job (a trading firm) we moved from 2.3 to 2.4 a couple months ago.
At home I use whatever's in CVS. For my moonlighting job (mojam.com) I
still use 2.3 because that's what /usr/bin/python is on the web server
(which tummy.com administers) and I don't feel like messing with yet another
separate install.

Skip
Aug 29 '06 #2
On 28 Aug 2006 20:13:54 -0700, Ray <ra********@yahoo.comwrote:
Since I haven't used Python at work, I am using Python 2.5 right now.
However I wonder, how fast are you guys moving from version to version
at work? As an illustration my ex-company just moved to Java 5, which
was released around... what, 2-3 years ago? (While I am running Java 6
at home)

Is it the same in the Python world? What version of Python is used in,
say, Google? Is it even 2.4 yet?
for ones 2.5 is not consider production code yet so noone should be
running anything on it. same with 1.6.

on the java side my company is still stuck at 1.4, some prod servers
ar 1.3 :) , and my branch moved to 1.5 like 2 months ago. but again I
wont use anything that is in release candidates for production. but
thats just me
>
--
http://mail.python.org/mailman/listinfo/python-list
Aug 29 '06 #3
Ray

Jorge Vargas wrote:
for ones 2.5 is not consider production code yet so noone should be
running anything on it. same with 1.6.
Yes, certainly, in fact in a lot of companies I've worked for the
criteria for upgrading is when the Vendor is about to stop supporting
it :) But are there many companies using Python 2.4 even now though, I
wonder?
on the java side my company is still stuck at 1.4, some prod servers
ar 1.3 :) , and my branch moved to 1.5 like 2 months ago. but again I
wont use anything that is in release candidates for production. but
thats just me
Nah, not just you, at work we'd be equally cautious as well. Which
feels funny sometimes because publications and magazines will start
discussing Java 1.6 even now and we know that it's still probably at
least 3-4 years away before we get to use it at work.

--
http://mail.python.org/mailman/listinfo/python-list
Aug 29 '06 #4
Ray wrote:
>
Is it the same in the Python world? What version of Python is used in,
say, Google? Is it even 2.4 yet?
Google uses many versions of Python including 2.2, 2.3 and 2.4. Though
2.4 is relatively new. I hope to start introducing Python 2.5 sometime
next year. Mid-year is about as early as it could possibly happen, and
is likely to be much later. We need to kill off older versions (2.2
and 2.3) first.

Mostly it depends on the size of the company/source code
base/installations. The smaller these are, the easier it is (should
be) to move to a new version.

n

Aug 29 '06 #5
"Ray" wrote:
Since I haven't used Python at work, I am using Python 2.5 right now.
However I wonder, how fast are you guys moving from version to version
at work?
fwiw, I work on systems that runs on 1.5.2, 2.1, 2.3 and "bleeding edge".

</F>

Aug 29 '06 #6
Jorge Vargas wrote:
for ones 2.5 is not consider production code yet so noone should be
running anything on it. same with 1.6.
that's completely ignoring how Python's developed, though. if you know what you're
doing, using stable (*) betas or release candidates can be an excellent idea.

</F>

*) where "stable" means "works well in your test environment".

Aug 29 '06 #7
Ray wrote:
Since I haven't used Python at work, I am using Python 2.5 right now.
However I wonder, how fast are you guys moving from version to version
at work? As an illustration my ex-company just moved to Java 5, which
was released around... what, 2-3 years ago? (While I am running Java 6
at home)

Is it the same in the Python world? What version of Python is used in,
say, Google? Is it even 2.4 yet?
I can't tell for Google, and we're certainly a much much smaller
company, but FWIW, we mostly use 2.4.3 (we still have a 2.3.x for
compatibility with some old zope install).
--
bruno desthuilliers
python -c "print '@'.join(['.'.join([w[::-1] for w in p.split('.')]) for
p in 'o****@xiludom.gro'.split('@')])"
Aug 29 '06 #8

Ray wrote:
Since I haven't used Python at work, I am using Python 2.5 right now.
However I wonder, how fast are you guys moving from version to version
at work? As an illustration my ex-company just moved to Java 5, which
was released around... what, 2-3 years ago? (While I am running Java 6
at home)

Is it the same in the Python world? What version of Python is used in,
say, Google? Is it even 2.4 yet?
I'm lucky in that the company I work for are developing with
IronPython. That means I get to use Python 2.4. I'm appreciating the
joy of sets and decorators. :-)

I doubt we will move to 2.5 until that is the standard stable version
of IronPython.

For most of my own projects I try to maintain compatibility with 2.3,
as it is still very common. For CGI stuff I try to remain 2.2
compatible, because that is the default version of Python on many
web-hosts (and Linux distros).

Fuzzyman
http://www.voidspace.org.uk/python/index.shtml

Aug 29 '06 #9
On 28 Aug 2006 20:13:54 -0700,
Ray <ra********@yahoo.comwrote:
Since I haven't used Python at work, I am using Python 2.5 right now.
However I wonder, how fast are you guys moving from version to version
at work?
At our company, we build a product on top of Debian (product line 1)
or Ubuntu (product line 2, not released yet), so we stick to what's
available in the Debian/Ubuntu versions we're using.

That means 2.3 on Debian and 2.4 on Ubuntu. 2.5 will probably arrive
whenever we upgrade to the upcoming Ubuntu release, though I've
already tried manually upgrading a system to 2.5, and our code ran
without changes or apparent problems.

--amk
Aug 29 '06 #10
Ray wrote:
Since I haven't used Python at work, I am using Python 2.5 right now.
However I wonder, how fast are you guys moving from version to version
at work? As an illustration my ex-company just moved to Java 5, which
was released around... what, 2-3 years ago? (While I am running Java 6
at home)
We are using 2.2 most places, with 2.3 on a few dev boxes. We're
planning an update to 2.4 in the next couple of months.

Aug 29 '06 #11
Ray wrote:
However I wonder, how fast are you guys moving from version to version
at work?
Interesting question. Just as a curious follow-up (not being someone who
works in the programming world), why does it take so long to move to the
latest version, especially when there aren't (I don't think) any changes
that would break existing code, such as moving to Python 2.4 from 2.2 or
2.3?

Thanks.
Aug 30 '06 #12
John Salerno wrote:
when there aren't (I don't think) any changes that would break existing code,
in practice, in a large enough system, there's always something.

(external libraries are a common problem, especially if you have to rebuild them,
or update them to a new version to work around some incompatibility, and then
end up with your code being incompatible with the new version, etc)

</F>

Aug 30 '06 #13
Ray
John Salerno wrote:
However I wonder, how fast are you guys moving from version to version
at work?

Interesting question. Just as a curious follow-up (not being someone who
works in the programming world), why does it take so long to move to the
latest version, especially when there aren't (I don't think) any changes
that would break existing code, such as moving to Python 2.4 from 2.2 or
2.3?
Well, the thing is that migration in practice is usually a messy
business, especially as your application grows in size + complexity.
When your application is small and simple, usually migration is
relatively painless, and the assumption that a release is compatible
with the previous ones therefore your application shouldn't break
usually holds true.

However, when your apps are big and mission critical... for some reason
they just break more often ;-) Like last time we migrated our automated
build system to the latest bugfix release of the software (Ant,
specifically--see ant.apache.org if you're curious).

Everything *should* be working just fine, after all it's just a bugfix
release. But it turned out that one of the bugfixes (which was meant to
optimize the build cycle) actually broke our system in a subtle and
mysterious way, and for the longest time we resisted rolling back our
system because nobody was willing to believe that Ant, which is an
Apache project, and written by people probably smarter than us, and
being used by a LOT of Java teams around the world, could be the cause.
That was just one example from the Enterprise Java world, I'm sure the
others can supply a lot more stories from the Python world...

Regards,
Ray
>
Thanks.
Aug 30 '06 #14

JohnInteresting question. Just as a curious follow-up (not being
Johnsomeone who works in the programming world), why does it take so
Johnlong to move to the latest version, especially when there aren't
John(I don't think) any changes that would break existing code, such
Johnas moving to Python 2.4 from 2.2 or 2.3?

There are often lots of binary interdependencies between the Python version
and internal or external packages. For instance, all the database adaptors
I'm aware of for SQL-based databases have extension modules written in C.
Then consider GUI stuff (PyGtk, wxPython, etc), scientific (SciPy, Numeric,
VTK, ...). The list can be nearly endless. At work we have lots of
in-house C++ libraries, many of which have been exposed to Python
programmers via SWIG or Boost.Python. All that stuff at minimum needs to be
recompiled with the new version of Python's header files (which can and do
change between versions). Then you have to test it.

While it's true that there are generally no semantic or syntactic
differences between versions and for the most part the developers try hard
not to break things, differences do creep into the Python level and can be
subtle to discover.

In short, it takes a fair amount of work to move from one version to
another.

Skip

Aug 30 '06 #15
On 2006-08-30, John Salerno <jo******@NOSPAMgmail.comwrote:
Ray wrote:
>However I wonder, how fast are you guys moving from version to version
at work?

Interesting question. Just as a curious follow-up (not being
someone who works in the programming world), why does it take
so long to move to the latest version,
Two reasons:

1) "If it ain't broke, don't f*** with it."

2) There's always something else that is broke.
especially when there aren't (I don't think) any changes that
would break existing code,
After doing a few sowftware upgrades you quickly learn to
never, ever believe that. The best working hypothesis is that
upgrading will break things. So the questions when considering
an upgrade are:

1) Is there a new feature I want?

2) Is that feature worth fixing the update breaking?

--
Grant Edwards grante Yow! CALIFORNIA is where
at people from IOWA or NEW
visi.com YORK go to subscribe to
CABLE TELEVISION!!
Aug 30 '06 #16

GrantSo the questions when considering an upgrade are:

Grant 1) Is there a new feature I want?

Grant 2) Is that feature worth fixing the update breaking?

3) Has the version I'm running reached "end of support"?

If it has and you encounter a bug, you may be forced to upgrade at an
inopportune time.

Skip
Aug 30 '06 #17
John Salerno wrote:
Interesting question. Just as a curious follow-up (not being someone who
works in the programming world), why does it take so long to move to the
latest version, especially when there aren't (I don't think) any changes
that would break existing code, such as moving to Python 2.4 from 2.2 or
2.3?
Well, let's see. We have about 5 live servers that would need to be
upgraded. They're running an old enough version of the OS that 2.2 is
the last supported release. Fine, building a new python release
ourself is not a huge deal--but it means that we're no longer on the
vendor's automatic update system for python and related packages.

And, of course, we use mod_python. That needs to be rebuilt against
the new python version. We also have a number of 3rd-party packages
installed; each of those needs to be re-installed for the new python
version, and possibly rebuilt first if it has any C extension modules.

The real question in most production environments isn't "why not
upgrade?", it's "why upgrade?". Until a new release has features that
are going to be valuable enough to your project to offset the cost of
upgrading, why would you bother?

Aug 30 '06 #18
sj*******@yahoo.com wrote:
The real question in most production environments isn't "why not
upgrade?", it's "why upgrade?".
Good way to put it. Now I'm starting to see how much of a pain it can be. :)
Aug 30 '06 #19
In article <11**********************@p79g2000cwp.googlegroups .com>,
Ray <ra********@yahoo.comwrote:
>
Since I haven't used Python at work, I am using Python 2.5 right now.
However I wonder, how fast are you guys moving from version to version
at work? As an illustration my ex-company just moved to Java 5, which
was released around... what, 2-3 years ago? (While I am running Java 6
at home)
My company uses 2.2 and 2.3; we hope to drop 2.2 Real Soon Now.
--
Aahz (aa**@pythoncraft.com) <* http://www.pythoncraft.com/

I support the RKAB
Aug 30 '06 #20
Aahz <aa**@pythoncraft.comwrote:
My company uses 2.2 and 2.3; we hope to drop 2.2 Real Soon Now.
This has been an interesting thread. There has been some discussion
on python-dev about doing another 2.3 bugfix release. Based on the
number of people still using 2.3, it looks to me like there would be
interest.

Neil
Aug 31 '06 #21
In article <vMrJg.484475$Mn5.394204@pd7tw3no>,
Neil Schemenauer <na*@arctrix.comwrote:
>Aahz <aa**@pythoncraft.comwrote:
>>
My company uses 2.2 and 2.3; we hope to drop 2.2 Real Soon Now.

This has been an interesting thread. There has been some discussion
on python-dev about doing another 2.3 bugfix release. Based on the
number of people still using 2.3, it looks to me like there would be
interest.
Yes; the real question is whether there is enough labor available to
make it happen.
--
Aahz (aa**@pythoncraft.com) <* http://www.pythoncraft.com/

I support the RKAB
Aug 31 '06 #22
On Wed, Aug 30, 2006 at 08:01:02PM -0700, Aahz wrote:
In article <vMrJg.484475$Mn5.394204@pd7tw3no>,
Neil Schemenauer <na*@arctrix.comwrote:
Aahz <aa**@pythoncraft.comwrote:
>
My company uses 2.2 and 2.3; we hope to drop 2.2 Real Soon Now.
This has been an interesting thread. There has been some discussion
on python-dev about doing another 2.3 bugfix release. Based on the
number of people still using 2.3, it looks to me like there would be
interest.

Yes; the real question is whether there is enough labor available to
make it happen.
I came away from the thread with the opposite conclusion for similar
reasons. People would use a 2.3.6 if their OS upgraded it for them but
those are the same people who won't upgrade to 2.4.x because it involves
testing. 2.3.5 isn't broken for them or they would know it by now.
2.3.6 probably isn't broken for them but it can't help -- or they would
have noticed a bug by now.

My own servers jumped from 2.2 to 2.4 for the same reason everyone else
has given for an upgrade. We just happened to have time in the dev
cycle to do testing and did it on the version that was available (2.4.1)
at that time.

-Jack
Aug 31 '06 #23
Ray wrote:
Since I haven't used Python at work, I am using Python 2.5 right now.
However I wonder, how fast are you guys moving from version to version
at work? As an illustration my ex-company just moved to Java 5, which
was released around... what, 2-3 years ago? (While I am running Java 6
at home)

Is it the same in the Python world? What version of Python is used in,
say, Google? Is it even 2.4 yet?
Heya, here at my job 2.3 is a must , but the code *should* be as
compatible as possible with 2.2 too.

Aug 31 '06 #24

JackI came away from the thread with the opposite conclusion for
Jacksimilar reasons. People would use a 2.3.6 if their OS upgraded it
Jackfor them but those are the same people who won't upgrade to 2.4.x
Jackbecause it involves testing. 2.3.5 isn't broken for them or they
Jackwould know it by now. 2.3.6 probably isn't broken for them but it
Jackcan't help -- or they would have noticed a bug by now.

In contrast, I generally do only a small amount of testing when a micro
release of Python comes out before inflicting it on our users and
developers, precisely because I have confidence that it only contains bug
fixes. Since probably 2.2.1 there have been no new features in any micro
releases that I can recall and, up to this point at least, no regressions in
my experience. Micro updates seem like a pretty safe bet to me.

Skip
Aug 31 '06 #25
(ack! forgot to push the send button several days ago - hopefully this isn't
woefully out-of-date now...)

neilBased on the number of people still using 2.3, it looks to me like
neilthere would be interest.

aahzYes; the real question is whether there is enough labor available
aahzto make it happen.

Just to make it clear for people with an interest in another 2.3 release who
might not read python-dev, here's what needs to happen. Someone(s) needs to
consider which bug fixes applied to 2.4 (and maybe CVS head) since the last
2.3 release should be applied to the 2.3 branch. That entails a few steps:

1. scan the 2.4 checkins for bug fixes (scanning Misc/NEWS might be
sufficient)

2. decide which ones apply to the 2.3 branch (some might not if they
were bugs that were introduced in 2.4 or because code structure
changes would make it too painful to add to 2.3)

3. work up a patch with test cases against the 2.3 code (simplified by
starting with the 2.4 patch in most cases) that implements the fix

4. test the 2.3 branch as patches are applied to make sure there are no
regressions against your own code base.

All these steps are necessary to some degree, though one person doesn't have
to do all four steps for any given bug fix. Any help you can give would be
appreciated.

Skip
Sep 5 '06 #26

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

65
by: Anthony_Barker | last post by:
I have been reading a book about the evolution of the Basic programming language. The author states that Basic - particularly Microsoft's version is full of compromises which crept in along the...
0
by: Raymond Hettinger | last post by:
QOTW: "Python seems to encourage and reward incremental effort, and it leads one to explore extensions and improvements to programs because the language makes it relatively easy to see how to do...
699
by: mike420 | last post by:
I think everyone who used Python will agree that its syntax is the best thing going for it. It is very readable and easy for everyone to learn. But, Python does not a have very good macro...
176
by: Thomas Reichelt | last post by:
Moin, short question: is there any language combining the syntax, flexibility and great programming experience of Python with static typing? Is there a project to add static typing to Python? ...
34
by: Ville Voipio | last post by:
I would need to make some high-reliability software running on Linux in an embedded system. Performance (or lack of it) is not an issue, reliability is. The piece of software is rather simple,...
122
by: seberino | last post by:
I'm interested in knowing which Python web framework is most like Ruby on Rails. I've heard of Subway and Django. Are there other Rails clones in Python land I don't know about? Which one...
267
by: Xah Lee | last post by:
Python, Lambda, and Guido van Rossum Xah Lee, 2006-05-05 In this post, i'd like to deconstruct one of Guido's recent blog about lambda in Python. In Guido's blog written in 2006-02-10 at...
135
by: robinsiebler | last post by:
I've never had any call to use floating point numbers and now that I want to, I can't! *** Python 2.5.1 (r251:54863, May 1 2007, 17:47:05) on win32. *** 0.29999999999999999 0.29999999999999999
61
by: giveitawhril2008 | last post by:
I'm just learning about Python now and it sounds interesting. But I just read (on the Wiki page) that mainstream Python was written in C. That's what I was searching for: Python was written in what...
0
by: lllomh | last post by:
Define the method first this.state = { buttonBackgroundColor: 'green', isBlinking: false, // A new status is added to identify whether the button is blinking or not } autoStart=()=>{
0
by: Aliciasmith | last post by:
In an age dominated by smartphones, having a mobile app for your business is no longer an option; it's a necessity. Whether you're a startup or an established enterprise, finding the right mobile app...
2
by: giovanniandrean | last post by:
The energy model is structured as follows and uses excel sheets to give input data: 1-Utility.py contains all the functions needed to calculate the variables and other minor things (mentions...
4
NeoPa
by: NeoPa | last post by:
Hello everyone. I find myself stuck trying to find the VBA way to get Access to create a PDF of the currently-selected (and open) object (Form or Report). I know it can be done by selecting :...
3
NeoPa
by: NeoPa | last post by:
Introduction For this article I'll be using a very simple database which has Form (clsForm) & Report (clsReport) classes that simply handle making the calling Form invisible until the Form, or all...
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 1 Nov 2023 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM) Please note that the UK and Europe revert to winter time on...
3
by: nia12 | last post by:
Hi there, I am very new to Access so apologies if any of this is obvious/not clear. I am creating a data collection tool for health care employees to complete. It consists of a number of...
0
NeoPa
by: NeoPa | last post by:
Introduction For this article I'll be focusing on the Report (clsReport) class. This simply handles making the calling Form invisible until all of the Reports opened by it have been closed, when it...
0
isladogs
by: isladogs | last post by:
The next online meeting of the Access Europe User Group will be on Wednesday 6 Dec 2023 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, Mike...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.