Learning why database design is so important
In most cases, while your code is important, your data is far more important than your code. Let's say you have an online shop. If you have a bug in your code that prevents you from accepting orders, you are definitely losing money. However, at least the customer that is attempting to order realizes the order didn't go through. They might be annoyed, but they'll probably just shop somewhere else. However, if you suffer data loss or data corruption after accepting an order, that could be way worse. In that case, you have customers that expect to receive orders that they won't be receiving, and they will probably become very irate. It's even worse if the data loss or data corruption happens after the customer was charged, or the data corruption results in orders for customer A being shipped to customer B. Instead of just loss of goodwill, you may have an expensive lawsuit on your hands. For almost all businesses and...