Open source state of mind

I listened to Tim Ferriss intervew Matt Mullenweg this week. It was refreshing in all kinds of ways, across many topics. Primary of these was the realization of how much open source forms the core of Matt's personal philosophy.

WordPress isn't just open source software for Matt. It's a software product that's realized at the end of a mission, a set of core principles. Without the principles, there would be no WordPress.

WordPress doesn't become what it is today (massive) without these principles. That's what I wanted to explore.

I have much more thinking to do about this to properly internalize it, but I thought I'd start here: with what open source looks like for me from a users' perspective. I've spent all my career as a consumer of open source software, but only the last couple as a shaper of software at Supabase. I wanted to do a quick check of what I think the essentials of good open source software are, purely as a consumer.

Good open source software is / does / can (roughly in order):

  1. easy to install and setup, for free, both locally and on my own server
  2. powerful, capable
  3. make easy things easy
  4. make hard things possible
  5. opinionated, and so you get:
  6. a lot out of the box, so you don't have to:
  7. constantly reinvent the wheel to do simple or common things
  8. interoperable, flexible, extensible
  9. has a core user story in mind (ie: it appeals extremely well to a couple of use cases, while enabling many others)
  10. continuously improved and updated

I could do 110, but I'll stop at just 10. I think the gist is well-captured there with these.

I purposely wrote those ten thinking about WordPress, not Supabase. I'm trying to think about what are the key elements that made WordPress the success it is. I listed ten, but you could probably attribute a lot of its success to just two or three:

  1. easy to install and setup, for free, both locally and on my own server
  2. make easy things easy
  3. interoperable, flexible, extensible

Just these three core characteristics are unbelievably powerful. I'm describing software that's easy to install anywhere, easy to build with, and easy to integrate other services with. There's really not much more you want!

Heading into 2024, one of my personal goals is to spend much more time internalizing what it means to make "good" open source software like I described. Just as good open source software isn't a thing that simply exists, so too is a good open source mindset.

Working in public on an open source product is insufficient. Refining principles like these, on an individual level, are what's actually required. Making the dozens of decisions I make every single day with all this at the forefront of my mind is probably what's required to get to "good".

The end goal here seems as obvious for Supabase as it is for WordPress. If we make Supabase (the software) dead-simple to install and powerful to use and extend, such that many, many people use it, eventually enough of those people will want us to host it for them at scale and make Supabase (the business) viable and profitable.

An open source mindset, individualized in every team member, as a core part of the company fabric seems like a good path to there.

Excited to start the individual principle-refining process.

Follow along →@saltcod