Thoughts, reflections, and ideas

Backbone, an open-source community-driven tool for releasing software

Posted on

Very simplistically, crafting software is a two-phase process: build and release. Over time, we’ve seen many beautiful and convenient abstractions emerge to make the process so easy and enjoyable that people can pour all their energy into generating value through technology.

We’ve been lucky that most of the tools and frameworks necessary for building Rails and RedwoodJS have been developed and governed in the open. Openness is a means for people to codify the world’s diversity of ideas into tools and frameworks. However, the most convenient and enjoyable tools for releasing software are close-source and VC-backed. Examples of that are Netlify and Vercel. There are open-source tools that aim to solve similar problems, but their developer experience is far from their close-sourced counterparts.

I believe innovation in releasing software should be a public good. There are already robust solutions like Kubernetes. Yet they are complex tools that are more suitable when you reach a particular scale. What if I’m just starting and need a one-click deploy experience?

Providing developers with that tool led me to start building Backbone. Backbone is a server-side tool for deploying web apps, sites, and mobile apps. Like I did with Tuist, I’ll build a community around it and trust them to feel project owners. Developers will be able to host it themselves in their own infrastructure, use a hosted version with their infrastructure or infrastructure provided by us. The latter would imply a paid plan, and the profit will go into a nonprofit organization that will use the money to employ and mentor underrepresented and junior roles in the industry. Backbone is about collectively building and sharing a great deployment tool and helping people along the process.

Someone reading this might think I should take a different approach and try to increase my wealth through building a business but let me share something with you. I learned early enough that more money doesn’t make you happier once you pass a threshold. It makes you more miserable in many cases because your life becomes a treadmill and your mental space a scarce resource. I’m privileged to work at a company, Shopify, which helps me grow, pays me well, and where I do fulfilling work. My life doesn’t need more money. I find fulfillment in helping others grow by working on problems together, which is what Backbone is about.

I’m currently building mental models around the developer experience and placing the first building blocks in place. It’s so exciting. It reminds me of the early days of Tuist when I had no constraints to design a new foundation. The project's future is uncertain, but I’m sure my perseverance will bring some clarity over time.

If contributing to a project of this nature is something that interests you, send me an email, and let’s chat. The project doesn't have a website yet, but you can check out the organization on GitHub, github.com/backbonesh.