I’ve been thinking recently that my life should reflect my coding.
With my coding, I like to write an application out in “full” (ie, no shortcuts), then look over the code I’ve written, and try to abstract out as much as I can, which helps to simplify the code, making it easier to understand and to extend.
As some people know, I’m a diagnosed depressive, which means that I tend to get overwhelmed by things pretty easily. I came to an understanding recently that this was partly because I had been living my life “in full”, where it was now time to abstract out as much as possible.
One example is my books and media. I have a very extensive library, with hundreds each of books, VHS videos, and DVDs. Whenever I need to find something, I have to go digging through all those things, which are scattered around my house, crammed wherever they will fit.
It is that “scattering” which I think is an apt description of how my life is at the moment – I have too many different types of bill, there are too many projects I’m trying to keep track of, and in general, my attention is too scattered to be able to progress with anything.
So, it’s time to abstract it all. I’ve started, by calling up almost every company I have a bill from, and organising direct debits with them. Next, I need to convert all my media into one single format (divx), and pack away the originals (in computer terms, the divx files might be considered an “abstraction layer”). Then I need to prioritise my projects, and cut myself off from those that I have no time for.
Then, I can sit down again and see if my life is still complex. If so, then there is more pruning to do. If not, then I can finally progress with my life.