What's up, everyone?Welcome to another episode of CompressedFM, a podcast all about web design and development with a little bit of zest.Today's episode we have Chantastic.Hi.
Super excited to have you on the show talking about all things authentication, authorization.Here we go.
Web development and design, who would have guessed?Well, we can do them both, even add a little zest.So turn up the volume, get ready for the best.Let's get it started in this episode of Compressed.
Hello, my name is Amy Dutton.I am a lead maintainer on the Redwood JS core team.
Hey, y'all.My name is Brad Garropy.I'm a full stack developer at Atlassian working on Confluence.
And we have my good friend Chantastic talking about WorkOS.Welcome to the podcast.Guest number two.
Hello, hello.Oh, thank you.
Yeah, it's my second time.We've had more guests.This is your second time Running thing where if you're on five times just like SNL you're gonna get a jacket I know that we have a productivity thing coming up.
So like that'll at least get my my third third one in so Those
I think has been on three times.
So thanks.I think I'll be tied at that point.
OK, OK.I got to I got to do something really impressive to try to get those fourth and fifth spots.I'll think about it.I'll think about it.
Come up with something nice and tasty.So today's episode is sponsored by Work OS.I should let you, Michael Chan, give the intro for Work OS because you work there.
But I will say, one, we don't accept sponsorships from companies that we don't believe in and we don't trust.And so that is why we are sponsoring with WorkOS.They will handle all of your authentication and authorization needs.
I've been working on an Astro project incorporating WorkOS, and it's pretty phenomenal. I think my favorite thing is the fact that you have a UI kit that it provides with AusKit, or if you want to use your own custom UI, you can.
And to me, that's like one of the biggest differentiators between something, say like Clerk or Auth0, if we want to mention competitors.Both great things.Go for it, why not?
We try not to diss other companies, but I'm just saying like, to me, that's like a huge thing, the fact that you can do both.So anyways.
Yeah, and that's, oh, sorry, go ahead.
So, well, I'm just saying go check out WorkOS.You can go to workos.com and authkit.You can go to authkit.com.Both fantastic resources.And Chan has several great videos on the, you have it on the WorkOS YouTube channel, right?
Yes.Yeah.At WorkOS on YouTube.
Yep.So check it out.We'll include links in the description.
Nice.Nicely done.You did a great job on that.
But it's very ad-libbed, but it is very sincere.It's so sincere.I've been so impressed.So the stuff looks great and it's super easy.And the fact that within five minutes you have your entire auth flow and you can use the OAuth stuff.
Brad was talking about trying to implement OAuth by hand.I mean, you can pick which providers you want right out of the box.
Yeah, this is like something that really attracted me to WorkOS in general.So I've only been there for two and a half months doing the developer education stuff.
But I loved, as someone who is just a nut for composability, just has been my entire career in tech, I just love all of the WorkOS solutions because they really can, you can go in and just be like, hey, here's a hosted login box that you literally just from your application send, create a URL,
go log in with any of these providers and then get sent back to your app all the way down to, you know, you're building SSO with SAML or SCIM and like all of like these really crazy, you know, providers and like doing that kind of stuff.
And then like the audit logs, like it's just all of these things are just there.And like, depending on how complex your problem is, it's just you just, okay, yeah, I'm going to turn that on or I'm going to like migrate to that piece.
Like I freaking love it when things actually compose.And yeah, it's great. It's great.
I feel like work OS is kind of like a new kid on the block, or at least I haven't heard too much about it until maybe about the time until you joined.Honestly, have they been around power of YouTube, right?
Have they been around for a long time?
Yeah, I think the company is about five-ish years old.And honestly, like this year, I feel like has really been picking up post-AuthKit launch.
And I think that's something that's really interesting and kind of like a fun thing for me to learn personally is that WorkOS is a very upmarket company and like started with that SSO piece of it and very intentional about targeting B2B enterprise companies and figuring out their auth needs because
Have y'all tried to implement SSO?Like, that's one of those things, like, if someone was like, hey, like, implement SSO, I'd be like, you need to find someone else.
And I'll find a new job if I have to, because like, that's just not, that's not where I live.
That for four months at Atlassian trying to integrate with our SSO, and they have all sorts of crazy ways to get in there.It was hard.
Right?I mean, like, yeah, the idea that anything takes months, like with our current tool sets, and like documentation is like wild.
But like, you hear this repeatedly, the testimonials page for work OS is like filled with these companies with brilliant engineers, right?
Like we're talking about like, PlanetScale, and Vercel, and you know, perplexity people who are really strong engineering cultures, saying like, Oh, yeah, this would take us months.And we like did it in 10 minutes.And that
is it's crazy that consistently very smart people say this is a month's, you know, to year problem.And that is just wild that those like still exist in like the field of web development.
But yeah, like I think we do like, you know, over and over again, we see people like, oh, man, we're just so glad to not have to think about this.But that is the upmarket part of the business.That's the business part of the business.
And I think there is this really interesting challenge you know, where web developers really don't live at that space, right?And like, not typically, or like a handful of them at any company do.
And so it's really an interesting problem to, you know, you don't get a lot of market attention, especially in the JavaScript space, if you don't have a down market type of product, like, you know, AuthKit now.
And I think that release somewhere in the last year is really what opened the opportunity for that discussion, that off discussion to happen at the kind of like developer JavaScript framework level type of conversation and actually like join the cultural discussion, I guess, if you will.
Let's be real.Show up on Twitter is what you're trying to say.
That's a real problem.That's a real problem.I mean, people underestimate that.We struggle with that.
Yeah, that's how that's how you get exposure for your product to the developers who are like hands on the keyboards building stuff.That's my opinion.
I will say though, I think that work os is strategy is brilliant.Because when you start at the top, that's where the money is.And so you're like, I know by the time it gets done market, you're like, I know that I can
bet on this particular product because they have the history that's there.And now you have that grassroots movement because grassroots are awesome.But let's be honest, most JavaScript developers expect stuff for free.
And so when you're trying to survive and make money, it's harder to go at it from the other direction.
Yeah, and I think that's where like a lot of like it is so interesting because it's a big bet, right?
Like you're like when you solve the hard problem first, like you're making a big bet on yourself versus kind of, you know, I think that we have become very familiar with that pre-release kind of mindset or like beta software, right?
Where it's like, you know, someone is coming into the market, they have a fresh take on this thing, but they're starting really small and close to the user just to like stress test the idea to see if people are excited about it.
This is so commonplace now.And so it feels really surprising, I guess, to go the opposite direction where you make that big bet as a business on the business side.
and then kind of realize that once you have built that level of solution, it's pretty easy to, you know, build abstractions on top of it at a higher and higher level, which is kind of ironically or correspondingly lower and lower down down market.
And yeah, it's almost kind of weird these days to have it be that way as opposed to figuring out in real time.Like that's so like that's such a Y Combinator type of strategy, right?
you write some blog posts, you know, to do some like demand gen, you know, build some kind of open source software to like show people that you can build software.
You give that away for free and then you like start charging for some kind of service around that thing.
And then you have a product, right?Yeah.
Yeah.Okay.Let me ask you a harder ish question.So there are people out there, I'll name names if you want me to,
I'll leave that up to you.
Oh, man.I'll do it.I'll name a name.So Kent C Dodds has yes, we've had him on the show before.I think the world.Yes, we all do.Just has contributed so much to the developer community.
I think he said and I think I even challenged him on this on the show.He said that developers should write their own off.What do you think about that?
Why would you want to do that when you have someone like Virgo S?
I think Kent should definitely write his own auth because Kent loves it.Oh man, that's going to get clipped and it's going to sound mean, huh? No, I think Kent should definitely write his own auth because, you know, Kent is an educator, right?
And Kent loves writing software.And so I think that those two things combine really well to like, yeah, you should, like you should do it yourself, right?
You know, in the same way that like a framework should include some type of basic auth provision, right?And so I see Kent working at a framework level and he is a framework author, right?And so, yes.I also think that his position is probably
in the domain of don't, as an educator, don't assume that you can't solve this.I think that's a really important thing for people who are learning to program, an important mindset to have.
Don't assume out of the gate just because services exist to solve this problem that you can't, and that it's not something that you will actually learn a lot about the process.
something valuable maybe you know just for your career or the way you think about software in solving this problem so i think that yes and auth is becoming increasingly difficult it's becoming increasingly difficult to provide your users with a secure experience and so depending on
How seriously you want to take that from the beginning it may be advantageous to use a service from the beginning because you're gonna get a product that is like labored over by people who are thinking about security. every day, all day.
And I think it's also a part of the stack that is like inherently complicated, right?Like you can't implement an auth system without also having figured out email.
You know, so it's like, there's this kind of, there's this like chicken and egg thing, right?Where it's like, maybe your app actually doesn't even require email, but like you have to have email implemented in order to implement auth.
So now you have like, you know, don't make two mistakes, two stupid decisions at the same time, right?
And so if you're prepared to actually go down the rabbit hole of like, okay, well, in order to implement auth, I really have to understand, you know, how my database is going to work and how I'm going to implement like, you know, again, it kind of is this cascading set of decisions, right?
And it's like, so if you're new to databases, right?And it's like, okay, well, now you have to model a user, you have to like figure out how to, you know, where are you going to put the challenges?
How are we going to map those challenges like to the user and then like that asynchronicity of email? And then also the idea of like warming up an email that you're going to be using to actually arrive at users.
Like there's such a cascading set of problems that you have to figure out that you don't really want to figure out if you're just a, you know, like, hey, I want to build this thing.And like, people have to log in.It's, yeah, it's a lot of problems.
And for some reason, all of those problems are like the hardest problems.Like, like, you go to build an app, you need off before you can even like start putting data into the app.And it's like, you just get smashed in the face with it on day one.
And and that is why services are great.Because you can just get up and running.And most of the time, the free tiers are awesome.And you just there you go, you have it and you don't have to worry about it until later until you start scaling.
Even, I love your point about email because there's been several people where they're like, Oh, I did it off the easy way.I have magic link passwords.And it's like, that still involves email.
Totally.Yeah.And it's like, and the magic links are particularly interesting because like that directly ties into like data modeling in a database, which like maybe you're not that good at yet.
You know, if you just had an idea for a thing and you're like breaking into web development, yeah, kind of figure out how to like model challenges and then check the challenges.And you know, you have to expire tokens and it's crazy.It's a lot.
So you mentioned like Authkit that helped take WorkOS from enterprise level and start introducing it to Twitter, to developers on Twitter.
Hello Twitter, we're here.
So like, what is Authkit's role play in all this and what does it provide to us?
Yeah, so AuthKit is sick.I have been actually, Amy and I have kind of like simultaneously been on a journey to figure out how to like integrate AuthKit with Astro, which has been very fun.I am a big fan of Astro personally, love it.
And yeah, I wanted to use AuthKit and it gave me an opportunity to kind of drive, like go lower level into the kind of like that WorkOS node SDKs, understanding how cookies work for the first time.Deleting a cookie is surprisingly difficult.
Like I didn't realize that I was going to have to like Google around the internet to figure out how to delete a cookie.It's pretty wild.Selma has a great blog post on that.I can post a link if you know that's helpful to people.It's so good.
It's so good.But yeah, so anyway, all that to say is that AuthKit is a product that works on top of all of the work OS kind of like enterprise grade systems to make it easy for you to just, you know,
NPM install a package for frameworks like Next and Remix, add a couple of lines of code in either loaders or what's it called, middleware in the case of Next, and basically have it enterprise-grade auth system out of the box.
The way that it works on day one that makes it so delightfully easy is that you basically get a handful of URLs.You'll get a login URL, a logout URL,
through those providers and you just kind of your login button becomes this like you send off a request.You navigate to this hosted AuthKit experience.
You click on a couple buttons, you get GitHub Auth, or Gmail Auth, or Apple Auth, or email password, or magic, magic, not magic links, magic auth, where you can email with the token and all that kind of stuff.
You get MFA, like all of these kinds of things you get out of the box through this little, you just push buttons on and off.And then you authenticate, the user data gets sent back to you, you put that in a session inside of your application.
It's like easy peasy.It's great.
It also gives you information you need.Like that's the other thing that I think I've wondered with other services.It's like, okay, you're giving all of these, this user information to a third party service, I might need that for my app.
And I don't have to ask them again.Like WorkOS gives you all of that information through an API.
Yes, which is I think that's that's such a great point.
That's something that kind of attracted me to work OS and off kit like over some of the other solutions were just kind of like I feel like Firebase kind of like popularize this where it's like they own all of my user table, I guess, which is weird and like work West doesn't hold on to hold hostage any of your data.
It's kind of like just It's your data, so you'll get everything back in the user object, like post-auth, and there's a bunch of webhooks that as data changes, you can respond to those and update your database.
We have a bunch of articles that are like, hey, we're not your user table. You have your own user table, we're just handling the auth for you.
I really like that because should you decide later on that you want to own the whole auth piece and just build it yourself, maybe you have an educational interest in doing so or you want to fully control it on your application stack, the problem is reduced now to reset password.
You put a reset password and Now people are, you know, authenticating through your bespoke system.So I really like that.I feel like so many services are trying to entrap you.And I hate that.I really do hate that.
Like, if it's good, just believe in the product that people want to continue using it.Don't force my hand.
What's the minimum set of data that work OS or off can actually needs to do the off?Is it just like email and password type thing?And then just email you store just email.OK, and then everything else is stored in your own user table.
They just make that record for that particular email address and then whatever sign in methods are associated with it.
Yeah, yeah.So email is the only piece that's required, and that's because, you know, work OS is. built for enterprise products.And so the most secure way to authenticate a user is through email.
And so AuthKit actually does a lot of really cool stuff around identity linking.We have a video about that.And so the way that we handle identity linking is through that email.So email really is the most critical piece.
So when you log in with GitHub, we will do a challenge on that. and say like, hey, we want to connect your email address that you've used with your GitHub account.
So you can log in with either, but you'll need to kind of, we've sent you a code to that email address on file.And so just give us that code and you'll be good to go, you're connected.
So email address is really the only thing required for WorkOS user record, but also stored on there, which you can keep nicely in the session for quick access is I think, First name, last name.
The password doesn't come along with that, but you can set a password if you want to.So if you want to take that directly from a user and then set it, you can do that.But for security reasons, it doesn't come with like in the session.
I think that's it.I think there's a couple other things on there, but nothing like user focused so much.And then everything, if you want anything else, it's kind of up to you.
Right, exactly.So then you just correlate with your own database, the email you registered with WorkOS and then your own user tables has the data that you want to associate with them.
Okay, sweet.Totally.Yeah.Typically, that's how we recommend people do it.You just create a user table the way that you want to anyway, and then just add a property for the WorkOS ID that you get back for that user.
So I'd be curious.I'm a remix guy.I'd be curious.I saw you were working on the auth kit integration with remix.You know, tell me your take on like how remix plays with authentication.
I know remix doesn't have a middleware layer that can kind of probably make it a little bit more frustrating.But yeah, I want to hear your thoughts on doing that.
Yeah, okay, so I'm gonna like shout out a post that Paul wrote during, was it developer week?I'm just kind of, it's really fun.
It's kind of like just talking about his resolution to like eventually just giving into middleware being probably the best solution for this type of thing, but fighting it along the way. And yeah, I think off in remix was really interesting.
I didn't, I didn't have a strong opinion on middleware.You know, I think that it was there and like, understand it.
And I had like some frustrations around like, Oh, like, it's kind of weird that I have to do additional pre routing, I guess, to say like, to pre qualify the URLs.And that felt a little bit weird.
But then going into remix and not having that felt even weirder.So like, I kind of that created some appreciation for me about middleware.So I'll say that much.I don't think that my understanding is that remakes isn't like opposed to middleware.
They just haven't figured out the API that they really want to ship with yet.Does that sound like that?Yeah, that sounds about right.Yeah.
Yeah.Because like previously, they're just like, I don't know, call a function, man.It's fine.Return a redirect.I'm like, yeah, I like the simplicity.But like, what happens when I need to add it to 30 things at once?You know?
Yes. Yeah, yeah.And so you kind of get into like overloading the root loader a little bit, which is fine, I guess.
Yeah, it's like the root is like the context provider tree almost, you know, we're like, you have like 1000 context rule.That's what you do in the root is like you load all of your common data, then start passing it around.
So I did include in the link, Sam created a video on using WorkOS with Remix that is very good.So I did check his video out and then with Astro, what I've been working on, you do have that middleware layer and with Next you have a middleware layer.
Yes.Yeah.Yeah.Sam's video is really great because it actually showcases kind of backing out of the hosted AuthKit thing.
Because like, so he's actually building a form on his page and then going through the Ork OS APIs to authenticate, verify all that kind of stuff and doing it manually.
So that's like a really great video if you want to learn how to do things a little bit more on your own domain, build your own personal form, etc.But yeah, like remixes, remix is really interesting.I haven't had too many opportunities to write remix.
There's a lot of strong opinions that I think Chafe
But I can see like how they arrived there and you know it's but yeah it is interesting kind of like inserting it in the auth level.
We do have actually Paul Ashes and Chance Strickland it did a just released a new version of their Remix API that I think is really nice and so it's a little bit closer to that that
you know, with off middleware type of style, despite not having middleware.But yeah, I'd check that out.It's really nice.I think they did a good job.
So yeah, I'm looking forward to pulling it in because it looks pretty simple.And I noticed that it's not in the docs yet.It needs to get in the docs for sure.
Which one?Oh, like off kit in the remix docs.
Yeah, you've got the nice selector between node and next.And I'm like, just give me that extra tab right there.
Yeah, I know.I know.That's one of those things.Let's talk about information architecture in like, yes.Yeah.
It's so hard.Like you've dedicated so much to this, like, like, like rant on that for a second.
Yeah.So one of my jobs over the next year is to rework the Redwood documentation.And it's hard, I'm sure for you guys, but then take it for a framework level, because then you're not even just talking about auth, you're also talking about
like databases.And I mean, just, I won't go on, you know, the hard part on top of that for us is we have so many integrations with all these other services.Do we duplicate that information into our documentation or do we rely on the service?
And the thing is, when we get an update, at least where we are right now, I mean, sometimes we have, we have great partnerships and they will reach out to us, but usually it's after the fact, after something's already been released or somebody has a problem with it.
So, I mean, there's so many things.And then how I think is probably different.Actually, there's no probably.It's different than the way that both of you think.So trying to get information in a way that makes sense for everybody is also difficult.
Now, where I think some of the low-hanging fruit for us, and I'm curious you feel the same way, is with search.So we have Algolia search running on our docs, but you have to go, I didn't realize this, you've got to go in and weight your stuff.
So if you search for something within our docs, a lot of times it might reference this obscure reference on the page to that thing versus a dedicated page all about that.
So when you search, the top result isn't necessarily what you would consider to be the top result. So that's still something that we've got to go in and finagle.
But I think that's, again, probably the lowest hanging fruit is being able to say if search works, then people will, regardless of how you organize your documentation, it'll be easier to find what you're looking for.
Yeah, it's like, it's like Twitter search, right?Like it's like, you couldn't have started with my user, like my followers, like you're just starting with like celebrities and the most followed accounts online.Like what?
But have you seen Divio?They have a fantastic, I've referenced it so many times, they have a fantastic documentation guide.
And we kind of already use this a little bit, but we need to do a better job with it.I'll share a link, but yeah, I can't wait to see it.They set stuff up as they say, there's basically four different categories for your docs.
There's tutorials, how to guides, explanation and references.And when you think about that, When you think about the jobs to be done when you're looking at documentation, usually it fits into those four categories.
You have a tutorial where you're just trying to learn something.Just teach it to me along the way.You have a how to guide that's more problem oriented.I have, I'm coming to you because I need to solve off.Just tell it to me straight.
And then you have reference, like how did you decide to do, this with JWTs and access tokens and like, explain how you decided on that.
And then you also have explanations like help me understand and this is like more generic than, oh, sorry, I got those backwards.Explanation is like how you arrived at that decision.Reference is like, tell me your APIs.
How does this with user management work? So, you know, I think that's helpful in breaking those things up.But you still have things that are subdivided underneath that that can sometimes be difficult to figure out.
Yeah, that is such a great framework because I mean, you know, we're web developers, like our whole game is utilizing search to be productive.
And like we've all done that thing where it's like what you wanted was a reference guide and you got a tutorial.And you're like, I have to like just carve through like pages and pages of you trying to buddy and buddy up to me.
Like when all I want to know, is this a required field or not?
What are you?What are the what's the object you're going to return?Just tell me.
Yeah, totally.What options do I need to include to get that piece of data that it like doesn't naturally come by default with it?Like it's just, I totally agree.Like sometimes just like, just give me the just give me the docs.
But then sometimes like, you know, you're at the beginning of that journey.And it's like, I need someone to handhold me through setting up off in this app.
This is though an argument for having a really, really, really good TypeScript and like JS doc comments.
Because like if you're a developer who is at that level where you're like, OK, I want to play with work OS and off kit, you kind of just like import the thing and start hovering and be like, yeah, this is this is what I need, you know, and everything's auto completing and you're kind of reading brief descriptions and it links out to the docs if you need more like that's when all of it comes together.
getting the editor completions and stuff.And you've got the reference to exactly where you need to go to dive deeper.
Yeah, yeah, that's so true.So true.Yeah, it's like, it's so many things that you have to get right these days in order to and I think that's why like DX is so huge, right?Because it's like, this is like, this is the make or break moment.
you don't even have the luxury of knowing that someone's going through it, right?
And so you have to provide a good experience where you're like actually absent from the experience on so many levels, the TypeScript side, the reference, the tutorials, video content.
It's like literally my whole job just to like kind of read the docs and make a video about them.Like it's, It's so wild how entrenched we've become at exactly that intersection point with other developers.And it's fun too, right?
I think that it's super fun.Amy, you were talking about, to bring it back to the documentation, I'm kind of curious, I'd love to get your takes as developers for those integration things. One of the challenges from the information architecture side.
So you said you're like looking at the quick start guide for user management on work OS and you see a toggle that's just currently next JS and Express, right?
Which are kind of like the, I guess maybe the two most popular, I guess, but you don't see your framework represented there.I'm curious as we build out these integrations, do they need to have tabs in there or could there be like a bucket?
It's like, hey, here, Here are five of our integrations that we have.And then having the readme be that walkthrough, it's close to code, you know, it usually gets like updated in tandem with the integration code.Is that like enough at that level?
Or do you does that need to be pulled into like individual tabs, you can hit the tab and follow along at that point.
Cloudinary does tabs and they have like a gazillion integrations.And so it gets overwhelming when there's more than like, three, four, five, cloudinary has like 10.And so it's awesome, because it's all there.
And you don't ever have to leave the docs that you're looking at.But you're also like, okay, which one do I choose?There's a node j s one and a j s one.And those always throw me for a loop, because I have to think twice about it every single time.
So I think after a certain point, it's totally fine to kick them out to the readme.Because you know, you're just looking for that quick start type example, or maybe even a
a different markdown file in the repo that's like this is the example that you're looking for that we would have put right here, you know, but it's like, yeah, link.Maybe there's a different way to set like a higher level preference for the user.
It's like, what framework do you use?And then the docs become that version of it.So you're not sending them with like 20 tabs.
I mean, that also is like, man, we spent months on that problem storybook too, where it was like, you know, we had dedicated docs for each thing, but then it's kind of like you have this like combinatorial explosion of what someone could land on, like via search.
And like, it was always so frustrating for people to be like, why did I land on the Vue integration doc for this? It's like it is really an impressively hard problem trying to figure out how to get people to the right resource at the right time.
Yeah, man.Yeah, we should.Y'all should.Yeah, get some information, architecture, documentation, DX people like just get get a roundtable of people because like that's something that I want to learn how to do.
Well, and I also want, I've talked about this.We need to get like a round table of framework developers together because I'm like, they're different.
I mean, I know those problems aren't necessarily common to everybody, but some of the things that they deal with are different than everybody else.And it's fascinating.Like documentation is one or talking about release.Release is crazy too.
I don't know how you guys feel if you've figured out the silver bullet there, but trying to communicate updates or check breaking changes or making sure that I mean, off is a big deal when you're talking about breaking changes, right?
Yeah, I mean, so from our side of things, it's like the WorkOS service side of things is built for enterprise.And so there's really not going to be a lot of changes on that front.There are going to be at the integration level.
So like Remix for us is like pretty new.Yeah, there's like big changes that happen from version to version.Fortunately, you can like version lock those.We are trying to figure out a strategy for how to communicate those changes.
Love to hear your thoughts.I've been kind of thinking, at least from my side of things, is doing some of those migration guides via shorts and just kind of having a video, but have it just be really like, hey, here's a here's a thing.
I'm going to upgrade this remix app.Yeah.But yeah, it's kind of finding the right place, you know, and like exposing the right thing is really important because I don't know, a lot of times people don't want video to like they want it via text.
I love video and and I think it's okay to have short videos.You know, people are worried about posting to YouTube and it has to be some 10 to 20 minute thing.It doesn't get the content out there.
Sometimes it's great when you find exactly what you're looking for in a two and a half minute video.
I did a Twitter poll and I got straight up 50-50.
Oh, wow.Oh, like long form versus short form?
Yeah.So I was surprised.I just figured people would be like video because I feel like that's what I see more of.
Yeah.You know, this is, yeah, like I really do feel like
I haven't cracked the code on this because I went through a period where it was like I would write a whole blog post and then roll that in as if it was a script for a video and then I would do a video and I would release both.
But then I found that it kind of made my videos a little bit more sterile. I guess, and like a little bit less engaging because it was like they were just on rails, you know, it was like two scripted, I guess.
And sometimes there is, you know, you know, just like you record the pre show of this show, like sometimes the magic is in that, like off the cuff thing that like wasn't actually part of the journey.It was like a side quest.
And that can be like a really important thing.Like someone sees you get an error when you try something, you know, like, Oh, yeah, I forgot to, you know,
yada, yada, whatever, whatever, that's the piece that they needed to learn in order to be successful.You just cut all of that out.That part's been tough.I have been thinking about how to utilize AI to do it in reverse.
Do a video and then generate a blog post from it. I feel like, you know, there's obviously going to be a lot of rework on the writing side of it, I think, in order to make it feel good or feel like an intentionally written piece.
But I kind of feel like maybe that's the like video first and then kind of like pull out artifacts from that is maybe the way to go.I don't know.It's still fresh.
I have.Yeah.And again, it's kind of like AI is like so uncanny valley for me.And like, I really am opinionated about writing style.And like, I feel like, you know, okay, hot take.
I feel like AI is a really bad writer because most people are really bad writers.And so it's just trained on really passive voice, uninteresting writing.And that's not how I write. It's a very active voice.Do this.Don't do that.
Some stories in there, etc.And like AI is just bad at it.And like that's not a video tap problem.It's just AI is trained on mountains of bad writing.Yeah.
So I'm also curious.One of my friends created blog recorder.Have you seen this?
Oh, I did.Yeah, I did see that.Yeah, yeah.
I said one of my friends and then I couldn't remember his name.But anyways, this is starting with audio where you just voice record and then it'll generate a blog post.So also kind of interesting.I know we are getting close on time.
I could talk to you for hours.
I know.I know.This is how I get to my five to a short episode and then leave a lot of excitement and opportunity.Well, perfect.
We have number three coming up.Just got to get it scheduled.Anyways, in the interest of time, I know we can go ahead and wrap it, but we appreciate the education stuff, Chan, that you create and just the energy and humor.It's always a good time.
Yeah, thanks for having me on.This is so fun.I mean, I realize like I recognize the irony of this because it's like literally a sponsored podcast and we're talking about, you know, Work OS.
But, you know, I enjoy talking with you all and I really appreciate the feedback that like the thoughtfulness and awareness that you have to like these documentation things that I think that is an industry we're all trying to figure out.
And so it's been really fun to get your takes on those and thoughts.So thank you for that.
So, I think for now, that's all we got.