history repeats itself

Here I am, on the wings of slowly calming down annoyance.

Stop reading for a moment and think about the most annoying thing you encountered in linux. For me, it is definitely the never-ending dependancy waterfall. Satisfying the requirements of application’s requirements. It reminds me of the unique feeling of dealing with “dirty laundry” – in the very same moment you finish the laundry, the dirty clothes basket is half-full again. The story might resemble the myth of Sisyphus and yes, it does feel like it.

However, the topic of this post have nothing to do with Greek mythology, or even with dirty laundry. It is all about javascript and the carnival of happy frameworks jumping euphorically around it.. And about ruby.. And about java.. And about php or whatever precedes java in the web development..

First of all, I’m in love with angularjs. Said so, please don’t nail me to the cross for writing the following lines.

As all good stories, this one begins with nodejs. But nodejs is not so interesting on its own. So you, young traveller, will need a backpack of toys, just to create a simple angularjs project. Because as we all know, unit tests are even more important than the 10 hours you’ll spend collecting all the dependancies for the testing framework. And even more important than the century you’ll spent writing and maintaining them. Of course, they will protect your clean code from one or two typos in the absence of a compiler. And, of course you’ll be up-to-date with the latest fashion in software development. Therefore, it must be worth it.

As everyone knows, one programming language alone is not enough to build a page showing “hello world”. Two hours later and you have successfully downloaded all dependancies to start and half of the internet on your machine. But is it enough? Silly question, since there is still another half internet to board in the deepest folders of your personal space. Places, you even don’t know the existence of. Security? You gave that virtue 2 hours ago in exchange for the sweet feeling of completing something. And yet, you still haven’t accomplished anything. Except “reading” the 20-page agreement and selling your soul to google, microsoft, apple and Facebook at the same time.. At least you can hope that at the end their lawyers will fight spectacularly for its possession. Where was I.. Ah, ruby.. all the fancy js frameworks want ruby and compass and probably cupcakes, who knows.. The important thing is, you spent a quarter of your life to get here, so you are more than willing to make them happy.. even if they want world peace, or unicorns.. Nothing can stop you now.

Tomorrow the sun will rise again and new generation of programmers will be born. And this new generation will come up with simple tools to accomplish complicated tasks. And their tools will evolve in unmanageable ball of config files and libraries.. So it was, so it will be.. After all, our only purpose in this funny world is to increase the entropy. And as I am getting madder from loosing control of my time, I also get prouder of being part of all this insanely creative dough called humanity.