Home > Tech > Oh, what a tangled web we weave, when first we practice to denormalize.

Oh, what a tangled web we weave, when first we practice to denormalize.

Denormalization is a lot like lying.

First of all, when you use denormalized data, you don’t necessarily know that it is true, you just think it is true. It could be a lie, regardless of how much you hope it’s true.

The second thing about denormalization is that once you start doing it, you have to continue to denormalize in order to support your existing denormalizations. It takes a lot of time and effort to make sure that the lies you start to build look more or less like the truth, and to make sure you don’t contradict yourself.

The third similarity between lies and denormalization is that if someone discovers you’ve been lying (or denormalizing) by finding a contradiction, they may become justifiably angry.

There are also the inevitable pangs of regret. If only I had denormalized differently, maybe THEN, we could add feature X. Alas, to unweave the code, it will take at least Y hours to adapt this codebase of lies to work properly.

The final, and potentially most damning parallel between lying and denormalizing, is that both are unfortunately sometimes our most attractive option. When telling the truth about your data will not allow you to serve your users in the way they want to be served, in time frames they are comfortable with, that’s when the slippery slope begins.

I guess, with denormalization, it’s possible to disclose your lies in way that offers the ability to CYA (This data last updated at 2:00:00), and it’s also possible to just pretend like your lies are the truth (Your inbox says there’s new mail, but there are no unread messages when you check it? It must be your computer! Try refreshing the page!). In these cases, the interface may play the role of a politician trying to massage a relationship bruised by lying.

In conclusion, follow a few guidelines when either lying or denormalizing. Be sure to apologize to those who are hurt by your careless and insensitive denormalization. Also, be able to live with yourself in a sea of contradictions. And lastly, it’s okay to do little denormalizations. Adults do it all the time! Just don’t denormalize when I log in.

Yet Clare’s sharp questions must I shun,
Must separate Constance from the nun
Oh! what a tangled web we weave
When first we practice to deceive!
A Palmer too! No wonder why
I felt rebuked beneath his eye;

Tech

  1. No comments yet.
  1. No trackbacks yet.