There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
However, with reactive programming these days this version by Dave Stagner probably is even more appropriate (especially since it uses zero-based numbering, which of course is the only decent way of indexing elements in a sequence …):
0) Cache invalidation
1) Naming things
5) Asynchronous callbacks
2) Off-by-one errors