This year I attended my first DjangoCon and, needless to say, it was pretty amazing. I also attended my first Django Sprint after DjangoCon was over. It was a fantastic opportunity to work alongside some of the members of the core team and to learn more about how decisions are made for the Django project. Here is a little bit of information about the sprint and some things I took away from it and would like to share.
I was not sure of what to expect at the sprint. Even after looking at blog posts from other people and chatting with some coworkers who attended previous ones, I was still a bit intimidated by the thought. However, my apprehension quickly faded.
The sprint was held at Digital Bootcamp in Chicago. The space was nice with plenty of room for everyone and spanned a couple of floors. There were quite a few people just like me at the sprint who were all friendly. The vast majority of people were working on Django, but there were some folks working on other Django-related projects.
After some obligatory coffee, donuts, and soda, Django Software Foundation President Russell Keith-Magee led with an introduction on how to get involved working on Django. The process is straightforward, but I found his explanation invaluable for a first timer. He suggested a few online resources to get started and, before long, I found myself looking into a variety of user-submitted bugs and piecing together how to replicate them. Everyone at the sprint joined the #django-sprint IRC channel and asked questions back and forth the entire time. Anytime someone had a question, one of the core devs would spring to their feet to help. It was a really cool experience to sit and talk with the people who make our framework great.
I chose to spend my time looking into unreviewed tickets. There were quite a few tickets spanning several different versions of Django and different components of the project. After about half an hour, I found one that I was able to duplicate and understood well enough to attempt to patch. With the help of Russell Keith-Magee, I was able to create a patch for the issue. Russell helped me figure out the best way to approach the issue and showed me some cool things I did not know about django.utils.encoding and django.utils.six. I also learned more about how Django resolves URLs into views, which is significantly more interesting than I previously believed. Before the end of the day, my fix had made it into master.
Toward the end of the day, some members of the team sat and discussed where Django is headed and how the team plans to approach some of the problems Django currently faces. Each member of the team had many great ideas on how to approach each issue. It was very encouraging to see that the challenges I face on a day-to-day basis are recognized throughout the community and are very much on the minds of the people behind the framework. It was a “fly-on-the-wall” moment that I will never forget and was probably my highlight of the entire conference.