In the Zope world, a sprint is a two or three day focused development session, in which developers pair in a room and focus on building a particular subsystem. Tres Seaver at Zope Corporation launched the concept of sprints, based on ideas from the extreme programming (XP) community, for the development of Zope3.

Zope Corporation used this model in their consulting, using intensive pair programming sessions for handing over the projects to the clients' IT staff. Later, it has been used internally in Zope Corporation for developing Zope3. Finally, ZC started to conduct Zope Sprints in different places of the world, attracting people from the Zope community to Zope3 development.

A sprint is organized with a coach, such as Jim Fulton (The Zope Pope), leading the session. The coach sets the agenda, uses the whiteboard to track activities, and keeps the development moving. The developers work in pairs using XP's pair programming approach. One of the pairs needs to be a veteran sprinter, and both need Zope and Python experience. Some sprints are focused on a specific topic, like internationalization or cataloging.

The sprint approach works best when the first few hours are spent getting oriented. This means presenting Zope3 and a tutorial for the new Zope3 developers, getting everyone's computers working with the CVS server, etc.

At the end of the sprint, code is produced and Zope3 moves forward. This by definition means that sprinters need to sign the Zope Contributors Agreement. The agreement baiscally asserts a joint copyright between the commiter and Zope Corp.

Even a non-coding Zope community member can contribute to the development of Zope3 by providing a sprinting facility and paying the Jim's travel expenses. In exchange, the Zope Corporation offers a day with Jim or the ZC crew for consulting or a customer visit. Needless to say, a sprint needs a host to provide the space and connectivity. Whiteboards are usually needed. All sprinters should bring their own laptops with ethernet connections.

Usually, the sprint does not take longer than 3 days, and there are not more than 10 participants. Although, the last sprint (as of this writing), held in the beginning of December 2002 in Rotterdam, the Netherlands, hosted by the company called Infrae, was 5 days long, hence it was called a Sprintathon (something between a sprint and a marathon). There were around 30 developers from all over the world there.

The Zope Sprints are lively bursts of delevopment activity in an exciting open source project, and they achieve their goals of attracting more people to the project, sharing experience, building personal and professional relationships among the developers, and actually getting some work done!


Based on: http://dev.zope.org/Wikis/DevSite/Projects/ComponentArchitecture/SprintSchedule

Log in or register to write something here or to contact authors.