-
Tor Norbye has been working on nbPython, which will bring Python support to NetBeans 6.5. As anyone that has ever worked with me will know, I am one of those "You will pry my Vim from my cold dead fingers" kind of developers. I work at Sun, and nbPython is directly using the ANTLR parser that I developed for Jython, but these are not sufficient reasons for me to abandon my beloved Vim. Having said that, Tor recently posted a weblog where he demonstrates the tool by simply pulling up datetime.py right out of the Jython distribution and immediately finding an ancient typo ("ValueError" was misspelled as "ValuError" in an exception block). The fix is checked into trunk, but it had been there for a long time. Maybe these "IDE"s I keep hearing about are worth looking into after all :). Certainly I will be trying out NetBeans on the Jython Lib to see what else I can find soon. An nbPython early access should be appearing soon after NetBeans 6.5 is released.
-
Happy Halloween! On behalf of the Jython development team, I'm pleased to announce that Jython 2.5b0 is available for download. See the installation instructions.
Jython 2.5 Beta0 is the beginning of a code cooling period where the number of new features should significantly slow as we concentrate on solidifying Jython 2.5 for an eventual release. There are still a number of features that we will squeeze in (like jythonc).
This is a beta release so be careful.11View comments
-
The Jython roadmap is a bit dated now -- I thought I'd put an updated version here first, take comments, and then update the official roadmap. BTW there is a more detailed roadmap on the wiki which I'll also need to update. Also, if you have dependencies for a Python project that you want working in Jython, please put an issue in our tracker so we can get a chance to fix it before we release!
Summary
Note that Jython's version numbers represent the version of CPython from which Jython pulls most of its libraries that are written in pure Python (as opposed to the parts that are written in Java).
Jython 2.2.1
Jython 2.2.1 has been released. We will produce additional point releases for bug fixing as necessary. We are close to having enough fixed in the 2.2 maintenance branch to put out a 2.2.2 in the somewhat near future.
Jython 2.5 Beta
We are closing in on a beta at the time of this writing. We have a pretty good implementation of Python, passing more than 99% of the unit tests that we pull in from CPython. We have implemented all of the 2.5 language features and many of the libraries that are new since the 2.2 release of Jython. A couple of features that I would like to get in have not quite made it for this beta, but I think we will sneak them in slightly post-beta. Those features are: some kind of replacement for jythonc, ctypes, bz2, elementree, and ast.py (which is the exposed _ast.py added in CPython 2.6 -- _ast.py is already in Jython 2.5) I hope to have the first beta out in October.
Jython 2.5 Final
After sneaking in the features above, we need to get all of the unit tests either passing or consciously skipped. We also need to make sure that all of the issues and patches in the Jython tracker have been carefully looked at and either fixed, closed, or marked for the next version. I hope to have a Jython 2.5 out in January.
Next Jython 2.x
I think we are going to skip 2.6 and target 2.7, mainly because we can coordinate much better with upstream CPython if we are working on the same version. Also, according to this thread on Python-Dev, 2.7 may be a shorter "cleanup" style release, which should make it easier to track.
Jython 3.0
I believe the time is very close for us to start seriously discussing what Jython 3.0 will eventually look like. I think, like CPython, we want to try to be realistic and not go too crazy with the scope of change, but at the same time this will be a chance to re-think some very old design decisions and perhaps make new decisions more in line with modern Jython and JVM realities. That's about all I'm willing to officially say on Jython 3.0 this point.5View comments
-
On behalf of the Jython development team, I'm pleased to announce that Jython 2.5a3 is available for download. See the installation instructions.
Jython 2.5 Alpha3 fixes a bug that caused installation problems for many Windows users, so Oti Humbel and Leo Soto came to the rescue with an assist by Geoffrey French. Oti also fixed standalone mode while he was there. Yay!
As before, this is an alpha release so be careful.6View comments
-
Mark Ramm spent his talk urging the Django community to reduce the coupling between the various parts of Django. He fears that Django might be (partly) going down the same path that historically hurt Zope 2. Zope 2 was a self contained web framework that had no external dependencies. On the surface this sounds like a good thing, it makes installing, deploying, testing etc very easy. *But* Zope 2 created an environment where there where two communities: Python developers and Zope developers, and this surely contributed to its decline. It would be sad if the same thing happened to Django -- and it is not hard to imagine how that could happen. Note that Zope 3 has made amazing strides in decoupling itself which (as Mark pointed out) may make Django the largest open source monolithic web framework in Python.
Next up was a panel of Django committers. Among other things they talked about Mark's concerns. There is a tension between being a "Don't make me think" and "Let me choose" framework. The important thing to note is that the Django developers do care about being a composable framework with a certain set of defaults, and very much want to have good interoperability with the greater Python web development community. For more hope see Django Ticket #8929 titled "Reduce the divide between Django and the rest of the Python web world".
The lightening talks, as always, where fun to watch. There is something compelling about a series of 5 minute talks that anyone can sign up to do at the last minute.
Jim Baker and Leo Soto spoke about Django on Jython. They worked with some Pinax folks to get some of their extensions to Django running on Jython. Pinax on Jython demoed very nicely.
Adrian Holovaty and Jacob Kaplan Moss finished off the conference with a talk on the future of Django. In particular I respect their call for the community to "tell them when they suck". The ability to listen to criticism, and to even welcome it is a huge asset. They also want to start getting releases out on a regular schedule. Good stuff.2View comments
-
The first day of the inaugural Djangocon took place at the Googleplex today. Since I wasn't madly writing a presentation at this one (as I have been for every conference I've been at in recent memory), I actually took some notes.
Some highlights:
Leslie Hawthorn (of Google Summer of Code fame if you don't recognize the name) is here at Djangocon and was apparently a big part of making it happen. As always she was cranked up to 11. It's hard to believe just how much stuff has her involvment. Perhaps there is more than one LH?
Guido van Rossum talked about Google App Engine. I am *really* going to need to take it for a spin in my copious spare time. He hinted that more languages beyond Python are being audited for use in App Engine, but there was no promise of a time frame (apparently even the audit of Python -- probably one of the best known languages at Google -- took forever). He didn't say which one. I will place my bets at 60% on Ruby and 40% on Java -- though I wonder what MVC framework would make sense from Java...
Adrian Holovaty reminisced about some of the bad times with early Django code, but also how much of the original concepts remain almost unchanged. He then went on to describe the current state of Django. My favorite bit was this quote from the tracker around August 2005:I can't think of any other backwards-incompatible changes that we're planning before 1.0 (knock on wood). If this isn't the last one, though, it's at least the last major one.
Jacob Kaplan Moss continued on Django history and the current cool features of modern Django, also with some pretty funny anecdotes. He also plugged Jython on Django :). Which by the way was very much a two way effort. The Django folks where incredibly supportive of our efforts to get Django working with Jython.
Justin Bronn talked about GeoDjango and gave a fascinating talk that started with the fundamentals of GIS and then went into how to use GeoDjango to map-enable your code. It relies on ctypes, which may not be too hard to get running on Jython. GeoDjango demoes very well so that's one more reason for us to take a look at getting ctypes supported.
Carl Henderson was hilarious in his "Why I hate Django". It was a combination of interesting survey of what makes a site like Flickr scale so well and a sort of loving roast of Django. There's no point in trying to convey it -- I think they recoreded all of these talks if you are a fan of Django I'm certain you would enjoy his talk.
I also released Jython 2.5 in the middle of all of this, met Leo Soto (our Django google summer of code student), and talked over some co-routine issues with Jim Baker. All in all a very good day.
1View comments
-
[Update:] Use Alpha3.
On behalf of the Jython development team, I'm pleased to announce that
Jython 2.5a2+ is available for download. See the installation instructions.
Django runs pretty well on this release. I am attending Djangocon where Jim Baker and Leo Soto will be presenting on Django on Jython, and I wanted them to be able to tell people to grab a release instead of telling them to grab Jython from svn.
There are many bug fixes, but also many bugs that have not yet been fixed. This is an alpha release so be careful!6View comments
-
This post is mainly of interest to those that like to follow the development path of Jython. I just merged our development branch called "asm" to trunk. This marks a nice milestone on the path to getting 2.5 out. So if you are interested in grabbing bleeding edge Jython out of the svn repository, the asm branch is now closed, so use trunk instead. Trunk is located at:
https://jython.svn.sourceforge.net/svnroot/jython/trunk
Stay tuned, once I feel like things have settled down in trunk, I'll put together another alpha.2View comments
-
So I've been playing around with the online code review tool called Rietveld. You can find a live instance of the tool here. Since the tool is available to any project with a subversion repo, and it was authored by Python's First Interim Benevelant Dictator for Life Guido van Rossum, I had to check it out. Many serious Python developers are afflicted with a quasi-religious zeal to follow whatever the BDFL does or says, and I'm no exception :).
Still, that only gets me to try it out. So what do I think of Rietveld? So far I like it! My workflow with Rietveld goes something like this:
1. Make some changes in my local copy of the svn repository.
2. Call upload.py from the root of the local copy (which inolves authenticating and a comment).
3. Navigate to the issue url (the upload.py tool spits out a URL when it completes). Here is an example.
4. Take a look at the visual diffs (much easier on the eye when compared to a universal diff from email).
4a. Sometimes step 4 prompts me to delete the issue, change some code, and start again at step 1. This may be reason enough to use the tool.
5. Post the issue URL to #jython irc.
6. Check it in.
7. See what comments I get from #5 and act on them.
[Update:] Guido van Rossum pointed out that step 4a is much better accomplished with "upload -i" (This will let you add a new patch set to the same issue. Your reviewers can even see what changed between different patch sets. -- cool!)
So step 6 is probably premature if this was a traditional code review, but I *am* still evaluating, and of course any feedback is still likely to cause future changes (maybe even a rollback if I missed something really bad). Also, so far I am only using it for bigger changes -- again this is just better for evaluation purposes.
Overall I really like the tool, and I plan to continue using it. I am pondering a requirement for patch submissions from non-committers to go through Rietveld, but I still want to try it out for a while before I get serious.5View comments
-
I just read Michael Nielson's fascinating weblog post The Future of Science. In it he describes the current state of collaboration typical of modern science:
These failures of science online are all examples where scientists show a surprising reluctance to share knowledge that could be useful to others. This is ironic, for the value of cultural openness was understood centuries ago by many of the founders of modern science; indeed, the journal system is perhaps the most open system for the transmission of knowledge that could be built with 17th century media. The adoption of the journal system was achieved by subsidizing scientists who published their discoveries in journals. This same subsidy now inhibits the adoption of more effective technologies, because it continues to incentivize scientists to share their work in conventional journals, and not in more modern media.
I remember the excitement that I had when I entered the PhD program in Neuroscience at Baylor College of Medicine. I was going to become part of Science where I was going to take part in the expansion of human knowledge in the most collaborative environment that has ever been seen. Or so I thought. It turned out that success as a scientist hinged on keeping much of what you do a secret until you can get to a place where you are ready to publish. If you reveal too many of your secrets you could get scooped. Scooped!? A term taken from newspapers -- a term that underscores the need to guard your secrets lest you lose everything for which you have worked.
Disillusionment with the system was definitely one of the things that helped me decide to leave science. Another was that I was just not all that happy doing "bench work" which is scientist slang for doing experiments in a lab. In the Schultz lab where I worked, Paul Schultz was about the best mentor that I could have asked for. I don't think I've ever met anyone who worked as hard as Paul does, and it's hard to think of a nicer guy. Still, I found that I had much more fun working on the software that ran our experiments than on the experiments themselves, and so my future path was decided. In fact, in open source software I have actually found an environment where collaboration really is open and easy. Hopefully the world of science can learn from the success of open source. Again from Nielson:We should aim to create an open scientific culture where as much information as possible is moved out of people’s heads and labs, onto the network, and into tools which can help us structure and filter the information. This means everything - data, scientific opinions, questions, ideas, folk knowledge, workflows, and everything else - the works. Information not on the network can’t do any good.
If the tools and the cultural changes discussed in The Future of Science become reality, science can again become the most collaborative endeavor that the world has ever seen. It would become a place that I probably would not have left -- of course that is if I could have found a way to get past my bench work problems.2View comments
View comments