Hybrid development is how we give our teams of three superpowers


We just launched a major revamp of the schedule in Basecamp 3. New calendar grid, new day drill-down, new navigation across months. It’s a big change, and we rolled it out simultaneously across five platforms: Web, Windows Desktop, OS X Desktop, iOS, and Android.

Three people did the work in less than six weeks.

Not because they worked 120 hour weeks. Not because they’re polymath geniuses. Not because they outsourced the work to offshore programming farms.

Three people launched a major new feature across five platforms in six weeks because of their hybrid-development superpowers. Powers derived from using basic web technologies, Rails, Turbolinks, and the Majestic Monolith.

These six weeks included all sorts of experimentation, back-and-forth, and trade-offs. It was both research and development. A flexible, fluid spec that we honed as we went along.

Can you even imagine trying to do coordinate five different native teams covering all those platforms simultaneously? Or how many people it would take? Or how long the schedule would be?

This industry often speaks of the 10x developer, and not a lot about the 10x environment. I think the latter is much more reproducible. And in fact, most people who appear to be 10x developers were simply lucky enough to be working in a 10x environment.

Hell, one of the three people on this scheduling team was even our awesome intern, David Newell. And we just had one main designer on the crew as well. So that’s one intern programmer, one senior programmer, and one senior designer delivering this major upgrade in six weeks.

We don’t have any proprietary magic at Basecamp. We’re literally giving all these superpowers away for free. Turbolinks is open source. Rails is open source. The Majestic Monolith and Hybrid Development patterns are well publicized. It’s all right there for anyone who wants to be this productive.

And sure, you probably could eek out the last few percent of interface fidelity if you went all native everywhere on a feature like this. But the price of going from 95% Good Enough to 100% Verified Native is orders of magnitude. Some times those orders are worth it, but the vast majority of the time, they’re not.

Basecamp 3 currently carries a 4.5/5 rating in both the iOS App Store and the Google Play store. Both are hybrid apps powered by Turbolinks and backed by that Majestic Monolith of a Rails app. The results speak for themselves.

Going with hybrid development has been absolutely key to how Basecamp gets to stay small and still deliver an ace experience across all the major platforms. And you can do it too, if you dare to reject the dogma of All Native, Microservices, and the dark side of heavy client-side JavaScript MVCs.