ath92 4 days ago

jQuery provided a DOM manipulation API that was the same in all browsers when there were lots of differences between browser implementations. While you could do everything using standard web APIs, that would be incredibly error prone and tedious at a time when `querySelector` was not a thing yet.

Lodash does way more than some basic functional wrappers. I've seen too many buggy re-implementations of debounce, throttle and groupBy at this point, it's not even funny.

  • austin-cheney 3 days ago

    Life without jQuery was never as hard as you claim. jQuery broke in IE9 more than it helped, but it was also a cult and many developers were entirely unemployable without it.

eyelidlessness 4 days ago

This is such a weirdly contrarian take. You’re basically saying that everything in context is terrible, and somehow at the same time, on the same basis, that it’s wrong to critique anything because everything is terrible.

That’s certainly a logically consistent position, but it isn’t one that allows much room for anything to improve… or even become a productive discussion.

  • austin-cheney 4 days ago

    No, I am saying don't complain about something only because its an abstraction when likely the person making that comment cannot program without vanity abstractions. Clearly, this is about bias and preference. At the very least people could be consistent in their reasoning.

    • eyelidlessness 4 days ago

      The critique was that the existing abstractions address the same set of problems as do the newly introduced abstractions. You’ve said that the existing abstractions are bad, as an invalidation of that critique.

      It is perfectly reasonable to ask whether something for convenience adds value to something also for convenience.

      Nearly everything in any high level language isn’t strictly necessary to achieve general purpose computation. That doesn’t invalidate any distinction between all higher level concepts! They specifically add expressiveness, so it’s eminently meaningful—for people who find expressiveness valuable—to discuss and distinguish between like solutions in those terms.

      • austin-cheney 4 days ago

        I never said any of this is bad. I said it is completely unnecessary. Those are different. I also said the blind reliance on that unnecessary stuff is foolish. Like you said it is all about convenience, which is exceedingly shallow and faulty.

        > They specifically add expressiveness

        Not really. Expressiveness is the ability to achieve the same end state in different ways. How do you then determine that? You have to count the different ways a given thing is achieved. Under the abstraction if its doing the same thing in the same way as something else then its not really different, and thus not expressive. That is why these large SPA frameworks have wildly different super large APIs, but their output is strikingly similar, which isn't expressive at all. Really, with these tools none of that matters, because its really just about the perceptions of convenience.

    • doctorpangloss 4 days ago

      You’re right but arguing with the “add another dependency” people is a waste of time. This just isn’t really a software engineering community.

meiraleal 4 days ago

This is a discussion forum, you know? Different people, different opinions. You can go ahead and use JAQT which I found fine but I prefer to avoid adding external dependencies. I hope it doesn't hurt your feelings too much but the good thing is that you can continuing using JS the way you like.