Skip to content
TkDodo's blog

2023 in Review

Dec 30, 2023 — Personal, 2023, Year in Review
2023 in Review
Photo by Ricardo Loaiza

I’m sure 2023 will have some exciting things in store for me.

This is how I finished my 2022 in Review post, and without knowing it at the time, I was spot on. A lot of things have fallen into place for me this year, I’m not even sure where to start, so I’ll go with what had the biggest impact on me:

Query.gg 🔮

I started the year by teaming up with the folks behind ui.dev (opens in a new window) to work on a new, official course for TanStack Query (opens in a new window). ui.dev already had the React Query course that was endorsed by Tanner, and since we were also working on a new version of the library itself, it made sense to evaluate making a new course, too.

I have been maintaining TanStack Query for about two years now, and I’ve also gotten great feedback for the content I’ve created on my blog about it. So I was excited to work on a course that I could shape from the ground up, and that would be the best resource for learning TanStack Query.

Of course, I already have a job as a Tech Lead, and a family, and doing open source as a hobby also takes up quite a bit of time. It was clear that I couldn’t just add another thing to my plate, which is why I decided to basically reduce my work hours in half. I thought I could focus on the course (and actually shipping v5) in the remaining time, and that it shouldn’t take too long to finish the course.

As everyone who has ever attempted to create a course will tell you - it is way more work than initially anticipated - especially when you’re not working on it full time. That’s why I’m sitting here, end of December, and the course is still not released. However, we already have over 30 lessons of content, and I’m confident that we’ll be able to get there in early 2024.

And I think it’s totally worth the wait. I’m really proud of the content we’ve created so far, because the course aims at teaching you the right mindset to work with TanStack Query. It’s not just about how specific features work, or about learning the syntax to achieve X or Y. It’s about understanding the core concepts behind the library. About Async State Management that isn’t tied to data fetching. About truly understanding how staleTime and Query Observers work. So while you’re waiting - why don’t you sign up for the mailing list to keep up-to-date? 😉

Query.gg - The official React Query course

TanStack Query v5

Speaking of TanStack Query - we’ve released a new major version this year. 🎉

Avatar for Dominik 🔮
Dominik 🔮
@TkDodo

📢 Announcing TanStack Query v5 🎉🥳

🤝 unified object API

📈 simplified, optimistic updates

♻️ sharable mutation state

🔀 suspense and streaming w/ RSC

♾ improved infinite queries

⚡️ ~20 % smaller

🛠️ new agnostic devtools

💾 fine-grained persistence

TanStackQuery v5

- Oct 17, 2023

And I have to say - for the first time - I’m really happy with how the release turned out. We’ve been working on it for over ten months, and we’ve been quite public about what we’re going to change and why. We had a public roadmap (opens in a new window). Additional (opens in a new window) RFCs (opens in a new window) about topics where we wanted more feedback. I’ve personally been dogfooding v5 for over 6 months because I’ve used it throughout the Query.gg 🔮 course, and we had 91 alpha releases, 35 betas and 16 release candidates.

Yes, there was some backlash about removing the callbacks (my first twitter 💩-storm, yay!), which lead to me writing a detailed blogpost about why we’re doing it. But overall, I think we’ve done a good job at communicating the changes, and from what I’ve heard, most updates where smooth and people are generally happy with the changes.

Angular Query

As TanStack Query grows in popularity, we’ve also seen more and more people from other frameworks showing interest in it. Of course, TanStack Query is already available for Vue, Solid and Svelte in addition to React, and this year, Arnoud (opens in a new window) has contributed an adapter for Angular based on Angular Signals. There is also an adapter in progress for Qwik Query (opens in a new window) by Giorgio Boa (opens in a new window). I think this just shows that the concept of Query is adaptable everywhere, and that there is really a need in other frameworks for it, too.

React Summit 2023

I went to React Summit again, this time as a speaker, and I had a blast. My talk Thinking in React Query wasn’t in person, but I got to meet a lot of people I’ve only known from twitter. Getting access to the speaker’s room is something I’ve never experienced before, and being part of this legendary selfie inception was definitely a highlight for me: 🤳

Avatar for Dominik 🔮
Dominik 🔮
@TkDodo

The selfie inception 🤳 #ReactSummit

selfie inception

- Jun 2, 2023

Online appearances

I’ve been invited to a couple of podcasts this year, and I’ve also been on some livestreams:

I’ve also tried to stream more myself - a whopping 5 times this year. You can watch the uncut recordings on my youtube channel (opens in a new window).

Rewriting my blog

I said last year that it won’t happen any time soon, but I need to put some pressure on myself. Working with my current implementation has become almost unusable, and I’m really looking forward to finally having a state-of-the-art blog again.

Avatar for Dominik 🔮
Dominik 🔮
@TkDodo

It takes 62 seconds to start the dev server for my gatsby blog 😭. When have I suffered enough to tackle a re-write?

- Oct 20, 2023

So I’ll say it now: 2024 is the year where I’ll finally tackle a re-write in … Astro (opens in a new window) of course. We’ll see at the end of next year if that really happened. 😅

2024

Apart from that, I won’t even try to predict the future. One thing I can say is that I plan to take a couple of steps back after I’m done with the Query.gg 🔮 to reflect on how the last years have been for me. There is no doubt that having two (now three) jobs takes its toll, and I have no desire to burn out. I’ll be listening ot my heart and my body, and see where it takes me. Happy new year!


That’s it for today. Feel free to reach out to me on bluesky (opens in a new window) if you have any questions, or just leave a comment below. ⬇️

Like the monospace font in the code blocks?

Check out monolisa.dev

Bytes - the JavaScript Newsletter that doesn't suck