Maarten Kling
Maarten Kling
17 april 2020

Hooray, we are migrating a 10 year old site! (after rebuilding it from scratch)

Taking a big step. We are migrating 1.2 million items from Plone to Django

Finally, we started.

First, let’s go back in time. In late 2018 we started talking to our customer Humanitas about their huge volunteer administration system built in Plone back in 2010. We noticed a growing amount of risks and threats for this system as time passed, especially in the area of security and performance.

One of our main concerns was the Python 2.7 support ending on 01-01-2020. We conducted a complete risk analysis and shared the outcome with them. Things got moving and we presented the offer to completely rewrite the whole application from scratch in Django.

Late in 2018 we got the call: “We are accepting your offer, you can start on the project”. The contacts of Humanitas we work with almost daily, and their managers managed to convince the board.

hoera HRS wordt vernieuwd

15 months project

So, after this wonderful news, we started at the beginning of 2019. Team formation, project setup, kick-off meetings, workflow, technology, the works. Everything is in place to start our journey for our beloved project. We managed to clean up a lot of the monster-logic which grew during the 34 iterations building version 1 of the system. As you can imagine, in these years many features were added that no one knew the details of anymore. A simple example: Information about a person was stored not in one place, but in several (on each project they’re a member of). And that’s even one of the simpler problems to explain.

During the development we tried to maintain our goal as much as possible: to launch in April of 2020. We only shifted 17 days in total as originally the deadline was planned on 2 April (1st of April was skipped, for obvious reasons). 17 days delay on a project for over 15 months of work is absolutely acceptable in our own opinion.

Team effort

This is all only possible by the enormous effort of the whole team, all the developers, managers and especially Humanitas, our customer who managed to do fulltime(!) testing work in the last 8 weeks of the project. In total 15 developers working on the project made more than 6000 commits and 1662 pull requests. Our biggest project so far.

Right now we are in a phase that the system is offline at https://hrs.humanitas.nl/hoera/. We are exporting 1.2 million items to json files, to import them back to postgreSQL. For more technical information we will publish about this next week when we are done.

Humanitas hooray

Sit, wait and relax

As for now, we can only sit, wait and relax. Work will continue on Sunday as we go live on Monday. We can’t wait!

Did you click on the screen four times in a row https://hrs.humanitas.nl/hoera/ already?

We love code