The beauty of it is that you don't _need_ Alpine at all, Alpine just comes up because it's popular, it solves the problem of lightweight inline scripting, and it integrates relatively seamlessly with htmx.
If you don't want to use Alpine for whatever reason, you can just write your own javascript, you can use hyperscript, you can use some other inline scripting library.
> when I need to work with json - since I don't control all backend and json isn't really a first class citizen of htmx
yeah, if you can't make the backend return HTML, you're in a worse off place if you want to use htmx.
There's extensions [1][2] for receiving and rendering JSON responses with htmx (though I haven't used them), but I totally understand it starting to feel like a worse fit.
I've shipped multiple projects running HTMX, and I generally like it.
Grain of salt too, I'm typically a "DevOps engineer", and I generally lean towards backend development. What I mean to say is that I don't know react and I don't want to.
My understanding of it is that HTMX is a library, whereas React is a framework. With a library, you need to figure out the structure yourself, and that sometimes makes things more difficult since it's another responsibility. This is likely where things fail for the large enterprise apps _not_ using a framework, since structuring the codebase for an enterprise application (and convincing your colleagues to like it) is genuinely difficult and there's no way around that.
> as some people have suggested - perhaps cynically - a simple lightweight replacement of jQuery?
I don't even see this as cynical, I think it's a relatively fair assessment. A key difference is that jQuery has it's own language to learn, whereas htmx is pretty much a few extra html tag attributes.
I'd recommend you just try HTMX out when you have an opportunity to write something small and full stack, you might like it a lot.
In common lisp, you don't need a build system at all; you can `(load "file.lisp")` everything and it should generally just work. But of course, build systems are useful tools, so nonetheless ASDF exists and it's nice enough to the degree that nobody has built a better and more widespread common lisp build system.
Some good trivial examples are in the lisp cookbook:
Github has a neat extension to its' markdown syntax where if you comment with a block for a specific line or lines, it will render to have a "commit suggestion" button.
```suggestion
my_change
```
if there's someone on your team prone to style nitpicks like this, this can often sate them, and it's convenient for you to merge into your branch
> Ok, you're obviously trolling here. This is clearly bait. But for anyone else reading this:
Only a little. The point is "waste" and "efficiency" are so subjective to be a near meaningless concepts. You could make the same points you did about many of the things Musk wants to cut, but they're not going to resonate to a tech audience like cutting NASA does. It's basically a temple of geek religion.
> NASA's budget for 2023 was roughly $25 billion [0]
That money could fund a lot of housing assistance or healthcare.
Personally, I think the things that "engineers" like should be cut first instead of being protected.
In team fortress 2, players can receive loot boxes/in game items during normal gameplay. The loot boxes can be unlocked by purchasing a "key" for ~$2.50, to receive cosmetic items. Many of the cosmetic items can sell for a lot, on the scale of hundreds or even thousands of dollars.
The cosmetic items from loot boxes (as well as those attained from normal play) can then be sold in online markets (such as scrap.tf or marketplace.tf) for real-world currency.
This is probably what the primary goal of the bots is. Ironically, the source of TF2's profit for Valve (microtransactions for cosmetics) is also a partial cause for the bot crisis.
You probably don't play TF2. It's not just "human behind the kb/m using an aim assist cheat".
It's literally bots/non-human players that stare at the sky and beeline to either the objective or a predefined path. They usually spam music over in-game chat and there is simply zero plausible deniability that this player in the game is a bot. They usually come into a game, and then invite other instances of the bot to the same game, to prevent them from getting kicked (which requires 6 "yes" responses from the same team) and to kick other players from the game. These are the vast majority of bots/cheaters that you see in the game, and they are the primary reason that "casual" matchmaking is sometimes unplayable.
"real" players that are cheating in the game with some kind of aim assist, but it's still a human behind the wheel, are relatively easy to detect and spectate if you're on their team. They typically get noticed and kicked
Clojure has immutability built into the language and the core data structures are all persistent so that you can get sufficiently efficient partial updates while still preserving a pure FP style.
Furthermore, the data structures in clojure also have interfaces that make it easier to swap out which data structure you're using while still keeping whatever map/filter/reduce algorithm implementation you're sending it through.
Common lisp, on the other hand, has setf. Which more or lets you mutate anything. You certainly can code in an FP style in common lisp, but it doesn't restrict you in any meaningful way. Not a problem if you control the entire codebase, but when gluing components together this can be a source of friction.
FP in CL is kind of optional, and it's also more in the sense that you can pass functions as arguments or return functions, meaning FP == First Class Functions.
But in Clojure, FP is kind of mandatory, there's no OO for example, and it's more than just first-class functions, it's also immutability.
If you don't want to use Alpine for whatever reason, you can just write your own javascript, you can use hyperscript, you can use some other inline scripting library.
Mr. HTMX touches on it in one of the essays: https://htmx.org/essays/hypermedia-friendly-scripting/
> when I need to work with json - since I don't control all backend and json isn't really a first class citizen of htmx
yeah, if you can't make the backend return HTML, you're in a worse off place if you want to use htmx.
There's extensions [1][2] for receiving and rendering JSON responses with htmx (though I haven't used them), but I totally understand it starting to feel like a worse fit.
1 - https://github.com/bigskysoftware/htmx-extensions/blob/main/...
2 - https://github.com/mariusGundersen/htmx-json
reply