Deciding between Continuity and Change in Open Source

When you’re a big, for-profit project, it can be easy to justify a change from outdated software to the new hotness: figure out why the old software isn’t working for you, do a cost-benefit analysis, and – if it still seems like a good idea – make the change.

When you’re a community of volunteers, that justification can be less clear: cost-benefit analyses will rarely be about money. Worse still, the human costs can be difficult to justify: It’s difficult to get volunteers to do more unpaid work than they’re already doing. If your community depends on Open Source software, you get the added political difficulty of needing to navigate the divide between large-scale change and making small improvements to systems your community actively contributes to.

Whilst the motivation might be different, the process isn’t: leading a community towards change means understanding why existing systems aren’t suitable, making your community enthusiastic about the need for change, and then actually making that change.

To help make this point more concretely, we’ll look at how and why linux.conf.au – a long-running Open Source conference in Australia – effected a move away away from a bespoke legacy conference management software to one based on Symposion, the popular Django-based software created for the Python Software Foundation. We’ll also look at how that’s led to the PSF funding Registrasion, a Django-based conference sales platform.

With this case study as a guide, we’ll talk about how to make a decision to replace the software that your community runs on. In particular, we’ll cover how to identify and engage with stakeholders within a community; the value of prototypes in maintaining interest; and what a cost-benefit analysis might look like when your currencies are human joy, and burnout prevention.

About Christopher Neugebauer

@chrisjrn

Christopher is a programmer from Hobart, a city in Australia surrounded by mountains and is only a ferry trip from Victoria. He’s currently a freelancing Python developer, working on making conference management better for people who manage conferences. He is strongly interested in developing the Australian and International Python communities: he is director of linux.conf.au 2017, a past convenor of PyCon Australia, a past board member of Linux Australia, and has been a fellow of the Python Software Foundation since 2013.

In his newly-found spare time, he enjoys presenting on Mobile development at Open Source conferences, and presenting on Open Source development at Mobile conferences.