4 ms·
OOM errors dropping by 30% when you go from 20 comments to 5 doesn't sound like "a job well done", that's more your initial hint to figure the hell out why 20 c
by revelation 11y ago
OOM errors dropping by 30% when you go from 20 comments to 5 doesn't sound like "a job well done", that's more your initial hint to figure the hell out why 20 comments cause memory issues.
- rhizome 11y agoJust this morning I was thinking about making a post here about how I recently had occasion to install Tinder. One of the most interesting things about Tinder (on Android) is that it crashes and won't load images ALL THE TIME. It is truly bizarre. Is it only the first-mover myth that gets these companies such high regard in the industry? These are the kind of product issues you wouldn't expect with the kinds of technical interviews these companies use. Didn't they whiteboard inverting a red-black tree with anybody?
- balls187 11y agoNot a tinder dev, but I am a mobile dev. What Android device do you run? What version of Android? Is it stock Android from Google? Stock firmware? Not excusing the developers, but I want to point out that from my experience as a mobile developer, the sheer number of Android device configurations is a real problem to deal with, and often leads to lousy experiences on Android (along with Apps being a port of an IOS app, and teams outsourcing those ports to dev shops).
- o_____________o 11y agoGood questions to ask, but Tinder on Android is truly terrible and the most unstable Android app I've ever used for any length of time.
- rhizome 11y agoIt really casts the lie to the quality of work done by high-valuation companies.
- o_____________o 11y agoOr that utility (in this case social/sexual) far outweighs things we devs might get hung up on. I keep using that app despite having it crash multiple times a day.
- rhizome 11y agoWell it's obviously the network effects that give it momentum, but sheesh. The existence of this app should obviate all future hiring threads. Reducing dating app friction to "sign in with Facebook and choose a few pictures you already uploaded" is a double-edged sword.
- rhizome 11y agoNexus 5, latest Marshmallow. Vanilla Stock. I'm guessing it's triggered by a backend load thing, because it seems like it either just stops responding, or hangs when it can't download an image, and the app goes numb. If you see a spinner in Tinder, go to the square button and swipe it closed. It's simply a fragile app.
- sigmar 11y agoI agree. and I'm surprised they made a blog post about this. The details of this seems more embarrassing than it is enlightening. >Comment bundles are particularly heavy: They contain the comment text itself as well as its id, timestamp, and author metadata (including profile picture). ... Generating profile picture URLs is a CPU-inefficient operation because we must dynamically compute the correct CDN URL. The more comments we load, the more profile picture URLs we need to generate. Is it loading the entire profile picture with each comment? Not just a small thumbnail?
- sloanesturz 11y agoI think it's only loading the URL to the profile photo image, which is stored in the CDN. Calculating the URL is, apparently, the slow factor. Maybe it requires some type of cryptographic operation that results in heavy CPU use?
- sigmar 11y ago>I think it's only loading the URL to the profile photo image Sorry, by "it" I should have written "the client." I meant to suggest my question of whether that is where their client OOM errors are coming from.
- mikeyk 11y agoWe load a small thumbnail; it's the extra memory allocated to strings that was the main factor that helped when we reduced the # of comments sent down.
- madeofpalk 11y agoMany 'big operations' will use some sort of image-resizer CDN, whether something custom made in-house, off-the-shelf/open source (like thumbor), or a CDN like Imgix. To prevent anyone from fiddling with the URL to generate thousands of differently sized images, they'll often have a way to 'sign' the URL to ensure people can't do this sort of attack. This can be expensive, depending on how its done I guess.
- 11y ago
- krschultz 11y ago20 comments * every item in the feed. I'm guessing their page size is something like 20 or 50 items. I could see dropping 400 objects out of memory as having an impact. Until you've actually done some performance testing it's hard to believe how strapped for resources some cheap Android phones really are.
- rhizome 11y agoYears ago we had OOM bugs killing a service. Turns out the developers were pulling the entire object graph and asset collection for every user displayed on a page.