+1 -1 -18
Vote on this proposal

My GSoC Journey with Python and ZeroMQ

by Indradhanush Gupta (speaking)

Section
Software Development Tools
Technical level
Beginner

Objective

I would like to share my experiences in working full time for an Open Source project as a student developer under Google Summer of Code 2014. This is the first time I have been part of an Open Source project at such a large scale. I would like to share what I learned about contributing to open source.

Description

Will tell the audience about -

  • LEAP - The mentoring organization. LEAP Encryption Access Project are a non-profit organization that provide its users with an easy-to-set-up platform that provides secure communications.

  • My Summer Project - Writing an alternate transport for U1DB sync protocol using ZeroMQ - An asynchronous messaging framework in Python. U1DB, a database API for maintaining synchronized documents across multiple devices uses HTTP for its sync protocol, which isn't the best solution, as it maintains multiple keep-alive requests, isn't ideal for low-bandwidths and not very scalable. Thus, this summer I am working on replacing this with a transport written in ZeroMQ from scratch. Right from the system architecture to the actual protocol that will do the sync.

  • Challenges and design decisions. Why X was done and why Y was not done. Two weeks into the coding period and there already has been a lot of discussion with my mentor regarding the design of the system. I would like to share this with the audience and tell them the reason why a particular architecture design was found suitable or why one wasn't. I will share with the audience the occassional snags that we kept hitting and how we went around them.

  • What I learned with Open Source: I would like to discuss about how to commit code for easier code review, why following a good branching model makes it easier for everyone involved in the project. What steps should be taken for the time that it takes a new contributor to ease in to the development process? I willl also share how contributing doesn not only mean writing code. Why it also includes writing extensive documentation and test. A lot of them.

Requirements

Interested to contribute to open source.

Speaker bio

I will pass out of my B.Tech in June this year. I have been selected as a student to this year's Google Summer of Code. In the past I have interned at Plivo and Vaultize. I am a passionate programmer and mostly interested in Networking and Security.