Today Graham Dumpleton tagged the SVN and has made available the release candidate of mod_wsgi. The mod_wsgi adapter is an Apache module that provides a WSGI compliant interface for hosting Python 2.3+ Python based web applications under Apache. Graham has written it completely in C code so it has a lower overhead than the mod_python or CGI adapters. It can be used with Apache 1.3, 2.0 or 2.2 and normally runs in 'embedded mode' where the application code is executed within the context of normal Apache child processes. If you run mod_wsgi with Apache 2.x on a Unix/Linux system, it can also run in a 'daemon mode' where one or more distinct processes can be dedicated to one or more WSGI applications. Graham has put together great documentation including instructions on using mod_wsgi with some of the common Python web frameworks and applications including Trac, Django, Pylons, MoinMoin and TurboGears.
Adal Chiriliuc has built Win32 binaries of the release candidate and these can be found here.
I have lucky enough to have been associated with the testing of mod_wsgi since it's inception and want to thank Graham for all his efforts in developing and releasing a WSGI adapter of high quality and functionality. Also thanks to other testers who kept Graham honest and busy. In my humble and most likely biased opinion, I think it will become the WSGI adapter of choice when serving Python applications under Apache.
I am an "old" computer engineer & programmer, not old enough to have a punch card story but old enough to - have owned a Zx-81 - programmed in Motorola 6809 assembler - remember when 64K was lots of RAM - fixed a hard disk by replacing the platter
Thursday, July 26, 2007
Monday, July 23, 2007
IronRuby Pre Alpha Source Code Released
Today John Lam announced the first release of IronRuby source code. Of interest to me in the announcement was the following quote:
"We're also happy to announce that we will be accepting source code contributions into the IronRuby libraries."
This policy is what many users of IronPython have been wanting since it's first release. Since both language implementations are released under the same license, hopefully Microsoft will see fit to change their policy for IronPython as well. And once the DLR reaches 1.0, hopefully we will be able to contribute to the IronPython compiler codebase as well.
So congratulatons to the IronRuby team on the progress to date, great to see dynamic languages getting more exposure in the .NET world.
"We're also happy to announce that we will be accepting source code contributions into the IronRuby libraries."
This policy is what many users of IronPython have been wanting since it's first release. Since both language implementations are released under the same license, hopefully Microsoft will see fit to change their policy for IronPython as well. And once the DLR reaches 1.0, hopefully we will be able to contribute to the IronPython compiler codebase as well.
So congratulatons to the IronRuby team on the progress to date, great to see dynamic languages getting more exposure in the .NET world.
Friday, July 06, 2007
Sydney traffic chaos disrupts SyPy meeting
Yesterday I hosted the July SyPy meetup at my work. Since the office is North Sydney based, many pythoneers would need to travel to the meeting using Sydney's rail network. It doesn't have the best record for reliability, and yesterday was a classic example. A panel was ripped off a CityRail train as it crossed the Harbour Bridge resulting to commuter chaos for many hours. The good news is that python programmers are a hardy bunch and ten overcame the chaos so we still managed to have a great meeting.
Tim Churches gave a talk on the NetEpi Project which is open-source, network-enabled tools for epidemiology and public health practice. It is consists of two components:
- NetEpi Collection, a Web-based outbreak data management tool, written in Python and using open-source components and infrastructure, including the PostgreSQL database.
- NetEpi Analysis, a tool for interactive exploratory data analysis of large (10-100 million rows) population health/clinical data sets. It is mainly written in Python, uses Numeric Python (NumPy) and the R statistical environment.
Wednesday, June 27, 2007
Submitted a talk proposal for OSDC 2007
Yesterday I submitted my talk proposal for OSDC. If accepted, the talk will be about web testing using scripting languages.
The submission deadline for proposals is 30 June, so why not submit one as well. So in no particular order, Alan, Keith or Ben take this as me rattling your cages.
The submission deadline for proposals is 30 June, so why not submit one as well. So in no particular order, Alan, Keith or Ben take this as me rattling your cages.
Wednesday, May 30, 2007
Google Developer Day tomorrow but not in Malaysia
Tomorrow is Google Developer Day and if I was in my normal country of residence I would be attending. But since I have been working in Malaysia for the last week, I will just have to wait for the Google videos. Very interested in the GData stuff as I have been working on some things with the Google Spreadsheet Data API. Expect some blog posts about it soon.
Saturday, May 12, 2007
OSDC 2007 Call For Papers
This year's Open Source Developers Conference will be in Brisbane at the Royal on the Park Hotel (opposite the City Botanical Gardens). On their website I see that the "Call For Papers" is now open.
The key dates are:
Submission deadline 30th June 2007
Proposal acceptance 31st July 2007
Submission deadline 31st August 2007
OSDC 2007 Tutorials 26th November 2007
OSDC 2007 Conference 27th - 29th November 2007
Decision time again, do I want to submit a paper this year and if I do, what will it be about.
The key dates are:
Submission deadline 30th June 2007
Proposal acceptance 31st July 2007
Submission deadline 31st August 2007
OSDC 2007 Tutorials 26th November 2007
OSDC 2007 Conference 27th - 29th November 2007
Decision time again, do I want to submit a paper this year and if I do, what will it be about.
Friday, May 04, 2007
A new computer for work
I am writing this post with my new MacBook Pro (2.3GHz Core 2/2Gb DDR/120Gb SATA). Alan, Andy and Graham, I know I said I didn't want one but thanks to BootCamp and rEFIt, it certainly runs my favorite OS well. And I admit Mac OS X is proving to be a pleasant experience. You can quiz me why I changed my mind at the next SyPy meeting.
Wednesday, May 02, 2007
When I programmed in 6809 assembler
I have been asked how could I have programmed in 6809 assembler since a ZX-81 computer used the Zilog/NEC Z80 CPU. So to clarify things, I only ever programmed in BASIC on the ZX-81, but in the mid eighties I had a job designing and programming realtime controllers for fruit grading and handling machinery. These controllers used the 6809 processor. It was a very interesting and challenging job. The code was created on a system running Flex 9 OS, burned to EPROM and then tested in the real hardware. Debugging was done using a logic analyser.
Tuesday, May 01, 2007
Mono and the Dynamic Language Runtime
In my post about the IronPython 2.0 Alpha release, I wondered how the mono team would implement or support DLR. The answer appeared in this post by Miguel de Icaza
"The release for the DLR is done under the terms of the Microsoft Permissive License (MsPL) which is by all means an open source license. This means that we can use and distribute the DLR as part of Mono without having to build it from scratch. A brilliant move by Microsoft."
Hopefully there will not be many changes required to the mono compiler and runtime so it will compile and run the DLR. Looking forward to running IronPython 2.0 on Mono soon.
"The release for the DLR is done under the terms of the Microsoft Permissive License (MsPL) which is by all means an open source license. This means that we can use and distribute the DLR as part of Mono without having to build it from scratch. A brilliant move by Microsoft."
Hopefully there will not be many changes required to the mono compiler and runtime so it will compile and run the DLR. Looking forward to running IronPython 2.0 on Mono soon.
Dynamic Language Runtime Source Code
In my previous post I said I was unsure what license Microsoft's DLR was released under. But in this blog post from Jim Hugunin, I discovered it is released under the same license as IronPython 2.0 - the BSD-style Microsoft Permissive License. This means there is access to the source code for DLR. Currently the DLR source is shipped with source code distribution of IronPython 2.0 Alpha 1.
IronPython 2.0 Alpha 1 Released
Microsoft has just released the first alpha of IronPython 2.0.
This version of IronPython is built on top of the new Dynamic Language Runtime (DLR) which is a shared runtime for dynamic languages on CLI. One of the goals of DLR is to allow different dynamic languages to share library code, so in theory and the future my IronPython code would be able to access code in a IronRuby gem. The DLR is distributed as part of the IronPython release and is implemented with two assemblies - Microsoft.Scripting.dll and Microsoft.Scripting.Vestigial.dll
The final release of IronPython 2.0 will support the language features added to Python 2.5.
Microsoft has changed the license for IronPython to the Microsoft Permissive License. Comparing this with the IronPython 1.1 license, the new license doesn't appear to add any restrictions.
If you have read my other blog posts about IronPython, you would have noticed that I am a fan of of Mono, the open source implementation of the CLI. Sadly IronPython 2.0 will not run with Mono 1.2.3.1, as calls to the DLR assemblies cause a seg fault. I am not sure what path the Mono developers will take in relation to supporting DLR with Mono. They could modify the mono runtime to work with the DLR assemblies but it is likely the DLR license may not allow this. If they implement the DLR API inside Mono with a Mono namespace like Mono.Scripting, then any dynamic language using DLR would need to be conditionally compiled dependant on CLI implementation. So I await with interest for an "offical" comment from Miguel de Icaza.
This version of IronPython is built on top of the new Dynamic Language Runtime (DLR) which is a shared runtime for dynamic languages on CLI. One of the goals of DLR is to allow different dynamic languages to share library code, so in theory and the future my IronPython code would be able to access code in a IronRuby gem. The DLR is distributed as part of the IronPython release and is implemented with two assemblies - Microsoft.Scripting.dll and Microsoft.Scripting.Vestigial.dll
The final release of IronPython 2.0 will support the language features added to Python 2.5.
Microsoft has changed the license for IronPython to the Microsoft Permissive License. Comparing this with the IronPython 1.1 license, the new license doesn't appear to add any restrictions.
If you have read my other blog posts about IronPython, you would have noticed that I am a fan of of Mono, the open source implementation of the CLI. Sadly IronPython 2.0 will not run with Mono 1.2.3.1, as calls to the DLR assemblies cause a seg fault. I am not sure what path the Mono developers will take in relation to supporting DLR with Mono. They could modify the mono runtime to work with the DLR assemblies but it is likely the DLR license may not allow this. If they implement the DLR API inside Mono with a Mono namespace like Mono.Scripting, then any dynamic language using DLR would need to be conditionally compiled dependant on CLI implementation. So I await with interest for an "offical" comment from Miguel de Icaza.
Friday, April 06, 2007
Last nights Sydney Python Group Meetup
Last night was the monthly SyPy meetup. Thanks to generosity of Google the venue was the Fraser meeting room at the Sydney Googleplex. It was a great turnout of Sydney Pythoneers with 30+ attending.
First Alec Thomas gave a talk about PyCon 2007 and what he felt were the 10 best talks he attended. Alec's presentation can be found here. Then Andrew Bennetts gave a talk about the Bazaar GPL Distributed Version Control Software. Andrew did a good introduction of what Bazaar can do, then used the rest of the talk time to answer questions. Based on the number of questions, there is certainly alot of interest in this software tool.

After the meetup had finished, a number of us with a thirst for more discussion and beer headed to the cafe/bar next to the Google building where access to happy hour prices had been extended for us. Had some interesting discussions including one with cafe owner about the ultimate ui design for a bar point of sale.
Thanks to Alan Green for his organising skills and Google for providing an excellent venue.
First Alec Thomas gave a talk about PyCon 2007 and what he felt were the 10 best talks he attended. Alec's presentation can be found here. Then Andrew Bennetts gave a talk about the Bazaar GPL Distributed Version Control Software. Andrew did a good introduction of what Bazaar can do, then used the rest of the talk time to answer questions. Based on the number of questions, there is certainly alot of interest in this software tool.

After the meetup had finished, a number of us with a thirst for more discussion and beer headed to the cafe/bar next to the Google building where access to happy hour prices had been extended for us. Had some interesting discussions including one with cafe owner about the ultimate ui design for a bar point of sale.
Thanks to Alan Green for his organising skills and Google for providing an excellent venue.
Monday, February 26, 2007
PyCon Envy
I am jealous! I want to be at PyCon 2007 and reading the few blog posts (I think everyone there is having too good a time to blog) makes me want to be there even more. Hopefully the video and audio will be uploaded soon. Guess I will just have to save, convince the "better half" it's for the good of the family and make it to PyCon 2008. Alec Thomas will be giving a debrief on his time at PyCon 2007 for the April SyPy meeting so more envy likely.
Thursday, February 22, 2007
IronPython 1.1 Beta 1 Released
Just in time for PyCon 2007, Dino Viehland of the IronPython Dev Team announced the release of the first IronPython 1.1 Beta.
<snip>
This release primarily focuses on adding the remaining new functionality for the 1.1 release (array module, importing pre-compiled modules) along with many new bug fixes. Also included but previously available with 1.1 Alpha 1 are the new XML Doc comment integration with the help system, the SHA, MD5, and select modules. The remaining of the 1.1 cycle will focus on bug fixes.
</snip>
<snip>
This release primarily focuses on adding the remaining new functionality for the 1.1 release (array module, importing pre-compiled modules) along with many new bug fixes. Also included but previously available with 1.1 Alpha 1 are the new XML Doc comment integration with the help system, the SHA, MD5, and select modules. The remaining of the 1.1 cycle will focus on bug fixes.
</snip>
Subscribe to:
Posts (Atom)