Richard Jones' Log

Fri, 29 Apr 2011
PyCon Australia 2011 - Registration Open and CFP Almost Over

A reminder that the Call for Proposals for PyCon Australia 2011 will be closing soon. We've had some great proposals so far, but there is still time left and program to fill.

PyCon Australia is Australia's only conference dedicated exclusively to the Python programming language, and will be held at the Sydney Masonic Center over the weekend of August 20 and 21. See below for more information and updates on:

  1. Call For Proposals
  2. Registration is Open
  3. More Sponsors Announced

Please share this message on to those you feel may be interested.

Call For Proposals

The deadline for proposal submission is the 2nd of May. That's only a few days away!

We are looking for proposals for talks on all aspects of Python programming from novice to advanced levels; applications and frameworks, or how you have been involved in introducing Python into your organisation. We're especially interested in short presentations that will teach conference-goers something new and useful. Can you show attendees how to use a module? Explore a Python language feature? Package an application?

We welcome first-time speakers; we are a community conference and we are eager to hear about your experience. If you have friends or colleagues who have something valuable to contribute, twist their arms to tell us about it! Please also forward this Call for Proposals to anyone that you feel may be interested.

The earlier you submit your proposal, the more time we will have to review and give you feedback before the program is finalised.

Speakers receive free registration for the conference, including a seat at the conference dinner. Don't miss out, submit your proposal today!

Registration is Open

We offer three levels of registration for PyCon Australia 2011:

Corporate - $440
If your company is paying for you to attend PyCon, please register at the corporate rate. You'll be helping to keep the conference affordable for all, especially for students and those needing financial aid. Government employees should also register at the corporate rate.
Full (Early Bird) - $165
This is the registration rate for regular attendees. We are offering a limited Early Bird rate for the first 50 registrations until the end of May. Once the Early Bird period ends, or when all Early Bird slots are filled, registration will increase to $198. Full registration includes one seat at the conference dinner on Saturday night.
Student - $44
For students able to present a valid student card we're offering this reduced rate. Student registrations do not include a seat at the conference dinner.

Additional seats at the conference dinner may be purchased for $77 each.

All prices include GST.

Information about the registration process is on the PyCon Australia website.

More Sponsors Announced

We are delighted to announce that ComOps has joined as a Gold Sponsor. Thank you to the following companies for their continuing support of Python and for helping to make PyCon Australia 2011 a reality:

Gold: Google
Gold: Microsoft
Gold: ComOps

Silver: Anchor
Silver: Enthought
Silver: Python Software Foundation

Thanks also to Linux Australia, who provide the overarching legal and organisational structure for PyCon Australia.

category: Python | permanent link
Tue, 26 Apr 2011
Review: Lennart Regebro's "Porting to Python 3"

Lennart Regebro has provided me with a free copy of his self-published book "Porting to Python 3" so that I may review it. He has considerable experience in porting code from Python 2 to Python 3, and it shows in much of his advice and examples. Regebro has assembled an excellent cast of helpers: the technical reviewer Martin von Löwis also has much expertise with Python 3 (he implemented the first port of the popular Django web framework). Brett Canon's introduction also provides a good starting point for someone new to the story of Python 3.

The book's structure is well thought-out. The first chapter immediately invites the reader to make sure they really need to port their code, and what considerations might be taken into account when deciding to do so. The book even has advice, backed up with useful information, for those who are currently unable to port their code but may start preparing for doing so in the future.

The second chapter discusses strategies for moving to Python 3 (view it online). These are presented clearly with one section per strategy. Within each section there are clear references to the other, more detailed chapters of the book which may be used to implement each strategy.

Once you've decided which strategy to apply you can focus on the pertinent remaining chapters. These follow a pretty logical progression:

  • firstly preparing the way by making your code more modern,
  • introducing the 2to3 tool for automatically converting code to Python 3 and the various options for how to use it,
  • talking through some common migration problems and some simple solutions to them,
  • presenting some modern Python (2.6+) idioms that your code may use in Python 2 and 3, and
  • supporting Python 2 and 3 without using the 2to3 tool.

The final two chapters are for more limited audiences and cover migrating C extensions and writing custom 2to3 tool fixers. Even though these are topics which most readers won't need to worry about they are still covered in good detail with minimum fuss. It is in this final chapter that Regebro's experience with porting gives weight to the advice and examples he presents.

Finally there's a couple of pretty comprehensive appendices covering over the main language incompatibilities and library changes which makes it a good reference.

As previously mentioned, the book is very well-organised giving the reader an easy path through the material depending on their situation. Throughout the book there are many pertinent and clear references to software written by others. The book suffers from some typesetting and grammatical errors, though these are minor and none could cause any confusion regarding the content.

CONCLUSION
There's a lot of information out there for porting from Python 2 to 3, but Regebro has produced a concise, well-organised and complete reference for doing so. It's not skimped on any detail though; the book covers all areas related to moving to Python 3. It's not just about porting code; it's also a handy book for any programmer who's grown up with Python 2 (or 1!) and is looking to move to Python 3.

category: Python | permanent link