HTMX Sucks

  Рет қаралды 162,392

ThePrimeTime

ThePrimeTime

Күн бұрын

Пікірлер: 381
@3borsresistance551
@3borsresistance551 7 ай бұрын
"HTML is over thirty years old now." The wheel enters the room.
@NostraDavid2
@NostraDavid2 7 ай бұрын
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 7 ай бұрын
Oh look who decided to roll in
@RexRecon
@RexRecon 3 ай бұрын
Nobody: Software Engineers: We have to reinvent it!
@andythedishwasher1117
@andythedishwasher1117 7 ай бұрын
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 7 ай бұрын
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 7 ай бұрын
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_ 7 ай бұрын
💀
@nahkh1
@nahkh1 7 ай бұрын
My safe word is !important
@laden6675
@laden6675 7 ай бұрын
@@nahkh1 that's not even HTML
@psychoedge
@psychoedge 7 ай бұрын
@@laden6675 that's why it's safe
@PankajDoharey
@PankajDoharey 4 ай бұрын
@@nahkh1 Thats css. for HTML
@ScottHess
@ScottHess 7 ай бұрын
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 7 ай бұрын
A reddit cluster lmao
@ScottHess
@ScottHess 7 ай бұрын
@@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 3 ай бұрын
why are you bringing Lua into this?
@jackdanielson1997
@jackdanielson1997 7 ай бұрын
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 7 ай бұрын
upvoted for subtle irony!
@airkami
@airkami 7 ай бұрын
That’s what manuals are for. You want someone to read manuals on stream?
@ConernicusRex
@ConernicusRex 7 ай бұрын
You watched none of the video and read none of the article before posting this, huh?
@dealloc
@dealloc 7 ай бұрын
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 7 ай бұрын
@@ConernicusRex The comment you are replying to flew right over your head. The reader isn't supposed to take it literally.
@Cyanide300
@Cyanide300 7 ай бұрын
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 6 ай бұрын
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 3 ай бұрын
COBOL would like to disagree with you
@felixhaag1335
@felixhaag1335 Ай бұрын
But databases definitely agree with him.
@nace.plesko
@nace.plesko 4 ай бұрын
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 7 ай бұрын
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 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 5 ай бұрын
@@markbond08 Front-end development is easy, you guys just managed to make it hard. Idiots admire complexity.
@deidyomega
@deidyomega 5 ай бұрын
@@markbond08 Every one of those rust devs can learn react, we all just know js is a bullshit language. ('b' + 'a' + + 'a' + 'a').toLowerCase()
@shining_cross
@shining_cross 4 ай бұрын
@@markbond08some of them are really hypocrycite
@shining_cross
@shining_cross 4 ай бұрын
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
@WewasAtamans
@WewasAtamans 7 ай бұрын
JQuery for the gen z
@aurelia_melia
@aurelia_melia 7 ай бұрын
This should be their twitter bio
@claudiogonzalo
@claudiogonzalo 7 ай бұрын
neat
@aebisdecunter
@aebisdecunter 7 ай бұрын
more like for Gen X or people in love with the 24th letter of the alphabet (elon)
@EvanEdwards
@EvanEdwards 7 ай бұрын
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 7 ай бұрын
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
@RA-xx4mz
@RA-xx4mz 7 ай бұрын
HTMX + Templ feels like VueJS
@JanJozefo
@JanJozefo 7 ай бұрын
With AlpineJS it works pretty much identically too!
@bobDotJS
@bobDotJS 7 ай бұрын
I love Vue, but I hate saying "I love Vue" in person because it's indistinguishable from "I love you"
@LukeCreates
@LukeCreates 7 ай бұрын
Then just use Vue, no? 😂
@JanJozefo
@JanJozefo 7 ай бұрын
@@LukeCreates You might not want to ship a full stack framework just for basic templating and some interactivity
@LukeCreates
@LukeCreates 7 ай бұрын
@@JanJozefo Totally a fair take. I appreciate HTMX, I just get concerned with scope and maintainability with it.
@xxgn
@xxgn 7 ай бұрын
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.
@YourComputer
@YourComputer 7 ай бұрын
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.
@VirtuallyRealRPG
@VirtuallyRealRPG Күн бұрын
I love those sites. The best are paywalls that you can just edit the CSS and say display:none to remove the block.
@MachineYearning
@MachineYearning 7 ай бұрын
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 7 ай бұрын
If you ampersand encode everything you can’t get XSS’d! 😂
@fsbgaming1588
@fsbgaming1588 7 ай бұрын
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 7 ай бұрын
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 7 ай бұрын
@@rh906 easy time produced weak people. hard time make strong people
@shining_cross
@shining_cross 4 ай бұрын
not, cool 3d, high interactivity is better
@fsbgaming1588
@fsbgaming1588 3 ай бұрын
@@shining_cross 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.
@andythedishwasher1117
@andythedishwasher1117 7 ай бұрын
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.
@ND6K
@ND6K 7 ай бұрын
Is this a re-upload or am I tripping
@tchnque2234
@tchnque2234 7 ай бұрын
no you watched theo vid probably XD
@GranddadsGrits
@GranddadsGrits 7 ай бұрын
it is
@yourmomsboyfriend3337
@yourmomsboyfriend3337 7 ай бұрын
Bro actually thinks Theo’s mustache even comes close to Prime’s 💀
@supershower8764
@supershower8764 7 ай бұрын
Bro actually thinks Theo’s mustache even comes close to Prime’s 💀
@mediopalodev
@mediopalodev 7 ай бұрын
kzbin.info/www/bejne/aZ-2dXRmg8mSZqs
@apollolux
@apollolux 7 ай бұрын
I think HTMX is a pretty cool guy. Eh makes websties and doesnt afraid of anything.
@technolung
@technolung 7 ай бұрын
Arby n the chief reference?!
@birthdayzrock1426
@birthdayzrock1426 7 ай бұрын
master chief is also a pretty cool guy
@brianwaidyaratne1910
@brianwaidyaratne1910 7 ай бұрын
Ancient meme checks out
@NostraDavid2
@NostraDavid2 7 ай бұрын
​@@technolungthe 4chan meme actually predates Arby and the Chief season 1 by half a year, so I think 4chan is the actual origin.
@rikschaaf
@rikschaaf 7 ай бұрын
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 7 ай бұрын
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 7 ай бұрын
This is standard best practice for ~30 years now and not at all a hot take.
@dealloc
@dealloc 7 ай бұрын
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 7 ай бұрын
@@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 7 ай бұрын
Applications tend to be a construction of shared components. Whether vendored or not.
@enriquebruzual1702
@enriquebruzual1702 7 ай бұрын
@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.
@Kwazzaaap
@Kwazzaaap 7 ай бұрын
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 7 ай бұрын
Huh.. Funny guy above.
@HeroUnit
@HeroUnit 5 ай бұрын
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.
@shining_cross
@shining_cross 4 ай бұрын
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
@tonyb3123
@tonyb3123 7 ай бұрын
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 7 ай бұрын
What are the real arguments against htmx then?
@Dipj01
@Dipj01 7 ай бұрын
​@@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 7 ай бұрын
@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 7 ай бұрын
​​@@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 7 ай бұрын
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.
@biscotty6669
@biscotty6669 5 ай бұрын
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.
@sierragutenberg
@sierragutenberg 7 ай бұрын
Why am I getting a Déjà vu from this? Somehow it feels like I've watched the entire thing before 😂
@y00t00b3r
@y00t00b3r 7 ай бұрын
it's because we've all imagined having this same conversation with ourselves
@levicoderman
@levicoderman 7 ай бұрын
You watched theos video lol
@skilz8098
@skilz8098 7 ай бұрын
It must be the recursion of grep.
@mage3690
@mage3690 7 ай бұрын
Plus I think this is the second time prime and Theo have both read articles sarcastically dunking on HTMX.
@Reydriel
@Reydriel 7 ай бұрын
You probably watched it live on stream lol
@EverythingAllOF1t
@EverythingAllOF1t 7 ай бұрын
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 😂
@TheFreshMakerHD
@TheFreshMakerHD 7 ай бұрын
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 7 ай бұрын
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 7 ай бұрын
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.
@VirtuallyRealRPG
@VirtuallyRealRPG Күн бұрын
Yes, but the difference is where the implementation goes. React is going to use javascript to manipulate everything. It transmits a structured representation of the application state and tries to maintain that state between front and back ends, thus making a complex API where front and back ends can be out of sync. HTMX takes all of the logic and puts it on the server. There is no javascript application to update on the client and no complex APIs possibly exposing sensitive data. The backend can replace any part of the user interface at any time, so there is no reason for a javascript application on the front end at all, just htmx. And yes, you can componetize your UI code using reusable fragments, but the logic has to go on the server, so you won't see component libraries like React, because such libraries will be tied to the backend that implements the logic. Every backend will need its own.
@TJackson736
@TJackson736 Күн бұрын
​@VirtuallyRealRPG HTMX can be used with front-end libraries, so it isn't mecessarily true that all state will be stored on the server. You could decide that shared state for part of the front-end is desirable and do that.
@VirtuallyRealRPG
@VirtuallyRealRPG Күн бұрын
@TJackson736 it can sure, but I'm a purist. I can do it cheaper and faster on the server, so why use some bloated javascript library that can't take advantage of htmx? You are now back to square 1 bloating your codebase with dependencies you don't actually need. So, perhaps I should have said, "to take full advantage of what htmx offers, you will be putting the logic on the server." Sure you can use other javascript libraries. Why couldn't you? But, doing so has nothing to do with htmx and is not using it or taking advantage of what it has to offer. They are sleeping in separate beds and not taking advantage of each other, they just exist on the same page.
@nearwizard1337
@nearwizard1337 7 ай бұрын
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 3 ай бұрын
Where did you find your designer?
@nearwizard1337
@nearwizard1337 3 ай бұрын
@@AlexJaeger716 We worked together remotely during a hackathon in a community we were both involved in (crypto space)
@stukennedy195
@stukennedy195 7 ай бұрын
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 6 ай бұрын
if IE 7 if IE 8 if IE 9 makes me want to break my computer
@raishw6483
@raishw6483 5 ай бұрын
What backend do you use in htmx?
@VirtuallyRealRPG
@VirtuallyRealRPG Күн бұрын
​@@raishw6483 I'm using ProcessWire. ProcessWire is an amazing bit of kit that handles just about everything you can want on the backend, even with an admin interface. It does not dictate anything about how you build the frontend.
@Kwazzaaap
@Kwazzaaap 7 ай бұрын
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.
@smddev
@smddev 7 ай бұрын
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 7 ай бұрын
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 7 ай бұрын
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 7 ай бұрын
@@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 5 ай бұрын
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.
@VirtuallyRealRPG
@VirtuallyRealRPG Күн бұрын
Here's a basic litmus test. If you are using json or manipulating the DOM in javascript, you are likely putting complexity on the client that belongs on the server.
@karlssberg
@karlssberg 7 ай бұрын
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).
@maunzcache
@maunzcache 7 ай бұрын
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.
@t3dotgg
@t3dotgg 7 ай бұрын
Wait so it was Carson that ripped off Intercooler???
@BuckedUnicorn
@BuckedUnicorn 7 ай бұрын
intercooler.js ripped off HTMX from the past. dirty time traveling library tricks.
@nearwizard1337
@nearwizard1337 7 ай бұрын
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
@gandalfgrey91
@gandalfgrey91 7 ай бұрын
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 7 ай бұрын
Our gimmick is we don’t have one
@y00t00b3r
@y00t00b3r 7 ай бұрын
would you consider HTMX to fall into the baroque category, or the classical?
@gandalfgrey91
@gandalfgrey91 7 ай бұрын
@@y00t00b3r Grug category
@andythedishwasher1117
@andythedishwasher1117 7 ай бұрын
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.
@BloodEyePact
@BloodEyePact 7 ай бұрын
The author of this article is not nearly as clever as they would need to be to take themselves as seriously as they do
@scitor
@scitor 7 ай бұрын
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 🤣
@Pekz00r
@Pekz00r 7 ай бұрын
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...
@aaronely759
@aaronely759 7 ай бұрын
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.
@VirtuallyRealRPG
@VirtuallyRealRPG Күн бұрын
If you use the htmx "change" event, you can send updates to the server and do all your validation on the server. Then, you can send a response that updates the UI appropriately. The end result is as smooth as client side validation except that you only need to do it in one place instead of maintaining two validation points.
@noelguiavieira
@noelguiavieira 7 ай бұрын
Sure you can do front-end validation for UX purposes, but delegating data validation to the front-end is wild!
@mattcrwi
@mattcrwi 7 ай бұрын
This advertisement sucks
@terrencemoore8739
@terrencemoore8739 7 ай бұрын
On the components topic: thats like not adopting React because Angular has components and React doesn't back when React came out
@VirtuallyRealRPG
@VirtuallyRealRPG Күн бұрын
Not exactly. Its a different problem. React runs on the client, with implementations of behaviors on the client, in javascript. HTMX is offloading the implementation to the server, so any component library would have to be written for the server you are using. This is perhaps the biggest downside as it means component libraries have very limited portability.
@MatazaRyu
@MatazaRyu 7 ай бұрын
Impressed with that first try compartmentalized, I kept failing with it yesterday
@yayinternets
@yayinternets 7 ай бұрын
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 7 ай бұрын
power move you would have won either way
@sjfsr
@sjfsr 7 ай бұрын
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 7 ай бұрын
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 7 ай бұрын
@@CristianKirk ok I see
@vidal9747
@vidal9747 7 ай бұрын
@@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 7 ай бұрын
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 7 ай бұрын
@@vidal9747 and for simple client reactivity you can just use alpinejs
@licokr
@licokr 7 ай бұрын
Finally, I'm SO waiting for this content since I watched the Theo video.
@nikos4677
@nikos4677 7 ай бұрын
lol. I've watched it too
@slava6105
@slava6105 7 ай бұрын
16:30 Backend validation because you need your application to work. Frontend validation because you don't want excess server requests.
@haileprime9873
@haileprime9873 6 ай бұрын
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.
@VirtuallyRealRPG
@VirtuallyRealRPG Күн бұрын
The difference between the jQuery code and the htmx button is kinda the whole point of htmx. They are not equivalent! With the jQuery code you will need to wait for the document to finish loading, then find that button in the DOM (might want to give it an ID), and set an onclick handler for that button that then runs the given ajax load. Now repeat this for every single bit of ajax you want to have and try and maintain the resulting mess! That is quite a bit of difference between the two!
@Lucas2RC
@Lucas2RC 7 ай бұрын
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.
@DominikZogg
@DominikZogg 7 ай бұрын
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.
@thisbridgehascables
@thisbridgehascables 7 ай бұрын
I love using htmx with go..
@patrickkdev
@patrickkdev 7 ай бұрын
Do you use templ or or templates?
@mayda4th
@mayda4th 7 ай бұрын
@@patrickkdev go fiber templ sqlc htmx
@ronaldosd
@ronaldosd 7 ай бұрын
Me too Go(Echo) + htmx + temp + tailwind
@AugustoCabrera
@AugustoCabrera 7 ай бұрын
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 7 ай бұрын
@@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
@brunomurek4292
@brunomurek4292 4 ай бұрын
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.
@andrearaimondi882
@andrearaimondi882 7 ай бұрын
As a mostly backend developer I think HTMX is great and makes my job far easier and faster
@MC---
@MC--- 7 ай бұрын
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.
@MrKlarthums
@MrKlarthums 7 ай бұрын
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.
@apIthletIcc
@apIthletIcc 7 ай бұрын
all this and i still cant figure out if htmx is actually real or just a meme. gonna lean towards meme cuz thats fun
@mattymattffs
@mattymattffs 7 ай бұрын
It's web dev. It's entirely inconsequential. Isn't it funny how these debates are always in the easiest software field?
@Comeyd
@Comeyd 7 ай бұрын
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 7 ай бұрын
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 7 ай бұрын
@@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
@OldKing11100
@OldKing11100 7 ай бұрын
Just in time for HTMX 2.0!
@ThisNoName
@ThisNoName 7 ай бұрын
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
@ElHeloint
@ElHeloint 7 ай бұрын
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)...
@VirtuallyRealRPG
@VirtuallyRealRPG Күн бұрын
That's not how it works at all. You have no understanding of what is happening. Massive React applications have been recoded in HTMX and they run faster with less data and a fraction of the code size. The only data you ever transmit is what is needed to update what is immediately on the users screen. That's it.
@joecooper1703
@joecooper1703 7 ай бұрын
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.
@Yarkanlaki
@Yarkanlaki 6 ай бұрын
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
@DennisJHarrisonJrHere
@DennisJHarrisonJrHere 7 ай бұрын
Backend mvoes too slow? I will personally fold multiple frontend teams in half when it comes to delivery.
@elalemanpaisa
@elalemanpaisa 4 ай бұрын
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
@joshr96
@joshr96 6 ай бұрын
A good interface means I never need to know about the filth that lies beneath.
@matt.dunleavy
@matt.dunleavy 7 ай бұрын
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 7 ай бұрын
That's until you have to make a sliding menu or something and have to install JQuery to power it.
@VirtuallyRealRPG
@VirtuallyRealRPG Күн бұрын
I've had sites where some parts needed an older jQuery and other parts needed a newer one. That's absolute hell right there.
@VirtuallyRealRPG
@VirtuallyRealRPG Күн бұрын
​@@WewasAtamansSliding menu? Those types of things should be done with CSS. Want to make that menu dynamic? HTMX can add and remove items right from the server, even while you type if you want to implement a dynamic search. What do you need jQuery for?
@Leonhart_93
@Leonhart_93 7 ай бұрын
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.
@petrus4
@petrus4 7 ай бұрын
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.
@christ.4977
@christ.4977 7 ай бұрын
The meme section and CEO of HTMX just boosted my confidence in HTMX.
@dave4148
@dave4148 7 ай бұрын
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.
@PledgeBass
@PledgeBass 7 ай бұрын
thought this was not-sarcasting for the first minute and a half lol
@musaharoon
@musaharoon 3 ай бұрын
Did Prime adopted a cricket? 😅I kept on pausing the video to see if the cricket was chirping in my house.
@sud0gh0st
@sud0gh0st 7 ай бұрын
@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.
@BlueBerryXD
@BlueBerryXD 7 ай бұрын
The fucking mouse wheel making that scratching noise is driving me crazy
@privacyvalued4134
@privacyvalued4134 7 ай бұрын
22:40 The comments when COBOL is mentioned are hilarious.
@weswes666
@weswes666 6 ай бұрын
This issue with cobalt isn't cobalt. It is big iron legacy systems and the stakes.
@w1sh832
@w1sh832 3 ай бұрын
This might be the greatest satire ive seen in my life
@peternorivotset7365
@peternorivotset7365 5 ай бұрын
1:50 in the video and all I've got is that so called "JS programmers" cry about making them obsolete
@OhBoy_IWasUsingMyRealName
@OhBoy_IWasUsingMyRealName 7 ай бұрын
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.
@Nadi_Games
@Nadi_Games 7 ай бұрын
6:01 Thaï script ? I love thaï food , so I guess thaï script is great, right ? 🤪 The post is pretty funny, and sarcastic btw.
@gavipk
@gavipk 7 ай бұрын
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.
@sawood2010
@sawood2010 7 ай бұрын
I've had a good experience sprinkling some htmx in a laravel app.
@pavloburyanov5842
@pavloburyanov5842 6 ай бұрын
Modern modular Typescript - for f.. what? To have TS just to have TS? I don't understand that article at all
@thatbants7134
@thatbants7134 7 ай бұрын
What is the name of the hoodie he wears in all his streams? Looks cozy as fuck
@MadafakinRio
@MadafakinRio 7 ай бұрын
Everything I know about web dev I've learned against my will. IDK how prime can take it. This one was at least funny however.
@Shocker99
@Shocker99 7 ай бұрын
28:40 The girl on the left looks like the new Hak5 Threatwire presenter. 😂
@ymi_yugy3133
@ymi_yugy3133 7 ай бұрын
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.
@S0ulan
@S0ulan 7 ай бұрын
The Name is the CEOeagen
@whalebird
@whalebird 3 ай бұрын
Hearing the author call things cringe and "cringe-worthy" makes his opinion not trustworthy, and his face punchable. Only little girls use those words..
@-parrrate
@-parrrate 7 ай бұрын
oh, and, btw, that "dressing down of HTMX" or whatever article that is linked inside there, is actual garbage and hateful (including transphobic language somewhere at the very end). I don't recommend reading it.
@wertigon
@wertigon 7 ай бұрын
HTMX should go the way of jQuery. That is, it should become an integral part of browsers. It is 2024 guys, AJAX is soon 30 years old. Can't we make that part of the core HTML spec? Pretty please with sprinkles on top?
@secretchefcollective444
@secretchefcollective444 6 ай бұрын
The only issue I'd have is to have a clear definition of an HTML snippet - clearly many of the endpoints you create in HTMX are not 'really' valid HTML urls (unless I'm missing something). Some sort of extended HTML tag?
@thekwoka4707
@thekwoka4707 7 ай бұрын
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...
@oldcastor-
@oldcastor- 7 ай бұрын
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)
@KertaDrake
@KertaDrake 6 ай бұрын
I just wonder what Oak Ridge wants with a single HTMX dev...
@ProxiedAi
@ProxiedAi 7 ай бұрын
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
@SeRoShadow
@SeRoShadow 7 ай бұрын
you need a moderate dosage of self-hatred for past-self as motivation to push future-self further you can always do better
@SirMeowMeow
@SirMeowMeow 7 ай бұрын
"Who would put validation on the frontend?" No, this is wrong, please don't listen to this advice. People trying to fuck with you is a small minority of users, but due to outsized impact you defend against that. But everyone else is just an ordinary user, and you're also working with ordinary devs, and if you do validation on the frontend then your backend teams will be so much happier. Validation on the frontend is immediate ROI. Backend and frontend teams should be sharing as much validation and types as possible, and double-validation is not wasteful and is very common industry practice.
@salesrafael
@salesrafael 5 ай бұрын
Who would put validations on the frontend? Frontend developers.
@jonathan-._.-
@jonathan-._.- 7 ай бұрын
OMG im in this 🤩 htmx CEOs go brrrr
@RenanGarciaBorges
@RenanGarciaBorges 7 ай бұрын
"Hashicorp" - you mean IBM ...
Stop Celebrating Incompetence
21:19
ThePrimeTime
Рет қаралды 347 М.
From React To HTMX
40:01
ThePrimeTime
Рет қаралды 347 М.
So Cute 🥰 who is better?
00:15
dednahype
Рет қаралды 19 МЛН
Правильный подход к детям
00:18
Beatrise
Рет қаралды 11 МЛН
Cheerleader Transformation That Left Everyone Speechless! #shorts
00:27
Fabiosa Best Lifehacks
Рет қаралды 16 МЛН
268% Higher Failure Rates For Agile
25:34
ThePrimeTime
Рет қаралды 144 М.
I Quit Amazon after 2 Months | Reaction
29:29
NeetCodeIO
Рет қаралды 165 М.
HTMX - Say “no” to Complexity | Mark Volkmann
27:04
XtremeJS Conference
Рет қаралды 2,1 М.
HTMX Sucks
25:16
Theo - t3․gg
Рет қаралды 133 М.
Firing Our Top Talent Was The Best Decision Ever | Prime Reacts
23:19
The Rabbit Is A Scam
56:17
ThePrimeTime
Рет қаралды 254 М.
Is HTMX a Joke??
32:15
Syntax
Рет қаралды 25 М.
Dear Functional Bros | Prime Reacts
26:03
ThePrimeTime
Рет қаралды 269 М.
They got away with this??
1:21:04
ThePrimeTime
Рет қаралды 1,8 МЛН
I Will Piledrive You If You Say AI Again | Prime Reacts
55:59
ThePrimeTime
Рет қаралды 403 М.