HTMX Sucks

Поділитися
Вставка
  • Опубліковано 26 гру 2024

КОМЕНТАРІ •

  • @3borsresistance551
    @3borsresistance551 6 місяців тому +151

    "HTML is over thirty years old now."
    The wheel enters the room.

    • @NostraDavid2
      @NostraDavid2 6 місяців тому +11

      Fun fact: SQL is already 50!
      And after 50 years, it's still not truly relational! I've read the papers Codd produced about the Relational MODEL (RM) (the origin of SQL and RDBMS) and never once was happy with SQL because it effectively bastardized the RM. Not even in 1990, 2 years before SQL got its primary keys. Codd already talked a out the primary key back in the early 70s mind you.
      Current SQL and RDBMS' are a travesty /rant

    • @RsZ789
      @RsZ789 6 місяців тому +6

      Oh look who decided to roll in

    • @RexRecon
      @RexRecon 2 місяці тому

      Nobody:
      Software Engineers: We have to reinvent it!

  • @andythedishwasher1117
    @andythedishwasher1117 6 місяців тому +50

    It honestly took me a minute to realize this actually was Carson writing. He does an excellent job of coming out the gate sounding like somebody who is about to tear him a new one, but he's tearing himself a new one while simultaneously backhanding the haters. The layers to this are amazing.

    • @Basuko_Smoker
      @Basuko_Smoker 6 місяців тому +5

      Yeah the first minute of him reading this made confused, then I completely got It anda also think this IS such a 200iq move lmao

  • @petrus4
    @petrus4 6 місяців тому +185

    If you spend any time with the Document Object Model, and you know anything about BDSM, you will realise that the fact that it's acronym is DOM, is not a coincidence. In this case, however, there is no safe word.

    • @_Lumiere_
      @_Lumiere_ 6 місяців тому +6

      💀

    • @nahkh1
      @nahkh1 6 місяців тому +35

      My safe word is !important

    • @laden6675
      @laden6675 6 місяців тому +3

      @@nahkh1 that's not even HTML

    • @psychoedge
      @psychoedge 6 місяців тому +18

      @@laden6675 that's why it's safe

    • @PankajDoharey
      @PankajDoharey 3 місяці тому

      @@nahkh1 Thats css. for HTML

  • @Cyanide300
    @Cyanide300 6 місяців тому +28

    Calling it old tech isn't the attack some people think it is. Old tech that has survived the test of time is the best tech. That's what you *want* in production. Use your flashy new stuff in personal projects and minor stuff where it doesn't matter if you stumble into some unknown fundamental flaw. In a real production environment you want simple, time tested, boring technology where all the flaws are known (and probably fixed) and there won't be any surprises.

    • @remuladgryta
      @remuladgryta 5 місяців тому +2

      Related to this is the Lindy effect which states that the lifetime of non-perishable things (organizations, books remaining in print, specific technologies being in use, etc.) tends to follow a Pareto distribution. What this means in practice is that at any given time, any given technology is likely to remain in use for about as long as it has already been in use.
      It's generally a good idea to choose dependencies that have been around for at least as long as you plan on depending on them or you are likely to have to become the maintainer.

    • @segganew
      @segganew 2 місяці тому

      COBOL would like to disagree with you

  • @ScottHess
    @ScottHess 6 місяців тому +106

    I hate hate HATE frameworks that promise "Build Google using a single import", and then they require you to install a package manager to install the dependency manager to install some sort of moon language with 73 dependencies, to push code you have to run in a homebuilt build process that uses md5 hashes rather than timestamps to detect changes, and it only works if you serve it using their custom reverse proxy that needs a Reddit (EDIT: Redis, sigh) cluster for caching. Which, of course, is far too complicated, so here's a Docker script to make it easy.
    Instead, just MAKE IT EASY by removing things.

    • @thewhitefalcon8539
      @thewhitefalcon8539 6 місяців тому +2

      A reddit cluster lmao

    • @ScottHess
      @ScottHess 6 місяців тому

      @@thewhitefalcon8539 Dammit. I think I got autocorrected, because it was supposed to be Redis. Or I was just ranting, because I have come to hate dependencies.

    • @JG-nm9zk
      @JG-nm9zk 2 місяці тому

      why are you bringing Lua into this?

  • @jackdanielson1997
    @jackdanielson1997 6 місяців тому +112

    I find myself starved for nuanced, unbiased takes in software. The answer to most questions is boring: "it depends". It requires discovery, requirements gathering and a lot of thought, but this binary and click-bait world has devolved us into this monkey-brained "there is only 1 right answer". I wish someone would step forward in this community and be this type of representative.

    • @y00t00b3r
      @y00t00b3r 6 місяців тому +11

      upvoted for subtle irony!

    • @airkami
      @airkami 6 місяців тому

      That’s what manuals are for. You want someone to read manuals on stream?

    • @ConernicusRex
      @ConernicusRex 6 місяців тому +6

      You watched none of the video and read none of the article before posting this, huh?

    • @dealloc
      @dealloc 6 місяців тому +2

      Software is personal for a lot of people. It's often their livelyhood and their passion. Of course you're going to have a bias in anything people create and foster. That's natural.

    • @y00t00b3r
      @y00t00b3r 6 місяців тому +8

      @@ConernicusRex The comment you are replying to flew right over your head. The reader isn't supposed to take it literally.

  • @ND6K
    @ND6K 6 місяців тому +213

    Is this a re-upload or am I tripping

    • @tchnque2234
      @tchnque2234 6 місяців тому +171

      no you watched theo vid probably XD

    • @GranddadsGrits
      @GranddadsGrits 6 місяців тому +15

      it is

    • @yourmomsboyfriend3337
      @yourmomsboyfriend3337 6 місяців тому +1

      Bro actually thinks Theo’s mustache even comes close to Prime’s 💀

    • @supershower8764
      @supershower8764 6 місяців тому +79

      Bro actually thinks Theo’s mustache even comes close to Prime’s 💀

    • @mediopalodev
      @mediopalodev 6 місяців тому

      ua-cam.com/video/3nSDA0Nd_0I/v-deo.html

  • @WewasAtamans
    @WewasAtamans 6 місяців тому +172

    JQuery for the gen z

    • @CamperGuy
      @CamperGuy 6 місяців тому +1

      This should be their twitter bio

    • @claudiogonzalo
      @claudiogonzalo 6 місяців тому

      neat

    • @aebisdecunter
      @aebisdecunter 6 місяців тому

      more like for Gen X or people in love with the 24th letter of the alphabet (elon)

    • @EvanEdwards
      @EvanEdwards 6 місяців тому +9

      React is probably the JQuery for Gen Z. HTMX may be the JQuery for Gen Alpha. I'd say Angular was JQuery for Millennials, JQuery was the JQuery for Gen X, and Scheme/Lisp the JQuery for Boomers. The Greatest Generation just had to manually punch in opcodes using toggle switches and a big red advance memory button on an IMP to send out a few packets.

    • @ytubeanon
      @ytubeanon 6 місяців тому

      I'm a Gen-X'er who legit loves jQuery so much, it makes such intuitive sense to me, I've written dozens, maybe hundreds of userscripts for Tampermonkey on Greasyfork, used by +10,000 of people around the world

  • @nace.plesko
    @nace.plesko 3 місяці тому +6

    Prime thanks for inspiring me for htmx and go! You sparked my curiosity so I started a side project with htmx + vanilla js + tailwind + go templ for the sake of learning and here we are 9 months later - I ended up deploying it on the internet and I'm so pumped up about it. Even ended up learning aws and some other stuff just so that I could put it out there :) And I plan to continue working on it as this stack is really pleasant to work with.

  • @FizzleStudiosLtd
    @FizzleStudiosLtd 6 місяців тому +50

    accepting HTMX into your life means accepting that modern JS is silly, over-complicated nonsense. The proposition being made by HTMX is that UI doesn't (always) need to be that fucking hard. If it doesn't need to be that hard, it forces MANY devs to either admit they invested their time in nonsense or reject the idea.

    • @markbond08
      @markbond08 4 місяці тому +6

      This channels fans: Typescript and JS aren’t even real programming they’re too easy try rust
      Also this channels fans: JS IS TOO COMPLICATED MOVE ALL YOUR LOGIC TO HTML

    • @tapwater424
      @tapwater424 4 місяці тому +1

      @@markbond08 Front-end development is easy, you guys just managed to make it hard. Idiots admire complexity.

    • @deidyomega
      @deidyomega 3 місяці тому +1

      @@markbond08 Every one of those rust devs can learn react, we all just know js is a bullshit language. ('b' + 'a' + + 'a' + 'a').toLowerCase()

    • @doublekamui
      @doublekamui 3 місяці тому

      @@markbond08some of them are really hypocrycite

    • @doublekamui
      @doublekamui 3 місяці тому

      we will not come back to the old era where web ui is ugly, not interesting, that make product that is presented is not interesting, with many more limited interactivity kid. if you want, go do for yourself

  • @fsbgaming1588
    @fsbgaming1588 6 місяців тому +39

    fun facts. your end users doesnt give a crap what lib, frameworks, a href, ajax,jquery or fetch even beacon u used. faster and smaller is always better

    • @rh906
      @rh906 6 місяців тому +4

      If humans were geeks and all capable of critical thought, Americans would actually understand their constitution and actively protect it. But that isn't what you see, so eh.

    • @fsbgaming1588
      @fsbgaming1588 6 місяців тому

      @@rh906 easy time produced weak people. hard time make strong people

    • @doublekamui
      @doublekamui 3 місяці тому

      not, cool 3d, high interactivity is better

    • @fsbgaming1588
      @fsbgaming1588 2 місяці тому +1

      @@doublekamui i think you need to check your eyes coz its seem u cant tell the different a web and AAA game. 200kb may considered as heavy not to long ago on 2000. now almost 50mb for a freaking page. load time 1mnt++. flash is rolling on its grave.

  • @RA-xx4mz
    @RA-xx4mz 6 місяців тому +84

    HTMX + Templ feels like VueJS

    • @JanJozefo
      @JanJozefo 6 місяців тому +14

      With AlpineJS it works pretty much identically too!

    • @bobDotJS
      @bobDotJS 6 місяців тому +17

      I love Vue, but I hate saying "I love Vue" in person because it's indistinguishable from "I love you"

    • @LukeCreates
      @LukeCreates 6 місяців тому +1

      Then just use Vue, no? 😂

    • @JanJozefo
      @JanJozefo 6 місяців тому +5

      @@LukeCreates You might not want to ship a full stack framework just for basic templating and some interactivity

    • @LukeCreates
      @LukeCreates 6 місяців тому +2

      @@JanJozefo Totally a fair take. I appreciate HTMX, I just get concerned with scope and maintainability with it.

  • @YourComputer
    @YourComputer 6 місяців тому +11

    I've come across websites who had client-side-only validation. For example, they thought they could apply a limit to my text field or disable the submit button for failing to meet some requirement.

  • @MachineYearning
    @MachineYearning 6 місяців тому +6

    16:27 - misrepresents XSS prevention as validation in a way that's likely to be confusing. Validation is a mitigation technique but it is neither necessary nor sufficient to prevent XSS. The nature of XSS is an encoding bug where the attacker tricks the browser into encoding data in a way that results in code execution. Modern JS UI libraries eliminate a huge class of encoding bugs by automatically encoding HTML inner text during binding interpolation. Yes there are some cases that aren't covered and need to be considered more carefully on a case by case basis (like the mentioned HREF) but the whole discussion of front-end vs back end validation is a red herring. The real question is, are you encoding correctly for your data sink.

    • @Comeyd
      @Comeyd 6 місяців тому

      If you ampersand encode everything you can’t get XSS’d! 😂

  • @andythedishwasher1117
    @andythedishwasher1117 6 місяців тому +3

    The front/back split is bad for our brains. We should have to understand each other for both our health. The user's experience is generated by the flow of the data. The flow of the data is generated by the user and the experience they're having. We are one. Unite us.

  • @Kwazzaaap
    @Kwazzaaap 6 місяців тому +13

    You can use HTMX to spit out bootstrap 5 elements like a carousel just fine. Stuff like multi criteria paginated active search tables are a bit of a pain in the ass but you can make a generalization you can reuse pretty easily, it just takes a bit of time to get it right.

    • @Real-Name..Maqavoy
      @Real-Name..Maqavoy 6 місяців тому +1

      Huh.. Funny guy above.

    • @HeroUnit
      @HeroUnit 4 місяці тому

      This is exactly what I do with the internal tools I build. It's because I use HTMX that I can implement paging in a simple, fast, and reusable way that doesn't require me to bend over backwards with JavaScript in addition to the backend logic.

    • @doublekamui
      @doublekamui 3 місяці тому

      not, htmx is meh, its complicated if you create complex and many interactivity, you never now until you create those that i said. i can create what you said very simple and fast and manageable in complex and big project and complex many interactivity in sveltekit and golang embed

  • @xxgn
    @xxgn 6 місяців тому +4

    Thank you for actually addressing the article's comments. While Theo's take was probably amusing to HTMX fans, I appreciate that you actual expanded on the points referenced by the article.

  • @rikschaaf
    @rikschaaf 6 місяців тому +28

    10:07 Might be an unpopular opinion: it's fine to use dependencies when creating an application, but you should try to avoid using dependencies when creating libraries, because any bugs and vulnerabilities in that dependency would then also become bugs and vulnerabilities in your library.

    • @AmonAsgaroth
      @AmonAsgaroth 6 місяців тому +6

      On the other hand, in a normal day job you won't have nearly enough time to continuously work on "non-main-project-stuff" (like UI components for example) and poke them for vulnerabilities. So basically by rolling your own stuff you have almost 100% chance of introducing subtle bugs/vulnerabilities/accessibility issues while by importing an external dependency you at least have some chance to have it patched regularly.
      Same stuff applies to the backend of course.

    • @ConernicusRex
      @ConernicusRex 6 місяців тому +3

      This is standard best practice for ~30 years now and not at all a hot take.

    • @dealloc
      @dealloc 6 місяців тому

      That's can be solved by raising the issue (if it matters) to the affected library owners, submit a PR and get it sorted. If the case is that either the library owner is not longer maintaining or don't want to make the change, then you have the choice to move to something else, or write it yourself.
      That's not to say you should blindly just choose a library on its face, but the point of an ecosystem is that we can share and contribute across our dependents and dependencies. There's nothing to say your library code is any less vulnerable than anyone else's. Unless you of course are a 10x developer.

    • @rikschaaf
      @rikschaaf 6 місяців тому +2

      @@dealloc The issue though is that it would now have to be fixed in 3 places: the library with the bug needs to fix the bug and create a new release version, the library using the vulnerable library needs to update their dependency (check if the change wasn't breaking) and release a new version and the application needs to update the version of the intermediate library. If libraries don't use other libraries, that intermediate step can be skipped.

    • @ScibbieGames
      @ScibbieGames 6 місяців тому

      Applications tend to be a construction of shared components. Whether vendored or not.

  • @apollolux
    @apollolux 6 місяців тому +24

    I think HTMX is a pretty cool guy. Eh makes websties and doesnt afraid of anything.

    • @technolung
      @technolung 6 місяців тому

      Arby n the chief reference?!

    • @birthdayzrock1426
      @birthdayzrock1426 6 місяців тому

      master chief is also a pretty cool guy

    • @brianwaidyaratne1910
      @brianwaidyaratne1910 6 місяців тому +1

      Ancient meme checks out

    • @NostraDavid2
      @NostraDavid2 6 місяців тому +1

      ​@@technolungthe 4chan meme actually predates Arby and the Chief season 1 by half a year, so I think 4chan is the actual origin.

  • @smddev
    @smddev 6 місяців тому +3

    My only problem with htmx is as a junior its very difficult to tell if I am misusing it because my mentors don't really use it at all

    • @Comeyd
      @Comeyd 6 місяців тому +3

      Look at *really* old documentation and books.
      As an older developer, I first learned web dev back before frameworks were a thing, and even using jQuery was considered “bleeding edge”
      HTMX is a refreshing thing to use, because of how simple it is. You don’t need a billion things, and it’s very similar to how things worked 20 years ago. Just better.
      I would’ve absolutely *loved* to have had HTMX back then, and I absolutely love HTMX today.

    • @Cyanide300
      @Cyanide300 6 місяців тому +3

      Look. ALL front-end dev boils down to nothing more than DOM manipulation, because at the end of the day browsers render HTML. So whatever the simplest means you can use to achieve the dom manipulation you need is, that's the correct solution. Use straight JS until you actually have a need for a library, then use a library until you actually have a need for a framework. Don't just dump React on every project because "It's got components...it's got what plants crave".

    • @smddev
      @smddev 6 місяців тому

      @@Cyanide300 The only front-end framework we learned at school was Angular. I just learned Vue/Nuxt on the job as part of my internship, making me think I could learn react quickly.
      I like htmx more than Angular or Vue because it reduces the number of files I have to update when I want to make a small change on my front end.
      I worry I’m sending too many requests to the server, so I'm still trying to find the balance there.
      I'm building a website for my mom that I plan to deploy eventually using htmx and express, which is helping me get a more in-depth understanding of the library. I may also build a cms for it, but I'm unsure if I want to handroll my Authn/authz with htmx.

    • @HeroUnit
      @HeroUnit 4 місяці тому

      When I'm concerned about if I'm doing something right, I ask myself a few questions:
      1) Does it work? In all the edge cases I can anticipate?
      This is the most important factor by far. If it doesn't work, it's garbage.
      2) Is there a simpler way to do it?
      We love to over-complicate things. Always push to make things simpler.
      3) Does it perform fast enough for my use case?
      Very rarely in web development is performance actually meaningful. You'll know when there's an exception.
      4) Am I going to hate reworking this in a year when the requirements change, and I've forgotten everything I've done to make it work?
      Readability and maintainability are king. If you work somewhere for more than a couple years, you will be revisiting old things. This is a lesson you can learn only through experience and making mistakes that you learn through refactoring.
      If you can confidently justify and explain points 1-3, then there's no problem. Any senior worth their salt will be able to look at your code and explain what's good about it and what's not good about it, and they should be able to do so without relying on dogma. The purpose of this article is to let the reader decide whether they agree with long-standing dogma or if they will think for themselves about what is best for their unique situation.

  • @TheFreshMakerHD
    @TheFreshMakerHD 6 місяців тому +5

    14:00 I never used HTMX so idk, but why would the backend engineer be responsible for writing the front end UI? Couldn't the front end designer make what they need to make in HTML / CSS and then store those components wherever they need to go to be served by HTMX

    • @Comeyd
      @Comeyd 6 місяців тому +4

      Yes, the whole article is a parody.
      It’s written in the style of “clueless front end dev”
      You can easily reuse front end components and keep all of that separation of concerns with HTMX, it just looks different than React.

    • @MsPBJTime
      @MsPBJTime 6 місяців тому

      I worked at a startup recently that thought backend engineers should do the frontend as well. These are not full stack engineers. HTMX was going to "save" the day. It did not. Not because HTMX is the problem...it's this weird thinking that UX doesn't matter.

  • @enriquebruzual1702
    @enriquebruzual1702 6 місяців тому +2

    @18:19 The argument is simple as companies learn how much time and money they can save, there won't be much of an argument. As for talent pool, you can learn HTMX in an afternoon. Our target audience at this time are decision makers.

  • @biscotty6669
    @biscotty6669 4 місяці тому

    8:16 They do not do the same thing because the JS snippet doesn't create the button, only the code called by an element somewhere else. Where the actual element is on the page is not readily apparent.

  • @tonyb3123
    @tonyb3123 6 місяців тому +27

    This feels less like the author of HTMX engaging in some intellectual exercise where he challenges his own thinking and more like he's just making a straw man argument.

    • @brandongregori995
      @brandongregori995 6 місяців тому

      What are the real arguments against htmx then?

    • @Dipj01
      @Dipj01 6 місяців тому +1

      ​@@brandongregori995I'm not trying to find an argument, but just curious. Can htmx serve REST APIs? What happens if I have multiple types of client (Web, ios, Android, desktop apps) that preferably communicates with the same backend?
      I'm not educated on htmx. Just asking.

    • @tonyb3123
      @tonyb3123 6 місяців тому

      @brandongregori995
      It's troubling that you're asking- can people really not think of the drawbacks of having your UI running off websockets and http requests?
      To spell them out for you, HTMX introduces an additional failure point at every event hook in your application. Yay, an onblur handler can now cause a 500 request error. It introduces latency in areas that had none and requires a web server where you didn't need one.
      As a fun fact- there's demos on the htmx site that don't actually use htmx and run fake server code on the client. The author is very literally hiding the problems from you

    • @nchomey
      @nchomey 6 місяців тому

      ​​@@Dipj01lol. Htmx is quite literally built for rest APIs - in the truest sense. What you're calling rest api is actually a json api, and is precisely the problem that htmx is addressing. He has many essays on these topics on the htmx site. They'll open your eyes to how far gone js web dev is

    • @Daniel_Zhu_a6f
      @Daniel_Zhu_a6f 6 місяців тому +2

      idk, these doesn't sound too strawy, i can see someone like Uncle Bob making those. There seems to be an inadequate amount of senior programmers who think that 10 line function is too long and that goto is unsafe. In fact, there is so much of them, that generative NNs refuse to show code with gotos to the minors, which is hilarious.

  • @stukennedy195
    @stukennedy195 6 місяців тому +9

    As someone who uses HTMX EVERYWHERE (except native apps obvs) and I write all my apps in Typescript, the fact HTMX isn’t written in TS is actually a comfort to me. For a lightweight client-side library you absolutely want it to be as minimal and efficient as possible. TS isn’t that. Eliminating the build step and writing the code optimised for how it will be run is IMO the correct way to do a client-side script like this. Also you’re immediately protected from all of the future changes in TS, vanilla JS is always going to work, everywhere (well
    except in IE11 … which can burn in fire as far as I’m concerned)

    • @drankthetranquil
      @drankthetranquil 5 місяців тому +1

      if IE 7
      if IE 8
      if IE 9
      makes me want to break my computer

    • @raishw6483
      @raishw6483 4 місяці тому

      What backend do you use in htmx?

  • @EverythingAllOF1t
    @EverythingAllOF1t 6 місяців тому +4

    This is why being in cybersecurity was so helpful. You can quite literally find the areas where the engineers are disputing methodologies, frameworks, and access methods.....and feast. Trends and evangelism = hackable by teenagers. Love your drama though. Been an outside observer for years and I can't get enough. No notes there 😂

  • @t3dotgg
    @t3dotgg 6 місяців тому +16

    Wait so it was Carson that ripped off Intercooler???

    • @BuckedUnicorn
      @BuckedUnicorn 6 місяців тому

      intercooler.js ripped off HTMX from the past. dirty time traveling library tricks.

  • @karlssberg
    @karlssberg 6 місяців тому +4

    I haven't used HTMX, but like the idea of it, but as with everything it's the right tool for the right job. Haters seem to see that there is only one way to do things (which is a sure sign of inexperience).

  • @brunomurek4292
    @brunomurek4292 3 місяці тому +1

    Why you don’t want to build your ovn carousel, I think having external solution that fits all creates bloat. Writing your own carousel takes like 30min, and you’ll probably spend the same amount of time configuring external solution, and you won’t have so much bloat, bc you’ll end up with a solution that fits your specyfic case. Also using so much of external plugins makes me feel stupid.

  • @nearwizard1337
    @nearwizard1337 6 місяців тому +9

    I’m primarily a backend engineer for my day job, but I am often complimented on my AMAZING front end skills. My secret: a really good overseas designer who makes Figmas for me, then I implement it.

    • @AlexJaeger716
      @AlexJaeger716 2 місяці тому

      Where did you find your designer?

    • @nearwizard1337
      @nearwizard1337 2 місяці тому

      @@AlexJaeger716 We worked together remotely during a hackathon in a community we were both involved in (crypto space)

  • @nearwizard1337
    @nearwizard1337 6 місяців тому +2

    If it breaks, has inconsistent behavior, or restricts you from doing something you may reasonably want to do, then dive in and give constructive criticism. If not, why waste your time lol.
    You don’t break open your walls to inspect your house wiring to make sure it has proper wire and cable management

  • @aaronely759
    @aaronely759 5 місяців тому

    I usually validate on the front end and back end because validation makes it easy for dumb users to not do something dumb, and validation on the back end makes it harder for a hacker to exploit you with a request. I also do this with permissioning where I'll ensure a request is limited to certain users on the back end, and won't even display the option to interact with the application in a way that I don't permit for dumb users.

  • @Leonhart_93
    @Leonhart_93 6 місяців тому +3

    The only downside that I agree with is that jQuery does the same thing and more. And since jQuery is always a part of my websites, htmx is redundant.

  • @sierragutenberg
    @sierragutenberg 6 місяців тому +41

    Why am I getting a Déjà vu from this? Somehow it feels like I've watched the entire thing before 😂

    • @y00t00b3r
      @y00t00b3r 6 місяців тому +16

      it's because we've all imagined having this same conversation with ourselves

    • @levicoderman
      @levicoderman 6 місяців тому +16

      You watched theos video lol

    • @skilz8098
      @skilz8098 6 місяців тому

      It must be the recursion of grep.

    • @mage3690
      @mage3690 6 місяців тому +1

      Plus I think this is the second time prime and Theo have both read articles sarcastically dunking on HTMX.

    • @Reydriel
      @Reydriel 6 місяців тому +2

      You probably watched it live on stream lol

  • @terrencemoore8739
    @terrencemoore8739 6 місяців тому +1

    On the components topic: thats like not adopting React because Angular has components and React doesn't back when React came out

  • @mattcrwi
    @mattcrwi 6 місяців тому +8

    This advertisement sucks

  • @ElHeloint
    @ElHeloint 6 місяців тому +3

    Htmx only frontend is a great way to ddos yourself. Imagine the stupidity tk communicate with your server to filter and update a data table on your client with the data that you have sent already once. That's just dumb... And these same warriors are complaining about next.js, vercel, and serverless while barely kept maintaining a real fullstack app alive (yea, with real users, not like my gf) for more than 2 years (and not talking about a readthedocs site)...

  • @Kwazzaaap
    @Kwazzaaap 6 місяців тому +12

    PJax is so good for how old it is and it's so crazy to me that I only learned of it accidentally by digging through an old Ruby project and thought that looks pretty neat, which eventually lead me to HTMX.

  • @DominikZogg
    @DominikZogg 6 місяців тому

    Not using Typescript makes it worse, cause changes of errors are higher, but JSDoc seems to compansate for most problems. Another benefit of Typescript is that you can write ones and then generate commonjs and esm.

  • @sjfsr
    @sjfsr 6 місяців тому +1

    Is htmx worth trying out? I use ajax techniques and this seems like a logical next step. I hardly choose a js lib or framework, simply for the fact that html hardly ever gets used or any love; developers get to then forget or ignore what html already has to offer. Idk, I do want to try htmx. Attributes right?

    • @CristianKirk
      @CristianKirk 6 місяців тому +5

      If you only use html+js for the frontend, HTMX is definitely for you. With HTML you make boxes, with CSS you style them, with JS you make them functional, with HTMX you replace what's inside of them with data from the server.

    • @sjfsr
      @sjfsr 6 місяців тому

      @@CristianKirk ok I see

    • @vidal9747
      @vidal9747 6 місяців тому +1

      @@CristianKirk Holly shit, it is perfect for me. I do not create websites for a living. I just edit my lab website and don't want to spend a lot of time learning some convoluted framework like React.

    • @vidal9747
      @vidal9747 6 місяців тому +1

      I am using literally just bootstrap, JS, HTML and PHP (my college campus does not use dockers for website management. They just create a directory with the name of the lab that the user of the lab has rwx permissions).

    • @estebanmurcia8451
      @estebanmurcia8451 6 місяців тому

      @@vidal9747 and for simple client reactivity you can just use alpinejs

  • @ymi_yugy3133
    @ymi_yugy3133 6 місяців тому +3

    Maybe this is what people are saying, but non of this actually addresses the fundamental problem of htmx.
    That it becomes virtually impossible to reason about the possible UI states.
    In reat, I partition my input state into some set of equivalent classes, e.g. based on the combination of branches taken. That's already pretty difficult.
    But think about htmx. Here every UI interaction is able to produce a new state of UI. So now you not only have to think about classes of equivalent input state producing your UI, but also about all the possible mutations. You need to recursively walk this graph. Describing the properties of this graph is a lot harder, especially when things start to get messy as they always do.
    This is the reason why more or less every UI framework native or not of the past 10 years, has embraced some kind of declarative, reactive style. Nowadays the classical retained mode UI with imperative modification is a dying breed and rightly so. Declarative and immediate mode UI is just so much easier. Please don't take us back to the dark days.
    You can do reactive programming server based, e.g. phoenix live view, Hotwire, etc.

  • @elalemanpaisa
    @elalemanpaisa 3 місяці тому

    It's irrelevant if TS is in the code, you can still use TS, however, you need to transpile it anyway for compatibility - and yes we are ONLY talking about the frontend anyway.. Use TS on your backend (just don't) if you like

  • @DennisJHarrisonJrHere
    @DennisJHarrisonJrHere 6 місяців тому +3

    Backend mvoes too slow? I will personally fold multiple frontend teams in half when it comes to delivery.

  • @andythedishwasher1117
    @andythedishwasher1117 6 місяців тому

    I prefer to work in languages with medium-sized ecosystems that not everyone has adopted, but a core group of smart people has. That way, I can trust that when I install a dependency, it has only probably moved through the hands of a few smart professionals who knew what they were doing.

  • @dave4148
    @dave4148 6 місяців тому +1

    re: typescript thing -- I'm currently working with v8 of video.js and a plugin, both of which export types via jsdoc -> typescript d.ts files... it is HORRIBLE, video.js's v7 types made by the community were actually complete and good, but v8 now has `any`s everywhere, various things missing, and all classes are exported as default which prevents me from fixing them with my own d.ts file. There's so many issues I've ran into it's hard to put into a comment. Just really makes me doubt this "jsdoc is just as good" idea.

  • @maunzcache
    @maunzcache 6 місяців тому

    Thanks for the react. I didn't get the points of this article when watching the theo react but this one helped me understand the content much better.

  • @apIthletIcc
    @apIthletIcc 5 місяців тому +1

    all this and i still cant figure out if htmx is actually real or just a meme.
    gonna lean towards meme cuz thats fun

  • @weswes666
    @weswes666 5 місяців тому

    This issue with cobalt isn't cobalt. It is big iron legacy systems and the stakes.

  • @krtirtho
    @krtirtho 6 місяців тому

    Tbh, no matter how much we push HTMX it may never reach the versatility of using React/Vue/Angular.
    Those just fits. Where it makes it really hard for me to choose HTMX for any project. Maybe a really static site, just plain simple sites.

  • @BloodEyePact
    @BloodEyePact 6 місяців тому +9

    The author of this article is not nearly as clever as they would need to be to take themselves as seriously as they do

  • @MC---
    @MC--- 6 місяців тому +1

    I really like JSDoc because it is easy to parse and generate a documentation site. I wrote my own parser for work that builds some JSON then I build a static site. Easy.

  • @sud0gh0st
    @sud0gh0st 6 місяців тому +1

    @ThePrimeTime Why you not brave verified content creator my g ?
    This creator is not yet verified with Brave Creators. You'll be able to send them contributions once they're verified.

  • @MatazaRyu
    @MatazaRyu 6 місяців тому

    Impressed with that first try compartmentalized, I kept failing with it yesterday

  • @thisbridgehascables
    @thisbridgehascables 6 місяців тому +21

    I love using htmx with go..

    • @patrickkdev
      @patrickkdev 6 місяців тому

      Do you use templ or or templates?

    • @mayda4th
      @mayda4th 6 місяців тому

      @@patrickkdev go fiber templ sqlc htmx

    • @ronaldosd
      @ronaldosd 6 місяців тому

      Me too
      Go(Echo) + htmx + temp + tailwind

    • @AugustoCabrera
      @AugustoCabrera 6 місяців тому

      Another go + htmx dev here, every line of code I write I love it more.
      I don't use templ tho, maybe that will make me love it even more

    • @patrickkdev
      @patrickkdev 6 місяців тому

      @@AugustoCabrera I've been wondering if I should use the built-in templates, I did not enjoy templ a lot. Maybe I should give It another chance

  • @Pekz00r
    @Pekz00r 6 місяців тому +1

    LOL. JSDoc is the thing now?! I have been hating on PHPDoc for 10 years which is pretty much the exact same thing, but the last years the PHP community has almost completely moved away from that. Then comes javascript with their brand new thing that relies on it. That is pretty insane...

  • @oldcastor-
    @oldcastor- 6 місяців тому

    code duplication argument is not so relevant as you have mostly same data source for same "pages": if you show user page in app and on the website you still need to prepare data and then just throw html or json made from prepared data. and this works perfectly with let's say laravel with if (request()->wantsJson()) return { new UserDataResource($data); } and next just html (or other way around with hx header)

  • @haileprime9873
    @haileprime9873 5 місяців тому

    I feel like this article, hilariously, puts many pieces of popular but unbacked opinions in its arguments like the suggestions around React.
    It becomes more apparent and funny considering the author is the creator of htmx itself.

  • @pavloburyanov5842
    @pavloburyanov5842 5 місяців тому

    Modern modular Typescript - for f.. what? To have TS just to have TS? I don't understand that article at all

  • @joecooper1703
    @joecooper1703 6 місяців тому +2

    Not to be that guy, but COBOL programmers average salary in the US is on the low-end, about $82k, depending on what data source you query. Many other languages pay better, sometimes much better. The belief that it's high-paying is an MKUltra style campaign by IBM to convince people to learn COBOL, so the organizations still buying mainframes have programmers to lock in their basement.

  • @yayinternets
    @yayinternets 6 місяців тому +2

    Re: using Java code rather than Grep in an interview.
    I had a similar question in an interview many years ago and they actually expected me to write code for the answer. I just replied with something like "I'm not sure offhand, but probably something with grep and awk."
    They kept pressing on me for a code answer and I said "These tools have been around forever, have had many eyes on them, and are built for purpose. Who am I to think I can write something better?"
    Still got the job.

    • @y00t00b3r
      @y00t00b3r 6 місяців тому

      power move
      you would have won either way

  • @joshr96
    @joshr96 5 місяців тому

    A good interface means I never need to know about the filth that lies beneath.

  • @OldKing11100
    @OldKing11100 6 місяців тому +3

    Just in time for HTMX 2.0!

    • @ThisNoName
      @ThisNoName 6 місяців тому

      wat? I thought it has always been 2.0? 1.x was back in intercooler days. But either way, long time fan, love its simplicity

  • @slava6105
    @slava6105 6 місяців тому

    16:30 Backend validation because you need your application to work.
    Frontend validation because you don't want excess server requests.

  • @noelguiavieira
    @noelguiavieira 6 місяців тому

    Sure you can do front-end validation for UX purposes, but delegating data validation to the front-end is wild!

  • @Lucas2RC
    @Lucas2RC 6 місяців тому

    I enjoyed very much hearing about the "worse is better" movement or idea(?). The guy is teaching people 2 things: everything has pros/cons AND how to argue about things. Those things are totally lost, depending on which generation the person belongs to.

  • @patrickkdev
    @patrickkdev 6 місяців тому

    I'm currently using React for frontend and Golang for backend. It sucks having to keep track of types on two codebases, I'm interested in transitioning to HTMX. I've been researching the best tools and methods for making this switch, I'm not enjoying templ a lot. Could anyone share tips or recommend their preferred tools and practices for templates, JavaScript, and other aspects of using HTMX?

    • @patrickkdev
      @patrickkdev 6 місяців тому

      I also don't enjoy tailwind. I would rather write plain css

    • @CristianKirk
      @CristianKirk 6 місяців тому +1

      If you already know HTML and CSS, you will easily get a hold on HTMX and you're gonna remove all complexities from the front-end. Just give it a try.

    • @sneed1208
      @sneed1208 6 місяців тому +1

      Any non-trivial application is going to have a separate codebase for front end and back end, get used to it.

    • @patrickkdev
      @patrickkdev 6 місяців тому

      @@sneed1208 I am used to it. I have 4 apps in production and they all have separate codebases for front and backend. I would like to avoid it if possible.

  • @gandalfgrey91
    @gandalfgrey91 6 місяців тому +4

    Criticisms of HTMX are like Scheibe’s criticisms of Bach: “it is totally impossible to distinguish the melody. All the parts are alike as regards difficulty, and no single one stands out as principal part.” Well, duh.

    • @airkami
      @airkami 6 місяців тому +3

      Our gimmick is we don’t have one

    • @y00t00b3r
      @y00t00b3r 6 місяців тому +1

      would you consider HTMX to fall into the baroque category, or the classical?

    • @gandalfgrey91
      @gandalfgrey91 6 місяців тому +2

      @@y00t00b3r Grug category

  • @MegaLeoDOM
    @MegaLeoDOM 6 місяців тому +1

    i give it a try for 10 minutes and already give up

  • @sawood2010
    @sawood2010 6 місяців тому

    I've had a good experience sprinkling some htmx in a laravel app.

  • @scitor
    @scitor 6 місяців тому

    1:50 "should be purple to me" lmao.. what a nicely trainer hamster you are.. try changing the colors for a day and see how it messes up your visual cortex (no joke) ❤ luv your stuff, finaly someone who shows all those quiche eaters 🤣

  • @mattymattffs
    @mattymattffs 6 місяців тому +12

    It's web dev. It's entirely inconsequential. Isn't it funny how these debates are always in the easiest software field?

    • @Comeyd
      @Comeyd 6 місяців тому +1

      It’s because they’ve never actually done anything beyond writing React. They think they know everything when they know nothing!
      These are the devs that AI will replace!

    • @BittermanAndy
      @BittermanAndy 6 місяців тому

      I dunno, dude, as someone who hates web dev and does as little of it as I can get away with, the claim that it is "inconsequential" is just kinda weird. Like, I've been coding professional for 22 years, and some kid fresh out of college who knows (and cares) about all the different web dev frameworks is probably more useful to a typical dev company than I am, right now - salary adjusted, at least. They can get more useful features in the hands of their customers faster than I can. I write better, more secure, more reliable code in "harder" fields that solves harder problems faster and with fewer bugs... but I don't know how much that's actually worth any more.
      But yeah, has to be said that all those different web dev frameworks each do their own thing, they're just each uniquely terrible in their own way, and so much of "the discourse" being about which terrible option is best really is exhausting. I'll give you that. But inconsequential? I wish that was true.

    • @mattymattffs
      @mattymattffs 6 місяців тому

      @@BittermanAndy web dev is about perception more than actual delivery of usefulness. It looks useful, but it just makes people angry. There are entire businesses I won't work with or shop at because of how bad their site is.
      MBAs or whoever don't recognize this

  • @PledgeBass
    @PledgeBass 6 місяців тому +2

    thought this was not-sarcasting for the first minute and a half lol

  • @licokr
    @licokr 6 місяців тому +3

    Finally, I'm SO waiting for this content since I watched the Theo video.

    • @nikos4677
      @nikos4677 6 місяців тому +3

      lol. I've watched it too

  • @musaharoon
    @musaharoon 2 місяці тому

    Did Prime adopted a cricket? 😅I kept on pausing the video to see if the cricket was chirping in my house.

  • @w1sh832
    @w1sh832 2 місяці тому

    This might be the greatest satire ive seen in my life

  • @OhBoy_IWasUsingMyRealName
    @OhBoy_IWasUsingMyRealName 6 місяців тому

    Backend engineers make terrible ui - isn’t that why we have designers? I rarely had to design the UI, when I was working on front end, just build it.

  • @BlueBerryXD
    @BlueBerryXD 6 місяців тому

    The fucking mouse wheel making that scratching noise is driving me crazy

  • @petrus4
    @petrus4 6 місяців тому +2

    Generation Z's two favourite logical fallacies, are the appeal to popularity, and the appeal to modernity. In other words, the two methods of determining the worth of anything, are to first ask if it is less than five minutes old, and if everyone else likes it. I know that some of you will unironically agree with this, as well.

  • @thekwoka4707
    @thekwoka4707 6 місяців тому +1

    HTMXs source code could benefit massively from typescript and other tooling.
    It's VERY difficult to reason through things and figure out what the heck stuff is. I say that as someone who contributed a small part. It's very difficult to work with.
    I think these reasons presented are valid reasons HTMX source is bad. This mostly doesn't relate to whether the tool itself is bad, which I don't think it is. It's just another way. I don't like when people say "it reduces the complexity" since it just moves the complexity...

  • @najlepszyinformatyk1661
    @najlepszyinformatyk1661 5 місяців тому

    React does not use TypeScript as well :)

  • @privacyvalued4134
    @privacyvalued4134 6 місяців тому

    22:40 The comments when COBOL is mentioned are hilarious.

  • @S0ulan
    @S0ulan 6 місяців тому +1

    The Name is the CEOeagen

  • @babakfp
    @babakfp 6 місяців тому

    jsdoc isn't ts because it's less type safe

  • @gavipk
    @gavipk 6 місяців тому

    The HTMX approach is rife with all the sorts of issues that moden front end dev has worked to address for the last decade and a half. Its an ok idea for simple stuff. It falls down under growing complexity.
    The over engineering of the front end landscape has led to developer burn out to the point where people are willing to go back to 2005.
    There is no other kind of software besides web afaik where this kind of server side ad lib authoring, delivery, parsing, and execution of UI and client application paradigm exists. Client application installed locally, data server remotely. Web application browser pages , sites and software is a strange beast.
    My preference is Angular or vanilla. I just started with Angular back when it came out, appreciate that its fairly straightforward and easy to get the hang of, typescript and 'OOP' ish in the most basic sense, so you have clear structure and separation of concerns. Tried JSX a bit but to me Angular templates are so much more like just writing legible HTML. Never had the time or the opportunity to get too lost in the sea of framework and pipeline madness that came after it.
    I also do work maintaining large complex legacy enterprise applications built in this 2005 HTML over the wire style, and its an absolute nightmare in terms if maintainability etc.

  • @salesrafael
    @salesrafael 4 місяці тому

    Who would put validations on the frontend? Frontend developers.

  • @KertaDrake
    @KertaDrake 5 місяців тому

    I just wonder what Oak Ridge wants with a single HTMX dev...

  • @thatbants7134
    @thatbants7134 6 місяців тому

    What is the name of the hoodie he wears in all his streams? Looks cozy as fuck

  • @RenanGarciaBorges
    @RenanGarciaBorges 6 місяців тому +1

    "Hashicorp" - you mean IBM ...

  • @ProxiedAi
    @ProxiedAi 6 місяців тому

    Livewire is horrible, it should be seen as a dark pattern. its like they wanted to write more code in the backend then you would have to write in vuejs on the frontend. Besides that its easy for sure but its a trap

  • @peternorivotset7365
    @peternorivotset7365 3 місяці тому

    1:50 in the video and all I've got is that so called "JS programmers" cry about making them obsolete

  • @Yarkanlaki
    @Yarkanlaki 4 місяці тому

    18:39 There are no HTMX Job , Actually Alot of companies dont care about UI/UX for their Business Softwares but reliability so i use HTMX , i dont think i am not fist guy used HTMX for real-world SAAS projects and Small side Projects
    + I got alot of Extra Bonus through HTMX from Boss And Customers

  • @matt.dunleavy
    @matt.dunleavy 6 місяців тому

    Nothing against those JavaScript libraries for the right use cases, but they're victim to the dependency problem. There are corporate websites with 5-10 different jquery.js files (other frameworks too) that just wound up that way from employees adding things. it's alot harder for the employees to butcher HTMx that way.

    • @WewasAtamans
      @WewasAtamans 6 місяців тому

      That's until you have to make a sliding menu or something and have to install JQuery to power it.

  • @ericjbowman1708
    @ericjbowman1708 6 місяців тому

    HTMx, making it even easier to generate pages full of identical, unclickable buttons with no URIs or graceful degradation to those of us who depend on assistive technology to use the Web. Big Browser doesn't care, either. The "state of the art" in Web Development is only moving BACKWARDS.

    • @ericjbowman1708
      @ericjbowman1708 6 місяців тому

      I wrote a CMS for a Forbes 500 company, in 1996, using Live Wire. Now they call it ssjs. Is it just "laravel" mispronounced, or is there a new "Live Wire?"

  • @andrearaimondi882
    @andrearaimondi882 6 місяців тому

    As a mostly backend developer I think HTMX is great and makes my job far easier and faster

  • @tato-chip7612
    @tato-chip7612 6 місяців тому

    15:20 ha-ref?
    really? ha-ref???

  • @Muskar2
    @Muskar2 6 місяців тому

    "pushing the state of the art forward" 😂

  • @unde1fdswad
    @unde1fdswad 5 місяців тому

    twist is prime has made HTMX ....

  • @MrKlarthums
    @MrKlarthums 6 місяців тому +2

    I don't like to write long lifecycle projects in dynamically typed languages or in a single file, but HTMX is a 5k LoC code base written by one guy. If the author can fit all of this in his head without relying on separation of concerns, then more power to him. People have made great software while doing much worse. It's not great for team sizes more than 1 though.

  • @jonathan-._.-
    @jonathan-._.- 6 місяців тому

    in other words : all of htmx's interfaces ARE typed 👀

  • @nescafezos4265
    @nescafezos4265 4 місяці тому

    what is the next step? htmx with web components then XD