How to Worry Less About Being a Bad Programmer

Composed on the 27th of May in the year 2016, at 10:21 AM. It was Friday.

I just came across another manifestation of imposter syndrome, in the form of "Am I really a developer or just a good googler?"

The answer I read missed the point, so I'm going to break this mess down, because too many people are afraid for no good reason.

The fact that information is easy to find doesn't make you stupid

This is one of those stories I hear so often I assume it's apocryphal, but fact or fiction, the point stands: When asked for his phone number, Einstein looked it up, saying why should he memorize something he can find in less than two minutes?

In the 80s, the mark of the nerd was owning an encyclopedia. You didn't even have to read most of it: The most impressive encyclopedia in my house was from 1937, and the entry about the Nazi party was two paragraphs implying it was no big deal. Me simply knowing about one of the most incredibly wrong bits of information ever written—learned from one of the very things I used to get information—put me in the smart club. Because back then, interesting information was hard to get, and the mere impulse to go find it made you a nerd.

Now that even the most ignorant plebeians can get whatever information they want, the nerd elite have retreated and proclaimed there's some essential brain function that allows them to navigate the information deluge better than everyone else. As in all the most attractive fallacies, there's a transistor of truth in the notion: It's easy to feel superior to people who use the internet to look for articles linking vaccines to lizard people. But it's also easy to feel inferior when you waste an entire day struggling with a bug before remembering to search Stack Overflow, where you discover five people figured it out three years ago and two of them think anyone who wasn't born knowing the answer is an idiot.

The new populist information retrieval engine may make you feel weak for using something that anyone can use, but that's a terrible elitist emotion you should stamp out along with all your secret homophobia.

Forget all this crap about loving your job

My favorite job of all time was washing dishes. I was good at it, and I could do it on autopilot, and it left my brain free to go braining. The best part? If I looked haggard at the end of the day after cleaning two thousand plates for a four hundred top restaurant, nobody sat me down and asked why I wasn't more enthusiastic about my scrubbing technique.

If loving your job was a nonnegotiable prerequisite for doing it, civilization would collapse. I'm sure somebody finds spiritual satisfaction benchmarking the speed differential between i++ and ++i in their for loops and thank God for them because somebody has to program our nuclear guidance systems. The rest of us are just praying that the number of unread warnings in the "debug" email folder doesn't start going up so fast we actually have to deal with it.

The important part about jobs in the old days, before they took away the martini lunches and threw up motivational posters, wasn't that you loved it; the important part was that you didn't hate it and didn't make your coworkers hate it. Now that they've successfully pedaled softcore happywork porn to a generation desperate for salaried positions, it's okay for our employers to tell us to keep our cell phones handy on Christmas Eve. It's okay for some codehumper to make everybody else hate their job and themselves, because, hey, that guy loves what he does, and if you don't it's your own fault for not spending Saturday nights masturbating to tail recursion tutorials.

You can't win a perkiness contest against sales

Modern startups call out high-functioning apathy in the worst way. Because of the technology created by the people who truly did love hacking tape-based technology, we have a bunch of companies that are comprised of a sales department and a tech department, because every other job has been outsourced to a website run by another company composed of a sales department and a tech department. If you're in sales, loving or pretending to love your job is an integral part of that job. That's what makes the sales bucks. If you're in tech, your job is to make something work, and you can be as bitter as you need to be to get that job done, because the only product you're selling is your ability to implement the Stripe api, and nobody has to be aggressively cheerful for that to happen.

All your company meetings consist of attractive and bright-eyed sales people contrasting the tired dev team that wishes the meeting would end because they're already wondering how long it's going to take them to figure out the race condition bug that they know isn't really a race condition because it's never lupus.

You can't worry about this. Maybe you're socially competent, attractive and bright-eyed, maybe you're not. It has nothing to do with your job.

Ignore the pedants

Of course somebody will say, "Every programmer should know X."

I don't know X. For any value. Bubble sort? I assume that has something to do with Guinness and Harp. B-tree? Sounds like an evergreen. Hash table? I learned programming in PHP, so it was two years before I knew a hash table was different from an array. I didn't know the difference between a hash table and an array when OkCupid hired me. The gods themselves tremble before the judgmentalism of an OkCupid toilet paper dispenser, but they still gave me a job.

No matter what programming job you have, there will be a vast amount of programming you do not understand. If you manage to learn every programming language in the universe, some Russian twelve year old will mock you for not knowing how to overclock your CPU. Simultaneously, a Korean kid will hack your PS4 account while an American sucks down a latte and asks you why you haven't closed a series B. The French ops person just spits at you when you ask her to stop smoking in the server room.

It's kind of cool to be STEM smart now, because a particular application of a particular kind of logical problem solving puts the everywhiteman in a position to make an upper middle class income while making the business school graduates richer than anybody in the history of human civilization has ever been. Since the first bubble generation of CTOs grew up without a lot of sex but with a whole lot of microchips on their shoulders, the culture they accidentally created is a culture of obsessing over the ability to apply mathematics in whatever obscure way they thought mathematics should be applied, and everyone else can go kill themselves.

If they needed that, fine. When you're living pre-Google or pre-Vim, you need something to sustain you through the dark hours of discovering your Amiga doesn't remember your anniversary because you don't have an anniversary and probably never will.

Programming is new, and the original John McLanes who had to dig through machine code are still alive and accusing the rest of us of being lazy. But programming is now a job like any other, because everything you need to do to satisfy your BizDev team can be learned without reverse-engineering the prototype for Thag's Move Things Better Octagon.

Interviews are hell, get over it

You will walk into any given interview with what you think of as a cornucopia of arcane knowledge all but forcing its way out of your tear ducts to raise property values in a half mile radius. Much of the time, you will walk out of that interview wanting to give up and raise guinea pigs for a living. Every human knows things other humans do not, and most of us will eventually be in a position where another human is determining our future employment based on us knowing things very few humans know.

All interview processes are flawed. They will be flawed for as long as we lack an algorithm to predict a candidate's ability to produce work and not be a jerk, based on a smattering of nearly random input. An interview is a date with fifty thousand dollars on the line and no condom. No matter the profession, it is a waste of arrogance to claim the problem can be fixed if a couple of people think real hard about it.

Exactly no one knows what's going on anymore, but a lot of people are drawing paychecks and clicks by maintaining the illusion that they do. Some of them will interview you, and there's nothing you can do about it. When it starts to give you imposter syndrome, treasure it, because anybody who doesn't have imposter syndrome is a fool.

Make money

Did you get a paycheck last week? If so, good. You're ahead of the curve. Do you work in programming? Yes? Well, last week's paycheck just set you up above the heads of 80 percent of the world's wage earners, to say nothing of people who can't get a job.1[1] If you get a paycheck next week, you're not a fraud.

Where you see a mass of rotting spaghetti kludge sending usable energy to a pointless death, your bosses see a black box labelled "Guy Who Speaks Computer Good."2[2] They put money in, something happens, and lo! A product emerges that gets them more money. You may compare yourself to Tesla's wet dreams and wish you were a tenth as prescient as Ada Lovelace, but you shouldn't and you're not. Might as well grow your first beard in eleventh century Norway and assume you're Thor. You're not Thor. You're the poet who stayed on the boat and got to breed because everyone else was dead.

If you get confusing sexual feelings about pointers and 3D graphics equations, power to you: you were born in a generation that respects you directly, and indirectly worships you in a really creepy way. If you just need a job and are able and willing to accept that computers are measurably dumber than lemmings, you have everything you need to keep the information age running.

1 God knows we prefer to say nothing about them.

2 "WARNING: Do not test for drugs. Dry clean only."

Weirdly, I think she would be cute in the right light.

Hi there! You should totally go buy my book for the low low price of 6.66! It's like buying me a beer at an out-of-the-way dive bar in Brooklyn! Not in Manhattan. Manhattan prices are ridiculous, though there are a couple of decent Irish dives where you can snag a drink for five bucks. Otherwise, you're looking at a two or three book beer.