This is a read-only archive. Find the latest Linux articles, documentation, and answers at the new Linux.com!

Linux.com

Feature: Perl

Evidence that Python is advancing into the enterprise

By Cameron Laird on March 29, 2005 (9:00:00 AM)

Share    Print    Comments   

WASHINGTON, D.C. -- So what was the bottom line from the PyCON 2005 conference, held here last week? Python is an open-source technology whose use in enterprise IT operations will only grow for the foreseeable future.

Mission-critical development organizations often regard only a handful of languages -- C#, Java, XML, SQL, and few others -- as safe enough for serious projects. From this perspective, Python has been traditionally lumped with "experimental" or "toy" languages. Over and over, however, speakers at this conference presented evidence to the contrary.

Among these, perhaps the most telling was the first: Jim Hugunin, an engineer with Microsoft's Common Language Runtime team. He announced a 0.7 release of a fully .NET-ized implementation of Python, along with Microsoft's vision for the language. The idea is that, once the IronPython project is complete, Python will serve as a high-productivity complement to C# and the other languages customarily used for .NET development. Speakers told of experiments and used anecdotes to explain that programmers who use Python finish jobs in no more than half the time required by those coding in more conventional languages.

Microsoft appears to want to make Python part of a package deal it offers developers: leverage .NET infrastructure, re-use familiar libraries and debugging aids -- but do so with a language that's easier, more maintainable, and far quicker to program.

There are no guarantees with Microsoft, of course; in principle, decisions in Redmond might indefinitely stall or sidetrack Python's spread through the .NET world. However, they can't change the strategic choices already made in favor of Python:

  • Google is one of the few IT companies to compete on scales comparable to Microsoft's, and Google Engineering Manager Greg Stein described in the keynote for the final day how deeply his company embeds the language in its processes.

  • Geographic information systems (GIS) heavyweight ESRI sent its first contingent to PyCon this year. This punctuated release of ArcGIS 9.0 to the 1 million-plus ESRI licensees with Python now recommended as the extension language for customization and automation.

  • Nokia supports Python as a high-productivity development language for its Series 60 handsets.

Other evidence of commercial acceptance abounded in the conference's halls -- talks that quantified ROI for specific projects, a few venture capitalists and hiring agents scouting prospects, and confidence that next year's meeting would be well-attended, despite tight travel budgets or the vagaries of support from particular sponsors.

Python has its challenges. Performance compared to C is often good enough, occasionally better, and sometimes simply inadequate. Attendees fret about software patents and other intellectual-property issues. While Python inventor Guido van Rossum manages language and library definitions conservatively, with abundant attention given interversion compatibility, the open-source process is less formal than the standardization cycles of Java or C++. The exuberance of the Python development community occasionally bewilders newcomers; a few sessions bemoaned the fact that there seem to be dozens of popular Python-based Web and GUI frameworks, rather than a couple that fits most needs. Integrated development environments (IDEs) are also more numerous than polished.

On the whole, however, Python looks more and more like a "safe choice": It's taught in classrooms, budgeted and used in large organizations worldwide, and appears to attract successful enthusiasts. The time looks ripe for a language that has always emphasized its ability to "play nicely" with other technologies on a full range of platforms.

Cameron Laird is a full-time software developer for Phaseit, Inc., and frequent writer on IT topics. Most of his publications during the last decade have been tutorial material for programmers -- on new languages, networking technologies, and security. He also ghost-writes white papers and teaches classes on scripting languages such as Perl, Python, and Tcl.

Share    Print    Comments   

Comments

on Evidence that Python is advancing into the enterprise

Note: Comments are owned by the poster. We are not responsible for their content.

Python going mainstream

Posted by: Anonymous Coward on March 30, 2005 04:10 AM
Personally,I believe that Python is starting to find his own way into the mainstream industry.
Just check at the example of nVIDIA. They choose Python as the language used in their Gelato renderer files.

#

Re:Python going mainstream

Posted by: TaQ on March 30, 2005 05:52 AM
Here we're changing some few Python programs to Ruby.

#

Re: Microsoft and Python

Posted by: Anonymous Coward on March 30, 2005 06:32 AM
Python should be used to advance open source,
not give Microsoft a leverage.

Similarly with Mono. People who put their effort
in these project are fools. If Microsoft would
have any opportunity to kill Python, Mono, Java,
or linux for that matter they would do it no
doubt.

#

Re: Microsoft and Python

Posted by: Anonymous Coward on April 04, 2005 11:15 PM
Why is it that so many people in the Open Source community autumatically think working with Microsoft is bad? How about this, if your software works with Windows, your potential client base is a lot bigger? Nothing wrong with reaching more potential clients is there?

While I agree that Microsoft's past history of adapt, extend and destroy has not been good for OS, they haven't been very effective in destroying the really good technologies. They lost in court against Sun (Java) and haven't managed to kill off Mozilla entirely either. In fact, Mozilla is making a come back, so the fear that Microsoft will kill Python is probably a bit paranoid.

#

Re: Microsoft and Python

Posted by: Joe Barr on April 05, 2005 01:32 AM
Personally, I try very hard never to do business with duplicitous, ethics-free, bottom-feeding pond scum. But it's not just about Microsoft, it's a choice I make every time I do business with someone.


It goes like this. I ask myself if I can trust the other party? If the answer is no, I decline the opportunity to do business with them.


With Microsoft, the answer is always a resounding no. They do nothing but lie, cheat, and steal. It comes from the very top, and it's been that way since day one.


Joe Barr

#

python and .net

Posted by: segphault on March 30, 2005 07:06 AM
I'm a bit surprised by mention of IronPython. I was under the impression that development of IronPython had nearly halted completely. I've been watching Boo (<a href="http://boo.codehaus.org/" title="codehaus.org">http://boo.codehaus.org/</a codehaus.org>), a seemingly superior pythonic language for<nobr> <wbr></nobr>.NET.

Personally, I'm not sure that Python on<nobr> <wbr></nobr>.NET is really a good thing. The absence of a compilation step is part of what makes Python development so rapid and streamlined. The<nobr> <wbr></nobr>.NET platform effectively eliminates that benefit.

I suppose the readability and easier maintenence still make it a winner, but why use a pythonic language on<nobr> <wbr></nobr>.NET when you can just use native python? I suppose it would really only matter if you want or need to interface with other<nobr> <wbr></nobr>.NET libraries... but I think that you could get better performance by finding comperable C libraries and writing python bindings for them. Does anybody out there use a Pythonic language for<nobr> <wbr></nobr>.NET? Is it A Good Thing?

#

Re:python and .net

Posted by: Anonymous Coward on March 30, 2005 07:23 AM
One of the big things that Microsoft seems to be pushing about<nobr> <wbr></nobr>.NET is that there's a common set of framework libraries shared by all programming languages. These framework APIs take typed parameters, so there may be an impedance mismatch with dynamic PLs like Python and Perl.

#

Re:python and .net

Posted by: Anonymous Coward on March 30, 2005 09:43 PM
Having seen a demo of IronPython live from the guy who invented it I can assure you it does not require explicit compiling (there is compiling being done but it is done by the JIT compiler of the CLR in the background). He showed us an interactive calculator using the Avalon frameworks that he threw together from the Python interactive interpreter with 0 compiling.

#

Re:python and .net

Posted by: Anonymous Coward on April 04, 2005 03:17 AM
Huge library + Seamless interop between "legacy" C# applications and new Boo/IronPython assemblies + the ability to deploy in<nobr> <wbr></nobr>.NET environments without having to seriously screw things up = WIN.

(over here we still prefer Boo over IronPython; its a bit more mature.)

#

Scalability issues

Posted by: Anonymous Coward on March 30, 2005 07:20 AM
However, (C)Python still has one major (enterprise) shortcoming. The scalability is terrible. If your problem is amenable to running as multiple CPython instances, and splitting your load or input, you're fine.

However, trying to manage a load that is more naturally handled as a threaded server is a serious problem due to the GIL. And it's about to become a huge problem due to multi-core CPUs.

#

gis

Posted by: Anonymous Coward on March 30, 2005 06:02 PM
I'm afraid Graphical information systems should be Geographical information system.

#

Re:gis

Posted by: roblimo on April 01, 2005 03:13 AM
Thanks for noticing. Fixed.

#

Wrong Category

Posted by: Anonymous Coward on March 30, 2005 08:48 PM
Hey, why is this listed as a PERL article. Seems to me that it's miscategorized!

#

Re:Wrong Category

Posted by: Anonymous Coward on April 01, 2005 01:53 AM
Agreed. How offensive!

#

This story has been archived. Comments can no longer be posted.



 
Tableless layout Validate XHTML 1.0 Strict Validate CSS Powered by Xaraya