News for hackers. Stuff that matters.
Re:Investigate switching away from GitHub by qwertyuiop924 on Thursday February 11, 2016 @04:03PM (#11083230)
there are legitimate technical reasons for using NPM (disk is cheap, project local packages ftw, etc.). gem, less so. I can, however, tell you the primary reasons for using npm or gem: I need a dependency, my os hasn't packaged it, and it's the path of least resistance.

Also, I am a hobbyist programmer. I also know that git was created by Linus Torvalds, it's a DVCS (although Torvalds calls it an SCM), and it's based on a DAG (directed acrylic graph), which is a directed graph with no directed cycles, and excellent for modelling causal relations. I can explain to you the difference between a rebase and a merge. I know that git uses SHA-1 hashes to identify check-ins internally, as a data security feature. I know that checkins and other objects are stored in the .git folder at the repository's root directory. I know that these objects are garbage collected, although the frequency at which they are escapes me. I know that, despite common belief, git commits are immutable, but also that the git history is not. I know that git was inspired by BitKeeper, after the incident that caused the linux source to be moved away from that system, because Linux got fed up with tarballs and patches, and hates CVS with a fanatical passion. I know that git had three design goals: distributed, fast, and guarantees that you get the same bits out that you put in. And I've have several years of causal experience with git, using probably one tenth of its functionality.

I may not be able to recite git's internals at you, but I know it's features (to an extent), I know the tools, and I know the reasoning. And the functionality sure as heck isn't magic.

Re:Investigate switching away from GitHub by dozzie on Thursday February 11, 2016 @04:27PM (#11083397)
> I need a dependency, my os hasn't packaged it, and it's the path of least resistance.

What I tell you back: you probably don't need it, you're just being very, very lazy, which will cost later in bugs in those dependencies, and it's not that easy to fix a bug in a dependency.

Additionally, it's not that difficult to make a package with that dependency. I routinely do so, both for things other people wrote and for my code. Sure, it's not as easy as adding a line in package.json, but there should be some friction in adding a library to a project, so the library would justify itself. Keeping many dependencies is very expensive in the long run, but short-term is somewhat beneficial. Look at how it works for Node.js and gems and Python packages: every library needs its own `map()' function implementation (or anything else similarly trivial), so typcial application requires few dozens of other libraries.

Re:Investigate switching away from GitHub by qwertyuiop924 on Friday February 12, 2016 @08:14AM (#11086934)
Hey, I was just saying that that's the common idea, not that I think that way.

Personally, I use NPM because NPM does local versioning, so I will never end up in dll hell.

Also, NO, NEVER WRITE A PACKAGE THAT HAS EXPLICIT KNOWLEDGE OF A DISTRO PACKAGE MANAGER. If you do, you are being an asshole. If you want to depend on a distro specific package manager, document your dependencies, and just expect them to be there. Because not everybody uses your package manager.

Re:Investigate switching away from GitHub by dozzie on Friday February 12, 2016 @09:55AM (#11087560)
If you have proper package building rules (not this currently popular fpm nonsense, which produces broken RPMs and DEBs unless one puts much effort in using it), tearing building procedure apart and adjusting it for other package managers will be really easy. No, you're not being an asshole. And if you want to be it even less, write a proper makefile and call that from package build rules (RPM spec, debian/rules, ebuild, or anything else).
Re:Investigate switching away from GitHub by qwertyuiop924 on Friday February 19, 2016 @12:37PM (#11134974)
You should be writing Makefiles, or Scons, or whatever your build system is.
Re:Investigate switching away from GitHub by XorNot on Thursday February 11, 2016 @05:03PM (#11083654)
Writing yet another map implementation is not solving any problems.

People get so bizarrely bent out of shape over npm dependency quantity rather than ease of use.