Future-proofing your infrastructure
One of the most aggravating things about technology is its ability to change before you can adapt, and in some cases, before you even finish implementing what was considered new when you started. Future-proofing refers to planning things out as far in advance as possible. It also refers to working in a way that minimizes the amount of work that will have to be done in the future to make the current technology still work.
One of the most famous examples of code that was not future-proofed was the Year 2000 or the Y2K bug. For those who missed it, here's what happened. Developers needed to store dates. It was already common usage outside computers to store 2-digit years. For example, January 1, 1970 may be stored as 1/1/70. Using a 2-digit year saved space, which was at a premium at the time.
Unfortunately, far more of the code that used this strategy survived into the future than was expected. Even worse, even some code written in the 1990s was still...