louisgarman at gmail dot com
- The article gives the impression "Italy" was always a nation in the making for all of history, just waiting to "unify". It talks of a "national rebirth".
But it's an invention. It never previously existed. Yes the penisula was referred to as Italy for a long time and the language is shared across the area and there are cultural similarities. But none of that automatically makes a nation - you don't have to think hard of counter examples. History could have panned out differently. It still could.
I think the bourgeoisies have been enormously successful in giving the impression that these nation states, whether it be Italy or Germany, or India, etc, that they're inevitable, they're permanent and anything else is a perversion. And Garibaldi was one such whose brilliance was to forge a nation so quickly from so many disparate states.
- > Calling datastar's pro features "necessary" is a bit disingenuous
I didn't. I said:
> * Datastar has a paid-for Pro edition, which is necesssary if you want certain behaviours. HTMX is completely free.
I don't need to spell out why this means something very different to what you think it means.
I'll happily concede on the other two quibbles.
- I'd expect it to make it explicit this is a freemium product, with free features and paid features. Nothing is given on the home page to indicate as such.
- I think Datastar has the better approach here with making OOB the default. I suspect HTMX's non-OOB default makes more sense for very simple requirements where you simply replace the part of the DOM from which the action was triggered. But personally, situations where OOB is necessary is more typical.
Interestingly, elements sent via the HTMX websocket extension [1] do use OOB by default.
- Did you use templ [1] for server side templating? It supports something called fragments, which may help with HTMX [2].
[1]: https://templ.guide/
- I don't think the article does a good job of summarising the differences, so I'll have a go:
* Datastar sends all responses using SSE (Server Side Events). Usually SSE is employed to allow the server to push events to the client, and Datastar does this, but it also uses SSE encoding of events in response to client initiated actions like clicking a button (clicking the button sends a GET request and the server responds with zero or more SSE events over a time period of the server's choice).
* Whereas HTMX supports SSE as one of several extensions, and only for server-initiated events. It also supports Websockets for two-way interaction.
* Datastar has a concept of signals, which manages front-end state. HTMX doesn't do this and you'll need AlpineJS or something similar as well.
* HTMX supports something called OOB (out-of-band), where you can pick out fragments of the HTML response to be patched into various parts of the DOM, using the ID attribute. In Datastar this is the default behaviour.
* Datastar has a paid-for Pro edition, which is necesssary if you want certain behaviours. HTMX is completely free.
I think the other differences are pretty minor:
* Datastar has smaller library footprint but both are tiny to begin with (11kb vs 14kb), which is splitting hairs.
* Datastar needs fewer attributes to achieve the same behaviours. I'm not sure about this, you might need to customise the behaviour which requires more and more attributes, but again, it's not a big deal.
- It's also pretty shady that no mention is made of Datastar Pro on the home page [1]. You might well be well on the way to integrating Datastar into your website before you stumble across the Pro edition, which is only mentioned on the side bar of the reference page [2].
[1]: https://data-star.dev/ [2]: https://data-star.dev/reference/datastar_pro#attributes
- > ...To accomplish this, most HTMX developers achieve updates either by “pulling” information from the server by polling every few seconds or by writing custom WebSocket code, which increases complexity.
This isn't true. HTMX has native support for "pushing" data to the browser with Websockets or SSE, without "custom" code.
- > These payment processors seem to be basically levying a 1-3% tax on a nations entire GDP
You're exaggerating for effect. GDP is the total value of all goods and services sold or bought; only a fraction of which is paid for with a credit card. I doubt an F35 is purchased with a Visa.
- None of that is contrary to "moving money at speed to make wealthy people more wealthy".
- I like the version diffs.
Perhaps add an "expand all" button to avoid clicking individually on properties to see their descriptions?
I usually rely on the official generated docs (all on one giant page):
https://kubernetes.io/docs/reference/generated/kubernetes-ap...
- Because it's questionable whether that's even possible.
- Newport is in South Wales.
- What? They did hold off. Their actions matched their words.
- Indeed a typo, well spotted, it should return the model as well.
- Thank you. Out of curiosity, what do your "TUI managers" do for your apps?
- Good point. I'll update this section to more clearly refer to the use of go routines in particular outside of the event loop.
- I've put together some tips for building Bubble Tea programs:
https://leg100.github.io/en/posts/building-bubbletea-program...
- 1 point
I really doubt horses would be ambivalent about this, let alone about anything. Or maybe I'm wrong, they were in two minds: oh dear I'm at risk of being put to sleep, or maybe it could lead to a nice long retirement out on a grassy meadow. But they're in all likelihood blissfully unaware.