For a cultural organisation I provide ongoing maintenance and development of a central CMS from which several educational-offer sites are run — among others for culture and for science & technology. The platform is built on Silverstripe 3 and has, over the years, become a fixed part of the offer chain towards schools. It is the same platform I originally took over from the previous application developer years earlier, then still as an employee — that takeover phase is described in the 2019 catalogue-and-booking-portal project.
Taking over an existing platform from a previous application developer is a trajectory in itself. You inherit a codebase, conventions, unspoken assumptions and a user base that's used to a particular way of working. Before you start building, you have to understand what's there, what works well and which parts are fragile under the surface.
Our approach was deliberately gradual: first stabilisation and cleanly handling questions and issues from users and editors, then together with the client a roadmap for ongoing development. Only when a part clearly hurt or an extension genuinely added value did it land on the planning.
Functionally the CMS provides one place where the offer across all subsites is managed: providers publish their activities, schools find and book those activities, and evaluations are routed back to the right parties. The fact that all of this runs from one codebase and database makes editorial work manageable and prevents drift between the sites.
Alongside functional development we also play a service role: questions, issues and suggestions from daily use come to us and are — depending on impact — picked up immediately or rolled into a larger release. That helps keep the platform not just technically running, but in step with what its users actually need.
What this project shows is that 'classic' stacks like Silverstripe still fit a well-bounded domain perfectly well, provided you maintain them with care. Not everything has to move to the latest framework; sometimes it's more valuable to take a proven base and help it forward cleanly.
Outcomes
- Several offer subsites managed from one central content management system
- Ongoing stewardship of an existing Silverstripe 3 codebase without interruption for schools
- Continued development against a roadmap drawn up together with the client