I see supabase as a missed opportunity to innovate in a space that desperately needs it. It could have been a product that fundamentaly reimagined the developer experience of working with a database. Instead they opted to mostly stick to the existing sql paradigm combined with some firebase-mimicking features. So what they end up with is a service that offers some marginal improvements over other, established database services but nothing truly game-changing.
Postgresql is itself a game changer for this kind of service. There was firebase, fauna, and some others, but no actual honest to god SQL. And thank god that it's postgres and not mysql.
I'll be honest, at this point i have no idea why I like postgres more than mysql, but I have a feeling there's a good reason for that and I don't really want to re-learn why.
True. And to be clear I’m not arguing to reinvent it, but rather to build on top of it. SQL and traditional RDBMS are extremely powerful, but also vast, complex and difficult to master. They have for many of us a rather painful learning curve that could potentially be taken away by a product/service that creates the right kind of abstraction. In my opinion supabase does however not go far enough in creating this abstraction.
Broadly speaking: a developer-centric Airtable. A low/no-code environment to create and manage your database combined with a top-notch SDK that is automatically generated and easily accesible from within the UI. The idea being that a frontend developer or hobbyist with no backend/database/sql knowledge whatsoever could easily get a properly functioning database up and running for a (fairly) complex app.
Thanks for the feedback. I'll share this with the team.
In the long-term we definitely want to be as easy to use as Airtable. We won't ever build a DSL on top of SQL, but we think we can create a UI that gives 90% simple use-cases and then you only need to reach for SQL for the remaining 10%, or as an escape hatch for advanced use-cases.
~~In case it wasn't clear already from our site: we already have an Airtable-like UI, SDKs, auto-generated APIs (which you can use to auto-generate your own SDKs) - perhaps these aren't yet as simple as you imagine they could be?~~
e: I see you responded to a sibling comment. I have sent a link to the team with your feedback
> The idea being that a frontend developer or hobbyist with no backend/database/sql knowledge whatsoever could easily get a properly functioning database up and running for a (fairly) complex app.
So, Microsoft Access for the web?
Believe it or not there was a time in the late 90s you could nearly HyperCard for the web using low code “wizards”.
Not sure what happened, maybe server-side JavaScript or things like Django and Ruby on Rails released a pressure valve.
For one thing the fact that you can't really properly use Supabase (apart from some very basic functionality) without having at least some knowledge of SQL, postgres and databases in general. IMO you'd even need fairly in-depth SQL knowledge to understand the Supabase docs and examples.
I mean to push back a bit on this -- they have a pretty intuitive GUI that they've open sourced for working with the database at a less SQL-focused level. It isn't exhaustive but for basic things like adding / editing columns, or database policies, it's pretty nice.
That's not to say there isn't room for improvement, but if you look at the github issues on all their repos, and the commits that have come out in the last few months, it's pretty clear they're pushing the way you want them to go RE simplifying the more complicated pieces down to manageable chunks.
I’m not saying it’s a bug. But I wouldn’t call it a feature either, but rather an obstacle in the way of a better/easier/faster/more enjoyable developer experience.
yep, a bunch! in production it's mostly small projects with only a few collections and simple CRUD. the auth providers are nice, i'm excited to work with subscriptions, and not having to provision anything makes it easier to say yes to an idea. migrations took some getting used to, could use some tooling, but zero downtime is worth the fiddliness. it's my go-to for new projects now--for most things, i can get away with fauna, auth0, and a few edge functions as my whole backend