Moving House: Why and When You’ll Want to Call in an Expert
Website migrations are a lot like moving houses. Some organizations can complete the migration themselves, but there are definite benefits to calling in an expert -- whether that’s hiring a moving company or bringing in specialists for a website migration.
This is the second in a series on migrating Drupal websites. If you haven’t had a chance, I encourage you to review my colleague Chris’ post on how to prepare for the big move.
When it comes to determining whether or not you want to bring in an expert, you need to consider your developers’ skills when planning your migration. Ten years is a long time for developers to be working with a specific framework. If you've been on Drupal 7 since 2011, your developers are likely very experienced with "the Drupal 7 way" of doing things. Many of those things change in Drupal 9, which is a big factor in developer resistance around upgrading to Drupal 8 and Drupal 9.
For example, Composer is a huge change for the better that helps Drupal developers when it comes to managing dependencies. However, developers who don't know how to use it will have to learn it. Another big difference is that a lot of Drupal 8 and Drupal 9's core code is built on top of Symfony, which has changed many mental paradigms that experienced Drupal developers are accustomed to using. In particular, this change brought Object-Oriented Programming (OOP) to Drupal across the platform, where in previous versions there were only smatterings in a handful of modules. This, along with Symfony’s robust systems for services and plugins, made Drupal 8 (and now its successor, Drupal 9) significantly easier to customize, though admittedly with some additional learning required.
While some things may seem unchanged -- a Block is still a Block, for example -- the way they're implemented is different. Some things don't look the same anymore. Developers will notice things like needing to use YAML files instead of hooks to create menu items. Even debugging has changed. Things like simple debugging via print() statement doesn't always cut it in the new world, so many developers are using IDEs like PHPStorm, or a host of plugins with other editors, just to code effectively in newer versions of Drupal.
All of this change comes with overhead. Developers must learn new tools and new ways of doing things when switching from Drupal 7 to Drupal 9. That learning curve must be factored into the expected time and budget not only for the migration itself, but for ongoing development work and maintenance after the upgrade. This may mean slower progress during sprints and increased developer frustration and resistance, as they learn the new ways of doing things.
CALL IN THE EXPERTS
Bringing in outside help during the migration process can mitigate some of this learning overhead. One thing to consider when selecting an outside partner is how closely they collaborate with your internal team. The benefits of partnering with an experienced Drupal development firm include:
- migration can be planned and implemented more quickly;
- help to choose between options to ‘lift and shift’ (move your existing digital experience to Drupal 9 with limited changes) or a full website refresh including redesign, information architecture updates, and potentially user research
- help with a ROT (redundant, outdated, trivial) analysis to purge as much unnecessary content as possible before migrating;
- access to experienced developers can ’teach’ your internal teams how to do things, reducing the learning curve;
- the external team can provide training for ongoing maintenance, if your organization has the staff to service the platform;
- access to a team that's heavily experienced with older Drupal versions and can help your team get up to speed more quickly - saving money during the first year of your new site.
A COMPLEX MIGRATION FOR: INGENIUM
Ingenium represents a collaborative space where the past meets the future in a celebration of creativity, discovery, and human ingenuity. When the Canadian Science and Technology Museums Corporation (CSTMC) rebranded itself as “Ingenium”, they sought to bring a refreshed spirit and unified purpose to the activities of its three Ottawa sites: the museums of Agriculture, Aviation, and Science and Technology. With its reputation and budget under national scrutiny, the client sought an experienced technology partner to carry its new Ingenium brand online, through all its digital assets.
For Ingenium, the move to Drupal from their previous CMS was an incremental process that demonstrates that if you’re planning a migration, you might not need to do it all at once.
Ingenium started their transition by launching The Channel, a digital hub featuring curated content related to science, technology and innovation. Launched while the legacy sites were all still active, this new site provided Ingenium’s content team time to learn the newest version of Drupal, and to revise the user roles, permissions, and publishing workflows for the site. In moving terms, this was like taking possession of a new home moving out of an old place.
With their new Drupal home in place, the next stage was moving over static content. Next, Echidna replicated Ingenium’s existing functionality for importing event listings into the new site. Since this was a key feature for visitors and needed to be highly available, we developed a system that allowed admins to begin publishing events directly on the new site while the legacy event listing system was still in place -- displayed in one unified list.
This incremental approach was used to gradually incorporate features of the old sites into the new site, until the original sites were decommissioned. Hours, fees, directions, exhibitions, and educational programs from all museums can now be found with a single, user-friendly, site search powered by Apache Solr.
In the next blog, I’ll go over what organizations should consider in regards to information architecture, web features and modules, and digital experience design.