Hard Things in Computer Science

Phil Karlton, a well-known computer programmer, is often quoted for saying:

There are only two hard things in computer science: cache invalidation and naming things.

After many years as a software engineer, I have a proposed revision to this statement:

There are only three hard things in computer science: cache invalidation, naming things, and timezones.

See xkcd #2867.