Live data from Hacker News

CocoaPods downloads max out five GitHub server CPUs

github.com

241–250 of 320 posts

Re: CocoaPods downloads max out five GitHub server CPUs

#241
post #2

Note how perfect that response from mhagger is. A clear, honest sounding assurance of what Github wants to deliver. A perfectly comprehensible description of what is the problem, and where it is coming from. And then suggestion how to fix it the project actually can work on, plus mentioning changes to git itself that Github is trying to make that would help. It not only shows great work going on behind the scenes (an…

That response was sheer excellence except maybe it was too nice about how ridiculous the situation was. I'm pretty diplomatic on job but an aggressive freeloader braggjng about what tge damage saves them would try my patience.

GitHub people are truly going above and beyond in service even when barely warranted. I'll give them that.

Re: CocoaPods downloads max out five GitHub server CPUs

#242

Earlier quoted context omitted.

Presumably - otherwise they wouldn't be doing it - but it often doesn't take all that much to flip a volunteer from "Okay, this is cool, I can help other people and learn some stuff as well" to "Fuck this, it's way more trouble than it's worth." Top amongst this is when the people you're helping expect you to give them free work. Jobs compete with other jobs, and most people expect that they'll have to do some unplea…

It also doesn't take much to move a company from "Okay, we'll help you by hosting your shit for free" to "Fuck you, you're banned since you are ungrateful bastards" (in nicer language of course).

I agree, and I think the GitHub employees who commented on the thread have been really patient, and that it's impressive that GitHub as a company has tolerated and supported this use case.

My point, though, is that it's not the CocoaPods developers who are ungrateful bastards. It's any Hacker News commenter here who also uses CocoaPods. If you think this behavior is insane, submit a pull request.

Re: CocoaPods downloads max out five GitHub server CPUs

#243

Earlier quoted context omitted.

Care to substantiate that last paragraph? Are you really suggesting OS X users use yum?

Actually it seems very likely that one or more of the popular linux distro package manager ecosystems would fare well on other OSs. Arch Linux's pacman was ported to Windows, e.g..

pacman has been ported to OS X a few times

  https://bbs.archlinux.org/viewtopic.php?id=53960
  https://bbs.archlinux.org/viewtopic.php?id=122544

Re: CocoaPods downloads max out five GitHub server CPUs

#244

Earlier quoted context omitted.

> you're abusing Cocoapods uses GitHub. No abuse here.

I totally disagree. The CocoaPods usage model is not at all the expected way to use GitHub. I'm surprised using GitHub that way is even allowed by the TOS. It's very obviously a hack to avoid paying for their own infrastructure. The project representative in the issues thread even admits as much in his response. Just about every other package manager for every other language (Pip, CPAN, Hackage, etc.) uses its own in…

Homebrew uses Github in roughly the same way.

Re: CocoaPods downloads max out five GitHub server CPUs

#245
post #201

The criticism against CocoaPods here seems awfully harsh. Think about it from their perspective. GitHub advertises a free service, and encourages using it. Partly it's free because it's a loss leader for their paid offerings, and partly it's free because free usage is effectively advertising GitHub. CocoaPods builds builds their project on this free service, and everything is fine for years. Then one day things start…

I think Github's response was about as good as it could be. In hindsight, they probably should have contacted CocoaPods when they pegged one CPU. And they could have given the same general solution to Homebrew and others. With respect to CocoaPods, I would hope someone on the team had thought through performance characteristics of their architecture. It's like they brought a shopping cart onto a city bus and were the…

It's more like bringing a shopping cart onto a city bus, when the bus company said "bring all your stuff! we love it!" doing this for years with no problem, the bus driver says nothing, and then one day the bus driver says "hey, you've been causing a ton of problems with that shopping cart, you need to stop." Surprise seems entirely warranted.

Re: CocoaPods downloads max out five GitHub server CPUs

#246
I don’t think GitHub acts wisely here.

Short term sure, they’re doing the right thing, implementing a nice way to manage the free rider problem without hurting them too much.

But long term it’s different.

Financially, one average programmer = $80k/year, one average cloud server = $4k/year. And, GitHub has hundreds of millions of venture capital. More than enough to provision a few more servers, even if they will be installing new servers just for those pods.

The way they act now will lead to someone will develop a decentralized git+torrent hybrid. When that happens, sure, those pods will no longer consume precious GitHub’s resources. However, for the rest of the github users, there will be no reason to stay on GitHub either.

Re: CocoaPods downloads max out five GitHub server CPUs

#247
Reading the issue, it seems that one of the problems is a single directory with lots and lots of files in it, which is something of a pathological case for Git. Now, this could be "fixed" by splitting the files in that directory into subdirectories, but the one giant directory will still exist in all the past commits. So would this actually fix anything, or just keep it from getting worse?

Re: CocoaPods downloads max out five GitHub server CPUs

#248
post #200

Earlier quoted context omitted.

What package? My project may have a dependency on a specific commit that's between point releases. The problem is not packages, it's the index, containing 16000 subdirectories,

So the packages themselves aren't part of the repository?

No, only references to the repositories themselves are. The total Specs repo is only 300 megabyte, which comes to about 18 kilobyte per package on average.

It's still absolutely ludicrous to use git for it, or worse, to bother github with it.

Re: CocoaPods downloads max out five GitHub server CPUs

#249

Earlier quoted context omitted.

I was astonished at how selfish/myopic/whatever alloy's response was. To be blunt, you're abusing the shit out of SOMEONE ELSE'S product that you're not even paying for. Your first question shouldn't be to see what Github can do for you to make it so you don't have to make changes. You should be falling over yourself investigating all available avenues for reducing load. It's an incredibly entitled way to think about…

It probably wasn't intentionally selfish. Just really short-sighted, which isn't uncommon. Sometimes it takes a while for things to penetrate for anybody. Alloy's later comments seem much more productive. Whether that's because of backlash, he reread the earlier comment and realized how it seemed, or just had some time to think about the imposition on Github, at least it looks like CocoaPods is going to reconsider ho…

It's hard to see the difference between selfish behavior and short-sighted behavior because they're often confounded. What I got from this is that Alloy will consider the deep vs shallow deep copying Git issue, but wants to continue using Git and GitHub as a CDN for a massive user base, and doesn't want to re-architect because developers are expensive and time is limited.

The Git deep v. shallow issue just puts a band-aid on the CPU problem, but it doesn't do anything about the terabytes of bandwidth per week (it'll be worse), and it won't do anything about GitHub's claim that Git is not meant to be used as a CDN and doesn't scale well.

They've become a big project that warrants thinking about revenue or organization strategy, but they're delaying it by externalizing their costs. Cases like these can pressure GitHub into rethinking the leniency of their policies.

I also think that if you're in the top-5 resource consuming group, more sympathy would go your direction if you were a paying customer, but they've indicated no interest.

Re: CocoaPods downloads max out five GitHub server CPUs

#250
post #14

This reply: https://github.com/CocoaPods/CocoaPods/issues/4989#issuecomm... "Not having to develop a system that somehow syncs required data at all means we get to spend more time on the work that matters more to us, in this case. (i.e. funding of dev hours)" In other words, using github as a free unlimited CDN lets them be as inefficient as they like. Such as having 16k entries in a directory ( https://github.com/Co…

Care to substantiate that last paragraph? Are you really suggesting OS X users use yum?

Why not? A friend of mine was employed by a Very Large Company at one point to (amongst other things) maintain their AIX port of rpm/yum.
Post reply on HN