There are two hard problems in computer science: naming things, cache invalidation, and off-by-one errors.
There are actually only two hard problems in computer science:
0) Cache invalidation
1) Naming things
4) Asynchronous callbacks
2) Off-by-one errors
3) Scope creep
6) Bounds checking
* https://news.ycombinator.com/item?id=38806257