Learn Postgres at the Playground

Craig Kerstiens

3 min read

Today I'm excited to introduce a new place for devs to polish their Postgres skills, a Postgres Playground and Tutorials from Crunchy Data. What is the playground? Put simply it is:

  1. Postgres running in your local web browser
  2. With canned datasets you can load
  3. Guided tutorials to follow along to learn about the power of Postgres

Postgres in a browser?!?

Wait?!?!? Postgres in the browser? Yep. You can jump right over to our Postgres Playground and check out some of the tutorials right away. Or read on to learn a bit more on what you can do.

Postgres is awesome, which isn't really a secret around these parts. But knowing Postgres is awesome is just the first piece, we want it to be easy and accessible for everyone. We want you to be able to take full advantage of things like rich datatypes such a JSONB, Arrays, and UUIDs. Leverage the rich set of built-in functions and index types. And be able to query your database with power to get the insights you need from your data.

Enhance your Postgres skills

All of the above is why we started compiling our own collection of Postgres tips from our team to share with you all. Today we're going a step further with the playground where you can run Postgres in your browser and follow along with some tutorials to level up your Postgres skills.

At launch our playground includes tutorials for:

  • Basics of psql
  • Partitioning
  • Performance analysis
  • Joins
  • Indexing
  • PostGIS
  • Window functions and CTEs

Often times the gap in trying/learning something in Postgres is having a good tangible example. The playground makes that easier by loading a dataset then guiding you step by step through an exercise leveraging that dataset in a practical way. Whether it’s just the basics of interacting with the Postgres CLI with psql , improving your querying skills with SQL, or digging into performance analysis we want something for everyone to be able to level up your skills. Our guided tutorials focus on practical uses and examples as opposed to purely academic definitions. One example you’ll find a real world scenario in computing week-over-week differences leveraging CTEs and window functions.

Some of the technical details

We’ll be doing a follow-up post on how the playground all came to be, but to give you a few of the questions you’re probably wondering offhand.

Yes, this is WASM and running fully in your web browser. Due to browser sandboxing there is no way to connect directly to the Postgres instance beyond the embedded psql interface that we establish for you. The current configuration allocates 512MB of memory for your Postgres instance, we may make this more configurable in the future. It’s in the browser, hence if you refresh you’re going to get a fresh instance, we haven’t created any persistence layers (yet). And finally, it’s early, you may run into some weird states if you do we ask that you send us what you were doing when it happened and then attempt to refresh.

Future plans

This is just the beginning. We’ll be continuing to add other tutorials and features to this area. If you want to stay tuned for updates we encourage you to subscribe to our newsletter. And let us know you’re feedback @crunchydata and what you’d like to see improved.

Avatar for Craig Kerstiens

Written by

Craig Kerstiens

August 17, 2022 More by this author