Sun Gets Serious About Python

Python has been enjoying a tremendous rise in popularity recently. At the beginning of the year Python became TIOBE's language of the Year (for 2007), surpassing Perl and making it the 6th most popular language. Then, Django started to gain prominence, followed shortly after by the release of Google's AppEngine, which features Python technology. Today, Python got a further boost with two announcements from Sun that strengthen their support of the language. Dynamic Languages & Tools Architect Ted Leung and Jython Project Lead Frank Wierzbicki announced that future releases of NetBeans will support Python and Jython. A detailed list of planned features is available on the nbPython project page, and includes: Syntax highlighting with version support, Code Completion, Python/Jython support, PyUnit support, Debugger support, Python library manager, Bundled Jython Package and Execution of python scripts. Ted notes:

One of the obvious things that Sun could do in the Python world is to make Python a supported language in the NetBeans IDE. Netbeans has really nice support for Ruby and Javascript, so why should Python be left out? So today Sun is announcing that a future version of NetBeans will provide support for Python. We are not announcing which release of NetBeans that will be because we are taking an unconventional (at least for NetBeans) path towards providing that support.

Before Frank Wierzbicki and I were even hired by Sun to work on Python and Jython, Allan Davis, a member of the NetBeans community, decided to start implementing support for Python in NetBeans in a project called NBPython. What we’ve decided to do is to work together with Allan and the rest of the NBPython community to produce a high quality Python plugin for NetBeans.

The new Python Developer Center is your connection for downloads, community, libraries, documents, and frameworks for developing web applications with the Python programming language and Jython, its implementation for the Java platform.

Sun has proven that Netbeans is a viable IDE for languages other than Java, however it will be interesting to see how they will fare against established Python IDEs such asKomodo, Wing, and the PyDev Eclipse plugin. If they can do for Django what they did for Rails, it will be Game On!

I am involved in writing a python-binding to Apache Axis2/Java. While I was doing this; sometimes I had to execute python scripts in IDLE, first and then used them in my IDE.I did that kind of a thing, because it was easier for me to do it since my IDE did not have rich-feature support for python or jython. It is a good news for me indeed :) I must congratulate Frank Wierzbicki for driving SUN in this direction.

A great way to get people using a scripting language like Ruby, Groovy or Python in a Java environment is to use it for non-production code. Tools like Ruby's Rake, RSpec, and Springy allow developers to become used to a language other than Java without the challenge of changing the company's mind too much.

Python has the lovely SCons for building, and doctests for acceptance testing, which combined with ctypes for accessing C APIs is appealing in the wider development world.

Many of these tools move us away from XML towards more expressive DSLs. A good thing.

What will the integration support be for using Python within Java or C/C++ projects for building or testing?

I am judging that you think I may have been over the top in my Python zeal. I'm afraid you have caught me out - I admit that I'm a bit of a Python fan.

I included the Java community because of the Jython angle. Some have suggested that Sun is promoting this as a way to enhance the reach of the JVM.

We tend to use the Architecture queue as a grab bag for general interest topics that we think are relevant to more senior developers, architects, project managers, etc. In this case, I think the uptick in Python adoption could have a profound impact - particularly Django - so that is why I wrote the item.

It's nice to see Sun taking an interest into what is a very stable language running on the JVM for quite some time now.Once all the hype around ruby clears out, I think python will come out as one of the winners in the all the scripting languages puzzle.

Apart from the eye candy (spaces vs end to terminate blocks) and other such shallow, trivial aspects what is the real difference between Python and Ruby? FIO I've programmed in both languages, and one of the first things I did for Python was to change the input language so that it used parentheses, I used said mod for a week until I was fairly up to speed. Using a similar system when embedding python in HTML would be trivial.

That Python and Ruby have different libraries doesn't count as a real difference either unless there are deep reasons why one language is better suited to a given purpose than another.

So.. what are the hard to achieve goals of today's programming environment and why is the one language better than the other?

For example, for which language would it be easier to write a compiler that automatically uses multiple cores, both for executing code in parallel and for constructing pipelines (core0 does some work and passes the result to core 1 that does some more which passes it ...)?

Is your profile up-to-date? Please take a moment to review and update.

Email Address

Note: If updating/changing your email, a validation request will be sent

Company name:

Keep current company name

Update Company name to:

Company role:

Keep current company role

Update company role to:

Company size:

Keep current company Size

Update company size to:

Country/Zone:

Keep current country/zone

Update country/zone to:

State/Province/Region:

Keep current state/province/region

Update state/province/region to:

Subscribe to our newsletter?

Subscribe to our architect newsletter?

Subscribe to our industry email notices?

You will be sent an email to validate the new email address. This pop-up will close itself in a few moments.

We notice you're using an ad blocker

We understand why you use ad blockers. However to keep InfoQ free we need your support. InfoQ will not provide your data to third parties without individual opt-in consent. We only work with advertisers relevant to our readers. Please consider whitelisting us.