The Licensing and Compliance Lab interviews Jessica Tallon of PyPump
In this edition, we conducted an email-based interview with Jessica Tallon, the lead developer of PyPump, a simple but powerful and pythonic way of interfacing with the pump.io API, which is licensed under the terms of the GNU General Public License version 3 or, at your option, any later version.
What inspired you to create PyPump?
I began working on PyPump when Evan Prodromou launched the first pump.io servers. Although Status.net had existed before pump.io, I wasn't a user and the only social networks I used were centralized, proprietary ones which really clashed with my views on software freedom and the federated web. I wanted to be able to interact with pump without having to use a browser. The API was easy to understand, so I tried to see if I could put together a basic library.
How are people using it?
There are several interesting projects out there which use PyPump. With my day job as a GNU MediaGoblin developer, we're going to be using it as a way of communicating between servers as a part of our federation effort. A great use I've seen is PumpMigrate, which will migrate one pump.io account to another. Another little utility that I wrote over the course of a weekend is p, which was made to be an easy way of making a quick post, bulk uploading photos, or anything you can script with the shell.
What features do you think really sets PyPump apart from similar software?
One thing PyPump does particularly well is being pythonic. We've written PyPump to be as natural for the python developer to work with as possible. Hopefully, that will lower the bar of entry for developers, as they won't have to read through the pump.io API documentation or be intimately familiar with Activity Streams in order to write great applications that can interact with pump.io.
Why did you choose the GNU GPLv3 as PyPump's license?
This is actually something I get asked a lot and something which I have spent a lot of time thinking about. PyPump is a library and most people expected me to release it under the GNU LGPLv3. The reason I went with the GNU GPLv3 is that I believe that all software, regardless of size, should be free - so that we can all learn, build, fix, and use the software in whatever way we see fit. GPLv3 gives everyone the protection against someone coming along and using all that great work and writing proprietary code against it.
How can users (technical or otherwise) help contribute to PyPump?
There is so much people can do to help. We would love to get help both on the library, as we're currently working towards our 0.6 release, as well as on documentation. With PyPump being a library, we want to make sure that we have accessible, good quality documentation so that the people who want to use PyPump can. Writing software that uses it is also a great way of contributing!
What's the next big thing for PyPump?
The next big thing is our 0.6 release, in which we're aiming to provide much better documentation, better storage interaction, and a much more stable API to write against. I think some of the most exciting things won't be what we add to PyPump, but, rather, what other developers will create with it. I'm really looking forward to it being used in more ways.
Enjoyed this interview? Check out our previous entry in this series featuring Alan Reiner of Bitcoin Armory.