It seems like a lot of the time we (as software developers) are forced to make trade-offs. Choosing between 2 algorithms that solve the same problem, but with different characteristics. Sometimes it's an easy choice: option #1 is O(1) and option #2 is