Summer of Awesome Wrapup

So the summer has come to a close! I've written before on the Google Summer of Code and Outreach Program for Women programs we participated in. We had a really great summer... I thought I'd give an update on things. In the same order as our Summer of Awesome post, here's a recap of how things went:

Summer of Code projects

  • Aditi Mittal's blogging media type works, and we are polishing it up before we get it merged into master. Some things still need to be done, but several exciting things came out of her work, including efforts to generalize media types as plugins (which they now are!). We use this new plugin infrastructure with the blogging media type, which now has its own panel and view. More updates to come.
  • Praveen Kumar got his search plugin up and running using Whoosh; efforts will be made to merge and polish up with the present codebase shortly.
  • Rodney Ewing went above and beyond all expectations for the summer. Not only did he finish pluginifying authentication (adding multiple plugins, including LDAP, OpenID and Persona), he helped immensely with code review and did many other projects, like most of the work on the previously mentioned pluginification of media types.

Outreach Program for Women projects

  • Emily O'Leary worked on various testing tasks: improving the speed of unit tests (merged!), working on a Jenkins testing setup set up for MediaGoblin, and on getting a functional testing setup with Selenium. In the process, we also discovered some issues about how hard it is to get functional testing working nicely with MediaGoblin; many lessons learned!), as well as the bonus task of ticket triage!
  • Jessica Tallon worked on federation support in MediaGoblin via the Pump API. Jessica wrote a wrapup post which can give you some sense of things, but things have continued even after that blogpost was originally written!. PyPump has been rewritten and works really well, can do all sorts of new things! Updating MediaGoblin to include the appropriate endpoints for the Pump API is currently in progress; much work to be done still, but an image has been successfully submitted to MediaGoblin via PyPump! Commenting via PyPump works too! This work has been done in a separate branch, but we are anticipating merging these changes with MediaGoblin incrementally.
  • Natalie Foust-Pilcher’s administrative interface work is now in place and pending review. The new admin interface includes new features such as the ability to set the terms of service / code of conduct for a site, the ability to submit reports on problematic users, and the ability to review and take actions on said reports. Great stuff! Additionally, some work has been done under the hood, including a nice new, "foundations," framework for adding default values into the database, and a new permissions/privileges system. All thanks to Natalie’s work!

Overall it was a great summer. Thanks to the hard work of all our students we are much, much closer to 1.0 than I would have dreamed. The only "downside" after all this is that I have a large pile of code to review and get cleanly merged with mainline MediaGoblin. Talk about problems you can't complain about!

Once this happens though, we will have nearly everything needed for 1.0. How cool is that? Talk about summer of awesome, indeed!

Thanks to all our students mentioned above... you all rock! And thanks also to our mentors: Sebastian Spaeth, Joar Wandborg, Aeva Palecek, and Aaron Williamson (well, and myself). Without you all this summer would not have been possible. Thanks to everyone! And now, onward to use all this summer of awesomeness to make MediaGoblin the best media publishing software ever!