Wanton destruction for the greater goodΒΆ
We live in an old house, and it's all wrong for us.
When I bought this house, it was perfect, or at least perfect enough.
But times have changed.
I have no small kids anymore, and rather than just right for two kids to tumble in, the garden is now too small for all the flowers we want.
And the rooms are not where we want them, there are too many stairs in all the wrong places, and the kitchen needs to be torn out and a new built.
I'm sure that some other family will be able to fall in love with this house, the way we did, but there is no realistic way to rebuild it, to become the house we want now.
For one thing, doing major surgery on a house while you live in it is double-minus-fun and it always slows the rebuild project down when you have to keep at least one toilet working and sanitary and be able to cook and sleep on the building site.
So we'll be building a new house on a plot of land on the other side of the road, one of the coming years, a house which is right for us, and then we will sell this old house, to a family with small children, who will love it, and rip out the old funky kitchen and make a new one before they move in.
One would think that software would be nothing like an old house, but they are more alike than most people imagine.
Using a major piece of software, is like moving into a house: You need to adapt your life and the house or the software to each other, since nothing is ever quite perfect, there will be limitations.
And those limitations affect how you think: If you live in a 2 bedroom apartment, you won't even be considering inviting 80 guests to a party.
A lot of Varnish-users have taken time to figure out how Varnish fits into their lives and made the compromises necessary to make it work, and once you've done that, you moved on to other problems, but the limitations of Varnish keeps affecting how you think about your website, even if you don't realize this.
Well, I've got news for you: You'll be moving into a new house in the next couple of years, it'll be called Varnish V4 and that means that you will have to decide who gets which room and where to store the towels and grandmothers old china, all over again.
I'm sure you'll hate me for it, "Why do we have to move ?", "It really wasn't that bad after all" and so on and so forth. But if I do my job right, that will soon turn into "Ohh, that's pretty neat, I always wanted one of those..." and "Hey... Watch me do THIS!" etc.
I could have started with a fresh GIT repository, to make it clear that what is happening right now is the construction of an entirely new house, but software isn't built from physical objects, so I don't need to do that: You can keep using Varnish, while I rebuild it, and thanks to the wonder of bits, you won't see a trace of dirt or dust while it happens.
So don't be alarmed by the wanton destruction you will see in -trunk the coming weeks, it is not destroying the Varnish you are using for your website today, it is building the new one you will be using in the future.
And it's going to be perfect for you, at least for some years...
Poul-Henning, 2013-03-18