We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
The Big Review - 2024
AI Summary πͺ
The first ever Advent of SQL (2024) drew 3.5K signups with 2K active participants. While successful in teaching SQL skills and garnering support, it faced challenges with some bugs. Plans for 2025 include a new REPL environment, better testing, and improved difficulty scaling. The creator deemed it a rewarding experience and canβt wait for next year.
Introduction
We made it! Congratulations to everyone who attempted a challenge! 2024 was the first year I've run the Advent of SQL, and I wanted to do a write up of what went well, what went badly, some fun stats, and what I'm going to do differently in 2025.
Firstly, I want to say a big thank you to everyone who participated! π and a massive thank you to my wife β€οΈ for helping me with the design of the site (especially the calendar).
I've received some amazing messages of support and encouragement for which I'm so grateful. I've also received lots of feedback using the star rating system which has been super helpful to improve things, so keep it coming.
Fun stats
There was a big drop off of users attempting challenges after day 1 and 2 which is both because of bugs with the challenges and just a natural drop off. I'll dig into that below.
What went well?
Lots of people signed up
Its awesome how many people signed up and I'm so grateful for your support. I was confused why so many signed up but didn't attempt a challenge but I guess thats what happens with these types of challenges.
Lots of supportive messages
I've received some amazing messages of support and encouragement for which I'm so grateful, I read each one and it means a lot to me so thank you for the kind words!
People learned new skills
Some of those nice messages included people saying they learned new skills from JSON handling, to CTEs, to window functions, which is awesome! I'm so glad to hear that! Its what I hoped for when I started this.
People had fun!
The coolest thing about this whole project has been the people messaging me saying how much fun they had doing the challenges! Hereβs a nice one:
What can be improved?
Submitting answers
Some challenges were initially released with bugs that meant they were not possible to solve. This obviously shouldn't have happened, and I'll make sure more testing is done before release next time.
The data
One interesting piece of feedback I received here was not using unique table names which made it harder to maintain a single database with all the data. I didn't expect this to be a use case but it turns out some people were hosting the data for their teams to use, which is very cool π. In 2025 I'm going to use unique table names or schemas for each challenge and have a REPL environment to run and submit the queries.
Some people had issues with the syntax and had to edit the test data to fit their database of choice, in 2025 I'm going to try to keep the SQL as database agnostic as possible.
Challenge ordering
The ordering was a bit off, some challenges early on were far too difficult, and some later ones were too easy. I'm going to put more emphasis on nailing this in 2025.
What about 2025?
New REPL environment
I'm going to build a new REPL environment for submitting answers. This will unlock new types of challenges and hopefully remove some of the issues people have with database extensions/ syntax (although db fiddle did allow for this too). Hopefully I can also make a way of evaluating submitted queries too. That said, I'm still going to support downloading the SQL data so you can use your own database if you want.
Challenge testing
I'm going to recruit volunteers to help me test the challenges before they go live. This will help me make sure the challenges are as good as possible and that they are challenging but not too hard.
I also want to implement a better feedback system for the challenges so I can get more useful feedback on what is working and what isn't.
Challenge topics
I'm going to try and make the challenges more interesting and challenging. I'm open to suggestions for topics you would like to see so feel free to reach out if you have any.
More useful hints
To make it easier for less advanced people I'm going to add more useful hints to the challenges. It would be nice to link out to useful resources or videos explaining concepts.
More Elixir features
I want to ship some more features leveraging the Elixir tech stack running the platform. Things like realtime leaderboards, private leaderboards, AI evaluators, realtime community features.
Conclusion
It has been a lot of fun running the challenge this year and I'm so grateful for all the support and encouragement. Thank you all!
I'm taking a break from the site over the holidays to spend time with my family and then I'll start working on the new REPL environment and designing new challenges in 2025!
Thanks for reading, and I hope you have a great holiday season! Merry Christmas and a Happy New Year! ππ
Suggest an idea for 2025 ποΈ
I love hearing your ideas for challenges, and I read all of them.
Some suggestions that I used this year included XML parsing, JSON parsing, recursive CTEs, and array manipulation.