blog, editorial

Bugs & Features

I’ve been thinking about bugs and features for four straight months.

Software devs have hated the metaphor since the birth of the internet. It’s too extreme; often bug reports are mislabeled as feature requests that need tweaking, or vice versa, and engineers don’t like prioritizing one over the other when needing to fix a program. I want to play with the concept regardless.

The simplest way to describe the difference is this: a bug is when a program is not working as intended, and a feature is when a user wants something from the program that does not exist within it.

In other words, a bug is ordering a beer and getting coffee. A feature request is ordering a beer at Starbucks.

“We don’t serve beer, sir. This is Starbucks.”

The customer understands he is in a coffee shop, but wants the coffee shop to also serve beer.

Another example: you upload a color photograph to Instagram, but it renders in black and white on your profile. That’s a bug. Wanting to upload a photograph to Instagram from your computer, however, is a feature that does not exist: the program is designed to only work through your phone.

For some of us, this is frustrating. We see features as bugs: we want to order coffee at the bar, like the Italians, because a place designed to serve beverages should also serve coffee. Coffee is a beverage, for Pete’s sake!  We want to upload to Instagram straight from our computers instead of emailing ourselves the image, saving it on our phone, then going through the app. To some of us, the features we want out of our programs (digital or not) seem like bugs.

I think this mentality extends into our personal lives and blockades our happiness.

This year was tough on everyone. We lost a lot of beloved artists. We lost a lot of political momentum. Apart from the Cubbies taking the Series and the Queen turning 90, this year was a tough pill to swallow. But I’m here to tell you that, although it feels like a bug, all of this is just a feature.

It’s how it goes. History tells us that. Art tells us that even better.

Ants (literal bugs) at a picnic is part of the picnic experience: it’s a feature of picnics. It comes with the brie and baguette, wicker-basket package.

I hear a lot of complaining. I’ve said many times that it brings me down. I don’t think that we have any room to bicker, even when it feels like we do. Even when your roommate eats all of your cracker jacks. Even when your bus blows a flat tire. I see a lot of my friends succumbing to cyclical nervous breakdowns and self-destructive routines because they are convinced the world’s dominos are stacked against them. I don’t think this is true.

I think it’s a matter of recognizing bugs versus features.

Athletes are very good at this.  Your three-hundred pound nose tackle, “The Fridge”, knows how to manage bugs and features.  The Fridge doesn’t go back to the huddle every down yelling about #53’s fingers in his eyeballs.  The Fridge just wants to eat the quarterback’s knees. He knows that it’s the center’s job to keep him hungry, that the offensive line is a feature, that, in his own words, “it’s just football, coach.”

Similarly, marathoners don’t quit running because of the hills after mile 15. Even if they didn’t look at the course map, they knew it was going to get tough. You won’t hear marathoners complaining about the hills, calling them bugs.

It’s a simple principal when it comes to the physical stuff, but I think we could all be a little better by keeping the perspective in tact with the intangible things. Fights with your lover aren’t bugs in your relationship. Working late hours during midterms aren’t bugs of your career. Going to your grandfather’s funeral isn’t a detour in the trajectory of your life: it’s as much a feature as dying itself. Your professors, your parents, your higher-ups, this year: these things aren’t out to get you. These are features of existing in this world.

Maybe the most charming post I read about bugs and features from a software developer concludes with the idea that it’s all a matter of little details. That the issues, be them bugs or features, are still just issues. It’s hardly worth distinguishing between them because you have to fix them anyway.

I like this idea, but it’s only useful once you understand the difference. The past four months have been a lesson in working with bugs and features, and in either case, I’ve had a problem to solve: How do I manage this challenge? I’ve learned this: bugs don’t deserve any of your energy, while feature requests demand all of it.

In other words, if you want to eat better, do not complain that ice cream exists, because Klondikes are bugs! If you want to eat better, you must spend every waking minute fantasizing about baby carrots. You must build your castle around the beet. You must salivate at the thought of a pea.

If you want to be a better lover, a better friend, an air pilot, a librarian, an early bird, a night owl, a city slicker, or a new resident in the next state over: squash the bugs. Put your shoes on and jump on the crunchy cockroaches.

Heading into the new year, consider your resolutions through the lens of the software developers, through the yin yang of bugs and features. Go forth and eat peas and eat hills and eat knees.

The Fridge believes in you!

 

Standard