Hypermedia Systems

Book review by Deane Barker tags: tech, programming

I’ve used HTMX for a number of years (I currently use it on the very website this review was posted to). As such, this book is preaching to the choir quite a bit.

Like a lot of situations with technology, the book exists on two levels:

  1. To evangelize the use of HTML (“hypermedia”) to build applications, rather than the en vogue trend of massive front-end JavaScript frameworks.
  2. To teach the specifics of HTMX in particular.

It does quite well at both. It’s very much swimming upstream, given the current technical environment, but it makes a good case for hypermedia and does a good job of explaining the specifics of HTMX in the context of building a contact management app.

The usage of something like HTMX speaks to control – where do we control an app? Where is the logic? Is there value in moving it to the client, when the client is dependent on the server anyway? HTMX promotes HATEOAS – “Hypermedia As The Engine Of Application State.” Something has to keep track of what’s going on in the app, and HTMX maintains there’s little reason to move this logic off the server.

Another theme is the “advance” of technology for the sake of technology. The book makes the case that new-fangled JavaScript frameworks haven’t really moved us that far forward, and the original technologies work just as well. This is a constant dialectical argument in my industry.

Curiously, during the time I was reading this, I attended the Next.js conference in San Francisco (I bought this to read on the plane, perhaps as subconscious protest). Next.js is a clearly opposing technology, and I sat in the audience at the conference to hear the keynote speaker give a – likely sarcastic – shoutout to HTMX from the stage.

Weird coincidence.

Book Info

Carson Gross, Adam Stepinski, Deniz Akşimşek, William Talcott, Mike Amundsen
350
  • I have read this book. According to my records, I completed it on .
  • I own an electronic copy of this book.

This is item #86 in a sequence of 811 items.

You can use your left/right arrow keys to navigate