gravatar image

Hi! I'm Daniel.

I like writing, tweeting, sometimes give talks, and occasionally write code.

May 21, 2014

Computer Positivity

Let's face it, we've all been there, your database just decided to split brains, Linux just killed Apache on your web servers because another process was using a bit more memory, your app is broken because the type system of the language you wrote it in has interesting assumptions about what object you just passed to a function and your laptop keeps disconnecting from the Wi-Fi. It's fair to say computers are horrible right? And with all that certainty in mind, we reach for the small phone in our pocket, open an app, type into a text field and hit "Tweet", so that the little message gets send off to thousands of servers, which process it, find and extract data and then make our proclamation available to millions of people all over the world within a second:

Computers are terrible. Nothing works.

We all love to share our opinion and give talks about all the things that are wrong with computing. JavaScript is a popular topic, so is PHP, Redis, nodejs, Scala, Rails, Nagios, MongoDB and almost any other technology on different occasions. You can not spend a week (or sometimes even a day) without a new blog post about how some technology or piece of software (or better yet: everything) is broken lacking any positive take away.

I was at Monitorama at the beginning of May which is always amazing and great to meet and talk with friends and other people who work in infrastructure and operations in the vastest sense. And it's easily one of my favorite conferences. I got to give a talk there and close to the end before introducing how our Nagios setup works I asked the audience to raise their hand if they have strong feelings about Nagios. From what I could see almost everybody raised their hand. Then I asked them to raise the other hand if those feelings were love. Almost nobody did.

We have arrived at a point where a piece of software (granted with some fixable inconveniences) monitors a complex system of computers, lets us know when something is broken and arguably enables a ton of businesses. And yet almost nobody has to say anything good about it. Everybody will tell you how terrible it is.

This isn't about Nagios though. This is about general attitude. We work in a field where you can (compared to other professions) make a lot of money, usually don't have to be too concerned about unemployment (it's even kind of a sport already to complain and make fun of all the recruiter requests we get and be upset they are not perfectly tailored to what we want to work on) and generally get paid to solve problems. And then we start to complain about the fact that we can't always choose the problems we have to solve. We build complex systems with a myriad of interactions and components and then have the hubris to say we should understand them in their entirety and whoever doesn't is plain stupid.

Let's be clear here. I don't think you can never complain about things. I don't think everything is unicorns and rainbows. And I don't think you are not allowed to say something when things are horrible. But as a profession I get the feeling we have started to basically take negativity for granted. And with that we set an awful example for peers and especially (young) people coming to our industry. We say "computers are terrible" when it really just means "the computer does a thing that is really inconvenient for me right now". We have a machine in front of us that let's us boot other computers all around the world, talk to our families face-to-face wherever they might be and access any information known to mankind in an instant. Yet what we say is "look at all the crap we have to put up with everyday, recognize our prowess". We could invent teleportation and enable everybody to be anywhere they want in an instant. As long as it sometimes puts us inconveniently a couple of meters away from our desired destination we would be tweeting that "this is horrible and everything is broken".

Technology has made a lot of things possible for me. I would have never thought that I would live in what might be the best city on earth, love every day I go to work and am able to work on things I'm interested in, and have the opportunity to travel to conferences to have people listen to what I say about computers. Am I stressed, annoyed or even mad sometimes about yum resolving dependencies wrong, having to use a different way of comparing variables in PHP or the fact that my laptop goes to a blank screen again 20 seconds after I unlocked it? Yup. Does that make everything terrible? Nope.

I'm sure as hell happy and thankful I can work with computers every day, do interesting things and contribute to a platform where people create businesses and make a living on. Because computers are pretty amazing and I get to learn something new every day. And sometimes even feel almost like a wizard.