Comment by bitpush
2 days ago
(replying to self)
I looked at the code, and I'm finding it very hard to take them seriously.
https://github.com/nuejs/nue/blob/4ed9b628f9f307f19bd6dd4d09...
This almost feels like someone taking on a challenge to create a toy framework themselves.
--
While we're at it, since the author wanted to poo-poo tailwind. Com'on https://github.com/nuejs/nue/blob/4ed9b628f9f307f19bd6dd4d09...
Check out the Development Philosophy section on our contribution guidelines to understand the difference on Nue's coding style:
https://github.com/nuejs/nue/blob/master/CONTRIBUTING.md#dev...
NOTE: the document was just updated to match this concern
You should clarify that you just updated that doc, based on the discussion here.
It is kinda disingenuous to say "Check out the doc .." which gives the impression that all of the gaps people have identified in this thread was by design all along.
You're right - I should have been upfront about the documentation update. However, the point about "Less is More" being a fundamental coding philosophy was an important addition that better articulates how this principle shapes the entire framework. Next time, I'll be explicit. Thanks.
Yeah, I was expecting something bigger and more explicit when he went after tailwind. Instead, the author just re-hashed older design patterns (MVC and semantic html decorations from css) without providing context add to when and why you would prefer the older patterns over newer ones. I've been building since the jQuery days, and I totally agree that there are a lot of challenges that people tend to forget from that time. Decoupling html from css just didn't provide much value, but it did create a lot of bike shedding.
I really like how htmx has handled explaining their architectural trade offs. They're very clear about the kind of problem they're solving, how they're solving it, and when/why their solution is better.
This post just has "get off my lawn" vibes without a ton of substance
The _why_ is extensively documented. See:
https://nuejs.org/docs/
Also FAQ:
https://nuejs.org/docs/faq.html
I appreciate the links. I think this quote from the FAQ captures the disconnect for me:
``` This isn't about rejecting modern development - it's about recognizing that browsers now offer sophisticated capabilities that eliminate the need for most framework abstractions. ```
The problem I have is that I agree with the initial premise, but I disagree with the conclusion. Framework architectures mostly solve different problems than modern web standards.
If you want to go after specifics like 1) just use browser forms and stop re implementing the wheel, 2) you probably don't need a massive state validation library, or 3) stop building CSS features in JS, then I'm 100% on board. But that's not a problem with CSS-in-JS, JSX + render library, components, or many of the other targets you go after.
Things like tailwind (for example) solve fundamentally different problems, and those have more to do with team standardization, avoiding bike shedding, and rapid prototyping. For styling in particular, I don't want to return to the days of crawling through thousands of lines of CSS - edited over years by multiple teams - to find all of the places where different styles impact the specific html component I'm looking at. That's tightly coupled code with loosely defined locations. JSX components just decay less quickly due to encapsulation.
I've also just never seen the separation of CSS and HTML actually provide practical value. It's always been "check out what's possible!" projects like CSS zen garden. Super cool, but that decoupling just doesn't do much in practice.
Like I said, I think there are some interesting ideas here, but I just don't think it's clear why this is a better approach for general web application development (which is the argument you appear to be making).
I'm super curious to see if you prove me wrong, so I'll definitely keep an eye out :). I just don't yet see how the proposed solution solves the identified problems without pulling in a bunch of pain points that were already solved a while ago.
7 replies →
Please dial back the attacks. This is not an interrogation scene in a crime drama.