On fighting entropy
I read the latest post by Rachel Kroll, Tripping over the potholes in too many libraries and while it does feel a bit ranty, her writing is always inspiring, here are some of my opinions on the matter.
First of all, I believe in any system, process or program multiple people collaborate and work, things will tend towards entropy, that is the tendency of systems to break down into chaos, that is just a law of the universe, but one thing I have learned to appreciate over the last year or so is: even though things tend into chaos, our world seems to work pretty ok, lights still work, the city is not on fire, you have to take your car to the mechanic every once in a while.
What I’m trying to say is: most of your life consists in fighting entropy, entropy in code, entropy is physical things, entropy in relationships and so on, it’s not the best possible situation, but it is what we have, so here is my first point the world is entropy, it might not be what we want, but it’s what we have, getting frustrated about it gets you nowhere.
That being said, you just don’t stand there and do nothing, of course we fight entropy and curse and blame all those devil’s that do not do a proper job, we waste our time pouring over code and debugging faulty libraries, but… isn’t this what we get paid to do anyways? the very definition of being an engineer is about solving problems, even if you don’t like some of them, I get very frustrated having to fight CSS and device dependent errors, Rachel gets frustrated with some low level code, we all have our struggles.
She does make a good point about the missed opportunities, I agree with her, but on the other hand, another lesson I have learned is: as long as 80% of working functionality is enough for things to return to a OK state, nobody will care, worst of all a company, most of the orgs out there are not out to make the world perfect or a better place, they are there to make money (there are some notable exceptions), so that explains that.
So, fight entropy! get angry! well… that is a choice, you might chose to get frustrated or angry, you might also fix the issue, make the world a bit less chaotic (which is good), I will however get of the rails a bit here and suggest the following: get it out of your system, rant or curse, fix it if you want/can, but life is so much bigger than this, just as the world doesn’t care, neither should you (up to a certain degree), once you have done what you could/should, take a breath, step back, move on.
On the technical side, I won’t argue with anything she says, she knows better than me and she is bright spot in the engineering community.
In the future I would like to talk more about letting things go, I have had bottled anger issues and I feel like most of the tech industry pushes people to the extremes, engineers have very little introspection, more than one obsession and disorder and not a lot of people talk about it or share their feelings and experiences.