4 ms·
Reading issue #27 on the github page really gives an insight into..something: https://github.com/juliangruber/isarray/issues/27 https://github.com/juliangruber/
by raspyberr 6y ago
Reading issue #27 on the github page really gives an insight into..something: https://github.com/juliangruber/isarray/issues/27 https://github.com/juliangruber/isarray/issues/27
- seattle_spring 6y agoThe biggest insight in that thread is how big of a jerk "PublicByte" is. I sure hope I never have th misfortune of working with that person or anyone like him.
- gonzo41 6y agoYeah that person really dialed things up to 11 there. But I think it's a tone that stems from a legitimacy thing with javascript having a super low barrier to entry.
- hn_throwaway_99 6y agoDid you actually read the function in this library. While yes it's a single line I'm convinced that anyone who thinks this is an "obvious" implementation hasn't actually read the code.
- gonzo41 6y agoActually I did read the function, and I thought about the cycles that toString.call(arr) == '[object Array]' costs.
- hn_throwaway_99 6y agoIs there some other implementation you think would work?
- seattle_spring 6y ago... which only gets called if the native implementation of `isArray` is not found.
- karmakaze 6y agoES5 is a low requirement. I'd rather use a lib that did a better job than one that returns true for the string '[object Array]' or have the app decide for itself what its own types are.
- amadeuspagel 6y agoYeah, github desperately needs moderation. Maintainers should be able to flag issues, and prevent people who more then x flags from filing issues.
- jchook 6y agoSome seriously relevant psychoanalysis of this behavior in this article (also on HN front page) about toxic workplaces: https://articles.tilt365.com/identify-destructive-leadership-patterns/ https://articles.tilt365.com/identify-destructive-leadership...
- disown 6y agoPlease use harrassment free language. You've broken a few comment rules. Can you review the community guidelines and refrain from breaking the rules? https://news.ycombinator.com/newsguidelines.html https://news.ycombinator.com/newsguidelines.html
- burke 6y agoIt’s completely stupid that this kind of module gets used in the JavaScript ecosystem, but as the author points out, it’s not his fault, it’s downstream modules’ fault for actually using something so trivial. It’s deeply unfortunate that the lack of a standard library in JavaScript combined with the constraint of wanting to minimize shipped code size in a language that resisted dead code elimination for a long time led to... whatever this is, instead of a comprehensive stdlib.
- seattle_spring 6y agoDid you read the code? It is standard functionality, but only in newer Node versions and browsers. The linked package is basically a polyfill.
- wongarsu 6y agoIt is now, but it wasn't standard functionality back when this library was first published.
- aPoCoMiLogin 6y agofirst commit is from 2013 [0], first Node that had Array.isArray was 0.1.15 from 2009 [1], thus making is as Node module was pointless, but polyfill for browsers might have some sense. - [0] https://github.com/juliangruber/isarray/commit/c8601522e31366d0ce1bfd11818c4bb3ebd032a4 https://github.com/juliangruber/isarray/commit/c8601522e3136... - [1] https://github.com/nodejs/node-v0.x-archive/blob/v0.1.15/ChangeLog https://github.com/nodejs/node-v0.x-archive/blob/v0.1.15/Cha...
- hn_throwaway_99 6y agoPeople keep saying this is "so trivial", denigrating anyone who would use this, but I am convinced they haven't even looked at the "one line of code" they are denigrating. I've been a JS/Node dev for years now (granted, post a time when Array.isArray was part of the standard), and if someone asked me to write isArray, I wouldn't have done it like this, and I'm assuming there is a reason it was done like this. What I really see is a bunch of typical "I'm a cooler dev than you" posturing for people who haven't even actually looked at the code. That's a shame because there is a valid discussion to be had around how lots of teeny dependencies can make the npm ecosystem brittle, but bullshit posturing around how any dev should be able to write this one line is just false.
- Benjammer 6y agoI don't understand the mindset of "you did it wrong once, so you can't do it anymore, you must let me do it for you." Why is the fact that some devs sometimes screw up one-liners of any material importance to the existence of this library? Some devs write code with bugs, does that mean they shouldn't write code any more? Is it either you write pristine, bug-free code on the first try for everything, or else you should be relegated to the back room gluing things together built by the _real_ devs? This is such snooty behavior that I'm not surprised at all by a response like the angry dude in there. He's an asshole for sure, but he's not totally wrong in my view.
- falcolas 6y agoI’m with you. Some people occasionally forget semicolons, should we have a library for that too? “Wrap all your statements in this pre-processor function call (it’s just another line in your build pipeline) and we’ll take care of the semicolons for you.”