HN Theater @HNTheaterMonth

The best talks and videos of Hacker News.

Hacker News Comments on
The economics of open source by C J Silverio | JSConf EU 2019

JSConf · Youtube · 24 HN points · 9 HN comments
HN Theater has aggregated all Hacker News stories and comments that mention JSConf's video "The economics of open source by C J Silverio | JSConf EU 2019".
Youtube Summary
The JS package commons is in the hands of a for-profit entity. We trust npm with our shared code, but we have no way to hold npm accountable for its behavior. A trust-based system cannot function without accountability, but somebody still has to pay for the servers. How did we get here, and what should JavaScript do now?

https://2019.jsconf.eu/c-j-silverio/the-economics-of-open-source.html
HN Theater Rankings

Hacker News Stories and Comments

All the comments and stories posted to Hacker News that reference this video.
> This massively depends on the architecture of the package manager though. Composer (PHPs primary package manager) only serves the metadata

See also, CocoaPods. But we're really talking about two things here as if they're the same, and I think it's because the language we use for them isn't clear: package managers (like CocoaPods and Composer) and full-blown package registries (like RubyGems and NPM). I mean, the difference between them is slight; and there's overlap. They both resolve package dependencies and sort out problems, for example. But they're such very, very different things!

It's not really fair to compare these two approaches and say things about Composer like "this allows them to serve the whole community with a team of 2-4 people": they're just not directly comparable. Those 2-4 people + the entire GitHub staff is what supports the whole community.

Now - don't get me wrong: I think it's fine that GitHub does this! I'm not saying that CocoaPods and Composer are making the wrong choice here at all. In fact, I'm proud to work for a company that provides this service to everyone. But it hand-waves away a lot of stuff as just an "architecture" decision, when in reality it's a decision not to do the hardest part - which is hosting, because it requires gobs of money and dedicated staff and people on-call 24/7.

Framing it as just a different "architecture" implies that registries like NPM are making the wrong choices by hosting their own downloads, which I think is not nearly that simple. Because what happens if GitHub or Bitbucket decided to not allow this type of usage? It would be devastating for the community - so I think it's very appropriate for package managers to make a decision about whether or not they also want to be a registry. They're considering what could happen down the road and what that would mean.

CJ's comments on all of this, re: entropic, are really good: https://www.youtube.com/watch?v=MO8hZlgK5zc

For those wondering what's wrong with npm, I can recommend this C J Silverio talk https://www.youtube.com/watch?v=MO8hZlgK5zc

Sadly, as others have noted, this Pika thing does not quite address these issues.

There has been. CJ Silverio gave a talk on that topic at JSConf this year: https://www.youtube.com/watch?v=MO8hZlgK5zc

See also Entropic as a possible alternative to NPM: https://github.com/entropic-dev/entropic

tuananh
i doubt entropic will become sth significant. it already lost the momentum it seems.
pluma
For context: Entropic was started by several former npm Inc core developers including CJ who left the company after the CEO change was announced internally. CJ herself is the former CTO of npm Inc.

Basically most of the top developers have left the company, others were laid off. It seems to be only a matter of time until none of the people working on npm a year ago remain.

That is what happens when someone depends on VC money.

Regarding starting over, check

https://youtu.be/MO8hZlgK5zc

juststeve
wow that was a great video thank you
Aug 25, 2019 · 2 points, 1 comments · submitted by yarapavan
yarapavan
This JSConf EU 2019 talk by C J Silverio tells a story about who owns the Javascript language commons, how we got into the situation that the language commons is by someone, and why we need to change it.

Abstract:

The JS package commons is in the hands of a for-profit entity. We trust npm with our shared code, but we have no way to hold npm accountable for its behavior. A trust-based system cannot function without accountability, but somebody still has to pay for the servers. How did we get here, and what should JavaScript do now?

Transcript: https://2019.jsconf.eu/c-j-silverio/the-economics-of-open-so...

Aug 24, 2019 · 1 points, 0 comments · submitted by BerislavLopac
Aug 23, 2019 · 4 points, 0 comments · submitted by pjmlp
Jun 15, 2019 · 2 points, 0 comments · submitted by pabs3
Jun 14, 2019 · 1 points, 0 comments · submitted by seansh
I am trying to understand why we make NPM such a big deal (and suddenly have all these projects born to solve the NPM problem) when people have solve the issue of a package repository already. C j Silverio's point (JSConf's talk [1]) was that is NPM's scale that makes it hard.

Refs:

1: https://www.youtube.com/watch?v=MO8hZlgK5zc

steveklabnik
To put some perspective on this, comparing Debian to npm:

Number of packages:

Debian has 172,000 packages for the most popular architecture, amd64. i386 has 24,000 packages. The rest have less than 500 each.

npm recently broke a million packages.

Download counts:

I couldn't find numbers for Debian. npm served 11.2 billion downloads last week.

(Debian numbers retrieved by https://popcon.debian.org/, npm numbers from https://medium.com/npm-inc/npm-weekly-200-dont-miss-today-s-... and https://api.npmjs.org/downloads/point/last-week

ricardobeat
Partially self-inflicted since a normal JS project will redownload the same packages over and over again, hundreds of times throughout their existence.
regularfry
Debian also has a repository model which allows the packages to be served by a static file server, because the dependency resolution is entirely client-side. Npm doesn't.
steveklabnik
Hm, as far as I know, resolution is also entirely client-side for npm. Do you have any links about this?
This is a great recent talk about this problem by the former NPM CTO in which she tells her story about NPM and proposes a new decentralized package manager:

https://www.youtube.com/watch?v=MO8hZlgK5zc

Jun 12, 2019 · 2 points, 0 comments · submitted by jonas_kgomo
Jun 11, 2019 · 5 points, 0 comments · submitted by brodul
Also, have a look at the speech that C J Silverio gave about it:

https://www.youtube.com/watch?v=MO8hZlgK5zc

Jun 04, 2019 · 2 points, 0 comments · submitted by mpnagle
Jun 03, 2019 · 5 points, 1 comments · submitted by ecares
niklabh
This is the most powerful talk i have ever seen
HN Theater is an independent project and is not operated by Y Combinator or any of the video hosting platforms linked to on this site.
~ yaj@
;laksdfhjdhksalkfj more things
yahnd.com ~ Privacy Policy ~
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.