After eight years of iteration on our original schools CMS, we’ve just finished migrating all 32 Outwood schools to new sites 🙌
Eight years is a long time on the Internet. I made the first git commit to a simple block-based CMS for our (then) 8 schools in January 2013. 2,145 commits to the main branch—and 32 schools—later, we retired the original “OGAT CMS” after eight valiant years of service.
View one of our academies’ May 2014 homepage in the Wayback Machine.
The CMS received a good number of incremental updates since development began—it was first implemented with Ruby on Rails 3.2, back when Bootstrap was still “Twitter Bootstrap.” But it was ultimately designed to meet different needs than we have now. The web has evolved, and so has Outwood.
Why we hit refresh
By mid-2019, it was clear that just patching and tweaking the old system would no longer suffice.
- Overdue a design refresh
- Dated theme
- Inconsistent mobile experience
- Per-site content leading to ever-increasing operational overheads for trust-wide changes.
- Maintaining cyclic content (e.g. policies) was unwieldy
- We wanted to simplify maintaining structural consistency
- Technical debt and outdated dependencies
Tackling all those points in the existing system would have required an extensive rewrite anyway—and at that point, we concluded starting again from the ground up would be less costly and also more beneficial in the long run.
A fresh start
After evaluating third-party options, we again chose to build in-house. A significant part of that decision stemmed from our being in the fortunate position of having established digital infrastructure to leverage. Kicking off as a greenfield project, the new system provided an ideal learning opportunity for our Apprentice (now Junior) Developer, Matthew, who led much of the implementation.
Working closely with stakeholders across the Outwood family, we designed a content platform that balances trust-wide consistency with local flexibility. A mobile-first frontend ensures every site looks and performs consistently on any device, while the administration backend provides a framework to author custom content within a consistent site structure.
Statutory information is now stored in a structured fashion, with workflows to help site editors ensure compliance. To cut down on manual editing, we identified areas that could benefit from automated sync processes—one of which keeps our governor listings up to date by pulling directly from the Department for Education’s Get Information About Schools service. This means that any changes to governor appointments are quickly reflected online without requiring our site editors to lift a finger
Under the hood, you’ll still find Ruby on Rails on the backend and Bootstrap on the frontend. But the entire codebase has been rethought to embrace modern conventions, and make future enhancements as straightforward as possible.
Curious to see the difference? The same academy’s website today.