Latest postLatest: The PHP Foundation's mission to keep millions of sites safe

How Sanity was created “in a fit of rage”, and why they love Open Source

Greg Kumparak

Graphic with the text ‘Member Spotlight’ at the top and ‘Sanity’ prominently displayed in bold, angular red font in the center, set against a dark background with colorful dotted patterns and abstract shapes on the sides. A small Open Source Pledge keycap logo is in the bottom left corner.

Sanity is a member of the Open Source Pledge, where companies commit to contributing at least $2,000 per year for each developer on their team to open source maintainers. In this member spotlight we’ll look at who Sanity is, what they do, and why they joined the Pledge.
--------

The founding team behind Sanity didn’t initially set out to reimagine the way content management works for the likes of AT&T, Puma, and a bunch of other companies with household names.

Before they were Sanity, they were Bengler — a product development consultancy out of Norway that explored a wild array of concepts, from an early social network, to better control software for 3D printers (more on that later!), to an experimental device for typing super fast on your phone.

But as more clients came to Bengler for help building out digital experiences, the team found themselves hitting the limits of every content management system they could find. If they just wanted to build a blog? That was easy. If they wanted to build something new and novel with content? It meant starting from scratch each time.

“We were commissioned to do a new kind of web presence for the OMA — the architecture agency of Rem Koolhaas.” Sanity co-founder Simen Svale Skogsrud tells me. “He’s this very famous architect that me and [Sanity co-founder Even Westvang] have been fans of since our late teens. That they contacted us, that they even knew about us, was incredible in the literal sense of the word.”

“We had all of these ideas; all these novel things we wanted to design for them.”

That’s where they started hitting walls.

“We realized all of these [existing content management] systems were just terrifyingly messy — how was this all we have to work with?” says Simen. “Content is data! It’s in a database; I wanted a content API.”

They wanted something where content was flexible by design; where everything they created could be repurposed and reused from page to page and device to device without reinvention. Where the data was clean and beautifully structured. Where real-time collaboration could be baked in, with authoring tools that could be tailored for the needs of each team member.

So they built it for themselves.

“Sanity was created almost in a fit of rage,” as Simen puts it.

“We didn’t actually set out to make a product,” he says. “We just decided that for this first project, we’d have to create something makeshift.”

Then they found themselves using this same internal tooling for another project — and another, and another. “Eventually,” notes Simen, “[One of our customers] said: “Wait, what is this system? Why is this better than anything we can buy?”

Conversations started happening internally: should this be their focus? When a big project proposal came in from the UN shortly thereafter, they had to stop and deeply consider their next move and what they were as a company.

“We were a very comfortable, small boutique agency; we were doing work for incredibly interesting companies.” says Simen. “At that very specific time, the UN wanted us to work on an interactive visualization. We had to decide: are we gonna do this amazingly interesting, well-paid thing… or are we building this system instead?”

“It was this kind of existential moment; we realized that with this idea… there was no point in doing it piecemeal. There was no point in building Sanity as this small, local thing in Norway, or as a little lifestyle business.” says Simen. “That’s when we inverted our business. We decided: this is what we do now. This is not just an internal tool; we’re going to be the people who make this product.”

Turns out they really weren’t the only ones who wanted this: just this month, the company announced they’ve surpassed 1 million projects created with their content tools. (You’re reading this on a Sanity powered blog!)

Screenshot of Sanity Studio, Sanity's open source and customizable tool for creating and collaborating on content
Screenshot of Sanity Studio, Sanity's open source and customizable tool for creating and collaborating on content

The (Other) Path Not Taken

In another not-too-distant alternate universe, Sanity’s content system doesn’t exist. For a fleeting moment — before customers started asking about this tool they were building projects on internally — they were eyeing an entirely different path: robotics. While it’s not the path they ultimately pursued, it’s one that helped Simen and the team appreciate the reach of open source.

That 3D printing software I promised I’d come back to? In the early days of Bengler, Simen had written software to let machines like 3D printers and laser cutters do more with less.

“I was annoyed that I had to use my whole PC to control these systems. I felt like there needed to be a smaller version of this, so I wrote one for Arduino.”

“I open sourced it … mostly because open source meant free hosting. Then I [looked later] and realized people were using it! And it had kind of become a thing! I realized that it was in almost all of the consumer-grade 3D printers at the time.”

“Even today if you go on AliBaba or Ali Express and search for this software,” he adds, “you’ll find hundreds and hundreds of products that are based on this open source product that I created almost accidentally.”

“I never made a dime for that — which, of course, was totally fine. But I had to abandon that project because it was never commercially viable; I couldn’t pay the bills with it.”

I ask Simen if, years later, that experience might’ve played a part in Sanity deciding to join the Open Source Pledge, as part of which they contributed over $110,000 to open source projects last year.

“[In hindsight] it makes it very clear to me — like in a very visceral way — how not getting paid on an open source project makes it an easier decision to stop working on it. Beyond my initial passion, there was just no way for me to keep working on it.” Simen tells me. “And that’s a danger with any open source project that you rely on — you want people to be able to keep working on it, and to keep that passion up. So when [Sanity’s CEO] Magnus asked what I thought, it was: ‘yes, of course we should do that.’”

Just as crucially, the whole team recognized the key role open source played in them ever getting Sanity off the ground:

“It’s so important for teams like us, especially in the early days. We are still using Postgres. We are still using Elasticsearch. We are still using Golang. These are all open source things! Some of them are very commercial, but these sorts of open source things are what allowed us to get started on a shoe-string budget and establish an architecture that we’re still running on to this day. It’s amazing; it’s not even obvious that that should be possible.”

Within what Simen is saying here lays the mission of the Open Source Pledge: to get maintainers paid for the work they do, so they can keep doing it. It’s good for the maintainers, it’s good for the companies that depend on their projects, and it’s good for anyone who hopes the products they use stay secure and continue to work. In other words: it’s good for everyone.

Want to learn more about the Open Source Pledge and how your company can join? Check out our mission statement.