Dax Raad, creator of OpenAuth and core contributor to SST, joins Kent to discuss his approach to simplifying authentication with a self-owned, spec-compliant auth server. Dax explains the motivation behind OpenAuth, why AWS Cognito falls short, and how OpenAuth empowers developers to control their own authentication infrastructure while reducing complexity.
Dax Raad, known for his work on SST and the creator of OpenAuth, shares his passion for improving the developer experience with authentication and infrastructure. OpenAuth offers developers an alternative to AWS Cognito, enabling self-owned, spec-compliant OAuth systems that are easy to deploy and maintain.
In this episode, Dax talks about:
- The problems with AWS Cognito and the motivation behind OpenAuth.
- The simplicity and power of constrained environments like terminal UIs.
- The value of focusing on infrastructure and developer control over essential services.
Dax also touches on his upcoming talk at Epic WebConf and shares his excitement about meeting other developers in person.
Meet Dax at Epic Web Conf.
Guests
Transcript
Kent C. Dodds (00:46.235)
Hey everybody, it's Kent C. Dodds and I'm joined by probably the most rad developer that I know, Dax Rad. How are you doing Dax?
Dax (00:53.78)
Good, how are you?
Kent C. Dodds (00:55.345)
Doing super, so happy to have you coming to Epic WebConf in March. This is gonna be sweet. It's my understanding it's your first time in Utah,
Dax (01:04.79)
Yeah, never been. I haven't been towards that side of the country in a couple years, so it'll be fun.
Kent C. Dodds (01:10.725)
Yeah, well, you just want to stay as far away from San Francisco as possible, I understand. You literally are about as far away as you can be in the US.
Dax (01:14.534)
Hahaha.
Dax (01:19.862)
That's true, yeah. I wonder, I guess, that, maybe if I go to Maine, that would be further. And I was in Maine a bunch of times this past summer, so yeah.
Kent C. Dodds (01:26.471)
personal.
Yeah, well, I know you have a severe allergy against Next.js and so that makes sense. Well, Dax, it's awesome to have you come to the conference. I've known you for years. I think we probably met at React Miami years ago. That was probably the first time. And yeah, it's just, you have some really great takes.
Dax (01:34.163)
Mm. Yeah.
Dax (01:49.567)
Yeah.
Kent C. Dodds (01:55.717)
challenge my thinking, because I don't agree with all of them, but I'm like, why don't I agree with that? And make sure that I can at least explain my own position. anyway, I really appreciate following you and the experience that you bring. Some people watching this probably don't know you, so I'd love for you to introduce yourself to folks.
Dax (02:00.469)
Hmm.
Dax (02:13.77)
Yeah, so again, my name is Dax. I probably like everyone else at the conference. I'm a software engineer. I've been doing it for about, I don't even know, maybe like 12 or 13 years now. Past couple of years has been fully in open source. I work on a framework called SST primarily to help on the infrastructure side of things. But given that our scope is pretty broad, I end up working on quite a lot of other nice additions to our core offering as well.
but pretty much all open source.
Kent C. Dodds (02:45.927)
Yeah, very cool. What would you say is the area of development that you enjoy the most? Or maybe that you dislike the least?
Dax (02:55.19)
Man, that's a good question. So it's hard to give you like a global answer. I can just tell you how I've been feeling lately because it changes depending on what I'm interested in. I've just been doing so much work in the terminal over the past couple months, both on SST because we have this cool like multiplexer feature in our CLI that requires a lot of like terminal know-how and voodoo. And of course, with a terminal.shop, my other project where we sell coffee from
the command line, that is also like a fully terminal based UI. And I think what I've been liking is it's an extremely constrained environment, which means that just kind of the range of possibilities is lower, but it's not so constrained that you can't do a good job. So I find it to be this like interesting balance of there's usually only a couple of ways to do things and it usually comes out in a, in a pretty good way. kind of like the, you kind of achieve decent UX without
Kent C. Dodds (03:42.992)
Hmm.
Dax (03:55.081)
just the crazy degrees of freedom you have on web, which I definitely enjoy. And I love, I still build a lot of stuff on web, but it's just been a nice little shift to work in this more constrained environment.
Kent C. Dodds (04:04.677)
Yeah, yeah, that's very interesting. And all of that is written in Go, if I understand right, Yeah, that's probably why you're so much happier than I am. Just kidding.
Dax (04:08.393)
Yep, yep, yep, all that's on Go.
Dax (04:13.718)
No, I mean, the thing the thing I say about go is it brings me no joy to write and I it's just such a painfully rational exercise every single day when I write it. I'm like, this makes total sense to do, but it's just not capturing my heart. So that's relationship with it.
Kent C. Dodds (04:29.095)
Yeah, well, you know, who needs emotion when it comes to developing software anyway? Yeah, I wonder if you've been following at all what Aaron Francis has been doing in the terminal with PHP. It's pretty interesting.
Dax (04:35.431)
Okay.
Dax (04:47.017)
Yeah, it's funny because he's like the one other person I can talk to about this stuff because the thing he's building is almost identical to what we built for SST. Same problem. We need to bring up a bunch of processes for like a single task and like, you know, tap through them and things like that. So, yeah, both of us chat about like, how did you handle that? one ANSI code and did you see that? Like the ghosty, the guy that makes ghosty Mitchell, he tweeted out some like, here's like this obscure
Kent C. Dodds (05:00.284)
Hmm
Dax (05:15.408)
string that most terminal ANSI processors don't parse correctly. Does yours parse it correctly? And I was like, there's like an audience of three people for this and me and Aaron are like two of them. Yeah.
Kent C. Dodds (05:23.943)
Well, that's yeah, that's interesting I'm excited that you two have you met before with with Aaron
Dax (05:32.437)
Yeah, I him in Dallas. We actually borrowed a studio for a bit because we streamed from there during Larrycon. Yeah, and then he was the referee for our basketball game.
Kent C. Dodds (05:34.632)
no.
Kent C. Dodds (05:38.247)
and
Kent C. Dodds (05:45.127)
You
That's perfect, I just love that. That was a fun time. Well cool, well you'll get to meet up again at the conference and along with plenty of other folks. You're giving a talk about OpenAuth. And I'll say, the talk title right now on the site says OpenAuth Stuff, which I appreciate the simplicity of that. Can you talk a little bit about what OpenAuth is and why you built it?
Dax (05:56.405)
Yeah.
Dax (06:18.304)
Yeah, so it's funny because auth is such a boring thing because every single app needs it and it doesn't really deviate too much between app to app. We've had this funny experience where we serve a lot of people building on AWS. AWS has an auth solution called Cognito. And if you look through our support channel, so like every morning the first thing I do is I answer all the questions since the day before in our support channel. We get...
a ridiculously large number of Cognito questions, not because a lot of people are using Cognito, just because every single person that tries to use it runs into problems. And I hate answering those questions. Like it is, I hate the service. It's like they're by far their worst service. It makes no sense to me. And then I get asked to like help people debug it. And that just annoyed us enough where we're like, we got to give people like a better starting point for, for auth in AWS. Unfortunately,
Kent C. Dodds (06:51.173)
Ha ha ha!
Kent C. Dodds (06:57.82)
Hmm
Dax (07:10.39)
AWS native one isn't doing the job here. So we spent a bunch of time just researching, like, what does, a... There's a ton of auth SaaS offerings, you know, there's a bunch of them in the past couple of years. How exactly are they structured? Like, what are they doing right? If we break down the different parts of what they offer, like, what parts are needed, what parts aren't. So we came with the idea for OpenAuth after doing that research, realizing that we could just try to build...
Kent C. Dodds (07:14.629)
Hmm.
Dax (07:39.207)
a very spec compliant OAuth system that you can deploy as part of your app. And if you look at any giant company, if you try to like log in, they will typically redirect you to like auth.mycompany.com and that serves as a central auth place for all of their apps. So even if you're just, even if you just have like a single app, that model still kind of makes a lot of sense. Even if you embed it all in a single app, the idea that
Kent C. Dodds (07:59.303)
Mm-hmm.
Dax (08:08.288)
You have a client and an auth server, and the client gets these temporary credentials from the auth server. There's fantastic specifications on all of this. I used to think specifications were obscure and hard to read, but it turns out they're actually really easy to read and written in plain English, which is nice. Let's run through those specs, implement it as much as I could. At least it has open auth, and we're growing it from there.
Kent C. Dodds (08:32.091)
Yeah, very cool. there's not really a monetization strategy then here. It's mostly, unless maybe there's some idea I'm not thinking of, but it's mostly just to serve your customers and free up your time. So you're not.
Dax (08:45.013)
Yeah, exactly. The monetization tragedy is just getting my time back from never having to answer. That's worth millions of dollars to me, never having to answer a Cognito question ever again. Yeah, but for us, we have a core system in place for us to keep doing what we do, which means we can release a lot of this stuff without it being directly tied to any revenue source. Yeah.
Kent C. Dodds (08:50.595)
You
Kent C. Dodds (09:05.691)
Yeah, yeah. I definitely have it in the plans for my streams when my time frees up here soon to play around with OpenAuth and integrating it with the Epic Stack. The primary thing I like about OpenAuth...
is that I own it. I get to be in charge of this. It's my user's table. And hopefully that I can run it as a sidecar process so that we can bootstrap something really, really simply. You don't have to worry about managing multiple services and all of that. And so, yeah, looking forward to playing around with that. And that's why I asked you to come and speak at Epic Web Comp about it.
Dax (09:46.069)
Yeah, yeah, I think we talked about this a little bit when we announced it, but I haven't gotten around to actually putting together a demo, but the way it's built, could be embedded in the same process as your main app. So again, for that minimal setup, I think we can get it down to something pretty simple.
Kent C. Dodds (09:59.025)
Hmm.
Kent C. Dodds (10:03.877)
Yeah, provided that there's a very easy path for taking it outside and everything, then I think starting really simple, there's a lot of value there. Well, sweet. So Dax, you're not going to be on stage the whole time. You're also going to be around the conference. We've got extended breaks and things. And so I'm wondering...
What are some topics that you're really interested in talking with people about? Like you're standing in the hall, somebody sees you and they're like, I wanna go talk to Dax. What is something that they could bring up that would really get you talking?
Dax (10:36.373)
Well, if your name is Aaron Francis and you're interested in talking with me, I'm very curious. Cause Aaron has a secret project that you won't tell anyone about, but he keeps just talking about it. So if your name is Aaron Francis, you want to come talk to me, you should probably just tell me what that is. Cause I am, very curious, but outside of that, so a lot of my work is in infrastructure. do a ton of work deploying to major clouds, to minor clouds, to one-off providers. So anything that you're thinking about in
Kent C. Dodds (10:45.115)
Hmm
Dax (11:04.65)
the infrastructure space, the future of what that looks like, the future of the boring things like AWS. Yeah, I think those are areas that we can probably talk infinitely about. But in general, I'm kind into a lot of things. So happy to chat about anything really.
Kent C. Dodds (11:21.255)
Very cool, sweet. And one last thing, Dax, what is it that gets you to go to events? Why do you go to in-person stuff? Because you do a lot of stuff online already. so even coming to speak at Epic WebConf, you could talk about OpenAuth online and just publish it as a YouTube video and accomplish that education piece. So it's not the education. What is it that brings you out to conferences?
Dax (11:46.911)
Yeah, I just like going somewhere new. It's like a great excuse to just be in a place that I haven't been to with some context around like, I mean, there's many people that I know there, people that are from there that can tell me about it. So the travel part of it is interesting. And then the second part is just hanging out with people that I, that are kind of, again, that shared context of we kind of all work on the same thing and it's just fun to hang out and talk for a bit. So ultimately it is just about,
the people that are going. I think the it's like a great thing and also a curse, which is the Internet has given me so many really, really good friends that I have crazy in common with and I interact with every single day. The curse is we all live in different cities. So any excuse to be able to hang out in person for a bit is a good one.
Kent C. Dodds (12:36.891)
Yeah.
Kent C. Dodds (12:43.163)
Yeah, I completely agree. I love meeting up with people and it's especially awesome when you've only known each other online and then you meet the first time and it just changes that relationship. Even if you go back to just being online all the time, because you've met, it makes that relationship better.
Dax (12:57.909)
Yeah.
Dax (13:01.557)
Yep, exactly. it's like our brains are just wired for that. And when we don't have it at all, it's a lot weirder. Yeah.
Kent C. Dodds (13:08.967)
Yeah. Well, hey, thanks, Stacks, for giving us some of your time to get to know you a little bit. Really looking forward to seeing you in March. OK. See you, everybody.
Dax (13:16.895)
Yeah, likewise.