Well you always could just read the docs instead of using the paid offer. Took longer. Not anymore.
All customers already had lifetime access and couldn't pay more. Plus noone was reading the docs on the webpage anymore.
Recurring subscriptions, ads in AI products (think Tailwind MCP server telling you about subscription features.) Those were just two things I pulled out of the hat in a minute.
I've experienced this in my own life - I ran my own business and I had to choose between doing a worse job and enshittifying the product to make more money, or doing a good job but risking bankruptcy. I choose bankruptcy, because I believed strongly in doing a good job and not enshittifying the product. I don't regret it.
Source: https://adams-morning-walk.transistor.fm/episodes/we-had-six...
They now have 5 people total - 3 founders, the business person, and 1 other dev, which according to Adam’s podcast was the first dev they hired.
I don't think that'll change with AI. They just needed to be reminded about the financials of Tailwind and I'm sure it was an easy conversation internally.
And Google has profited untold hundreds of billions of open source over the last couple of decades. They just need to be reminded of it.
Edit: Haha, getting downvoted! Never underestimate the power of tens of thousands of Googlers on HN... Look, I use Gmail, Google maps, Chrome and Android and occasionally Google search but without Linux, Java and webkit it wouldn't exist.
The list of things I can think of is:
* Linux
* LLVM
* Webkit/Chrome (which they have done the majority of contributions to for a long time)
* Java & a little bit of Python
Lots of Linux contributions for Rust drivers
(disclaimer, used to work at google a long time ago)
I'm not, nor have I ever been, a googler, btw. I did apply for a job there in 2006 but didn't make it past the first round (they were asking me obscure TCP/IP questions for a Java developer).
They created V8, kickstarted the modern browser wars with Chrome. They've sponsored tons of Open Source projects via Google Summer of Code. They've done more than their fair share. Half the devops stuff like Kubernetes, probably a lot of the early work related to linux containers, who knows what else.
There is always going to be someone who thinks they can do more. But they didn't have to do _any_ of it. Yet they did a ton.
Makes you wonder how much ossification is going to happen because AI models are entrenched in 2023's tooling du jour.
Very myopic thinking. Fallout New Vegas had its plutocrat of interest make sure to scan the brains of his biggest fancies before the Great War. A true visionary.
With farming/livestock, pretty much all of that can become automated. And even in the previous human-centric sectors, there are definitely roles that will be replaced by AI, even if the sector as a whole continues to employ a lot of people.
Take law, for instance. Due to the prevalence of bar associations (which will likely prevent AI from doing lawyers' jobs), AI will never be a lawyer. However, many lawyers have and continue to replace paralegals with AI.
Past a certain price point, both for real estate and cars, a buyer is paying almost as much for the "feeling"/experience of buying the house/car as they're paying for the actual thing itself. Humans are generally better at conveying these things than machines.
It's good, but it's important to read this as "they're offering some money" and not "Tailwind CSS now doesn't have financial issues because they have a major sponsor." This could just be a 1-5% change in Tailwind's budget. We don't know.
And that's not to take away from their sponsorship, but on the heels of the discussion yesterday it's important to note that Tailwind was already being sponsored by many companies and still struggling. This is a good thing, but it's hard to know if this moves the needle a bunch on Tailwind's problems. Maybe it'll be the start of more companies offering Tailwind money and that'd be great.
[0] https://adams-morning-walk.transistor.fm/episodes/we-had-six...
Remaining:
- Adam (cofounder/owner/original author of tailwind)
- Jonathan (cofounder/owner/product/engineering/early co-author of tailwind)
- Steve (owner/design lead)
- Peter [part time] (partnerships/ops/support)
- Robin (engineer)
There were 3 other engineers who worked with Robin to make up the 4 person engineering team before being laid off. The ones laid off were claimed to be given a good severance. It did not seem to clarify if the 3 owners are collecting a full salary or not. Importantly, that there is only 1 person remaining on the engineering team doesn't mean they only have 1 person who can fill the role of an engineer on the product.
No guarantees this is 100% accurate or exhaustive (or names spelled correctly - apologies in advance!), but hopefully it should be a lot better a reference than guessing what the company structure looks like based on the percentage laid off alone.
Tailwind CSS is alive -> New / existing projects keep using Tailwind CSS -> more code for Gemini to train upon -> better and fancier UIs being created through Gemini -> popularity and usage of Gemini doesn't go down
Of course this applies to any other LLM provider too but I guess Google saw this opportunity first.
The supposed difficulty of tracking from elements to classes to rulesets is something that AIs can easily handle, and being able to change a ruleset once and have the update apply to all use sites is really good for AI-driven changes.
Plus, humans and AIs won't have to wait for Tailwind to adopt new CSS features as they are added. If the AI can read MDN, it can use the feature.
Or you could tell the LLM that while prototyping, it should define the CSS "just in time" before/after each part of the HTML, by generating inline <script>s that embed CSS stanzas as string literals, and which immediately inject those into the document using CSSStyleSheet.insertRule(). (This can, again, be cleaned up afterward.)
Or, you can keep your CSS and your HTML separate, but also keep an internal documentation file (a "style guide") that describes how and when to use the CSS classes defined in the stylesheet. This is your in-context equivalent to the knowledge the LLM already has burned-in from training on the Tailwind docs site. Then, in your coding agent's instructions, you can tell it that when writing HTML, it should refer to the "style guide", rather than trying to reverse-engineer the usage of the styles from their implementation in CSS.
Good modular design of software and separation of concern are still important for debugging and lifecycle. For (instructing) the llm it will also be easier if it uses frameworks as the resulting code of the project itself will remain smaller, reducing the context for both llm and human.
Tailwind is a lot of overhead conceptually and tooling wise to just not have to write classnames, and it's actually anti-modular.
If you've rejected structural CSS to begin with, I sort of get the point that it saves a lot of typing; otherwise I don't see how it helps all that much over SASS or just modern plain CSS.
Front devs got lazy, and started writing for each element, position: absolute; left:3px, top:6px, color:red;...
You could write <font color="red">Hello</font> this would be similar "cleanliness"
With LLM-assisted development you spend more time reading and reviewing the generated code. The cascade in styles is nowhere near as readily apparent as something like Tailwind.
Just about everyone uses component-specific styles with a limited set of selectors where there are very few collisions per property, and pretty clear specificity winners when there are.
If the alternative to the cascade is that you have to repeat granular style choices on every single element, I'll take the cascade every time.
Yeah.
At which point you can simply use e.g Tailwind.
class="menu-item"
Styles-in-HTML (Tailwind):
class="m-4 mb-2 p-2 border border-radius-sm border gray-200 hover:border-gray-300 font-sm sm:font-xs [...]"
You can be completely insensitive to or unbothered by the difference, but that doesn't mean they're equivalent.
With plain CSS components can easily share styles and use them by adding the correct class name to elements.
With Tailwind you have to copy your list of super fine-grained classes to each component, and try to keep them in sync over time
Bonus point: It'll appreciate one of those "CSS is awesome" mugs, too.
I generally ask for the following, from scratch for each project:
- A theme file full of variables (if you squint this actually looks a bit like Tailwind)
- A file containing global styles, mostly semantic, rather than just piles of classes
- Specific, per component styles (I often use Svelte so this is easy as they live in the component files and are automatically scoped to the component)
IMO there’s even less need for Tailwind with AI than there was before.
When I see people talking about how good AI is with Tailwind it just feels like they’re lazily copying each other without even trying to avoid unnecessary complexity.
* Likely gets preferential access to new features and changes in tailwind, keeping it cutting edge
* Keeps a framework alive that Gemini is already good at
If a new framework becomes popular then the amount of training material / material already trained into the model essentially starts from 0.
The mature Frameworks that had plenty of openly available data to train on before everything became locked away are the ones we'll be running with for the next few years. It makes sense to keep it alive.
Tailwind is not under financial difficulty, like, at all.
With layoffs they can meet costs but that might be true if the revenue decline trend keeps going for 18 months or so.
This is why enterprise software is "call for pricing".
That's like ~2 engineers at FAANG.
Maybe we could even have a neat website with a leaderboard of sorts where we honor top contributors like some kind of gamification.
I think we would really need about five highly opinionated people with good technical and people skills to volunteer as paid maintainers for tailwind or any oss project to succeed.
Problem is that doing "boring" parts of open source project maintenance is not very exciting for many top tier developers so it should pay at least competetively for experience or people will just burn out.
And while you can obviously fund a team of 20 on $1M/year outside of US whatever said team will manage to keep up to the level of quality is another question.
Salaries for developers are well under $150k in most of the United States, for example, and that is for senior engineers. Most startups are paying $90k-$140k for senior devs, for example (I haven't done the math, but from my own experience, $100-$120k is the general sweet spot). Larger companies pay a bit more, but move beyond that and you are talking management.
[1] https://tailwindcss.com/blog/hiring-a-design-engineer-and-st...
You do realize not every company pays well right?
A Design Engineer and Staff Software Engineer both for $275k
So 2 million per year barely gets you two people.
As someone who has hired hundreds of SWEs over the last 12 years from 20+ states, I have to disagree.
$150k is on the lower end for base for a Sr. SWE, and well below the total comp someone would expect. You can make the argument that $150k base is reasonable, but even Sr. SWE in the middle of the country are looking for closer to $180k -$200k OTE.
Not every software company is busy writing software to target you with ads.
I wish every engineer were paid FAANG money.
I'm having a very hard time to believe you need one third of that to maintain a library that does "shorter names for standard CSS." Of course I might be underestimating Tailwind a lot.
[0] https://download.blender.org/foundation/Blender-Foundation-A... [1] But given the unit is euro in this report, I guess the solution is to not hire developers in the US.
As a side note, what the heck is with all the griping about costs in this discussion? So what if it's "just a big CSS library". Don't we want people to be paid good salaries? I swear software developers are one of the only groups of people I've ever met who actively complain about being paid too much money.
[1]: https://careers.usnews.com/best-jobs/software-developer/sala...
Sure the main thing was originally 'just' mapping `.p-4` to `padding: 1rem`. But it's also about grepping the code to see if `p-4` is used so it only builds needed classes. It also needs to work with things like their responsive and state classes so `md:p-4` or `hover:p-4` add the padding only on medium or larger screens, or when hovered etc.
All of which increased to support more and more css features and arbitrary values so `not-supports-[display:grid]:p-[5px]` generates the required code to check if grid is supported and add 5px padding or whatever other values you put in the [].
You can question if that's really a sensible idea, but it is undeniably a pretty complex challenge. Not sure it compares to blender, I imagine that has a lot more maths involved - put probably less edge cases and weird displays odd in X browser bugs.
I’m struggling to figure out which letter in FAANG represents Tailwind. Not sure why they need to be paying FAANG salaries.
That said 3 motivated developers and a designer should be more than sufficient to build a css library, but you could 100% have a team of 20 and they would find stuff to do.
Curious how much cash folks think it takes to cover this headcount. I have a feeling people are wildly underestimating the cost of a team this size.
Times that by 12...
I’m sure some lucky people are raking in 1.2M p.a., but doubt the tailwind devs were.
That's how they worked (they had 4 employees and recently fired 3 of them). Four employees is still a huge cost, for a CSS library with lifetime subscription plans.
As Stallman said: Think free as in free speech, not free beer.
It is a sharing economy, and that requires mutual participation.
Just remember, when clothed, it can go on youtube, and when your nipples are visible, it’s definitely OF.
Even if Tailwind were a shared hosted system like the common bootstrap CDNs of old… CDNs are dirt cheap for a small text file, even if it were loaded billions of times a month.
Some back of the napkin math suggests that it would cost about $300 per billion downloads for the current bootstrap.min.css file (gzip compressed, naturally) at North American network prices on one CDN I’ve used before. Or just $150 per billion globally if you're willing to use fewer PoPs. With browser caching, even split per domain, a billion downloads covers a very large number of users for a very large number of page loads.
> Vercel sponsors all of our hosting for all of our sites (which is expensive with our traffic!) for free and has for years
https://github.com/tailwindlabs/tailwindcss/compare/main%40%...
https://github.com/tailwindlabs/tailwindcss/commit/1e949af9a...
$1M / year is a lot of runway when it's just you. It's a lot less runway once you're paying other people's livelihoods too.
[1]: https://adams-morning-walk.transistor.fm/episodes/we-had-six...
> Because every project is different and the way independently authored pieces of code interact can be complex and time-consuming to understand, we do not offer technical support or consulting.
As CSS is limited in scope, ultra-well defined, testable and declarative, this should be a home run for LLMs.
Or at least in my experience this is where they need most human guidance. They can take screenshots and study those, but I’m not sure how well they can spot when things are a bit off.
Are we talking about the same CSS?
If LLMs didn't exist but shadcn still did, do you think people would pay and use Tailwind+ or shadcn?
The problem is that Tailwind is extremely portable (thats why it's so popular) and since LLMs have been fed all TailwindUI code... people using LLMs don't even have to know that TailwindUI exists they just get some Tailwind styled components. They would probably look pretty confused if you told them you used to buy these templates.
The question is rather, how can the most popular UI system (especially for AI models) have a healthy business model?
Think of the immense value that Tailwind is bringing to all the companies and developers using it. Surely there should be a way for the creators to capture a small slice of that in our economic system.
Like others earlier in the thread I'm symphatetic to this company/project, but your code/project being referenced often in AI output in itself doesn't imply that the thing needs to be a business.
bash, curl, awk, Python code with numpy imports, C++, all sorts of code is constantly being generated by AI, doesn't mean curl or numpy should be its own company, or that the AI Labs need to fund them.
As other fave written, making $1M+ already feels like a lot, maybe this shouldn't be a company, just 1-2 people who have a great time supporting this thing. I wonder if curl or awk have that kind of funding even..
This is more a question about the business model of open source, which has always had some challenges. I don't think you can support OSS with premium templates, training, and support once the knowledge is baked into LLMs.
A (side) business is created to support the oss project, to make it commercially sustainable /profitable, and then it becomes the commercial offer the liability sunk-in the money, using the fame of the oss to feed the beast. Puting the oss project at risk in the end.
Whereas people would happily give money or pay for supporting the oss project, they are kind of forced to feed the commercial project that might not really wanted to keep the beast alive.
As other I don't really have the details, but I think that in most of the world, 1 million of recurring revenue should be quite enough to support a sane evolution of what the project is doing.
Overall, this has been a win for Adam and Tailwind.
Edit
Looking at the tailwind.css repo[1] they are a Partner. Not sure why they are at the end of the sponsor list in that case. Though now I look at the bottom of the sponsors page I see they repeat the Sponsors again at the bottom and directly indicate each companies support tier.
1. https://github.com/tailwindlabs/tailwindcss.com/commit/7a98b...
As part of FAANG, they should be donating like 10x that amount at least.
Disclosure: I am relying on your word, and do not know if there are more tiers above partner or not.
With LLMs, almost nobody visits their docs anymore just like folks barely visit Stackoverflow anymore (SOs traffic is down +80%). Fewer people see things they may want to buy from team Tailwind so they make less money so they implode. Plus LLMs just directly compete with their support offering.
They made money off selling preset components and documentation etc, but as others have said, AI has pretty much ripped this off.
One of those things trying to monetise out of nothing because it became popular.
To be specific, they had 4 staff engineers and had to fire 3 of them[1].
[1]https://socket.dev/blog/tailwind-css-announces-layoffs#:~:te...
Easier said than done obviously, and probably would become more expensive than it's worth, but imagine if the output was demonstrably better and exclusive deals were in place ("Claude Code has the expert Tailwind agent that's trained and maintained by Tailwind, Codex doesn't") -- it would create certain kinds of paying-subscriber mini-moats for specific LLMs.
I dunno. By the time I was done typing that I started to become skeptical of the idea but gonna hit "add comment" anyways lol
It would be nice for Adam to figure things out and find ways to make things happen.
Ultimately it was Radix/Shadcn (which uses tailwind for styling of course) that killed the need to buy Tailwind’s UI kits by offering all these primitives with good default styling for free.
Also, the tailwind UI stuff feels pretty dated at this point in comparison to what’s offered in other free UI libraries these days.
There's a reason companies like Adobe/Microsoft switched away from one-time purchase software, and that reason is that it is exhausting and eventually impossible to sustain a business where you have to hunt for brand new customers every single month just to keep the lights on.
You can't compare it with software licensing subscriptions.
For example, I now routinely use AI to create UI components and my prompt usually includes "use ShadCN like component here" and even give them specific shadcn component names. The result is usually 90% good enough to start with.
I was reading a writeup on this history of Tailwind[1] made by Adam Wathan (who created Tailwind).
It seems like he was working on a variety of different business ideas including "Reddit meets Pinterest meets Twitter" and "a developer-focused, webhook-driven checkout platform". He created the basis of Tailwind just to help him build these projects, but it kept getting attention when he would post about his progress building them online.
Here's an important quote from the doc:
"Now at this point I had zero intention of maintaining any sort of open-source CSS framework. It didn’t even occur to me that what I had been building would even be interesting to anyone. But stream after stream, people were always asking about the CSS"
It seems like Adam's main goal was to start a software business, and Tailwind just happened to get popular and became what he pivoted his efforts into. There's obviously nothing wrong with wanting to start a business, but trying to take an open-source CSS framework and turn it into a multi-million dollar business feels unnatural and very difficult to maintain long-term.
To his credit, he did pull it off. He built a seemingly quite successful business and hired a sizable team, and apparently made a decent amount of revenue along the way.
But now, for AI reasons or otherwise, that business is struggling and failing to sustain the scale it was before. To me, it seems like the business is more or less completely separate from the open-source Tailwind project itself. It's, as far as I can understand, a business that sells templates and components built with Tailwind, and it uses Tailwind's popularity to bootstrap customers and sales.
If it were me who ended up building Tailwind, there's no way I would have pursued turning it into a big business. Maybe I would have tried some kind of consulting style, where I'd offer my time to companies evaluating or integrating Tailwind.
Now that Tailwind is getting hundreds of thousands (millions?) of dollars a year in sponsorships, it feels weird to have this for-profit business on the side at the same time.
Maybe it's just my own sensibilities and worldview, but I feel like Tailwind should just be what it is: an extremely popular and successful open-source CSS framework.
[1] https://adamwathan.me/tailwindcss-from-side-project-byproduc...
It wasn’t venture scale and never intended to be venture scale. By any metric you have, it’s a very successful business and has made its creators independent and wealthy as you pointed out.
I agree this is your worldview warping your perception. But I’d argue we need far more tailwinds and far less whatever else is going on. It captured millions in value - but it generated tens, or hundreds of millions, or more. And essentially gave it away for free.
I think a better conclusion is that it’s a flawed business model. In which case, I’d agree - this didn’t come out of nowhere. The product created (TailwindUI) was divorced from the value created (tailwindcss). Perhaps there was a better way to align the two. But they should be celebrated for not squeezing the ecosystem, not vilified. Our society has somewhat perverse incentives.
How much money do you really need to maintain a CSS library? I understand everyone wants a really fancy office in an expensive city, lots of employees with very high salaries and generous perks, and so on. But all that is not needed to maintain a CSS library (that is kind of feature complete already).
I think Tailwind was making a lot of money (surely over a million), expanded and got bloated unnecessarily just because they had all that money, and now that their income dropped to what still is a lot of money for a CSS library, they're angry that they have to cut expenses to a more reasonable level.
I guess it worked out for them because now they have even more sponsoring.
And they used the AI bad get out of jail free card when a lot of their drop in sales probably comes from shadcn/ui and others which offer something similar for free.
If you want to continue to develop new versions, you need enough to pay as many engineers as you need to do that. If you're not developing new versions then the money from sponsors will eventually stop.
And they used the AI bad get out of jail free card when a lot of their drop in sales probably comes from shadcn/ui and others which offer something similar for free.
shadcn is built on top of Tailwind. If Tailwind dies, so does shadcn.
They can fork tailwind into openwind and keep using the stable version for a looong time with minor fixes.
And that would probably benefit shadcn somewhat since they would have more control.
It would be in their best interest to keep "openwind" stable since changes to the CSS lib would require extra work in their component.
Different incentives.
I hope they have better reasons to release new versions? Not releasing new versions also has its charm: less churn.
Seems to me like Tailwind is a relatively complex beast covering a lot of ground, not to mention that web browsers are living/evergreen projects that are costantly moving forward, and so the lib needs frequent updates. I don't think you can avoid this (just by the nature of the project). You also need to be a css expert who follows the browser and feature development closely on top of having an excellent grasp of js/ts and the build (lightining css, vite...) ecosystem. I mean ... A few excellent engineers and a designer is probably just the bare minimum to keep Tailwind maintained.
But you can't have it both ways, it can't be just a simple CSS library that doesn't need that much money, but also expect a decade of work+ on it. After all, this originally stems from the fact that a PR attempting to improve something didn't get merged in; a technically finished project would have the same problem, but that would be the rule rather than the exception.
I mean, I'm not a Tailwind user so I don't either. But it's incredibly easy to take open source value for granted. That's why so many maintainers burn out.
I don't know what a Tailwind V5 could add that is "breaking" and be worth the migration headache again.
Not saying that it's right, and there's a whole philosophical debate about open source being financially sustainable, but in terms of "You can't expect a decade of work for free" - I think you can and many people do.
Curious how we would solve this class of wealth distribution problem in the future. All these critical libraries supply chain hit the bottom line of tech companies directly, but to extrapolate, all knowledge / work creators who used to live a comfortable living now have all their hard work scrapped by aggregators. Yeah I understand the genie is out of the bottle, all that and there will be (is?) systemic change to viable businesses. But people still have to live during the transition. It's also in the best interest of these aggregators, who's there to feed them new free works if it's no longer viable?
They've just added 26 sponsor companies in the last two days, 7 of them partners!
baggachipz•18h ago
mrgoldenbrown•17h ago
baggachipz•17h ago