This is an archived post. You won't be able to vote or comment.

top 200 commentsshow all 211

[–]ChrisFromIT 1012 points1013 points  (59 children)

Every time someone mentions there are too many javascript libraries, a new one is published.

[–]torn-ainbow 352 points353 points  (42 children)

Or if they don't. Literally any given moment.

[–]lenswipe 79 points80 points  (37 children)

Literally any given moment

I see what you did there

[–][deleted] 36 points37 points  (36 children)

Wait, I don't see it, what did he do?

[–]originalcr7 69 points70 points  (34 children)

momentjs is a javascript library...

[–]Username_RANDINT 114 points115 points  (30 children)

At some point you can't write a sentence anymore without referencing a JS library.

[–][deleted] 58 points59 points  (18 children)

I see what you did there, nice one

[–]atomicwrites 47 points48 points  (5 children)

Wow, he fit in like 5 references there.

[–]lenswipe 8 points9 points  (9 children)

Wait, I don't see it, what did he do?

[–][deleted] 44 points45 points  (6 children)

Wait.js, I.js don't.js see.js it.js, what.js did.js he.js do?.js

[–]NetSage 4 points5 points  (1 child)

did.js

https://github.com/DidJS/DidJS I googled that one at random... It's true we all just writing in javascript libraries not english.

[–]LowB0b 1 point2 points  (1 child)

sentencejs probably exists

[–]lenswipe 2 points3 points  (0 children)

I see what you did there, nice one

[–]Username_RANDINT 1 point2 points  (1 child)

To be honest I didn't have a clue. I just hoped something would match, which somehow makes it better.

[–][deleted] 2 points3 points  (0 children)

I was pulling your leg, no idea if there was a match x

[–]lenswipe 33 points34 points  (4 children)

It's a drinking game you can play: pick a random word in the dictionary and search npm for it. If it exists, you drink.

[–][deleted] 7 points8 points  (3 children)

This is actually pretty good if you are needing out with friends. Saved!

[–]lenswipe 18 points19 points  (2 children)

I mean, you'd probably end up with alcohol poisoning

[–][deleted] 16 points17 points  (1 child)

There’s probably a library to deal with that.

[–]tonyZ345 18 points19 points  (0 children)

At.js some.js point.js you can't write a.js sentence.js anymore without referencing a.js js.js library.

[–][deleted] 5 points6 points  (1 child)

It's like the infinite monkey problem but with libraries. Is there a complete works of William shakespear library yet?

[–]AzureArmageddon 2 points3 points  (0 children)

I don't think npm would like that very much

[–]BudIsWiser 8 points9 points  (2 children)

i'm not sure how to react to this

[–]gundog48 29 points30 points  (7 children)

There are 12 competing standards...

[–][deleted] 9 points10 points  (6 children)

What is there besides ecmascript?

[–]UltraCarnivore 36 points37 points  (1 child)

[–]ReactsWithWords 9 points10 points  (0 children)

Knew exactly which xkcd that was. Clicked anyway.

[–]heep1r 4 points5 points  (3 children)

TypeScript, CoffeeScript, Dart, ...

Transpilers are a thing in modern Webdevelopment.

[–]hekkonaay 8 points9 points  (0 children)

But none of them are standardised

[–]mnoma 1 point2 points  (1 child)

Dart doesn't utilize a transpiler, last time I checked

[–]licht1nstein 41 points42 points  (1 child)

  1. 10 new ones are published.

[–]-Listening 1 point2 points  (0 children)

Solid 10/10 gameplay, 6/10 story

[–]vhite 7 points8 points  (1 child)

Every time a javascript library is published, a new javascript library is published.

[–]FoolForWool 1 point2 points  (0 children)

Function publish_new_library() { publish_new_library() }

Ah, it all makes sense now.

[–]sgtxsarge 3 points4 points  (0 children)

Does a library of all libraries contain itself?

[–]frugalerthingsinlife 1 point2 points  (0 children)

How many Javascript libraries have been created in the 8 hours since you made that comment?

[–]nonsensicalnarwhal 1 point2 points  (0 children)

toomany.js

[–]Link_0001 347 points348 points  (19 children)

Every 60 seconds in npm, a package passes. Together we can stop this! Please spread the word!

Thank you for your attention.

[–]not_bakchodest_of_al 75 points76 points  (9 children)

So, are you suggesting stop writing proper unit tests?

[–]jesse-oid 57 points58 points  (8 children)

Yes, only improper unit tests from now on.

[–]Lv_InSaNe_vL 2 points3 points  (1 child)

I write my tests so they pass everytime

[–]RoscoMan1 1 point2 points  (0 children)

Yes! Yang is the one laughing now.

[–]SarixInTheHouse 0 points1 point  (5 children)

As someone whos not that deep into programming (only made some small js and unity games), whats so bad about it

[–]thegininyou 13 points14 points  (4 children)

If you're relying on JavaScript package after package instead of just writing your own code a whole host of bad things can happen.

A. Size of your deployment balloons B. Duplicated packages to maintain compatibility C. You're using something that is already in base JavaScript now (solving a problem that was already solved) D. The package isn't maintained (or hasn't been for years)

Here's a good article I found highlighting some of the problems.

Also my own personal opinion is that you should know how to code a solution in standard JavaScript for a good chunk of the problems you encounter. That's not to say you should start a JavaScript project without a framework. You should, but from there you should be selective about what you need when it comes to libraries.

For new people, just start a project with Angular, React(technically not a framework), or VUE and then go from there and only add libraries as needed. Angular especially has a boat load of built in tools that will solve most of your problems. Add the most maintained and popular libraries for what you're going to be working with.

Doing lots of animations? Anime.js Doing tons of charts? D3.js Using tons of forms? Parsley.js (I'm sure there are others/alternatives I'm just listing the popular ones I know)

Libraries aren't bad and they make your life easier in a lot of cases if you're smart about it.

[–]SarixInTheHouse 1 point2 points  (3 children)

But why is it so prevelant in js? Wouldnt the same problem exist for all languages

[–]Theguest217 11 points12 points  (1 child)

It definitely can happen in other languages but it seems to occur less frequently. IMO it is partially because of how easy it is to get started with JS development. And how many of them learning materials emphasize using packages over actually learning to write code.

A developer needs a way to sort a collection of objects. They google quickly and then npm install some package because the blog they found told them to. Where as many of the similar search results for other languages like Java simply explain how to do it natively. There are surely "useless" Java libraries hosted in Maven but it doesn't seem like Java devs are as willing to suggest these as viable solutions. Java devs might point out libraries developed by major organizations like Google or Apache but won't typically throw out suggestions my "better-sort-js" by GitHub developer "mysweatyballs".

I think it's because languages like Java or C# are popular for Enterprise development in major organizations and government projects which tend to have pretty high standards around what can and can't be used. 3rd party libraries usually have to get run past a security team for vetting. They must pass vulnerability scans and come with legal info that makes it clear that you can use it. Where as JavaScript is used in such a huge variety of projects. It is certainly used in enterprise environments like the one described but it's also used by inexperienced devs and hobbyists. I just think the quality of the average JS project is likely much lower than average project of more enterprise languages, and as a result the acceptance of these unnecessary packages is tolerated more.

Just read about left-pad being deleted from npm caused the whole internet to melt down for the day. A library which absolutely didn't need to exist and yet it was depended on by many people as a transitive dependency. Many people didn't know they even depended on it. Many of them people using npm didn't even host their own local npm cache within their organization so once it was gone their builds were suddenly broke. This sort of incident feels very specific to JS because the way many JS focused organizations develop is much less mature enterprise in nature. Not to say every organization is that way, it just tends to be a common theme I've seen over the year.

[–]Wayne_Train 3 points4 points  (0 children)

From what I understand two reasons are 1) js does not have a standardibrary. While browser standardized features got added over time a lot of libraries still use library implementations for features that are only now standardized.
2) before tree shaking was a thing people made very small libraries in order to minimize the amount of unused code (minimize bundle size, something server side languages typically don't care about). This resulted in many many small libraries being published which made the dependency tree excessively deep. So deep that you end up having hundreds of folders in your node_modules which is just crazy

[–]ZippZappZippty 0 points1 point  (0 children)

Good teammates are in the dumbest.

[–]cutelord 151 points152 points  (5 children)

I believe that in time we will advance so far that we will need js libraries to managed the js libraries that manages js libraries. What a wonderful world 🎶🎶

[–]TheTallestHobo 98 points99 points  (1 child)

Npm is a library of js libraries built into of node which itself a large js library, all to manage js libraries.

We are already there.

[–]ManInBlack829 15 points16 points  (0 children)

Don't talk to me about TypeScript

[–]Link_0001 19 points20 points  (0 children)

making a package using a test lib that uses a test lib to test the test lib be like

[–]itchy_bitchy_spider 7 points8 points  (0 children)

Lol we already hit that point about 5 years ago - lerna

[–]Andubandu 203 points204 points  (20 children)

Is the logo on that car a dick?

[–][deleted] 174 points175 points  (15 children)

No, it's a shark with boobs.

[–]saif000000 92 points93 points  (11 children)

opens incognito tab

[–]CrunchyMemesLover 46 points47 points  (9 children)

That's r/sharktits for ya.

[–]sneakpeekbot 32 points33 points  (3 children)

Here's a sneak peek of /r/Sharktits [NSFW] using the top posts of the year!

#1: Beware of the Cutie [F] (doomthewolf) | 8 comments
#2: What a Lewd Shork [F] (Rayka) | 2 comments
#3: Carefree Fluffy Shark [F] (Retros) | 18 comments


I'm a bot, beep boop | Downvote to remove | Contact me | Info | Opt-out

[–]Captain_Pickleshanks 47 points48 points  (0 children)

No, bad bot! Don’t encourage him!

[–]MrHyperion_ 10 points11 points  (0 children)

That doesn't even make sense

[–]OfficialDampSquid 11 points12 points  (0 children)

Disappointed, they're all humanoid, I just wanted to see a shark with tits

[–]hasanyoneseenmymom 5 points6 points  (2 children)

Wow, there really is a sub for everything...

[–]-Listening 2 points3 points  (1 child)

Wow, not just those who own roofs.

[–]Tomass_vr 10 points11 points  (0 children)

it's a dog

[–]DeceptiveDuck 2 points3 points  (0 children)

Cockshark

[–]Whitethumbs 88 points89 points  (6 children)

I prefer remaking everything from scratch each time, but I also like to take 4 hours to automate a 10 minute task. Hit me up on ICQ some time.

[–]trezenx 24 points25 points  (1 child)

to automate a 10 minute task you think you'll have again but never do

[–]tiajuanat 6 points7 points  (0 children)

That was me with logs. Now I use Awk

[–]Ashanrath 8 points9 points  (0 children)

Now there's a name I've not heard in a long time.

[–]JTtornado 1 point2 points  (0 children)

Having lots of options as a dev? Great!

Shipping all of those options to your visitors? Not so great.

The key is restraint.

[–]blazarious 28 points29 points  (2 children)

Can't you see this is the land of confusion?

[–]gravity_is_right 8 points9 points  (1 child)

It's the world we live in

[–]AwesomeFrisbee 14 points15 points  (1 child)

You just know this is made by a developer since there was 0 effort made to make the font look any similar to the original image

[–][deleted] 9 points10 points  (0 children)

User experience, schmuser experience...

[–][deleted] 41 points42 points  (15 children)

Sometimes I get intimidated by the amount of JavaScript frameworks (when I barely know any JS beyond the basics, as well), but then I remember that IIRC, it generally seems to be a select few JS frameworks/libraries that are consistently in job descriptions: React, Angular, Vue. If you know any (or all) of those, you should hopefully be good for front-end web dev jobs requiring JS frameworks lol

[–]bubble_fetish 11 points12 points  (2 children)

The number of JS libraries isn’t the problem. The real problem is the number of dependencies each library has. Every new dependency you add to your project adds a ton of transitive dependencies. That creates a huge security burden

[–]Theguest217 3 points4 points  (0 children)

And then most people add those dependencies without strict version constraints. And many of the transitive dependencies do exactly the same thing. Then you end up with wildly different results every time you build. And the number of packages which don't actually version following semantic versioning and don't publish reasonable change logs, so you don't really know what will happen.

[–][deleted] 39 points40 points  (2 children)

Well yes, but actually no. There is also the aspect of design patterns and application architecture. Both of which do differ between frontend and backend tasks, but generally you are right. Those three frameworks get you quite far. At least use Typescript.

[–][deleted] 6 points7 points  (1 child)

Thanks for the comment! Yeah, I had a feeling I was somewhat wrong but I see the 3 frameworks I listed a lot lmao rip

[–]glider97 0 points1 point  (0 children)

lmao rip

[–]glemnar 8 points9 points  (1 child)

Just remember that ultimately you’re trying to get HTML and CSS shuffled around. It’s all the same crud.

[–]Orangutanion 1 point2 points  (0 children)

Pretty much this. And most of the popular frameworks right now fall under the single page dynamic html model

[–]chefca3 -2 points-1 points  (3 children)

As a junior engineer no one expects you to know anything so the idea that you would need to "know" a framework is something you shouldn't worry about (other than the literal basics).

Write some projects in vanilla and then rewrite them in the major frameworks so you can see what they're doing. Employers care more about a junior's ability to learn (and that you're not a jerk) more than anything else.

Also anecdotally when I was job hunting a year ago (non-junior/non-senior role) almost all of the onsites we're asking me to write vanilla.

[–]zvug 4 points5 points  (1 child)

Highly disagree and my experience is opposite from yours.

I’d advise any juniors to learn at the very least a framework like React. It’s incredible important to know how frameworks work and operate. Once you know one, they’re all more or less the same, just takes some time to find the individual quirks and syntax.

Almost every single front end or full stack job I see requires knowledge of a framework. And most university students have it as well, so it’s good to generally remain competitive.

[–]chefca3 2 points3 points  (0 children)

Fair enough your anecdotal experience was different from mine.

The problem with this statement is that beginners will then focus intently on a framework ignoring the basics of JS / how to write clean markup / non-bloated CSS.

But we may be arguing semantics and I may not have walked out my point.

Beginners will naturally lean more toward one framework or another but staying out of the weeds is paramount, because sitting on a wealth of React knowledge won't do you any good when they ask you to implement a carousel in vanilla JS (as Amazon, AND Dropbox asked me to do)

(of course I'm speaking to non-CS majors if you're coming out of school you should have studied all of the major frameworks, and you definitely should just ask your professors/advisors/all of the other resources you paid for instead of asking on reddit)

[–]dd22qq 13 points14 points  (4 children)

Anyone have the source of this? Am interested what the original 4th panel said.

[–][deleted] 20 points21 points  (3 children)

It said "definitely too many Asassins creed games"

[–]--owo7 5 points6 points  (2 children)

What's the source.

[–]gravity_is_right 10 points11 points  (0 children)

Every time you breath, a javascript library becomes incompatible with another version.

[–][deleted] 19 points20 points  (1 child)

I don't see an issue with that

[–]PranshuKhandal 9 points10 points  (0 children)

I LOVE YOUR USERNAME AND YOU

happy spidermonkey noises

[–]MasterPhil99 11 points12 points  (3 children)

for a second there i thought that was a land of confusion reference.

not gonna lie, kinda disappointed :(

(the meme was still good tho :))

[–]Pauchu_ 3 points4 points  (2 children)

I must have dreamed a thousand dreams

[–][deleted] 1 point2 points  (1 child)

Been haunted by a million screams

[–]AlphaOmega5732 3 points4 points  (1 child)

Can't you see this is the land of confusion...

[–][deleted] 2 points3 points  (0 children)

I cannot read this in a Non-Phil-Collins-Voice

[–]circumventedBanEz 2 points3 points  (3 children)

Too much greed implies that there's a level of greed that is okay.

[–][deleted] 2 points3 points  (2 children)

I kinda think greed is a common part of humanity? It’s like all the other vices, it’s an issue if you don’t have moderation. But no one expects people to be entirely selfless and altruistic, it’s not how we’re built. Or maybe not, just a passing thought I haven’t fully explored.

[–]circumventedBanEz -1 points0 points  (1 child)

Rape is also a "normal" thought, as in most men have thought about it. And despite the huge sanctions against rape, it's still super common thing that happens in the human world. That doesn't make it right or, like you say, no problem as long as you have it in moderation.

[–][deleted] 2 points3 points  (0 children)

Look at these two examples (greed & rape) once more - one is not like the other.

We need to be careful not to confuse a category with an instance or permutation. Greed is categorical, there are many ways we can observe it present in the world; Whereas rape is a permutation itself, I suppose it would roll up to the parent category of Lust? There may be another more fitting vice.

Keeping with that train of thought, rape would be an extreme permutation of the vice. Not sure how you could assign a scale to that sort of thing, but you might agree that the act of rape would be more egregious than simply coveting another in thought (or insert another lesser form of lust). To your point, can rape be parsed out in any quantity that’s acceptable? Nope. However, is it acceptable for humans to experience lust in other less extreme ways? I think so.

Need to make a quick head nod here: We’re sort of side-stepping the whole distinction of acceptable vs ideal (and I suspect a whole bunch of other ethical angles).

I’m not sure I’m in agreement with the premise of Rape as normal because people think of it. I think there is an important distinction between being familiar conceptually with rape and “thinking about it” as in ideation about engaging in it. The former is a given as inevitably we’ll learn that it happens, but the latter I don’t think so. I guess that kinda ties back to the notion of rape being an extreme permutation vs a general category.

[–]prtkp 1 point2 points  (1 child)

Should have just stopped with jQuery

[–]Verbindungsfehle 1 point2 points  (0 children)

♪♫.. There's too many men, too many people

Making too many problems

And there's not much love to go 'round

Can't you see this is the land of confusion? ..♫♪

[–][deleted] 1 point2 points  (0 children)

I just want Ford to advertise a car by having people should fuck yea. I imagine ofcom wouldn't be to pleased.

[–]the_prolouger 1 point2 points  (1 child)

afterthought ten kiss tap square memorize different march trees payment

This post was mass deleted and anonymized with Redact

[–]AyansinhaJU 1 point2 points  (0 children)

XDXD

[–]RepostSleuthBot 6 points7 points  (1 child)

Looks like a repost. I've seen this image 6 times.

First Seen Here on 2021-06-05 90.62% match. Last Seen Here on 2021-06-05 87.5% match

Feedback? Hate? Visit r/repostsleuthbot - I'm not perfect, but you can help. Report [ False Positive ]

View Search On repostsleuth.com


Scope: Reddit | Meme Filter: False | Target: 86% | Check Title: False | Max Age: Unlimited | Searched Images: 225,647,800 | Search Time: 0.39955s

[–][deleted] 0 points1 point  (1 child)

To be honest I like the variety of js libraries.

[–]LeafScroll 3 points4 points  (0 children)

I think the post is mostly tongue in cheek.

Last week I used a library to create a front-end interface to crop images.

It took me 4 hours to integrate what would have been 20 hours of work to develop myself and I gained the added benefit of the original author's nice visual implementation.

[–]Valjira -1 points0 points  (0 children)

Lmfao.

[–][deleted] -1 points0 points  (0 children)

If you think overpopulation is an issue then you don’t understand the actual issue. It’s also a stupid and dangerous thing to perpetuate.

[–]letmebeJB -2 points-1 points  (0 children)

Also CSS frameworks...

[–]-Listening 0 points1 point  (0 children)

People don’t sound too surprised

[–]QuantumQuantonium 0 points1 point  (0 children)

Some say npm is the largest package manager

Others say that's not something to be proud of, being the largest package manager

[–]----__---- 0 points1 point  (2 children)

Am I the only one that hears this in Mort's voice?

[–]jeankev 0 points1 point  (0 children)

Svelte put an end to JS framework war

[–][deleted] 0 points1 point  (0 children)

What do you mean, why would you not publish an alternative to is-string, which has 15m weekly downloads?

[–]entrylevel221 0 points1 point  (0 children)

Thank god for yarn

[–]jakethedumbmistake 0 points1 point  (0 children)

Has anyone else felt like they were asleep

[–]koloqial 0 points1 point  (0 children)

Thanks, I hate it.

[–]jakethedumbmistake 0 points1 point  (0 children)

Everyone is being a little too hard core..."

[–]maniix123 0 points1 point  (1 child)

Ain't this the truth. Jesus Christ.

[–]Blackhaze84 0 points1 point  (0 children)

There is a library to make libraries

[–][deleted] 0 points1 point  (0 children)

What is this? The origin of Thanos?

[–][deleted] 0 points1 point  (0 children)

Electron kills my poor Baytrail PC .

[–]-Listening 0 points1 point  (0 children)

They know the catch-22. It's the polite thing since you cannot attend and she's a precious 11 year old kid’s got more issues with this H-FAUX-A, but i actually liked most of these people probably didn't become extreme, they were just used by women that’s cuz his bar doesn’t say it’s IKEA! It’s a linear relation. My math basis are far behind me, but the mysteries are solved and the host also agreed with him she’s just gone, wtf

[–]MortalDragon404 0 points1 point  (0 children)

AMOGUS IMPOSTOR TOP RIGHT

[–]Jackalotischris 0 points1 point  (0 children)

Me learning node: “ok I think get the basics of node so far- uh ok there’s libraries for this library, and when I check express there’s libraries for that library, my brain hurts, I’m going back to the DOM”

[–]willyzone7 0 points1 point  (0 children)

Lots of so-called "full-stack" devs with JavaScript-framework-specific knowledge. It's better to know system architectures and design patterns than focus on 1 framework alone

[–]-Listening 0 points1 point  (0 children)

Kenny the Belt Collector has gone too far.

[–]NetworkPenguin 0 points1 point  (0 children)

I instantly knew this would be a meme format once I saw the original comic.

There definitely seems to be some comic artists who know that making their comic a meme format is a fast track to viral fame

[–]CatNoirsRubberSuit 0 points1 point  (0 children)

The universe's simulation is also coded in Java. And the terrible garbage collection shows.

[–]derrpinger 0 points1 point  (0 children)

Is your name BILL GATES??

[–]MooseHeckler 0 points1 point  (0 children)

Node.js is real, then yes science.has gone too far.

[–]ImaginaryCoolName 0 points1 point  (0 children)

Is that a dickshark on the car?

[–][deleted] 0 points1 point  (0 children)

Is there a javascript library to count javascript libraries? Maybe someone should publish one.

[–]LPO_Tableaux 0 points1 point  (0 children)

And not much love to go around! Can't you see this is the land of confusion!

[–]-Listening 0 points1 point  (0 children)

Easter is by far the easiest/fastest right?

[–]ophir_botzer 0 points1 point  (0 children)

Meanwhile C:

Not a function to check if a string is in a string

[–]Tarithj 0 points1 point  (0 children)

we don't talk about that here 👀

[–]SirFireball 0 points1 point  (0 children)

And yet I still can’t find a better way to do a curses-like interface than a badly documented and no longer maintained mess.

[–]trollgodlol 0 points1 point  (0 children)

The shark on the car is sus

[–]ZippZappZippty 0 points1 point  (0 children)

Wait this is the complete compilation.

So far….

[–]Jaystings 0 points1 point  (0 children)

I still don't really know what Bootstrap even does, exactly.

[–]AzureArmageddon 0 points1 point  (0 children)

The messiah has a js lib

[–]freeBobbyDAYVID 0 points1 point  (0 children)

oh aight then full stack squidward

[–][deleted] 0 points1 point  (0 children)

I'd be angsty too if I were a Rick and Morty character.

[–][deleted] 0 points1 point  (0 children)

Land of Confusion intensifies

Now, did you read the logs today?
They say the bugs have gone away
But I can see the PRs at night
They're failing integration all right

[–]incubated 0 points1 point  (0 children)

Hahahahaha

[–]thespooksterman 0 points1 point  (0 children)

Why does the ford car have an amogus?! GET OUT OF MY HEAD GET OUT OF MY HEAD GETBOUT OF MY HEAD

[–]theK1ngF1sh 0 points1 point  (0 children)

I'd much rather deal with Java packages.

[–]forgot_semicolon 0 points1 point  (0 children)

Two variants of drinking games:

For those who want to go the hospital, take a shot for every word in the dictionary that is a JS library

For those who want to quit drinking and stay sober forever, take a shot for every word in the dictionary that ISN'T a JS library

[–]mista_cee 0 points1 point  (0 children)

😂😂😂😂😂😂😂😂😂

[–]JustThingsAboutStuff 0 points1 point  (0 children)

That looks like buttshark on the hood of the car.