One of the highlights of the Python community last year was Julython, a month-long initiative to encourage people to work more on their open source Python projects. As team winners last year, we were thrilled when the organizers announced they running Julython again January.

Last year, we were propelled to the top team spot by a combination of [[|]], open-source Django applications and some whacky projects by yours truly some of which were featured in the PyOhio keynote I gave just as [[|Julython]] was coming to a close.

This year, with one less participant, we really had to up our game but we managed get the top team score again with a similar mix of open-source Django app work and crazy Python projects including a lot of tweaks to stuff we'd worked on before.

{{ 21 }}

There was work done on many [[|Pinax]] apps and, as part of that effort, we set up a public [[|Trello board]] to track status of the overall ecosystem that we contribute to.

Here are some of the highlights of things we worked on:

== 1.0 Releases

We started the year with a big push to take a bunch of apps to 1.0. Here are some of ones that hit 1.0 during January:

=== anafero

This referrals app has matured quite a bit over the past six months or so and we are using it in a variety of ways in an assortment of different sites. From awarding credits on [[|Gondor]] to analytics dashboards detailing the site activity of those you refer, anafero has grown into a very stable and versatile app.


=== django-notification

This was a pretty major release including some drastic changes. The biggest part of this release was switching over to a pluggable backend for delivery channels. django-notification ships with a simple plain text email backend, but this app has been used with backends implemented at the site level to do things like send notifications via SMS, HTML email, and email digests.


=== kaleo

We earlier [[|blogged about the kaleo]] release. This app provides your site with user-sent invitations for others to join the site. Invitations can be unlimited or limited to a certain fixed number. You can also do things like call model APIs within your site in response to certain events to award additional invites to specific users.

[[ ]]

=== django-announcements

This is an app that enables you, the site admin, to manage announcements on your site. You can use this app to load up announcements that you want to appear to your users on a specific schedule. You can also configure each announcement to be dismissible.


=== phileo

A liking app, phileo, is a widely used app that enables the site development to quickly and effortlessly add liking functionality to different objects within the site. This can be used with various different verbs (e.g. like, love, fave, etc.) for simple ranking-like functionality. It has also been used as a form of bookmarking of objects within a site, then providing a list view to the user of all the objects they have bookmarked.


== Personal Projects

I also worked on a number of personal projects of varying degrees of usefulness. On the more practical side, [[|pyuca]], my implementation of the Unicode Collation Algorithm for properly sorting non-English strings, saw two minor releases incorporating improvements contributed by Guillaume Englert.

On the far less practical side (to put it mildly), I implemented the basics of quantum computation in a new project [[|quantumpy]].

I also did a little bit of work on [[|Sebastian]], my symbolic music analysis and composition library that I'll be talking about at this year's [[|PyCon US]].

== Can't Wait for the Next One

Regardless of the final leaderboard, Julython has become one of our favourite fixtures on the Python community calendar. It's a great opportunity to polish up old code, address longstanding issues and make progress on some of those projects you always said you'd find the time to work on.

We can't wait for the next one in July!