Hacker News new | ask | show | jobs
by forrestthewoods 3743 days ago
Sadly cache invalidation is one of the two hard problems in computer science. It sounds easy and simple but... it's not.
2 comments

I realize that, but what aspects of it do you think are particularly hard in the example I used? Right now many people with 16GB phones have to go through a fairly painful manual process to avoid getting error messages/warnings about storage.

So while it is difficult, I think that from a product perspective there would be only upside to treating it as a cache compared with the horrible usability of a 16GB IOS device with a typical 2016 usage pattern.

Out of curiosity... what is the other hard problem?
"There are two hard things in computer science, cache invalidation, naming things, and off by one errors."

cache invalidation: distributed resource synchronization

naming things: all things abstraction

off by one: we always fuck it up somehow

Naming things and off-by-one errors.
Naming things. Also off-by-one errors.