Beyond the Build with Exploratorium & the Drupal Association

April 18, 2024 | 30 minutes

Drupal Association

This “Beyond the Build” conversation features George Perry (Exploratorium) and the Kanopi team discussing a multi-year modernization effort that moved one of the web’s oldest sites forward while preserving decades of content.

Who’s involved

  • George Perry, Manager of the Online Media Group (part of the Media Studio dept.) at the Exploratorium.
  • Kanopi team of Tim Tufts and Jim Birch, supporting strategy, architecture, design, and development.

Context: a truly historic website

  • Exploratorium’s site was originally exploratorium.edu and they describe it as one of the first ~600 websites on the internet.
  • The organization has tens of thousands of pages, many created across multiple eras (hand-coded HTML, older tools, then Drupal).
  • A key theme: preserving a massive “online legacy” while making the platform maintainable.

Why Drupal for Exploratorium

George frames Drupal as a fit for their reality:

  • Scale + complexity: tens of thousands of pages, many programs, and long-lived initiatives.
  • Many editors + permissions: needs role-based, multi-editor publishing.
  • Flexible data model: better suited than WordPress for their volume and content structure.
  • Editor experience + SEO: they chose to keep Drupal as both content system and front-end (rather than headless React/Gatsby).
  • Open-source alignment: strong preference for open source and contributing back.

The engagement: Drupal 7 → Drupal 8 plan, delivered on Drupal 9

Kanopi was initially brought in to:

  • Create a blueprint + roadmap to move from Drupal 7 to Drupal 8 (at the time).

But by the time the work landed:

  • The implementation ultimately moved to Drupal 9 (highlighting how fast platform timelines shifted during the project).

The migration approach: phased and pragmatic

They describe a Phase 1 / Phase 2 / Phase 3 strategy because the site was far beyond a simple “lift and shift.”

Notable details:

  • Drupal 7 had 41 content types.
  • Kanopi and Exploratorium simplified the model by consolidating many outwardly-similar types (exhibits, exhibitions, galleries, events, etc.) into a single umbrella concept: “Experiences.”
  • Phase 1 focused on the Events / Calendar area first, since Exploratorium is a major in-person events destination, not just a content site.

The big challenge: complexity and “unknown unknowns”

A few recurring hurdles:

  • Hundreds of microsites / folders and old static HTML sections.
  • Long-tail legacy artifacts (“ping test page” type discoveries).
  • Internal churn and gaps in deep Drupal knowledge on the client team early on.
  • Stakeholder sprawl: marketing, fundraising, education teams, and high-profile projects (including NASA partnerships and an eclipse initiative).

George describes it as discovering “skeletons behind skeletons behind skeletons,” which is honestly the most accurate Drupal migration summary I’ve heard.


A clever launch tactic: split traffic across Drupal 7 and Drupal 9

To meet a critical deadline (the eclipse project):

  • They launched part of the new Drupal 9 experience early using domain masking / routing so some traffic went to Drupal 9 while the rest still hit Drupal 7.
  • This let them hit stakeholder timelines without delaying the broader site.

“Launch isn’t the end”: already planning Drupal 10

Even right after the Drupal 9 cutover (they mention 4/19 or 4/20), the next steps are in motion:

  • Plan the Drupal 10 upgrade before Drupal 9 end-of-life pressure.
  • Identify deprecated code and module readiness.
  • Consider editor shifts like CKEditor 4 → CKEditor 5.
  • Time it around organizational cycles like fundraising season.

What made the partnership work so well

This segment is basically a checklist of what good agency-client partnerships look like:

1) True collaboration

  • Exploratorium developers took tickets alongside Kanopi so they could learn the system and retain ownership.

2) Transparency + steady cadence

  • Weekly working sessions to prioritize, unblock, and handle “sticky” topics.

3) Capacity-building, not dependency

  • George explicitly wanted a partner who would help them become stronger, not a team that just took requirements “over the fence.”

4) Root-cause mindset

  • When they hit bugs in core/contrib, the posture wasn’t “patch it and move on,” but “can we fix this properly, maybe even contribute back?”