OSU administration recently approached the OSL asking us to help migrate their email archives to Google. Through contacts with other local universities that had made the switch recently, we discovered that Portland State University had written and published an open source Python app to manage the process. In the name of expedience, we decided to fork that project and use that as our base from which to extend.
Having had time to reflect, I’d like to share a few lessons from the experience:
1. Enterprise means customized. All software comes bundled with biases and assumptions; small teams may be better off adapting their organization to fit those assumptions, but there exists a threshold beyond which it is easier to adjust software to fit the organization's assumptions instead. Despite forking a completed application, we found ourselves making several customizations and undoing several assumptions made by upstream developers.