These kinds of herculean efforts do make sense at Google's scale (at least from my reading of their papers & blog posts), but are there advantages for data centers operating at smaller scales to adopt some of the approaches used here e.g. custom-built commodity hardware-based network switches, SDN-based central controllers etc.?
EDIT: Maybe a better question is, at what point do you think about eschewing the traditional Cisco/Juniper gear and look towards these techniques?
Can someone here point to a good article (or a couple of articles, for that matter) explaining the history of Python packaging and the "new way of doing things"?
"After the switchover we had to add some additional Redis nodes but not because Redis was overworked but because the network cards couldn't keep up with Redis."
They one thing they could to make it a lot better, is to allow a few (5-8 maybe?) private zero-collaborator repos in the free plan.
And they can always increase the number of repos in each plan. I understand this won't make them as competitive on pricing, but the better user experience they offer has to be reflected in the cost.
It is more of a "hardware specifications" driven culture, where design of the software experience is secondary. But in "touch phone" devices, just getting the hardware right can't even get you halfway into making a better product.
Also what apps do you want to run? Slack, Front, what else?