5 ms·
Until there's a big run on some app, the developer didn't expect the enormous popularity and increase in cost and then they blog about how Google is basically b
by jasonvorhe 6y ago
Until there's a big run on some app, the developer didn't expect the enormous popularity and increase in cost and then they blog about how Google is basically bankrupting them.
- cma 6y agoHow much bandwidth is 10 copies to every android owner in the world for a small size app like this?
- tgsovlerkhgsel 6y agoAssuming the app is 10 MB, 100 million users (out of 2.5 billion Android users) download it once (not 10 times as you suggested), that's one million gigabytes of traffic. Using the cheapest Google Cloud Storage egress rate of $0.08/GB, that's $80000 for each update the app pushes out.
- cma 6y agoWireguard is 7.6MB. I thought even smaller since the article mentions the kernel extension was only around 4000 lines of code, but I guess the Android app is a bit more complex or pushed up by static dependencies and icons and stuff.
- AnthonyMouse 6y agoAnd this is why the stores are so problematic. At 10MB and $0.08/GB (which is really high FWIW, cloud providers overcharge for bandwidth like crazy), the cost per user is $0.0008. Meanwhile with ads on your own website you can get paid something like $0.002 per user. So if you could distribute the app on your own website and put an ad on it, you would get paid $120,000 for having a hundred million people download it for free. Even more if you use P2P distribution. But by forcing you to use their store, you lose money.
- lern_too_spel 6y agoPer update. If the users only visit your website once to initially download the app, you would be losing money after the third update. Using a CDN will drive down your delivery costs.
- AnthonyMouse 6y agoWhich is why it makes sense to distribute updates P2P. I'm a little surprised that nobody has already written an update framework that does this for desktop applications -- if the applications themselves are signed with a key contained in the original download then you can securely receive an update from any host, which means that each client only has to upload the package an average of once (i.e. it costs them on average a fraction of a penny in bandwidth), and the same for the original source. Some games already do this because they're so large, but it would make a lot of sense to factor it out so that multiple applications could use it.
- heavyset_go 6y agoIf you're optimizing for bandwidth costs, I certainly wouldn't be using Google Cloud Storage or AWS, either. You're paying a premium for egress traffic with both of them. This is kind of a false dichotomy, though. I doubt anyone would be developing their own CDN from scratch to distribute their app. In a world where other companies are allowed to enter the app distribution market and compete with Apple and Google, competition could finally drive costs down. There's no reason that instead of giving Google 30% of your revenue, you couldn't go with a company that is able to distribute your application more efficiently and at a lower cost to you.
- tgsovlerkhgsel 6y agoThe premise was "these stores should really have a mode where you opt-out from their advertising and billing services. Instead they should just issue the developer an invoice for bandwidth / store costs". At that point, the (expensive) GCS rates are exactly what you'd get.
- izacus 6y agoSure, but it's fair, it has the right incentives. Everyone pays clearly for their own part instead of hiding the costs.