Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

It makes sense they'd pick this name, it refers to the jQuery plugin that was popular for doing this kind of layout back in the 2010s, so it's a convenient shorthand.


[flagged]


It wasn't accidentally popular. It was just very good.


Accidentally? How can something be intentionally/ unintentionally popular?


Marketing makes something intentionally popular.

Accidentally, seems harder. It kinda smells for people to intentionally make it not popular by actively working against fame, or something like that..


> Accidentally, seems harder. It kinda smells for people to intentionally make it not popular by actively working against fame, or something like that..

It's not harder; it's the only thing that works for tools. Tools cannot be good for long because of marketing. Marketing is the thin layer of paint over the Ferrari. Very nice paint, but if the car doesn't work or go very fast very quickly then that's that.


That ship sailed with JAVAscript in 1995.


It's often referred to as the masonry layout, so why not?


because every new construction requires a solid cornerstone? every archway a keystone? dont forget to put your boots in the trunk and your trunk in the boot. Nucular aluminum? I dunno


[flagged]


JS DOM API is still abysmal and jQuery API is still great. No worshipping needed.


Really? Genuine question, which part? If there are too many to name, how about just one? It seems pretty good to me.


My favorite is this comparison for checking whether an element is hidden:

    $(el).is(':hidden')
vs.

    !(el.offsetWidth || el.offsetHeight || el.getClientRects().length)
DOM API has other problems like lack of chaining which forces you into a very imperative style of programming, e.g.:

    $(".alert").hide();
vs.

    for (const el of document.querySelectorAll(".alert")) {
         el.style.display = 'none';
    }


I've never had a case where I didn't know the reason or mechanism by which an element would be hidden. In my code, I use the `hidden` property. In that case it simplifies from

    $(el).is(':hidden')
to

    el.hidden
It's not quite as succint as your jquery, but you also could have written this.

    document.querySelectorAll(".alert").forEach(el => el.hidden = false);
Is it less imperative? I mean I guess it doesn't have an explicit loop, but I don't really see why that's good or bad.


> I've never had a case where I didn't know the reason or mechanism by which an element would be hidden.

Unfortunately, I usually don't keep the whole codebase in my head (including libraries), so I often don't know the reason.

The more general point is that I don't want to have to know, because the mechanism of how it is hidden is not what I care about.

> It's not quite as succint as your jquery, but you also could have written this.

Yes, it's more than three times as long as the jQuery variant.


Ok, I get it. Fair points. I'm not a jquery hater. In a lot of cases, I'd rather write jquery than react for instance.


jQuery has a fluent interface and often shorter/smaller/more convenient APIs on top of that.

DOM APIs are quite literally 90s era Java-style APIs.

While DOM APIs have pulled in a few niceties over the years, some of them are really anemic (e.g. querySelectorAll does not return a proper Array-like object). Worse is combining them. Almost every API is a single-shot tedious step-by-step chore.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: