The Standup with ThePrimeagen - Tailwind Creator on the Challenges of Open Source

Episode Date: August 3, 2025

Thank You! https://blacksmith.sh our sponsor today! Speed up your GitHub Actions AND pay less! https://tailwindcss.com/sponsor Love Tailwind? Consider Sponsoring! If you want delicious coffee sold onl...y over SSH: ssh terminal.shop 🎙️ Hosts: - TJ @teej_dv - Trash Dev @trash_dev - Prime @ThePrimeagen 🎯 Guest: Adam Wathan - Creator of Tailwind CSS https://adamwathan.me https://x.com/adamwathan https://tailwindcss.com/ 📌 Chapters: 00:00:00 - Intro 00:01:04 - "Open Source is Pain" - Tailwind Creator 00:04:37 - Sponsor: Blacksmith - Faster GitHub Actions #ad 00:05:15 - The Reality of Open Source at Scale 00:10:55 - Cost of Full-Time Open Source 00:13:06 - Rust Rewrite & Performance Gains 00:16:29 - Sponsorship vs Business Models 00:22:48 - The Emotional Side of Open Source 00:30:15 - The Courage to Fire Users 00:37:46 - How Tailwind Spends Money 00:44:04 - How to Champion Open Source while making money 00:54:06 - Licenses in Open Source 00:58:00 - Tailwind is a hard business 01:00:14 - VC vs Lifestyle Open Source Projects 01:07:50 - Replication in Open Source 01:11:00 - Tailwind Fortnite Skins 01:16:00 - We agree on the words finally 01:18:00 - Thanks & Wrap Up Key topics include: - The reality of maintaining open source at massive scale - Why sponsorship models often fail and what works instead - The psychological challenges of community management - How to build sustainable businesses around open source - The future of developer tooling and AI's impact 🐬 Bonus Section 🐬 ┆ ┆ ┆ ┆ ┆ ┆ ┆ ࣪ ˖☆ ࣪⭑┆ ݁˖ .☆ . ݁ ˖ ☆⊹ ࣪ ┆ ˖ ࣪ ⊹ ࣪ ★ ⋆.˚ ⊹ ࣪ . ࣪ ˖⋆˚★ ₊ ⊹  ࣪˖ ࣪ ₊ ࣪ ˖  .   ˚ . . ݁ ⊹ ࣪ ˖    ࣪ ˖    .   ˚ .   *   . . ݁    ݁   .   ˚   *   . .   .   ˚ .  *   . *  *   . *   .   *   . Did you actually read this description?   .   ˚ .   *  . Was it useful?  *  .   ˚ . ˚  . *   .  *   .  *   . Did it have everything you were looking for?   .    .  . *   . If you wanted to see something different, what would that be? .    . . * Do you think Tailwind would have been as popular if it was named Headwind? .   ˚ . How much Tailwind do you think Prime really knows?  .   ˚ .   *   . Who do you want to see on The Standup next?   .   ˚   *   . *   . .   ˚ .   *  .   ˚ . ˚  .    .  .    . . *  .   ˚ .  .  .   ˚ .  .   ˚   *   . *   .  *   .  *   .  *   .  *   .  *   .  *   .  *   .

Transcript
Discussion (0)
Starting point is 00:00:00 Yeah, I am a little disappointed. I was saying to Trash, we should have done a gag where, like, the whole time Trash talks about Tailwind, like, very authoritatively, but, like, slightly wrong or something. No, listen, you don't understand. Tailwind is the future. And then, like, 10 minutes in, we're like, and we've got Adam, the creator of Tailwind and Trash just, like, YouTube shocked face. Hanged up. Yeah, he's... Hangs up. It just says, like, that OBS screen shows up, where it's just, like, camera gone. Yeah, it's just that.
Starting point is 00:00:30 It's so funny. Yeah, because if you hung up and screwed up my entire, it would screw up everything else. So we can't, I can't have you hang out. Yeah, yeah, yeah, yeah, yeah, yeah, yeah, yeah, yeah, yeah, yeah, yeah, yeah. Anyway, sorry. All right, all right, all right. Let's get started because this actually, so this standup I am particularly
Starting point is 00:00:47 excited about today we have with us, Tej, as always, Trash Dev and Adam, joining us, Adam being the creator of Tailwind, may have heard of it, probably. Anyways, probably. Here's my favorite form of CSS, really. But you said something in a podcast where you said open source is pain. I think was your direct, exact line. Open source is pain. Wait a minute.
Starting point is 00:01:15 There are so many versions of this. There is so many people who make articles. Here's an article that I just, I think I read this one like two years ago. Open Source is Broken slash or why I write useful software or I, or I, why I don't write useful software unless if you pay me, which I think is a great subtitle. It's like, I'm just not going to do it unless if you pay me money to do it. And so there's a bunch about open source. And I think that I know, TJ, you've done a lot of open source.
Starting point is 00:01:41 Adam, you've done a lot of open source. I got burnt out from open source in 2017 and have pretty much never done it since. And so I am very curious about what you meant by that line and then even more so. If we can just talk about open source in general. Let me just imagine myself saying that and try to think of like, what I could have possibly meant when I was saying that. I think like, I don't know what I, I don't know that I would say. I mean, open sources, open source at scale is, is hard, you know.
Starting point is 00:02:11 To go kind of the, to the beginning, like, I, I think different people think of open source differently. I, my favorite and least stressful way to think of open source is like, I made a thing. there's no real reason for me to not let other people see how I made it so fuck it here it is on the internet if this helps get you a little bit closer to something you were trying to build a little bit faster or you can adapt this code to something else or saves you some time cool you know but it's like this very no strings attached version of open source where it's open because why not not because you know, I'm trying to do some service for the world or solve this problem for everyone. It's like, I solve the problem for me.
Starting point is 00:03:01 If you want to learn from the code, like, go check it out. I think that's like the best relationship for maintainers and consumers to generally have with open source. And like I think DHH has done like a good job of really sort of like internalizing and sort of like espousing this version of things. but ironically like I make a living doing open source which is kind of like the the opposite of that you know but if you if you build something open source that ends up taking on a life of its own and getting used by tons and tons and tons of people it's hard not to sort of feel like a duty and responsibility to like steward it properly and maintain it and improve it and stuff like that and when you get into that spot um It necessitates, like, working on this stuff full time and then figuring out how to do that is really tricky.
Starting point is 00:03:56 And a lot of people will say, okay, well, I'm going to, like, build this open source project, make it really popular. Then I'm going to, like, make some little side business out of it where I can maybe work five hours a week on that and then spend the other 35 hours of the week, like, maintaining the open source. But that's actually, like, super insanely hard and unrealistic. because what you're actually saying is I want to build a business that I only have to work on for five hours a week that pays me a full-time salary. Forget like what else you're going to do with the rest of 35 hours. And reality is like building a business is a lot of work to get off the ground and, you know, rarely takes even just like the regular 40 hours that people put into it. Whether you're a vibe coder or a handcrafted free-range NeoVim user, you still need CI to be able to build your binaries, run your test. or make your releases.
Starting point is 00:04:47 That's where Blacksmith comes in. It takes your GitHub actions, and with a one-line change, makes them faster and more cost-effective. Not only that, but you can finally get visibility into your CI pipeline right when things go wrong. We're happy to have them as our sponsor
Starting point is 00:05:00 for this episode, because just like us, this one is truly a no-brainer. Sign up and enjoy faster GitHub action workflows at a much lower price. Blacksmith, twice the speed and up to 75% reduction in costs. Check them out at blacksmith.sh.
Starting point is 00:05:13 Now back to the stand-up. It's something like tailwind scale, like just like the issues just keep pouring in and pouring in. And you want to stay on top of it, even though 95% of them are not even problems. It's just like reading it and understanding why it's not a problem and then figuring out where to put it or how to delete it or how to respond to it instead. You know, but you're basically getting like deduced by like your by the world in this giant inbox that you, they can't can't really control. And yeah, it's, it's, it's just like a big responsibility, you know. And I think when I was talking on that podcast, I'm trying to remember like what I would
Starting point is 00:05:58 have said about it. I think I was talking about this new thing that we're working on, which is kind of like a web components e version of things like Radix and. and base UI and Headless UI and React to ARIA. Because like one of the ways that we make money with Tailwind, or like basically the way, is we have a website that you can pay for access to that has a bunch of component and UI examples and stuff.
Starting point is 00:06:26 And those are in HTML or React or in view. But historically, the ones that are pure HTML, if there was like any interactive bits to them, you were just sort of on the hook for doing that yourself. And doing that stuff like properly is actually like an insane amount of work. with all the keyboard navigation and RIA attributes and weird, horrible accessibility bugs and stuff. So that's been like probably the most common reason for like refunds
Starting point is 00:06:52 or people not buying is people who are not React Review users and just are bummed that I have to write 600 lines of JavaScript to make this fucking hamburger menu work properly or something, you know? Or they just do like a shitty job of it. I can relate to that last part. They still had to do it themselves, right? So anyways, the point is, like, we're working on this, like, web componentsy, just a script tag, CDN thing you can pull in,
Starting point is 00:07:18 where you can just use custom elements and get a lot of the same kind of composable behaviors working in just like a more pure HTML environment. And I was just talking about how in the past, it would have been, like, really obvious to me to just, like, open source that because that's kind of what you do with code, it feels like. But now in the position that we're in, like, trying to make the business sustainable and stuff like that, there's this, the incentives are kind of reversed, you know, it's, I feel pressure to keep a closed source because if we open source it, then we have people who
Starting point is 00:07:50 like build competing products to us that build on our open source stuff and they don't have to maintain the open source stuff. So they get to pour all their time and effort into competing with us. And we have to spend 90% of our time improving the tools they use to compete with us and 10% of the time competing with them. And just kind of like a shitty, it's just a shitty thing because you want when you make something that's open source and used by a bunch of people you want to be like pumped and excited about when people are building cool things with it and stuff like that but when you're trying to sort of like build a business out of it the incentives end up kind of pushing you the other way and sometimes it kind of feels like you're at odds with your own community and it's just
Starting point is 00:08:28 a tricky problem to figure out how to solve because I don't know I love like just making cool stuff and just putting it out into the world. And I prefer not to really think about the commercial side of it that much, you know. But yeah, I don't know. That's kind of just a ramble rant about, you know, probably what I meant there. But yeah, I don't know. It's just a lot to figure out and wrestle with. And yeah.
Starting point is 00:08:56 I always found the like, yeah, I'll just make a really successful open source thing. And then on the side I'll also do like just a little business thing that pays the bills. and you're like, bro, that's like lightning striking twice, man. You're just like, well, probably my strategy, super successful open source product, maybe win the lottery, hopefully like lost uncle I didn't know about with inheritance. And then I'm also on an oil field on my house. And you're like, okay, that's not a business plan, guys. That's not a strategy for a successful life.
Starting point is 00:09:26 When I was watching Prime Stream the other day and he said something that made me think of the same thing, We're talking about like how to sort of succeed in an AI dominated world. And, you know, we're talking, he was commenting on a comment that I made about like wanting to just lean more into like having a captive audience and making sure that you have a lot of people paying attention to you. So you actually have people's attention. And, you know, Brian was saying, yeah, you know, like that's the strategy. Like, oh, first, like, just be famous. That's the first step. Easy.
Starting point is 00:09:57 And then. That's step number one. Yeah, step one. Well, what, you're trying to do this without being famous first? Like, why don't you just go do the famous part first? God, you're like being a movie or something. Yeah, yeah. Yeah, exactly.
Starting point is 00:10:11 Like, it's just a tequila company. Like, it's just that's a little. Yeah, exactly. Wait, you tried to release a tequila without like first being an A-less celebrity? Like, what are you thinking? Cool. Cool. So I actually, so I feel like I can embody the YouTube comments because I just, like, I've read so many of them
Starting point is 00:10:30 that I just feel like. like I can deliver it to you. And so I feel like the very first YouTube comment that's probably going to be 100 of them are going to go along the line of something like you should just give away the code. Why are you concerned about making money? This is open source. We should be doing this for the good of humanity. So why aren't you making tailwind more open and free? I assume that's going to be like one of the top comments. But now that I said, hopefully I've now destroyed that top comment because it is so at least I feel very upsetting internally to me but I want to hear your thoughts about that because like why aren't you just open sourcing everything and doing everything out
Starting point is 00:11:07 the goodness of your heart why why even create a business to begin with sure sure it's because like there's costs involved right like I don't know that's kind of like the simple version so no one can like work full time and build maintain like open source on the side forever, you know? Um, you can maybe do that for quite a while when you're like 21 years old and like single and living in an apartment by yourself, but like I have three kids, you know, that are like seven and under and I want to spend time with them and I'm, you know, like I just got a lot of responsibilities outside of, um, you know, fucking writing open source code and working a full time job. So, uh, you want to work on it full time and then as the project gets bigger and bigger, there's just
Starting point is 00:11:56 more and more work to do so you need help so you hire people and we're like a pretty small team there's eight of us like three partners and then four full-time guys and one part-time guy but our we try to pay people very competitively you know so we have like a million a half dollars a year and and expenses that we have to cover so we have to get paid um from somewhere you know and yeah we could try to run the whole thing on volunteer work but someone has to like curate that volunteer work work and go through the PRs and merge them. And yeah, it's just, it doesn't work that way. The only way for like something to really be like properly maintained is if people can
Starting point is 00:12:36 really devote their full attention to it. And the only way to be able to devote all your time and attention to something is if you don't have to worry about money because things in life cost money. So the logical conclusion of that is you somehow get paid money to do that thing. So. Yeah. The other thing too is like when you start an open source project, you're just working on the fun.
Starting point is 00:12:56 parts. So it's like a hundred percent, you know, but like it's not all fun parts on v4. You know, like, no. It's almost just gets like harder and harder. Like that is that that's all that's left. Yeah. That's all that's left is the unfun parts. So it's like for sure. It's also harder to get people to volunteer their time to go and spend a hundred and 60 hours debugging cross platform build issues to make GitHub actions not get stalled out once. a week or something like this, right? You're like, and someone has to. And then, like, you make, like, idiotic decisions as a maintainer,
Starting point is 00:13:32 like, rewriting, like, a ton of it in rust to make it faster. And now, like, you have to maintain that. And you have to make sure it builds for all these different platforms because you have to worry about this native code running in all these environments when before it was just fucking JavaScript, you know? How much of a difference did that make, by the way? Was that, was that like a huge difference? But we were very strategic about how we,
Starting point is 00:13:56 used it. So like we didn't just like write it in rust to write it in rust. The main things that we did in Rust that had a huge benefit is, uh, first of all, like the way tail when works in general, right, is it has to like look at all of the files in your project and figure out what all the class names are and pull all those class names out and then generate the CSS for those class names. So that work is very, very parallelizable work, right? Because you can just like split that work up, look at different files across different cores, can't do that in JavaScript. So instantly moving that work into something that supports parallelism makes things like four to six billion times faster, you know, depending on how many cores you have on your machine.
Starting point is 00:14:40 So that is a huge piece of it. And then the other piece of it is just the actual work to look through the files and like figure out what's a class and what's just bullshit used to just be a bunch of crazy-ass regular expressions in JavaScript because like regular expressions are actually like the only fast thing in JavaScript when it comes to pulling things out of files. But of course like then you're just sort of like handcuffed by what you can express in a regular expression. Whereas in Rust, we're able to write like our own like custom like bit level parser that ends up being way faster than the Reg X thing and also just like way clearer and expressive and intentional, you know. So that was the other.
Starting point is 00:15:24 the other big piece. But that's kind of like the only things we do in Rust, honestly, is those two things. That's why we don't need all that config anymore, right? Because you're just basically just crawling our entire file system. Yeah, like now we can crawl the file system without you telling us where to look a lot faster too, because that just happens to be a lot faster in Rust.
Starting point is 00:15:45 So there's a bunch of heuristics around. It's mostly based on like the Git Ignore file. So if you've got something Git Ignored, we don't look at it, which is like a quick shortcut for not looking at Node modules. and stuff like that. But then we also ignore like anything. That's Docker ignore, idiot.
Starting point is 00:16:03 How do you guys get it to reproducibly build? Yeah, yeah, yeah. But then we also ignore like binary files, like fucking JPEGs and zip files and anything that is obviously nonsense. So that, yeah, that let us remove a bunch of configuration and make a bunch of that stuff faster too. But it's still predominantly a TypeScript code base now.
Starting point is 00:16:24 So yeah. So with obviously, again, kind of going along the lines of people being like, why isn't it free and all that? Before you started a business, was there some sort of attempt to rely on, say, like, sponsorship on GitHub? Does that actually work out at all? Because obviously, Tailwind is arguably probably top 10 biggest, like, Twitter-sized open-source projects.
Starting point is 00:16:50 I don't think you have a lot of competition as far as, like, how big your project. Like, everybody knows what Tailwind is. at this point that does any sort of web type stuff. And so one would assume, at least, I'm sure you'd see this argument over and over again, that there'd be a huge amount of people saying, oh, Tailwyn must do great with donations. Was that a viable option,
Starting point is 00:17:07 or does that just not exist as I secretly think that sponsorship doesn't exist? Yeah, as you're trying to lead a conversation. Nice leading question, prime. Great job. No problem. Our history is a little strange compared to other open source projects, because we actually never tried to solicit any donations or sponsorships at all. Steve and I, who first built like Tailwind Ui, which was the first commercial thing for Tailwind,
Starting point is 00:17:34 we did the Refactoring UI book back in like 2018. I don't know if you guys ever saw that, but it's like a teach developers design sort of thing. I got it. And that did super well and still continues to do really well, honestly, for a PDF on the internet. And that was like enough for me and Steve to focus. focus full-time on tailwind related stuff and then trying to build the templates and UI components business. So that's kind of like the path that we took. Interestingly, we're exploring sponsorship stuff now, which we weren't before. And I can kind of talk about like
Starting point is 00:18:12 what is leading to that. It kind of plays on some of the stuff like we were talking about before. but yeah, we'll have to see if that is actually viable for us or not. Obviously, I hope it is because we otherwise wouldn't be trying to do it, or at least hope it can contribute to, you know, our revenue in a meaningful way. And my hope is that because the project is like so big that there will be companies that like want to throw in and support. But that to say too, I do think like even then charity is like very hard, you know, to get people to pull money out of their pockets for people need like my belief anyways is people need like something. It doesn't even have to be like worth what they're paying, but they need like something to not feel stupid a lot of the time.
Starting point is 00:19:10 So that's the other thing that we're trying to like just sort out is what are the rights. incentives to create what can we give people where they can like feel good about supporting us but also get a little something in exchange so that it doesn't just feel like like pure charity even if it you know isn't a product per se but i don't know kind of like you see a lot of people having success with us doing like patreon type stuff you know you just got to give people enough and hopefully at a big enough scale like we get like 10 million visits a month to the tailwind docs if some tiny fraction of those people are big enough tailwind fans to just like want that really sort of die hard sort of extra perky stuff that maybe that'll you know make a meaningful impact
Starting point is 00:20:03 on our bottom line so that's an experiment that we're about to run anyways i want to bring this back more back to like the open source stuff so i haven't i'm obviously not part of the tailwind team the repo I've worked on aren't anywhere near as big, but they are like decently big. But I wanted to talk about like some of the pain points, which you mentioned, like, with sponsorships, which is something I've gone down, mainly because like an open source I find it's kind of just like, it really depends on like, do you care about code quality and all this stuff? Because if you don't care about code quality, you can just start taking contributions like
Starting point is 00:20:37 really nearly, right? It's like here's like some issue. Yeah, go ahead. I trust you implicitly. But at some point you hit like some scale depending. on if your repo is actually impopular, where you actually have to start caring about this stuff. And this is where I hit that threshold of, okay, now I got to actually vet whom I want to take contributions from, but also like, if it's such a big, like, high traffic, like a bunch of
Starting point is 00:21:06 contributions coming in, it's like, are you good enough? Do I trust you? Or what if they do put something in and I don't like it? Like, I have to deal with these personalities. So and that's where sponsorship's coming because then you can kind of pick who you want to and you give them an incentive Maybe not initially because they're contributing because they're just they like your project But then there's just like so many low quality contributions that it's like okay well At some point I got to get some core team. That's kind of like how I feel like was like your team I think Robin's still on your team is like one of my buddies Yeah, and that's where the sponsorships come in because then it's like okay
Starting point is 00:21:38 Look I know you're not full-time and I want to give you some incentive to like give some high quality contribution So here's some like sponsors of money to do what you can. But this is like when you get to that point, that's kind of where I started struggling in these projects because one, I don't want to like hurt people's feelings like they put some time in and they're just like, like look the code quality is not there. I don't have time to like babysit you and learn all this stuff. And then it eventually becomes coming, eventually turns into a situation like you where you just have like a core group of people. And then it starts feeling less and less like open source because you kind of just like have like these
Starting point is 00:22:14 issues that you have these people assigned to. And then you have to trust these people to say, hey, I took this issue. Are you actually going to finish it? Am I just going to see her? Look at this issue for like two weeks? And then ping him and be like, are you going to do it? So it's like, I don't know. These are like the situations I hit where it's just kind of frustrating. I don't really know what to do about that outside of just being. Yeah. I don't have good answers too, but I can empathize for sure. Like for the longest time for me, like the hardest thing about maintaining a large open source project was sort of that emotional side of it where you have all these contributions and stuff. And if you just don't like something, it's just draining to
Starting point is 00:22:53 go in there and try to let people down gently or explain why, you know, this isn't really the right fit for the project or where I want to take it or or even like, I like this idea, but like I think I need to like deeply research the problem that you're trying to solve to make sure that this is the right way to solve it versus just like merging it blindly. And I can't promise that I can make that like my top priority right now. So the issue just sits. People get frustrated. And yeah, that that part sucks. You know, we've tried to manage that by setting expectations and like our contributing guidelines and stuff around what are good contributions and what are. that are going to be hard for you to get merged or might take a long time to get merged so people
Starting point is 00:23:42 aren't too disappointed if something sits for a long time. But yeah, to me, that's that's kind of the tricky part. And if you keep going down that route, then you kind of end up in the spot that you're talking about, which is basically where we are, where you just like actually don't get that much in terms of real contributions. it ends up being mostly like support, like people opening issues and stuff like that. And our project's a little weird too because our end users are front end developers, but the code base is not like a front end code base at all. I'm sure this is true for like a lot of open source projects, but there are some open source projects like Larval, for example, where basically anyone using it is also like fit to contribute to it or like has the experience to contribute to it. So they end up like with a really vibrant active community of people contributing stuff,
Starting point is 00:24:35 whereas we don't really have a ton. There's like a couple of people who contribute stuff. And then otherwise it's it's just the core team. But yeah, you're right. It ends up kind of feeling a little bit less, certainly feels less like a community project. I think people's definitions of open source kind of differ. Again, I personally kind of hate that the sort of like social, community property connotation has been like attached to the term open source. To me,
Starting point is 00:25:07 open source just means like you can do whatever you want with the code. It doesn't mean like anyone else is obligated to entertain like your suggestions or do work to merge your changes into their fork or whatever. But yeah, I don't know. Is that answer any? Does that contribute to the conversation. Like one thing that I found that was effective because it's really hard if you have like a decent amount of contributors to figure out who should get money because it's like it seems super like difficult because some people put in a lot of work for stuff. It was helpful. We did and I think it's still the the case I haven't checked in a while. But like it was only if you were working on some neo vim thing for like an extended period of time full time that we sponsored people with neovin funds, which was been like.
Starting point is 00:26:00 Like, that's how a bunch of big projects got done for NeoVim, right? Like, oh, like, I did it. I've done it twice for NeoVim. Actually, both times where I was on paternity leave. Like, I could, I was like, okay, well, I can take a month and I can just work on NeoVim full time. Like, that's, that's chill. I can work on something. And, like, we've gotten a lot of great features that way.
Starting point is 00:26:23 And that's like at least a very clear distinction. So it doesn't feel like, oh, my work's not getting valued. I'm not getting any money. because when you bring money in, this is the other thing I think people aren't thinking like about oftentimes from the outside looking in is then it makes all the people not working for money feel weird. Right. Like I don't know if you've experienced. Totally. Yeah. No, I think I think we definitely get a, I don't know if we actually have that, but it's something I feel in my head.
Starting point is 00:26:49 I almost feel like uncomfortable like taking contributions from people when there's a team that's getting paid and then other people, you know, are just contributing stuff for free, you know? It's weird where money like enters the equation, you know? It's just kind of like all of a sudden it's like not a free volunteer thing anymore. If anyone's getting paid, like everyone should get paid or. And again, I don't know if people actually, people contributing actually feel that way. I think if you really think hard about it, people are probably just like, I want to use this fucking feature.
Starting point is 00:27:22 So can you please just put it in the code base? But it's still a dynamic, you know? So, yeah. So one thing I found kind of weird because I have obviously a very different kind of open source experience than you three, because my open source was a sponsored one by Netflix. And so I did that for quite some time. It was conference-driven development, like the whole nine yards. I had a conference schedule that I had to go and talk about the thing, right? Because this was like 2016, 2017, where you sold your idea via the conference circuit, if you remember those days, great days.
Starting point is 00:27:56 And so for me, the hard part was. Managing, and Adam, I'm actually curious what you have to do with this, which is that you had all these users that started using your product, and they all came back with feedback and things that they wanted to change. But ultimately, this was more public source or commercial open source than anything else in the sense that my number one goal was to service Netflix and their needs for the open source project. And so therefore, when people would come and ask for stuff, it's like, yeah, I can go in our backlog, but it's like, it's deep in the backlog. because really I'm only concerned about Netflix things for Netflix problems. And all these people that are using it can start getting further and further kind of frustrations because I'm not servicing what the community wants. I service what serves, you know, the person paying the bills.
Starting point is 00:28:43 And I found that to be like a really disheartening thing because it often led to very disgruntled messages that were not the most kind in any nature. Yeah. No, I get the same thing for sure. I think we've tried to mitigate some of that by, like a lot of repos, we use issues for tracking both like bug reports and feature requests and stuff. We are very hardcore about like issues just being bug reports. And if someone has an idea for a feature or ask for something, we move that into GitHub discussions. And we mostly do that just because GitHub discussions, even though they did add the fucking ability to close them, which doesn't really make any sense to me, just feel like a thing that can just live there.
Starting point is 00:29:24 whereas like issues you're supposed to deal with them in some way you know so it's kind of like someone requested this feature and until it's like closed you know purple or closed red it's fucking just not done and you haven't done the thing yet when in reality like no one's even like agreed to do it or accepted the idea or anything like that so i think it has helped us a bit to do that i think the other thing is just you kind of get a bit of a thicker skin over time just telling people, hey, yeah, this is a cool idea. Why don't you explore it as a plug-in? You know, like, that's one option that we have used in the past.
Starting point is 00:30:04 I think that's a good technical solution to that problem anyways, is making things extensible. And then if that doesn't work, you know, I literally just tell people, like, you can always just like fork this and everyone just rolls your eyes, like, you fucking asshole, like, I can't fork this and maintain it. And it's like, okay. well, there you go. Now you kind of get it, you know? Like,
Starting point is 00:30:21 you're asking me to do the thing that you can't do. Like, we're all the same team here, really. Yeah, yeah, yeah, exactly. With what you said there, too, is like, sometimes if it's just like, oh, our policy is that feature requests go in discussions, then it's just super easy to close issues. And then you filter out all the people that aren't going to read what you write anyways, right?
Starting point is 00:30:44 Yeah, yeah, yeah. They didn't. I love a good policy in general. If anytime you can put something on the. policy, you know, I'm sorry, that's, that's policy. I can't do anything about that. Yeah, you know, it's the policy. Right. But it's like, it is like a nice gate actually for like, like, like one thing, uh, Justin Keyes, who is like the main main maintainer of NeoVim always says like, we, we can't be afraid to fire users, right? Which is like, yeah, we, we, we don't have
Starting point is 00:31:12 Microsoft budget. Like, we're not going to compete on every vertical with VS code. Sorry, VS code, right? You know what I mean? Like, we're just not going to, like, have that happen. So we need to say no to some things. And if for some people, that's a deal breaker, like, they can't use Neovam because of that, then it's like, okay. That's okay. It can't be everything to everyone or it's nothing to no one, you know? It's, it's, yeah, you got to kind of like pick your position on things because there's a lot of things that you kind of, it can only be one way or the other, you know? Right. And I think the other thing, too, is like, sometimes you can feel sort of overwhelmed with people's frustration as if it's like the whole world. But the reality is it's just like this tiny, tiny, tiny, tiny portion.
Starting point is 00:31:58 And everyone who's, like, satisfied and agrees with the way things are going and thinks it's awesome, they have no reason to say anything. So they're just quietly happy and stoked about what you're doing and supporting you. They're like, I've never even open the tailwind repo. Yeah, they have no need to. You know what I mean? Right. never needed. They end them install and they've never looked back ever, ever, ever.
Starting point is 00:32:20 Yeah, exactly. So it's helpful to sort of remember that too. Because, yeah, it's, it can be, it can be tough in that sense. But I think ultimately, yeah, you just kind of have to be, I mean, there's this book that everyone tells me to buy and read that I bought and never read and don't think I really have to read because just like the title is all the great divorce by C.S. Louis. That's right. No. It's called the, it's called the, it's called the courage to be disliked, you know? And even just like that phrase is just like, I'm so courageous. I'm so courageous. But just like, even the existence of someone trying to give that advice, like makes it easier in my experience, you know? Yeah. I mean, yeah, first, like, dealing with personalities was very, frustrating for me like I felt like I was letting people down or I just felt like I had to
Starting point is 00:33:20 service all these people that were interested in what I was doing I was like oh you're interested let me just make you as happy as I can yeah at some point I was just like I just can't do this anywhere I burnt out like super super bad like I'm from like crazy GitHub squares to just like dark like nothing and now like I'm still like feeling the effects from that but yeah I don't know man people feel very entitled in this world it's kind of crazy I actually, I apply what you're saying, but I apply to what I do now,
Starting point is 00:33:50 which is streaming is that for a long time, I think it's very, it's like a very kind of normal mentality, especially for people who are just getting started when they have like, say, 10 or 15 people watching them, is that like someone comes in and they're just like, even if they don't like do anything that's like breaking whatever rules you have set forth,
Starting point is 00:34:08 you just like don't like them. And you're just like, I don't like the vibe they're bringing. I don't like. And so many people will be so quick to cater to their audience. or like try to make sure that they're really just fitting to all things. And I realized, I don't know when it was. It must have been two years ago.
Starting point is 00:34:21 It just is like, you know, it's way better to fire a user, even if that like that means that something won't be as successful. I'm just okay with that now. And I am much quicker to be like, okay, this person just like is completely, you know, left field. I'm just going to have to ask them to leave because it is just easier to maintain a certain kind of feel or vibe in a community by just saying no to a few people because it really can change. how people respond because you need just one person to just blow up a conversation a couple times
Starting point is 00:34:50 and then all of a sudden it's just like you have a whole new community coming in getting ready to blow everything up yeah so yeah i think uh i think the other thing is like people's uh frustrations are are not like invalid you know you know what i mean but it doesn't mean it's like your fault or your responsibility. Like both sides can be true, you know, like to someone who's like running into some big problem, it's hard for them to really like recognize that as a maintainer, you've got like 16 other priorities that are big issues to other people, but this person who has this other problem like isn't affected by those. So it's like sometimes without really thinking hard about it, it's hard for people to understand. Like, why are you not fixing this? This thing is clearly the most broken
Starting point is 00:35:36 thing in your tool right now. But it's just for their situation that it's the most broken thing. But that's still true and still real. So, you know, yeah, I don't know. It's, yeah, it's, I guess what I'm trying to say is like, there is like entitlement and stuff in open source, but like I'm still, like, grateful for the people who use it and the people who raise issues and contribute and stuff. Like, I think it's easy to fall into this.
Starting point is 00:36:06 sort of trap of just like hating on like open source consumers and stuff like that the same way like people of fucking Dairy Queen like talk shit about all the customers who come in and buy the ice cream you know but at the end of the day like you need those people to come and buy the fucking ice cream or you don't have a job you know um is that a real problem is dairy queen workers talking shit to is this like a low-known shit talking I just I just mean like in general Did you ever like work a job when you were a teenager? Like oh yeah, every teenager hates the customers, you know?
Starting point is 00:36:42 So I don't know. Yeah. I try to be, I try to be a more mature version of my teenage self. Yeah. These days, you know, but. Adam, what's the best way for someone to make an issue and have it be something that then you work on
Starting point is 00:36:57 and fix and get close? Mm. Yeah. I mean, if you open an issue with a very clear minimal reproduction, that dramatically increases the odds of it getting fixed, you know? That's the big thing. Just make it easy. Just make it easy for the maintainers to make the fix, you know? So arch users don't know a lot about reproduction, though.
Starting point is 00:37:22 So that might be a bit of a problem. We're going to put that as an issue requirement. Mm-hmm. I have another question. more about like the tailwind journey if you don't mind so the till one I was just imagining you pulling up code
Starting point is 00:37:38 and just be like so how can I fix this so I got a cut 732 so if you pull up my site this has been flashing this is killing me this is crazy okay so how can I make this responsive on mobile? In Firefox this
Starting point is 00:37:54 so did Tillman start out as open source like initially Yeah, so it was like, I released it, I think it's like the first version was like, I think we released on Halloween in 2017. And it was just like an extracted byproduct of me trying to build this other side project. And I was like live streaming all my work on it and people kept asking me about the CSS. So I spun it off into like a little thing and released on. So then I'm curious, if I started open source, like how did you transition it into like something you could be paid to do? So I'm assuming there's a lot of pieces that are just like closed source that are like the secret sauce.
Starting point is 00:38:33 But like was there ever like any like ethical like friction of like I'm going to start making money from this project that potentially there was I don't know how many people contributed to. But now I'm going to make this for a living. Like was there like a decision where like oh maybe we should pay like a little bit to some of these people that helped get it off the ground or like what was like that transition like? Like I'm just like generally curious. Yeah. Yeah. Yeah. No, that's a good question. I think in my mind, the reason it wasn't like that complicated is because we never charged money for framework or anything related to the framework itself.
Starting point is 00:39:03 Like for a CSS framework, like bootstrap has a template marketplace, you know, where people build bootstrap templates and sell them. And that's basically what we did, more or less is design things, build them with tailwind and then like sell those designs. So anything that we charged money for didn't have any like community contributions or anything. We just take all those funds and pour them back into the development of the framework because the success of the framework leads to the success of like the commercial thing. You know, so it's a little bit different, I guess, in that sense. Okay, that makes sense. That makes sense. Cool.
Starting point is 00:39:44 Why trash? You got something you're working on right now because that seems like a very specific question. I mean, I'm speaking from like actual like things I'm going through. I'm like, I'm like, okay, okay, okay, yeah, yeah. Next week, I'm done. I'm done with my, free agent. No, I'm kidding. No, but like, yeah, just I've gone through.
Starting point is 00:40:03 Tresh, stop saying things that's going to get you fired at work on the podcast. Oh, yeah, yeah, yeah, cut that out. That's just kidding. I'm just kidding. You know, one pass or borrow, bros. No, but just those things that I've gone through in the open source where, like, you know, I've encountered certain scenarios where I'm like, is this ethical? I don't know.
Starting point is 00:40:21 It's not going to do it. So I'm just like hearing other people's perspective. and then just dealing with people in open source and how others are kind of dealing with it. So, you know? Yeah, I mean, that's one thing. Like I was saying, like, we're experimenting with sponsorships now. Like, that's like something that we're trying to launch today.
Starting point is 00:40:40 And I guess, like, I haven't thought about it at a time because of what I said earlier where we kind of are in a spot where, like, the only real contributions to the framework come from people who already work here already. So it kind of makes it feel a little simpler in that sense. and anyone who's like contributing stuff is because they want it. So, you know, I don't feel, feel too bad about it in that sense. But I could definitely understand where it gets tricky and like a project that's been
Starting point is 00:41:06 able to build a really active like contributor community. And all of a sudden like the project starts like taking funds. Like where does that go? It's yeah. It's a, that feels like, yeah, I don't know. I can understand why someone would feel, uh, stressed about trying to manage that properly, you know? Yeah.
Starting point is 00:41:26 For NeoVim, it, it's, uh, I think like good strategies for like more community style projects where it's not like, oh, I, I like own this, you know, like there's not really like in that same way for NeoVim maybe compared to like tailwind where it's more like, oh, it feels like your and like, you know, the other people who started it with you Adam, like your project. You know what I mean? Like NeoVim, it was just like we have, you know, like there's a few nice sites like open collective and a few other places where you can see basically like what money comes into a project and then where it goes and then like i'd mentioned earlier for nether and it's just like just have
Starting point is 00:42:03 a simple policy where it's like if you're going to work full time on something for a while and it gets approved by basically like the core team then then you can get paid that's easy and like uh i know people do like there's sort of mixed feelings on bug bounties i'm not really like a huge fan of like bounty stuff. It sometimes creates kind of perverse incentives for people to be like fighting about who gets to work on what and like external people putting
Starting point is 00:42:31 like bounties on stuff can make it very complicated because someone is trying to like get this PR merge so they can get paid. Like they might be at odds with the maintainer. I know Andrew Kelly from Zig has a few articles kind of talking about that. And Prime has a few videos talking
Starting point is 00:42:48 about that Andrew Kelly's things. So, so those, those can be kind of complicated. But I think for like a community one, if you can set the rules like really clear, I think then it's, then it's obviously. Like if I, if someone just randomly sends a PR to Neovim, they're like, yeah, that makes sense. I'm not going to get paid.
Starting point is 00:43:05 Like, it's chill. Even if you send a lot of random PRs to Neovim, there's no like expectation. But yeah, so that's at least, trash, for my experience. That was how like, Neovim has done it. And it seems to have worked like really, really well. Well, Trash. I'm really interested, though. You're going to have to tell us offline.
Starting point is 00:43:22 We're going to keep it. We're going to move to, we're going to have a Patreon. The only thing you get to hear is about Trash's side project that he's not going to tell us on stream. These are things that happen like, these are things that happened before I got like severely burned out. So this is like way in the past. Oh, yeah, yeah. This isn't anything that's like currently happened. But like at one point in my life, got you.
Starting point is 00:43:40 I was standing there. I was like, uh, I don't know. Was this the, I mean, I, okay, I'm just going to ask a question. You can just say you don't want to talk about. Is this from like type hero? Is this your type hero days? Because that's, you were pretty accurate. that and like things spin off of that i mean i still we still do like annual events as well where i have
Starting point is 00:43:56 to pay people to help me do these annual things um but yeah from those days this is a great i like this question from the audience thanks began bot adam what's the most surprising contribution you've had to tailwind like someone externally contributing to tailwind oh there was a good one the other day i can't even remember what it was but someone like contributed like a real improvement on like the rust side of things and that feels like the most distant knowledge a consumer of tailwind would normally have and it was like solid and solved the real problem and was all great and we merged it and yeah i don't know i should go and find it and see if i can pull up the exact link is that repo in the tailman labs organization yeah so if the tailwind csss repos is like a mono repo
Starting point is 00:44:44 that's got uh i think it's probably only one rust crate that kind of has all that stuff in it and then it's got a bunch of different packages that kind of come together to form the whole thing when you actually install it. Oh, I see it. Okay. Was that was that person who contributed a name a Beganbot by any chance? There's currently a chat saying how base it is. Yeah, yeah, yeah. I don't know. I'll have to go and look. It was not. I kind of would, I'd be curious to get your guys like take on just like a challenge that we've kind of had running an open source business, which is sort of like what we're trying to try and fix with the sponsorship stuff, honestly. It's like a, it's a, it's kind of a sensitive topic in some ways, I guess.
Starting point is 00:45:34 Like, oh, we're ready. Sensitive. I think, like, the hardest thing for us as a business has been, like, what we sell is, like, UI components and templates and stuff like that. but the thing that a lot of like our biggest most excited users are excited about building are like components and templates and stuff like that so we have this shitty situation where when someone builds like a cool open source UI library with tailwind or something it's we can't like champion it because it hurts our ability to fund the project to promote free alternatives or even paid alternatives to like our commercial stuff you know and that's like
Starting point is 00:46:21 been the case like for for quite a while where there's just people doing cool work that like i want to be excited about and be able to support but like i can't literally can't because it would interfere with me like helping put food on the team's table you know at the end of the day and i really want to like figure out how we can make the project sustainable in a way where we don't feel like we're competing like with our own community at all, which is why I'm interested in exploring the sponsorship stuff and why we're playing with it. We're just like the bigger tailwind is, the better for everyone. And we can be like excited about that. But like the reality is you have like all these people building like AI based like UI generator stuff on top of tailwind. Like there's tons of those tools
Starting point is 00:47:11 out there and then there's like open source versions of things and over time like we had sort of like a first mover advantage and we benefited a lot from that and was able to sort of build up a pretty strong business from that to keep things sustainable but that for us like peaked at like the beginning of 2023 and everything's just been like down since then because a lot of the stuff that we're doing is like being more commoditized as more people try to build similar types of things or a lot of people are just like content with being able to ask like chat dbt or be zero or something to just spit out a pricing page for them. And even if it's like not up to my standards and I want to build things that are better than that,
Starting point is 00:47:53 it's good enough for a lot of people. And I just sort of have to accept the reality that for those people it's good enough. So I got to figure out something else to do. You know what I mean? So I don't know. I don't know if you guys have like any ideas on that or how that, how that strikes you or if you think I just think I'm thinking about the whole thing the wrong way. But I'm like, we're launching this like sponsor thing where we're trying to have like
Starting point is 00:48:18 companies who use tailwinds sponsor us and in exchange for that. You know, it's like, okay, you get your logo on the website, whatever like everyone gets. But I'm trying to find things that companies actually value a bit more than that. Like, okay, we'll create like a shared Slack channel. So if you guys run into issues, you can just like get a direct line to us. And maybe that's worth something to people. Or we're also trying to do like something for individuals that doesn't feel like it has to compete
Starting point is 00:48:49 with things other people do where it's just like 12 bucks a month and you get a bunch of perks. Like okay, there's like a private Discord that's only other people who are serious enough to be paying 12 bucks a month plus the team so you can hang out there and ask questions or stuff. We'll make beta documentation for like pre-release builds available so you don't have to go like scour through PRs to understand how all the
Starting point is 00:49:13 new features and stuff work. And again, that's like not that appealing to every single person, but the people who are like really like excited about the new stuff that are coming out that really want to support the framework, like maybe that's valuable to them. The other thing is like, we've been like curating our own set of like cursor rules basically as we've been like getting better at using AI to get like AI to spit out better quality tailwind stuff. So that's like another thing that we're going to throw in that people get. And, And even like stupid things, like we made a bunch of like custom VS code themes because we made custom syntax themes for like the docs site to match our design and stuff and turned those into editor themes. And people like always ask about that stuff when you post screenshots on Twitter or you post YouTube videos or something.
Starting point is 00:49:56 And it doesn't like, it's not like an inherently super valuable product, but it's a fun perk for people who want like an excuse to throw you a couple bucks a month to support their project. So that's like what we're trying to do now to sort of diversify things a little bit and see what happens there. And like I'd be really pumped if we could turn that version of the business into the thing that sustained it because it would just make it so much easier to be like excited about what everyone else in the community is doing. But I'm just curious like from an outside perspective, like does that strike you as even realistic at all? You know, or or what, you know? So I have just like a few observations just from just like using tailwind. for a while and then also just observing the overall ecosystem. So I know you all release like first you had like Tillwin UI and then you had Catalyst right
Starting point is 00:50:45 which I think is like yeah it's like successor. It's like yeah it's it's just another fucking folder full of code that's available to people who bought Tailwind UI. So like from my perspective it was just like I felt like that just arrived late because this is like after Shatsyan like blew up and it was like oh Shatsun this and then Vizu came out and then they have Shatsian and it's basically spitting out like all this stuff that's just Radix Components with Taylor & Yeah and even then it's like a paid thing you know so like you already It's already just like well if there's like a free thing that people like and that's out there and
Starting point is 00:51:26 Like why wouldn't people choose that you know so just I get it you know yeah and like this is something I've thought about just like what would the future tell him and like where or how can you basically what you're asking now and what I've seen like in the past and I didn't it's just different now just because of like AI and the open source ecosystem was these teams effectively became consultants where they embed themselves in an organization for X amount of time get things up and running I think like even like the biggest thing that I think people struggle with is like creating a custom design system for their like overall component library like how can they write these configurations that are like scalable for their team to contribute to that's that's
Starting point is 00:52:05 been an area that I've seen people struggle with because at the end of the day these tools scaffold out these components that are just you know but using the baseline tailman classes but like theming that for like multi-tenant apps and all this other stuff is just like in my opinion like I was never really good at it and it was like kind of confusing in general I feel like that could be like areas of like scalable design systems you could sell those I don't know it's it's a really hard problem just like I said because the ecosystem like it's just spitting out everything I see is like LLM spinning out tailwind components
Starting point is 00:52:38 and they look good and at the end of the day not everyone like especially for all these like founders that are just trying to spin up apps quickly they don't necessarily care about like it meets their bar you know what I mean exactly they're like this and it's yeah
Starting point is 00:52:52 yeah it's better than a lot of the like stuff that you'd see 10 years ago exactly so that's like the ceiling I think is way higher but it still doesn't matter the what matters is that it reaches the bar you know I think like the enterprise thing is like a good target that I've seen work for people.
Starting point is 00:53:08 But again, I'm not trying to tell you how to run your business. Yeah, no, but that's what I'm asking. You know, like I'm curious. I guess like the hesitation for me on that side has always been just like kind of gets back to what we were talked about at the very beginning, which is like, man, I don't want to set things up so that we don't even have time to work on the open source stuff because like we're working on all the other stuff. You know, it's like, how can we find that right?
Starting point is 00:53:34 thing that gives you like how yeah i don't know it's what every open source maintainer wants obviously right it's like we're creating all its value for the world how can we how can we get paid to just do that and like make it free uh for everyone you know but it's yeah so i don't know i uh i think that's a good point though and i appreciate that advice rheim do you want to go otherwise i i do have one but i'm to let you go first tj no no you first you first prime you first okay i'm i'm gonna say something but mine's more of i guess probably a look back in time kind of thing or an observation into the past which i don't think is any helpfulness uh because i do not think you could do it today which is this is more just future advice i really think that thinking about the licenses in which you
Starting point is 00:54:24 distribute or open source code is really important like if you are planning on attempting to make money off of these things knowing and understanding your market and how you can distribute your code can be really good because I think this is where all these projects and all their failed attempts happen. Like you see the one with Valki and Redis and all this and they just are exploding because Redis is like, oh shit, we need to make money. We're going to have to like, you can no longer make money without us making money, right? And then it's just like, oh, well, too late, you've already had this out there.
Starting point is 00:54:54 And so I do think having, like, I don't think there's anything wrong with having open source as a kind of like step into some sort of commercial adventure other than it's going to be extremely hard. But I think a lot of it just comes down to licenses and expectation because the reality is that if there was a place where Tailwind, you were always like, hey, this is what we're doing and this is how we're doing the commercial side of it. And like if you're going to be a commercial vendor, if you're going to create an AI that uses Tailwind, then you're going to have to, you know, you have to have.
Starting point is 00:55:23 Obviously you could never have seen the AI, I think coming in 2017. So granted, that's just like a free pass. I mean, I've watched Terminator 2, man. I knew. Yeah. He knew, dude. It's a different. We all thought AI was going to be robots and said it's code generation.
Starting point is 00:55:36 It's just really a huge disappointment. Instead it's fucking text areas, man. It's text areas. It's just curl all the way down. I know, it's just curl. Yeah. No, I thought, so what do you think, though? Do you think, like, I guess, like, my reaction to that is, like, would Redis have even, like, been popular at all if it didn't start with that hyper permissive license?
Starting point is 00:55:52 Because I feel like people are so allergic to any, like, anything, anything that smells a little, like, less than, like, I can just do whatever the fuck I want. Right. Now, I don't have to worry about, like, getting in trouble for anything. I think there's a huge part. Like I really, this reminds me, like open source today reminds me a lot of skateboarders in the 90s and the 2000s, where if you were a part of that, you would look at these skateboarders. And any one of them that took like a sponsorship or became commercial, you're like sell out. But really, like these are people that are out there putting their body on the line, getting like five grand a year from sponsorships. And they're ruining their body and unable to compete here in like four years.
Starting point is 00:56:30 And they didn't want to be a sellout. And now it's like you took all your favorite people, shamed them into not being able to have any form of like protected money making ability so that when they inevitably don't or unable to skateboard anymore, that they actually have something at the end of the day. And I kind of feel like there's a lot of that with open source still where there's this weird hesitancy for you to make money or turn it into something that's commercial.
Starting point is 00:56:52 And I really think that we have this problem where we're just like, we're just hoisting things on top of people to be unsuccessful and to lead the burnout because there's like this huge hesitancy for commercial. commercialism in open source. And I mean, I personally don't have a problem with it. I think if it's done right. But as far as yours goes, like, the problem is, is my thinking is so one-dimensional. It always comes down to consulting, education, and contributions.
Starting point is 00:57:18 And I just don't think contributions are a successful way to go. I think, like you said, it just opens up a whole can of worms where you're just like, individuals, you should give money. A, you sound like Wikipedia, B, but I just, I think people are generally in there's I was going to say, I've literally thrown around the idea internally at the company of like, what if we put a fucking banner on the site once a year that just gets people into like giving us like five dollars? I don't know. Maybe it would work. I don't know. I do have this problem with that like whole thing. I do think there is a huge value that could be some sort of like differential amount of money that you could pull in. It wouldn't probably cover a one and a half million, but like some sort of partnership of, you know, all these different education sites. But the reality is that a lot of people are just going to simply like, you know, one could imagine fireship has a partnership. with the creator of tailwind but then he could probably also just have fire ship delivers it and people would buy it so you actually ever need you to be in that partnership
Starting point is 00:58:09 and so i think there's like a huge problem there and so you get back to the you should have just been famous idiot lull right like it's just like not a good business plan i think it's i think it's an extremely difficult problem i do really but i i mean so the best advice i could give to anyone who wanted to start an open source project I mean. Yeah, exactly. This is what I would have done differently. I did just want to throw in this last thing, which is that I do believe that specifically Tailwind is an exceptionally hard problem to solve commercially because I think you will permanently have computers, at least in the component slash additional software space. Yeah.
Starting point is 00:58:46 Yeah. We've always like tried to figure out, is there some service, you know? Yeah. If you build like a real framework, you know, that's like a real backbone of an application. Like there's always the hosting play or you know, that type of thing like what am I going to do like oh we'll host your CSS file for you like that's just going to make your website shittier. Yeah. It doesn't make any sense. But all that to say too, like I think, you know, we still have like a great business.
Starting point is 00:59:12 You know, like we're still profitable. But I do think we need to make some tweaks if we want to have things like keep moving in the right direction. Like I'm insanely grateful for like what opportunities. like Teowen is like created for me. Like the fact that I've even been able to work on it full time since like 2019, I think. That's like, I don't know, I couldn't like ask for anything more awesome than that, you know? I'm like, I got a really great life. And these are interesting problems to solve, you know, keeps people engaged and it keeps things interesting.
Starting point is 00:59:49 But yeah, it would be cool. It would just be, it would be really cool to figure out a way. I've always wanted to be able to just focus on. on the open source as much as possible and avoid some of the conflict with the community that we kind of have with the current setup. So it's an interesting, yeah, it's, yeah, it's, I've got a few, I've got a few ideas that I can throw out there for you. You can take them or leave them as you go. This is some general advice too for like open source projects is you got to decide first. Are you going to be like a VC open source project or you're going to be a lifestyle open source project?
Starting point is 01:00:25 right in the sense that like when you're trying to make money is it like if we made $500,000 this year am I like insanely happy or do we have to find some way to make $100 million because those are like very different models of like how much money you need and the kind of like services you might need to like reach there because like you can do stuff that doesn't scale to get to $500K if you don't need to then get to $5 million right it's like okay we're chill. So like, I think stuff like, um, if you had, like, you could, you could try and get like some of these big corporations that are definitely due to like sponsor an engineer. It's just like literally like a one to one. Like, yeah, yeah, yeah, yeah. Google, you will not miss 250K. Yeah.
Starting point is 01:01:12 Right. And it's like maybe if they're, I don't know if Google even uses tailwind. So like going after, because you can't, you can't do that for a hundred engineers, but you might be able to do it for like four. you know what I'm saying like you could find four companies maybe where it's like yo this guy we pay his entire salary from so and so that's that's like actually like a sick like actually good marketing they actually get something good back from that um it's like interesting so like that's something that doesn't scale but like could work because you actually are like a vital thing of a bunch of companies like stuff right maybe even like v0 you know is like yeah we could we pay for one engineer on tailwind because like yeah for sure v0 doesn't exist without tailwind and there's like
Starting point is 01:01:53 that's actually like enough return that it could potentially make sense um a different one that i think like where if if you can find ways where the incentives don't depart for like the paid thing versus free is nice like if you did something where you're releasing like how i built xyz component like you because people care like about you personally because they like think this It's the famous thing again, you know. Yeah. And then by you like time box the YouTube video release for like three months later. So like people who are on the pay plan are getting that three months.
Starting point is 01:02:27 You know, it's like you're still giving them something where for these like $12 a month people or whatever for like individuals or for like corporate, right, that they get like these ideas where it's like, yeah, we actually want to know how to build this so that after V0 generates something for us, we can like not be lost. Sure. Yeah. No, that's a good idea. And so I do think there are some like in that field where it's like, yeah, you could get people to sign up for those for the early release for like getting it released in some format where there's like comments and participation from you like in the private discord. It's like here's the video. We released it. We start a new thread last for a month.
Starting point is 01:03:05 And then after that we never answer any questions on it. So there's like additional. But then you're still building stuff that like, at the end of the year, you have 12 sick tailwind videos about building stuff that go on. on YouTube. They're three months delayed, right? But like tailwind's doing better. Everyone benefits, but like people get paid. And there's like, uh, yeah, yeah, um, that's like education expense. People can people can check bots education at corporate and sick. Now it's not for funsies. It's like we got this education thing. Okay, well people have education budget to spend. You can put
Starting point is 01:03:38 stuff in there. So I think there's some like things in those verticals where like I would explore thinking like it doesn't have to scale necessarily right because you're like we want to stay at probably like eight engineers forever i don't picture you yeah yeah totally yeah there's just like there's just like a comfortable threshold that we want to be at where it's like a great living for everybody involved you know right and that's kind of like the only goal it doesn't need to it doesn't need to be scalable beyond that that can be the ceiling and that's fine right yeah no that's good like yeah i've done like a lot of educational stuff in the past and we're doing we're working on that too so it's good to hear that you think that's a good idea. Like I guess like ultimately what I think we need to do is just kind of get a little bit over here, a little bit over here, a little bit over here, a little bit over here, a little bit over here. Instead of just like having all our eggs in one basket like we kind of do right now, because when the world changes and that basket gets like threatened, you end up having to figure it out, you know, so just being a little less fragile in that sense. Another one is a separate issue tracker for paying people is also a classic that I've seen work really well for cool. Open source stuff. One, you get better issues anyways.
Starting point is 01:04:44 Because the $5 a month is a crazy filter. Like you filter out a lot of people who don't read. You already got to fire a lot of users. So it's better for you. You get like real issues, right? And stuff like that anyways. So there, I think there's some there's some stuff there too where like, we'll fix the issue. It goes into open, it goes into tail and open source.
Starting point is 01:05:05 But it's like, do you as an enterprise want to get on the issue tracker that we prioritize? Because we got to pay the bills. Like private issue tracker, I think can be. good too. Yeah. Can you tear out a private issue tracker? Can you like add
Starting point is 01:05:18 various levels of what's called? I haven't seen that in SLA to this. Anything's possible with the text area. Yeah, there you go.
Starting point is 01:05:27 These days. I haven't seen anybody do that prime in like like you could do it with tags in just like a GitHub like open source thing. But there are some other things too where like
Starting point is 01:05:41 there's other options too. I think of like per company. issue trackers, like if you have a high enough tier sponsorship, where then they don't have to worry about like leaking other personal information like publicly. So there is, because sometimes it's like, bro, I just want to paste my stack trace for this. I literally can't. The name is illegal for me to leak outside, right? So there's like some other stuff where if like for a super tier of enterprise, right, where it's like, yo, we're going to give you super tier enterprise.
Starting point is 01:06:11 you're like tailwind dash you know v0 dash issues and it's like the super tier one they can copy pasta indirectly yeah yeah yeah so there's a bunch of stuff too and also we could just be honest it's easier to talk in private than it isn't public and you don't have to be like i'm making an issue for my corporation i need to make sure i'm representing them perfectly blah blah blah like for sure you're saving literally hours of developer time for some of these two right where it's like so there's I think there's some, there's some verticals there where, like, the support still flows back to the main product. Like, the incentives are really nice. And even, like, you know, I don't know if any of these other, oh, I know nothing about front end.
Starting point is 01:06:54 You know what I mean? I don't know if any of these other, like, open sort or like these other tailwind component libraries are making money. But, like, some of them probably would like to have a straight line back to you guys. Yeah, yeah, yeah. Right. So, so, so, yeah, so, yeah, those are just a few that I was sort of thinking. I like the private issue tracker one a lot because it kind of takes something that like we've sort of been like talking about with potential sponsors already, which is like, you know, you have like a direct line with us. So you can raise stuff and we'll actually like notice it.
Starting point is 01:07:22 Yes. Because yeah, we're going to read the message. And you know that we saw it. But that kind of takes down and turns it into something like a lot more concrete. Which is kind of cool. You can give a straight up SLA too. Like I've definitely seen that work like well. Like we will respond to every issue within one week.
Starting point is 01:07:36 Like it's not going to get fixed or closed, but like we. We promise you'll get a response within one week is like companies pay for SLAs, right? So that works. Yeah, yeah, yeah, that's a great idea. Yeah, that's a good idea. That was not an MIT licensed idea, though. So I will be taking it. That was JPL.
Starting point is 01:07:55 But there is something that, I mean, I think, TJ, what you're kind of, what you're kind of mailing is that when you sell something from open source, if I were to generalize your rule, it's like you can't sell something that's easily replicated. Meaning like, you know, if you build a tailwind UI library, even if it's the best, it doesn't matter. Someone else can build at tailwind library that's for free and maybe better than what's available. So it's like it's such an easy replicatable item, whereas like there is no amount of replication that you can, that can happen to have Adam, you know, Adam respond to a request. Right. Like that is a singular payable street and no one else can replicate that.
Starting point is 01:08:36 And there's something to that that is like, that's where the real. the real dollars are is not in not in something that can be just so easily defeated like even you know even v0 is great but v0 will only live as long as until cursor is v0 and you never need to go back to v0 because cursor's now like we have tailwind specific chat agents boom it's just like okay well it's just too replicatable right
Starting point is 01:08:57 like people can just go in and destroy modes pretty quickly these days and so I just don't look at it as that like that kind of you know that's where the danger I think that's the right way to look at it I think it can be perceived as like bad in a way to almost be like, oh, what's the thing that we can do that has like no moat where no one can compete with us? But it's not because like you want to like be hyper greedy. It's like I want to do something that like something we can uniquely offer so that we don't have to feel like we're in competition with our community, you know, and that we can like support everything that everybody does, you know, and be excited about everything everyone does.
Starting point is 01:09:33 I was right. Yeah, no, no. Oh, yeah. The other thing is like there are a lot of people. people who, and like people who work at companies who probably want to give you guys money, but they like have to have a thing that they can show accounts payable of why it is. Even if it's literally like, it's an SLA. They're like, sweet.
Starting point is 01:09:52 That's a thing that companies pay for is to have an SLA. Awesome. So like sometimes it is literally so much as like, uh, like the Yassine rant of like, stop all these robotics companies with no buy buttons on their website. websites, right? It's like, sometimes you just have to have buy Tailwind Enterprise, and it's the same thing, you know, but like... Enterprise is 100% like where you should go IMO. Yeah, yeah. Add Java somewhere in the stack for just like a very small moment, and boom, you're already enterpriced up.
Starting point is 01:10:22 Someone's wearing pleated pants and you're ready to go. Yeah. I mean, the other option, tailwind coin. I saw that in chat. I saw that. You know, we always, I play a lot of Fortnite with Taylor Outwell, okay? It's daily. We play.
Starting point is 01:10:39 I know you guys could do a skin. Every single day. Well, what we and Taylor were thinking is can we do like a tailwind battle pass? You know? I don't even know what the hell that means. Dude, you get a loot box up here?
Starting point is 01:10:53 Yeah, loot crates with class. Here's the utility classes you get for this month, boys. Yeah, yeah. Exactly. Exactly. I love this idea of loot boxes where like when you open it, it just adds a tailwind class.
Starting point is 01:11:05 somewhere on your thing. You'd be like, dude, you got a loopbox, man, you got a common M2. That sucks, man.
Starting point is 01:11:11 No. M2. Yeah. Oh, God, that's good. I do love, I love, like,
Starting point is 01:11:18 a loot box of tailwind classes, and there's, like, a leaderboard of, like, who's 100% of the most loot boxes in their application? There's something so funny
Starting point is 01:11:29 about this idea. Yeah. Oh, my gosh. Now, I love the branding opportunity. Just the dumbest open source has. Oh, it is.
Starting point is 01:11:41 T-bucks, you know, can we, like, have a micro-transaction market where you buy a button for 60 T-bucks. Right. Right. Yeah. And sometimes you pull an ultra-rare button. Yeah. Ultra-ray button in the legendary. Yeah, yeah.
Starting point is 01:12:02 One of a kind, like one-of-one holographic. Golden button? Yeah. It shows a reflection of my face using my webcam in it. It's three-dimensional. How do they do that? Yeah, that's crazy. Or maybe you can start selling exclusive tailwind classes in the framework.
Starting point is 01:12:24 Like, you want this class? You got to buy it. It's yours. You're the only one who can use it. Oh, one of ones. NMT tailwind classes. Yeah, man, you start selling tailwind classes. I turn to the monopoly.
Starting point is 01:12:35 Like, oh, you, oh, you, oh, you're the only. Did you just land on a margin? Yeah, I own margins one through four, so if you're going to use any of those, you got to pay me rent. I put a hotel there. Sorry. Sorry.
Starting point is 01:12:46 It's gone up in price recently. Actually, there's like a separate thing. A hilarious video would be like, you have 100 T bucks. And like, classes are different prices and we have to replicate a website. What's the best UI I can build, like, for 100 T bucks? That's actually,
Starting point is 01:13:07 That's actually a really cool. Yeah, that's actually a really cool. The Battlecode did that with effectively, you have so much bytecode you can run per little robot and you have to verse each other on a very minimalized amount of things you're running. You could have the exact same thing. It's like, you got a tailwind budget. You got to build this site.
Starting point is 01:13:23 No CSS. Only tailwind. Like that is it. You can do no other things. Like who can build the best site and. Only tailwind 100 classes are less. Best site. There's a character limit on a class.
Starting point is 01:13:34 Yeah, yeah. That'd be fun. A CSS roblins. like deck builder that could be pretty good too dude like dude imagine you get five cards you have to build a component you get five cards you're like dude I got two margins one padding oh dude that is actually so good
Starting point is 01:13:48 that is so good man god that's funny oh my gosh that's a great idea that's actually really good you can make dozens of dollars if we just go all in on entertainment you know like maybe that's really the play just be entertainers they just get famous idiot
Starting point is 01:14:03 yeah all comes back have you thought about working five hours a week and paying for the rest of the week so you can do open-serner. You know what you actually honestly? Like this is real, real advice. If you just like vibe code a SaaS startup, you'll make $50,000 a month.
Starting point is 01:14:22 And so if you just buy it, then you can sell it for 10 to 15, and then boom, like you've just paid for tailwind like a huge amount. Dude, just five-in-two SaaS startups? That's $100,000 a month. Four, that's, 200 grand like dude it's pretty easy
Starting point is 01:14:39 spend the weekend i would personally i'd rather get one tomato plant because after you grow one tomato plant those grow more tomatoes from the tomatoes you can play more tomato plants before you know it i have infinite money so have you guys ever thought about like vibe coding a sassap generator
Starting point is 01:14:56 i don't think i can say anything right now something's in the works yeah exactly that's what that means well I'm excited to see what you guys do I think yeah thanks yeah cool so yeah I hope you guys find lots of success by the way I'm very happy that you recognized everything that everybody went through from like 2008
Starting point is 01:15:25 to 2017 and made it into something that we all now use because I think that anyone who programmed the old web I had left so I'd go float left clear fix right boom boom boom get this one flow clear fit M small you know you know BG blue right and I just had like all these like named classes
Starting point is 01:15:45 that were just like mine but they're only for me and nobody else could know them and I'd make all my websites based off like just this like series of words that I had memorized and so now it's just like hey this is a series of words that you have memorized but now everybody has the same ones memorized and it just makes life so much better and you know yeah no
Starting point is 01:16:03 it's been a hard battle getting uh it's it's to the point now where like there's not it's not controversial really anymore but for a while there it was uh it's pretty controversial so um yeah i'm glad that it's taken off and that people are into it definitely has solved a problem for me i'm definitely uh yeah i don't know for me it's like there's this one blog post by nicholas galliger who he's the guy created normalized csss i don't know if you guys remember that and he worked at twitter for a long time i think he might work at instagram now i can't remember but he wrote this one blog post called like about HTML semantics and front end architecture.
Starting point is 01:16:38 And it was the first thing I ever read that like finally just gave me permission to write classes this sort of way. It's just like some smart person says this is conceptually the right way to do things. It's that classes actually should be presentational. And that's the only way to build scalable websites. And I was like, oh man, now I can do that. I thought that was a crime. And yeah. So Nicholas, man. Nicholas, really created tailwind, which he probably probably loses sleepover. He's like, where's my paycheck?
Starting point is 01:17:11 Yeah. Should have done MIT license that one. So true. So true. All right. Well, hey, I appreciate you coming on, especially on such short notice, because I literally watched the video
Starting point is 01:17:23 that all of this spawned from on Monday and sent you a text message potentially late Monday being like, hey, you want to come up on Wednesday? And you're just like, let's do it. Let's do it. Especially since you're launching a whole thing today, right? You're launching your sponsors thing today. That's why we did it today because I was like,
Starting point is 01:17:39 ah, I can't go on this podcast and not have it done. So it's done now. It's on the website. If anyone is a Taylor 1 super fan and wants to sponsor, you can just go to nciseu.com slash sponsor. Check it out. Let me know if any of that resonates. If it doesn't,
Starting point is 01:17:53 we'll keep iterating on it. But hopefully some people think there's some cool stuff in there and you want to support. A lot of people have told us, like, I'd like to give you more money, but like you don't give us away to give you more money because you just charge once for this thing and then there's nothing else you have for sale. So this gives those people a chance to do it. No obligation. But, you know, if you love Tailwind and you want my cursor rules, that's really the pull here. Then consider, consider signing up for this like insider thing that we're doing. But yeah, dude, thanks for having me on. And it's been fun. I've never got to chat with most of you guys. I'm at Prime at Laricon and we enjoyed a nice. dinner together. But it's good getting to connect with the rest of you. And yeah, thanks again. Trash is the real winner in this group, so you got to be so excited. You got to meet the man. I was like, I want to talk to him. I was really hoping trash. You were just going to pull out
Starting point is 01:18:47 like a random component and be like, this is not working. Turn on my virtual cam. Just check this out, man. Like, it is killing me. Or just just complain and just be real mean. I was like, oh, so funny. Could do that. I didn't do that. Sounds good. Does that actually ever happen to you at them? Do you ever get people where you like you walk up, you're at a conference, which I'm like, oh, wait, you created tailwind? Hey, why doesn't this work? Right.
Starting point is 01:19:13 Like, does that happen? Not too bad, honestly. I've had a little bit of that stuff like that, but not in like a hilarious way. Usually they're like legit questions that we can have good discussions about, you know, so. Nice. All right. Well, awesome. Well, thank you so much for joining us.
Starting point is 01:19:28 I am going to shut down the stream. Hey, stream. Thank you very much for being a part of the stand-up. I don't know what episode number we are on. I think we're in the 20s at this point. So, hey, I hope you enjoyed this. Fun conversation. Thanks, Adam, for joining us,
Starting point is 01:19:41 talking about the pain of open source and business adventures and all that kind of stuff. So, hey, awesome. TJ, we all know where to find TJ. He streams, by the way, trash dev. If you want to know where to find him, at Netflix, probably heard of it and on Twitter. And Adam, besides for Tailwind, CSS.com,
Starting point is 01:19:59 sponsors, where else should people find you? Yeah, I'm on X, you know, is that what we call it? Did we call it X yet or we still call it? You have to say the everything application afterwards. Yeah. Oh, X the everything application. So I'm on X the everything application at X.com slash Adam Wath, and that's kind of where I habitually waste time.
Starting point is 01:20:20 So you can find me there.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.