Skip to main content

Sprint status reports

The sprinters gave brief reports on their work at a session just before lunch today. This session was a last minute addition to the schedule, and I arrived most of the way through Ted Leung's talk on the Chandler sprint. I mentioned the distutils sprint in a previous post.

What is a sprint?
A sprint is a focused development session, in which developers pair in a room and focus on building a particular subsystem. A sprint is organized with a coach leading the session. The coach sets the agenda, tracks activities, and keeps the development moving. The developers work in pairs using XP's pair programming approach.
Barry Warsaw talked about the Mailman 3 sprint. He recommends SQLObject as an object-relational mapping that allows you to write your classes in idiomatic Python. SQLObject generates SQL code automatically.

There were several Zope-related sprints. Jim Fulton reported on some ZODB and Zope work. Tim Peters and Christian Theune added blob support to ZODB and ZEO. Zope had problems handling large files (like multi-MB source code distributions) -- performance and memory consumption were big problems. The blob support basically puts large object on the local filesystem and integrates regular file modifications with the transaction machinery. Christian also did some basic code maintenance on ZODB.

Garrett Smith and Babu (? didn't catch his last name) made some great improvements to the pluggable authentication mechanism in Zope3.

Michael Bernstein and Andy Dustman spent several days writing a weblog application for Zope3. There are basic blog posts and Atom feeds. It took a long time because they used the Dublic Core metadata in the add and update mechanism for post. It was hard to get the schema working correctly. It was hard to get into adapters and interfaces. The resulting code ended up being small, but they had to delete a lot of code. "Zope 3 is a lot easier to read than it is to write."

Mike McLay reported on a sprint involving students from three different Arlington county high schools. (Two different schools use Python as a teaching language.) They worked on a school tool
application; they did more design than writing code. They are updating an old-style Zope application to use page templates and an external backend database. They learned about SQLObject at the sprint, from the Mailman group, and started using it.

Brett Cannon, author of the python-dev summaries for the last two years, worked on the AST branch for a few days. The big goal of the sprint was to document the design for the Python compiler. I started the AST branch a couple of years ago, but never wrote a proper design
doc. John Ehrseman is working on decorators, and Nick Coghlan is working (from his home) on generator expressions. It sounds like the work to upgrade the branch to Python 2.4 is nearly complete. What's left is the rather tedious work of testing and verifying that error handling is correct. It looks like the basic design document is in good shape, though.

I didn't catch the details of the PyPy sprint, except that they got the pickle tests running and uncovered some problems with the implementation of new-style classes. New-style classes are largely undocumented, so this isn't much of a surprise. The pickle support is deeply integrated with new-style classes, because pickle needs to create and initialize objects (including immutable objects) and introspects on them to discover the object state. Several people of the PyPy project have observed that their implementation of new-style classes is sufficiently high level that it could be the good starting point for a specification; it's easier to read the intent of the Python code than it is of the C code.


Popular posts from this blog

PyCon 2018 Call for Proposals is Open!

It’s here! PyCon 2018’s Call for Proposals has officially opened for talks, tutorials, posters, and education summit presentations. PyCon is made by you, so we need you to share what you’re working on, how you’re working on it, what you’ve learned, what you’re learning, and so much more.

Before we dive in, the deadlines:
Tutorial proposals are due November 24, 2017.Talk, Poster, and Education Summit proposals are due January 3, 2018.Who should write a proposal? Everyone!

If you’re reading this post, you should write a proposal. PyCon is about uniting and building the Python community, and we won’t advance as an open community if we’re not open with each other about what we’ve learned throughout our time in it. It isn’t about being the smartest one in the room, so we don’t just pick all of the expert talks. It’s about helping everyone move together. “A rising tide lifts all boats,” if you will.

We need beginner, intermediate, and advanced proposals on all sorts of topics. We also need b…

PyCon 2018 Launches New Site, Sponsorship Search

After two great years in Portland, PyCon is shipping off to Cleveland for the 2018 and 2019 renditions of the Python community's largest gathering. PyCon 2018 will take place May 9 through 17 with two days of tutorials, three days of talks, and four days of development sprints.

For more information, check out our newly refreshed website at and follow us here on the blog and at @pycon on Twitter.

New Website

The new site features a design centered on the historic landmark Terminal Tower, a 52 story skyscraper that overlooks downtown Cleveland. When it opened in 1930, the tower was the fourth tallest building in the world and the tallest building outside of New York City. Though its height no longer tops the charts, the tower and surrounding Tower City area remain highly important to the city. What once was a beacon to guide ship captains to Cleveland's port and airplane pilots to its airport, the tower now includes 508 LEDs that light up for the holida…

How to get ready for the PyCon development sprints

[A guest post by Kushal Das, one of the 2016 Sprint Coordinators]So — you have already decided to join in the PyCon development sprints! The sprints run for four days, from Thursday to Sunday after the conference. You do not have to be registered for the conference to attend the sprints! Some teams plan to write code over all four days, while some projects plan a shorter sprint if the organizers cannot stay for all four days.Can you start getting prepared for the sprint ahead of time? Yes!There are several things you can do ahead of time, that can save effort once you arrive at the sprints — and some preparations can even be made at home, before you arrive at PyCon:Have your operating system updated and patched — whether Mac, Windows, or Linux. This eliminates one possible source of problems with getting software up and running.Go ahead and install the version control system that will be used by the projects you are interested in. If you install both git and Mercurial on your computer…