John was a developer. To be specific, he was a young, white, straight, young, self-taught developer. He wasn’t rare, but he was special. John grew up with a couple parents, who paid for everything he needed. John regularly filled his belly, with the finest food his family could provide. John got every toy he asked for, once he learn that asking for 3 toys was a good way to get at least 1 toy.
John got average grades, but it was ok because [according to mum]; “he’s just bored of schooling, and too clever”. He walked right out of high-school and into a programming job. The pay wasn’t great; only enough for a small apartment and modest groceries [for one]. In time he’d earn more.
Over the years, John quickly got bored of programming. He loved the thought of the career, but it was all so boring. He moved jobs every year or so, and only then when his idiot bosses stopped seeing how much he mattered to their company.
It was just as well, because most of the other developers he worked with were idiots too. Did they even know how to program? All they wanted to do was talk and ask questions and they weren’t as interested in John’s work as intelligent people should be. He did once work with a girl developer, though. She was so pretty for a programmer. I mean, if you can call CSS and HTML programming.
I am angry.
For the longest time, I was John. I thought every boring task beneath me, every other developer mediocre at best. I was my own hero, and my mom was right (albeit annoying) that I was brilliant. If only those around me could see this.
But then I grew up a little.
I realized what an entitled, self-centered asshole I was being. How the people around me mattered and how I didn’t really matter as much as I wanted to believe I did. I don’t know if it was because I got married or had kids. I think both of those things can help someone grow up, but I like to think that I grew up because of how reprehensible I was and how appealing the alternative is to me now.
I don’t deserve a cookie. Being a decent human, and not an entirely loathsome asshole, isn’t an achievement. It’s just less common than one might think…
The problem many people like me suffer from is that we’re not forced to grow up. We are born into comfort. We never have to learn what it means to struggle. We don’t have to study to program, so we think we’re lucky, which quickly morphs into thinking we’re gifted. We never have to pay our own student loans, or learn to wake up early, to be at a job we value.
“Look at those doctors, electricians, plumbers, lawyers. They’re stuck studying some nonsense while I can work straight away. If only I could find a fun job…”
We move around, because it’s easy to get hired and difficult to hire talented developers. And being talented is no guarantee that someone can speak properly to others or do a good job. We believe that we can look busy and work at most 1 or 2 hours a day.
“They’ll still pay us, and if they don’t, we can just move somewhere else”.
We hate meetings, not because they’re a distraction (from the work we’re employed to do but not busy with), but because someone’s going to ask “how we’re doing with the project”. We hate that question because we can’t answer it.
“Things are complicated, trying to figure out what the other idiots have done/are doing/still have to do”.
We project every. single. delay on others. Our work is brilliant, but we’re tied up sorting out the problems others have foisted upon us. If this carries on long enough, we’re going to get righteously upset and quit.
It’s not just the meetings, it’s constant interruptions from the other idiots around here. People asking for help and not just writing good code. “If I have to tell them to RTFM again, I swear I’m going to delete their code”.
We just want to put our headphones on and finish reading this review of The Legend of Zelda (it sounds like a good game). Then we’re probably go back to reading that funny sub-reddit and soon it’s lunch. Maybe I can finish debugging that thing before the end of the day. It’s not like they need it before all the work the others need to do. Besides, the project managers always double the time things take, so I’m sure they’re just lying about the deadline at the end of the week. They think they can trick us. Idiots.
I am so angry, because I see so much of myself in this. I used to resist meetings, because they were the quickest way for someone to see that I hadn’t done the work I’d said I would do. Or worse: the work I said was done, even though it wasn’t. I didn’t want to be interrupted because they’d see I wasn’t doing anything remotely work-related at that moment.
And appearances were everything. Why admit I hadn’t worked hard enough, or didn’t know what I was doing; when I could just blame it one someone or something else?
I once spent a few days, in the office I had demanded, mostly playing World of Warcraft.
And you know what? I was the idiot. I was childish and entitled and didn’t deserve the trust others had placed in me. I was angry when they expected me to produce the work they were paying me to produce. I was angry when they politely suggested daily meetings. I was beside myself when they told me I wasn’t working fast enough.
I was wrong.
I am angry when I see these patterns in others. It’s not like I expect them to be perfect (I’m not) or that I’ve forgotten that I was once like that (I haven’t). It’s because I wasted so many career years playing at work. Failing to learn and failing to grow. And I wasted a lot of time and money of the people who trusted that I was being professional. That I was working to my fullest.
Even to this day, I interact with John. He tells me how little I know, and how hard things would be to explain to anybody I suggest to help him. How this API and that service are to blame for the bugs and delays, and it’ll be done when it’s done. I see through his resistance to daily catch-ups. I tire at his constant excuses and the promises he fails to keep.
I think of all these clever little things I could do, to force John to work. All these processes and mantras and check-lists. Then I despair. The only thing that’s going to make John realise he is wasting away is wasting away enough to fall through his safety net. He’s going to have to grow up on his own, and maybe then he’ll pay it forward to his future employers and clients.
I hope that, by this commitment to excellence, I too can be redeemed.
Frequently Asked Questions about Programmer Privilege
What is meant by ‘programmer privilege’?
Programmer privilege refers to the advantages, opportunities, and benefits that individuals in the programming field often enjoy due to their profession. This can include high salaries, flexible work schedules, remote work opportunities, and high demand for their skills. However, it’s important to note that not all programmers experience these privileges, and many face challenges such as long work hours, high stress levels, and job insecurity.
How does programmer privilege compare to other professions?
Compared to many other professions, programmers often enjoy higher salaries and more job opportunities. This is largely due to the high demand for programming skills in today’s digital economy. However, like any profession, programming also has its downsides, such as long work hours and high stress levels.
Are all programmers privileged?
No, not all programmers are privileged. While many enjoy high salaries and other benefits, others face challenges such as job insecurity, discrimination, and burnout. The experience of privilege can also vary greatly depending on factors such as race, gender, and socioeconomic status.
How does privilege affect the programming community?
Privilege can have a significant impact on the programming community. For example, those with privilege often have more opportunities for career advancement, while those without may face barriers to entry and progression. This can lead to a lack of diversity in the field, which can in turn limit innovation and inclusivity.
How can we address privilege in the programming field?
Addressing privilege in the programming field involves acknowledging its existence and working towards greater equity and inclusivity. This can include efforts to diversify the field, provide equal opportunities for all, and create a more inclusive and supportive work environment.
What are some examples of programmer privilege?
Examples of programmer privilege can include high salaries, flexible work schedules, and the ability to work remotely. However, it’s important to note that these privileges are not enjoyed by all programmers, and many face challenges such as job insecurity and discrimination.
How does privilege impact the quality of programming work?
Privilege can impact the quality of programming work in various ways. For example, those with privilege often have more resources and opportunities to develop their skills, which can lead to higher quality work. However, a lack of diversity can also limit the range of perspectives and ideas, which can in turn limit innovation.
How does privilege relate to the ‘John’ metaphor in programming?
The ‘John’ metaphor in programming refers to the stereotypical image of a privileged programmer – typically a white, male, middle-class individual. This metaphor highlights the issue of privilege in the field, as it excludes the experiences and perspectives of those who do not fit this stereotype.
How can I check my own privilege as a programmer?
Checking your own privilege as a programmer involves reflecting on the advantages and opportunities you have in your career, and considering how these might not be available to others. It also involves listening to and learning from the experiences of others, and using your privilege to advocate for greater equity and inclusivity in the field.
How can organizations address programmer privilege?
Organizations can address programmer privilege by promoting diversity and inclusivity in their hiring and promotion practices, providing equal opportunities for all employees, and creating a supportive and inclusive work environment. They can also provide training and education on privilege and bias, and encourage employees to reflect on their own privilege.
Christopher is a writer and coder, working at Over. He usually works on application architecture, though sometimes you'll find him building compilers or robots.