> Providing ready-made UI components and templates has never been a million-dollar business, nor should it be.

But what if people were already selling them, and tailwind showed up, did it better, and people went directly to them to buy what they were offering?

Why shouldn't that exist?

The folks over at Tailwind offered curated, hand-built components that were readily adapted and tuned to your own needs. They did an excellent job making it so you could pick and choose what you wanted, then theme all of it from your tailwind settings with ease. It was excellent.

Sure, similar things existed for less or at no cost. I was content to pay for this, though. It made my work meaningfully simpler at times. It paid for itself.

> Tailwind's business model existed due to a massive inefficiency in the frontend industry not being able to come to terms with CSS or native components.

I don't agree. The pain it addressed on my team was more so that very few people I worked with understood CSS, but tailwind was easy enough for them to work with (particularly in a React context). It was a useful tool in a context where a lot of the people didn't fully understand the tool. They could just pick and choose components and they'd slot into the app well enough. It addressed real pain there.

They surfed a wave for sure, but I think it was mostly that a non-trivial number of people working on the frontend don't understand HTML and CSS very well. That's not their fault at all.

> The folks over at Tailwind offered curated, hand-built components that were readily adapted and tuned to your own needs. They did an excellent job making it so you could pick and choose what you wanted, then theme all of it from your tailwind settings with ease. It was excellent.

They also offered an Open Source CSS framework with the explicit goal of making it easier for you to style your own components. There was always some tension between "make abstraction layer whose adoption depends on users finding it easier to make your own components with than vanilla CSS, which is not unusually hard" and "sell pre-made components". Particularly when there's an abundance of alternative FOSS components/libraries out there[1] in vanilla CSS or even full blown CMS templates for people not wedded to the idea that Tailwind makes things easy for them. Much easier to sell templates or even "premium components" when your USP is integrating them with a backend them rather than merely providing the layer of syntactic sugar supposed to make component styling easy...

They also happened to have the misfortune of designing it in a way which is particularly easy for AI which doesn't have to tradeoff time spent making design decisions and figuring out how to achieve those from the docs vs dollars spent buying components to minimally tweak.

[1]tbf, I always thought the Tailwind creators' designs were more tasteful than the average CSS mixin library even though I didn't think the same about the syntax...

> There was always some tension between "make abstraction layer whose adoption depends on users finding it easier to make your own components with than vanilla CSS, which is not unusually hard" and "sell pre-made components"

Do you have an example?

Humanity evolves.

We wouldn't need doctors if we had a box you could walk into that cured all ailments.

We won't need software engineers once you can crudely specify requirements and have a machine turn them into rigid requirements with a solid data model, flexibility to extend, infrastructure to run, and monitoring and recovery to maintain reliability.

A lot of things change when technology evolves.

I doubt AI will ever become omniscient

Hydrated sugars certainly think they themselves did.

if you mean this in a reductionist way for humans, i dont think most of us think we’re omniscient

my point more broadly is that if you have an incomplete spec, any entity implementing it either needs to be omniscient or make assumptions about the intended behaviour of the system. if constraints or invariants aren't part of the spec it might be difficult or outright impossible to make the right assumptions.

so while LLMs might be writing all of the code in the future, someone will still need to create the spec + verify it. and often the spec is not really possible to know until implementation begins...

ive been using astra on a project that isn't even that complex in the grand scheme of things, and it still fails to make the right assumptions. of course i could just give it a full complete spec right?! except i didn't know what the right assumptions were either until implementation anyways. so to some extent they were unknowable to me, and thus unknowable to the llm no matter how powerful.

I do think in the future humans will probably write very little code themselves, but the work will be all about specification + verification and that means system design, which is the stuff I care about anyways. maybe I won't develop rsi when I get older :)

lol what a load of nonsense.

im not swe by trade, in fact I would love it if what you said was true because I could consolidate various kinds of businesses into one holistic infrastructure and demolish all the competitors.

Aint happening tho!