Reconceptualizing a platform to multiply its social impact: the Labdoo case

Replantear una plataforma para multiplicar su impacto social: el caso Labdoo
Summary

Labdoo is an international organization present in over 150 countries that reuses computer equipment to reduce the digital divide and provide educational opportunities to communities around the world. Its technological platform coordinates thousands of volunteers, refurbishment centers, educational projects, and devices distributed globally.

When Labdoo contacted Natiboo, the goal was apparently simple: migrate its platform from Drupal 7 to Drupal 10. However, after analyzing the project, we understood that a conventional migration would have transferred years of technical debt to the new system.

Our proposal was different: to rethink the architecture from scratch, preserving the knowledge accumulated over the years, modernizing the platform, and preparing it to continue growing over the next decade.

Today, after almost three years of collaboration, Labdoo has a new platform that is much more maintainable, faster, and ready to evolve, currently in closed beta phase before its final launch.

There are projects whose complexity is not measured by the number of lines of code, but by the people who depend on it.

Labdoo is one of them.

This international organization is present in more than 150 countries, has collaborated with over 3,000 educational centers, has delivered nearly 50,000 computer equipment, and has contributed to over a million students gaining access to digital tools for their education. All of this through a sustainable logistical model that leverages already scheduled trips to transport the equipment, avoiding emissions and reducing costs.

When Labdoo contacted Natiboo, the request seemed clear: migrate their platform from Drupal 7 to Drupal 10.

However, after analyzing the project, we understood that the real challenge was not to change versions. It was to ensure that an international community could continue developing its work for many more years.

A migration that stopped being a migration

The project was born with an approximate planning of six months.

The initial idea was to progressively migrate the different modules of Drupal 7 adapting them to Drupal 10.

But the more we got to know the platform, the more evident it became that this approach would only transfer the existing problems to a more modern technology.

There were years of evolution, legacy code, highly customized entities, complex business rules, and an architecture that had grown in response to real needs, but without a unified vision.

It was then that we proposed to completely change the strategy.

We did not want to migrate the past. We wanted to build the future.

A platform much more complex than it seems

At first glance, Labdoo might seem like a content portal. In reality, it is a platform that coordinates logistical and social processes distributed around the world.

The application manages entities with their own life cycles such as electronic devices, solidarity trips, refurbishment centers, educational projects, volunteer teams, and users with different levels of responsibility. All connected through business rules, permissions, automations, and processes that must function in a coordinated manner.

To this functional complexity is added a multilingual infrastructure with sixteen languages, thousands of registered users, numerous customized entities, and a business logic that performs complex calculations in real time.

One of our goals was to transform many of those synchronous processes into asynchronous processes and support them through caching strategies to maintain a smooth user experience even when the system load increased.

The most important decision: starting from scratch

The most relevant technical decision of the project was also the most difficult.

We could adapt the existing code module by module or take the opportunity to completely redesign the architecture.

We chose the second option.

This allowed us to reorganize responsibilities, separate functional domains, improve maintainability, and adopt much more modern development patterns.

It was not the fastest alternative. But it was the one that offered the most guarantees for the next ten years.

Much more than a migration

The work done went far beyond transferring content between versions.

We designed a new modular architecture oriented to the domain, where each functional area has clearly defined responsibilities.

We built specific tools to synchronize content, preserve relationships between entities, migrate permissions, maintain the historical integrity of information, and automate much of the process through commands and background processes.

We also redesigned part of the user experience, improved overall performance, reinforced security, and reviewed numerous internal processes to adapt them to a platform much better prepared to evolve.

A collaboration that changed dimension

There is an anecdote that perfectly summarizes this project.

What began as a migration of approximately six months ended up becoming a collaboration of nearly three years.

The reason was simple.

The more we got to know Labdoo, the more evident it was that a conventional migration would have been a missed opportunity.

The mission of the organization led us to raise the level of demand. We decided to allocate additional resources to build a platform capable of supporting Labdoo's growth for many years, even if that meant significantly expanding the initial scope.

Results

Although the new platform is currently still in closed beta before its final launch, the results are already visible.

  • A much more maintainable architecture.
  • Better performance and greater capacity for evolution.
  • Improved user experience for volunteers and administrators.
  • More robust internal processes.
  • Greater security against the risks arising from the end of life of Drupal 7.
  • A foundation prepared to continue growing over the next decade.

More importantly, the platform retains the knowledge accumulated over the years without giving up a modern architecture.

What we learned

This project reinforced a conviction that we had already observed in other clients.

Not all migrations should be approached as migrations.

Sometimes, the technically most responsible decision is to stop, question the initial premises, and ask whether it is really worth continuing to drag the existing architecture.

In Labdoo, the answer was clear.

It was better to start anew than to keep building on a legacy that would ultimately limit future growth.

Conclusion

At Natiboo, we believe that a good migration is not about moving code from one version to another.

It is about leaving a platform in better shape than we found it.

Preparing it to evolve, reducing risks, and enabling those who depend on it to continue developing their work with confidence.

In the case of Labdoo, that responsibility went far beyond technology.

It meant helping an international community continue connecting computers, volunteers, and educational opportunities for thousands of students around the world.

And that is, probably, the greatest success of this project.