If an app can accumulate 500MB of cache without pain to the app developer, I suspect cache management programming will remain a practice&skill mostly only for only systems programmers and the more bespoke backend programmers.
I assume Insta invests in engineering for whatever cache expiration they do. And if there's 500MB cache, probably it's a conscious engineering decision.
But maybe the majority app developers, if they could fill up cache, probably aren't thinking that far ahead -- not thinking about that non-visual, non-customer-story aspects. So most wouldn't have occasion to learn how to do cache management sufficiently well that they don't cause stability or performance problems.
...or they just don't care about users space on devices, and say "how deep does the top 1% of users scroll?", multiply that by average video size, and set the cache at a level, that makes the app download every photo only once, even for "the worst" users.
I'm probably preaching to the choir, but when people run out of space (real or percieved), they sort by size to figure out what app to remove. Even if the user does cycle through many apps because they can't fit all the ones they want at the same time (and many do), there's always a chance that they don't come back. And, if they do come back, verification is a cost center. Either directly, through SMS or voice costs, or indirectly, through support needs as people invariably forget their password, or their email address, or their username or even their phone number.
But hey, if the big names don't want to deal with it, more room for smaller teams.
Android will routinely clear out cache as it ages or when other apps need more space. The developers don't need to worry about cache usage if the OS is handling it all for them. The problem is that all the apps get a quota so you can quickly run out of space on the device unless you either have a lot of internal storage or can move the gluttonous apps to an SD card. I keep social media apps on internal storage since I usually want things to load quickly but keep apps that cache movies or music on the SD card since that's fast enough.
I assume Insta invests in engineering for whatever cache expiration they do. And if there's 500MB cache, probably it's a conscious engineering decision.
But maybe the majority app developers, if they could fill up cache, probably aren't thinking that far ahead -- not thinking about that non-visual, non-customer-story aspects. So most wouldn't have occasion to learn how to do cache management sufficiently well that they don't cause stability or performance problems.