Show HN: SchemaWright, learning database design in a gamified way

  • Posted 2 hours ago by devgabrielmarco
  • 1 points
https://schemawright.com
Let me begin by explaining what it is: SchemaWright is a platform for learning database table design in a gamified way, with a real Postgres database running on your browser via WASM. It was heavily inspired by Duolingo and LeetCode, because I love the way how those platforms teach their users.

I built and launched this a couple months ago, weeks after my first SaaS failed (that one was called NoteRaven, and the idea was for it to be a Notion + Medium + Udemy all in one platform; but after looking at how saturated that market was, I decided to move on).

The story on how I came up with it is basically that I was working normally on my day job, and noticed how many times we had changed some core tables, and usually discussed renaming them, changing columns, relationships etc. After that, I realized that I wanted to learn how to "get the schema right" from the beginning, so I began looking for websites that could teach that.

It didnt take long to realize I couldn't find one that fitted my needs: it had to feel gamified and rigorous at the same time. When I say "rigorous" I mean that the content shouldnt be standard exercises we see in university (that we never really use at work) or loose definitions we feel like is too shallow. Therefore, I decided that I would be the one to build such platform.

The way I structured the app is by separating it in 3 main pages: Learn, Exercises and Lectures.

The first one is where you'll find Duolingo like lessons for database schema, it goes from the foundations (what is a table, what are rows and columns), to intermediate/advanced contents, such as concurrency and queues, scaling and architecture etc. It has 8 levels, but I currently only wrote up to level 3 (normalisation). Which is funny because my boss once tested me on this lol.

The Exercises page is where I took inspiratoin from LeetCode, especially the page for an exercise structure: on the left side you have the problem description, your submissions and an editorial, and on the right side the code editor and the tests that will run on your code.

Finally the last page is for people who are keen on reading papers and are more drawn to academic research. The lectures reference famous and important research papers that led us to our current understanding of databases, sql and concepts we learn today on this subject. It summarizes them and teaches you the concepts, while containing some interactive exercises too!

Ok, so why do I think this may work as opposed to NoteRaven? One of the reasons is that I shared this with my co-workers (60+ people, most are devs too) and boss (who is CEO and CTO), and they really enjoyed using it. That same boss gave me positive feedback and suggestions, that I actually ended up implementing on the platform (yeah your suggestion could end up there too!). Another would be that I feel like platforms that train you on database design are scarce compared to ones that teach you queries, so the market wouldn't be so saturated.

Let me know what you guys think! Please share if you think some exercises are unfair, meaning that they need better context for people to answer them, and also what you think of the lesson's pace, content and interactive exercises; the same goes for the lectures.

0 comments