Next weekend was the much awaited PyCon. At Nimhans Convention Centre, I started a day earlier, for I had enrolled for two workshops. From a range of topics like "Learn Python in minutes", "Getting started with Django", I thought of picking workshops that transfered skills/ideas that one couldn't easily catch from the Internet. One of the workshops I attended was "Decorators Demystified" by Anand Chitipothu. The workshop was VERY hands-on, and was conducted using an IPython Notebook, with the contents still available here. Decorators are a very "functional" concept, so to get us attendees ready for core functional constructs, we were given a lot of quick examples and tasks demonstrating how functions are first class objects in python. Things like -- functions can be passed as arguments to, and returned from functions, assigned to variables, just like any other objects. Once we got comfortable with passing functions around, we wrote very basic decorators like stack trace, memoize. The workshop was concluded with taking decorators to writing a very basic web framework (get the routing to work). There are a lot of real-world applications of decorators listed at the Python Decorator Library. One application we can readily try to use in existing projects is a Decorator based Build system. Another workshop I attended was Document your code. This was also a very hands-on workshop that taught writing in reStructred text (I knew Markdown well, so this wasn't hard), and using python-sphinx for documentation of your projects that can be yielded in various formats, viz HTML, PDFs, LaTeX or even plain-text. Python-sphinx is used for the new Python Documentation, so this workshop was a great starting point for those who wanted to contribute to Python's documentation. the conference days had lots of interesting talks that one can find here with links to the funnel pages and slides. The one that I sat through the whole duration and enjoyed the most was Messing with Govt data using Python which talked about Anand's hacking around extracting voterlist and pollbooth data from govt archives (PDFs and other unstructured sources) and making this information available during the elections, a time when election comission website tends to go down.
Good conferences are not all talks and workshops, and this was very evident at PyCon. Upcoming and established organizations alike were all attracting attendees to their booths. Redhat was giving away T-Shirts to contributors to Redhat projects and I got one due to my tiny contribution to Firefox OS in August. There was a lot of presence of startups, and one couldn't help but notice the so many HackerEarth folks, who also showed participation as organizers of the conference. Campus Hash launched themselves on the second day of PyCon and made best use of interacting with the community at their booth at PyCon. I even saw folks wearing Aplopio swag, but couldn't find the opportunity to chat with them.
One booth that I spent the most time on was set up by volunteers of the Karnataka Free Software Movement. I had read about the amendment to The Goonda Act in Karnataka under the article We the Goondas at the Centre for Internet and Society's website. The volunteers of FSMK were spreading awareness about the meaning of such a law and the consequences it can have, giving ultimate power to people who don't understand the internet and the dynamics around it. They also organized a screening of the popular documentary The Internet's Own Boy: The Story of Aaron Swartz followed by a discussion on what the amendments mean and a call for protest and spreading the word. The Tamil Nadu govt had already followed Karnatka govt's steps (at the time of the discussion) and it would be sad to see this spread to other states.
I met a lot of people whom I had met earlier in Delhi at Mozilla events, as well as those whose names I'd often seen in KDE Development activity from India during the GSoC months. There was also a re-union of my College's Linux User Group. Find some pictures below :)