Tips for Building SSR/HDA Applications
htmx.org
htmx.org
This article is surreal. It feels like I just woke up in the year 2003. Why are we actively promoting old architectures that were abandoned for very good reasons?
If your use case requires SSR for some reason, then sure. But the vast majority of SPAs are an order of magnitude more efficient to work on than the old paradigm of PHP/JSP/ASP/Whatever server pages (i.e. what things like htmx are reinventing, but this time in JavaScript!).
This is kind of a head scratcher. SPAs may be easier to work on than how things were done 20 years. But they're definitely not easier to work on than SSR in a modern stack.
It's about division of labor, and having clear interfaces between teams. If you are a one-person project, then by all means go that route. But in a team with specialized talent in backend and frontend development, both are much more efficient when that separation exists. Expecting frontend devs to write efficient SQL queries is about as insane as expecting a backend dev to know how to make complex CSS animations.
I said front end devs, not designers. And that is literally called out as a specific proposed benefit in the article.
And I don't know what to tell you, absolutely no one is advocating for JSP style SQL-inlined-in-HTML or something.
This just isn't a problem for most modern stacks. You're using an ORM and not writing SQL which isn't any harder than GraphQL or Rest endpoints.
And, for better or worse, there's not that much need to write efficient SQL because servers are so fast these days. The target you need to hit is something like "one of my filter conditions has an index" and things will usually be fine.
yep:
No doubt, some SPAs went way too far onto the client side. But some of this advice really feels like the pendulum swinging too far back to the server side.
But I suppose that articles that suggest striving for balance and provide a clear and actionable set of guidelines to achieve that balance aren't quite as easy to write.