What are development sprints?
At PyCon, after the main conference, the next four days many developers and contributors sit together in different rooms. They work on their projects, they submit patches to other projects. Lots of discussions happen over lunch, or in the corridors.
How do these sprints start?
After the last keynote, project owners queue up near the stage and come up one by one to describe their projects and what they will be working on. Attendees then go to different rooms allotted to these projects to start working on them.
Is this something a new developer can join in?
Absolutely. If you come to the tables of any major project, you will find people helping others setup their development environment. Sometimes you will find a table with one or two people on it. If you ask them about their project, they will be really interested to explain the project to you and they will also help you start working on the project. I spend most of the time at the CPython development table, where I've seen people getting patches merged within those four days. Many said that they've never contributed to any upstream project before.
What kind of projects can I expect to see at these sprints?
You will find most of the major projects in these development sprints. If you have not decided any particular project, you can roam around in the different rooms and visit all the tables. You will find different kinds of projects on those tables. Starting from web frameworks, to the latest scientific Python stack or even people writing games with PyGames.
But I can do that from my home over IRC, isn't?
Actually no, you cannot. In the development sprints you can meet developers face to face, which is very important in building trust. Before getting commit access to your favorite project, you have to gain trust of your fellow developers from that project. You have to submit quality patches, and face to face meeting adds up to your credits.
Let me tell you a story from 2014 sprints. At the Cpython development table I was having issues with the Mercurial. As I was telling that to the other core developers at the table, I figured out that there were few people looking at my screen from behind. When I looked back, they told me that they are the authors of Mercurial project and they would love to solve my issue. Within next ten minutes, all of my questions were answered, all issues were solved. This is not possible if you decide to stay at home. Come to the development sprints and experience this yourself.
Is this only code, no other fun?
You will find lots of tips and funny stories while writing patches. The kind of stories you cannot hear or read anywhere. When I managed to break CPython builds for the first time, I heard stories from other core developers and we all had a good laugh. We also go out to different food joints in the evening. I personally found Montreal is amazing for food lovers.
Can I attend only first two days of the sprint?
Of course you can. We all have other commitments. You may want to work on your favorite project for the first two days and then go out for other work. With each day, the number of participants will come down, but even on the last day you will find a good number of Pythonistas to hangout with.
This sounds like fun, so how can I add my project to the sprints?
First create a wiki page with details about the things you want to do in your project during the sprints. This can be writing code, writing documentation or discussing design decisions. After you have a page ready for others to look at, you add that page url to this page. It is always better to have things ready than doing it on the spot. Remember to stay after the keynote on the last day of the main conference, come on the stage and talk about your sprint ideas in front of everyone.
I go to conferences in different countries, but none have such amazing effect like PyCon development sprints. Maybe because it is huge. The number of people attending or the number of projects, both are really high. People are engaging in various technical discussions, some are talking about next conference we all can meet.
So if you are yet to book your hotel and flight details, make sure that you keep room for PyCon development sprints. Your life will be changed.
Few more photos from sprints 2014