Living with Depression in Tech

I’ve been trying to avoid writing about depression for a while now. Almost nobody in tech wants to talk about things like this. A stigma still very much exists around mental illness, and in tech with all its flaming, trolling, and fragile manhood egos, people have learned to be thick-skinned. It’s taken me years to realize that I never stopped struggling with depression throughout my dysfunctional childhood, and I’ve carried it through my teens and adult life with me. I was diagnosed and medicated as a teen, but didn’t fully understand that it still haunted me, playing the same old record grooves in my brain in adulthood. As my thyroid disease began accelerating, I needed to work even harder to maintain balance or the world would come crashing in. Struggling through my career and relationships, things became easier after I understood what was going on inside of me. I feel a certain responsibility to bring to light what is likely a widespread issue in the tech community.

Depression can manifest itself in various forms for different people, and my story isn’t “everyone’s” story. I can only write from my own personal experiences. Most of this has had lifelong personal struggles unrelated to work, and while one can probably deduce this, the focus of this post is handling professional challenges. You might identify with some of these issues, and that’s great if this post helps, but it also shouldn’t be used for self-diagnosis. Depression has been far worse than the details I’m willing to share publicly, and if you think you may be depressed, you should seek professional counseling.

I have no background in psychology; I’m just sharing what works for me. I have no background in medicine either, and having been on and off medication, I can’t recommend one way or the other. I do know that all medication has its limits, so learning how to cope is an important part to having a complete life plan. At the end of the day, I can’t solve your depression (or mine), but I can share how I’ve coped with it, and won some victories. This is a survival story that hopefully might have some meaningful advice for others.

There’s a spiritual component to being human that many in tech aren’t willing to consider, and I respect that, so I’m not going to try and shove God down your throat, but I would be amiss to not at least mention that my faith in God has helped talk me down from the ledge several times throughout life, and I can’t imagine how difficult going through this must be for someone who doesn’t have that hope. Hope is so crucial. The fundamental concept that people of all walks of life have intrinsic value is one of the core messages of Christianity, and without a connection to the unconditional love and forgiveness both offered to and required of me, I probably wouldn’t have made it this far. That said, anyone who says being a Christian is a cure for depression is selling something. God is an anchor, not magic beans.

Happiness and Self-Worth

A lot of people fail to understand that depression isn’t about happiness. For me, it’s included a lifelong struggle with self-worth, which is one of the things at my core that has caused so much sadness. I’ve felt worthless since I was about 8 years old. Technology has been an escape for me since around the same age, and brought me into a new world of excitement and growth – from a TRS-80 with a tape deck, to various PCs, an Apple ][gs, a PowerBook 180c, to the watch that I wear today that’s more powerful than all of them put together.

I spent much of my younger life believing that if I could make something of myself, I might be able to stop feeling so worthless. So I grew up and somehow ended up spending ten years helping law enforcement and government work the forensics in their criminal cases, wrote a bunch of books, and continued to work exhaustively over some 20+ years in engineering. You’d think I’d be a pretty confident person by now, but most of the time I still feel like the dumbest person in the room.

Not dumb. Stupid.

There’s a line between a healthy dose of humility and unhealthy mechanisms of self-hate. We should all feel a little dumb in this field from time to time. That line gets crossed when we start to feel stupid. Incapable of learning. Incapable of ever becoming a useful human being. Just worthless. This leads down another unhealthy and potentially dangerous thought process starting with, “I don’t deserve”.

It’s unnerving how a bad decision or a bad experience can lead one to feel dumb, then stupid, useless, and finally to feeling as though you don’t deserve a job, or a house, or a family, and if you don’t recover from it, even feelings that you don’t deserve to live. A depressed person can go through this cycle over and over again for years. While healthy minds will recover from bad experiences, a depressed mind just keeps playing the records over, sinking deeper and deeper into self-hate and self-aggression. The toll that can take can leave someone a shell of the vibrant, passionate person they really are. If you’ve been in these shoes, you’re most definitely not alone, and you don’t deserve to feel this way. Nobody does.

Reflective Thought

There are plenty of articles about challenging negative thinking, but many feel cliché, and probably weren’t written by someone who’s ever struggled with it. It’s also impossible to avoid dealing with negative thinking in tech due to toxic cultures, egos, and ownership complexes. If you’re familiar with reflective languages, reflection is the ability for a computer program to examine, introspect, and modify its own structure and behavior at runtime1. It’s like working a model train set. You can step outside of the train and change the tracks around, or even change trains.

Reflective thinking is inspection and modification of your brain runtime, sometimes while it’s still running. Learn how to identify when you’ve been triggered to some unhealthy line of thought, and step outside of and isolate that running process. Evaluate if it’s reality, or the depression talking. From there, re-evaluate your conclusions based on rational fact and either resume the task, or kill it entirely. This takes a lot of discipline and practice. It is essentially learning to identify when your thoughts betray you, and when to discard them in favor of logic. It requires consistent practice at enlarging the amount of space you allocate to containerize the emotions to where they’re eventually tractable. If you can containerize your thoughts, then you can also context switch in and out of them.

Depression speaks in half-truths that can be both convincing and increasingly extreme as you entertain the thoughts. When it happens, there’s a line where you realize something’s not quite right in what you’re allowing yourself to think and feel. Ask yourself if what you’re feeling makes any logical sense – if it’s consistent with reality. Repeat the facts about what’s going on back to yourself, and what you’re feeling. Does it sound ridiculous? Is it inconsistent with what’s really going on? You’ve just won.

Reflective thinking is one of the biggest tools in my shed at dealing with self-hatred, anxiety, panic, and frustrating conversations with people.


Another tool can be found in learning healthy self-correction. I’ve had plenty of failures during my career. If you’re like me, when you screw something up, by the time a coworker or manger tells you about it, you’ve already beaten yourself up far beyond what you deserved, and really don’t need to hear it again. This goes for personal life too. Of course, the person approaching you doesn’t realize that you’ve already confronted yourself with this already, and that it’s wrecked your self-esteem by the time they got there. You’ve probably gone through a few cycles of self-hatred and further down the road of not believing you deserve anything.

Because you’ve already gone through this in your mind, greatly amplified, the first tendency is to push the other person away and paint them as the aggressor. This can hurt relationships and sometimes even put jobs in jeopardy. It’s not only an unhealthy coping mechanism, but inaccurate: here, your depression is the aggressor, and it’s silently beaten you up, with nobody to come to your defense; no one else is aware of how bad you feel already. Remind yourself of this.

Healthy self-correction is when you don’t allow you to beat up on yourself, but instead examine a failure objectively. What went wrong? What should you claim responsibility for, and what external factors could have stopped it from going wrong? Did you lack support? Resources? Time? What external failures led up to it? Identify what you needed to have succeeded, and what decisions you should have made better. Walk through the details with yourself.

Depression tends to cause people to either assume all of the blame, or to try and deflect all of it. Own your bad decisions, but don’t blame yourself any more than you deserve. In fact, try not to assign blame at all – assign responsibility, and expect other people to take responsibility where they should. By the time someone approaches you about it, rather than being aggressive toward them, you’ll have already been able to assess the issue and deliver a coherent explanation, assume responsibility for the parts you should, and explain not only how you’ve learned from the experience, but how this is important to the rest of the team as well.

It’s important to communicate to your manager that you’ve gone through a process, otherwise you risk giving off the impression that you don’t take the failure seriously, which is the complete opposite of how you really feel.

Walk in 100% of What You Know

Feeling stupid, ironically, helped drive my insatiable thirst for learning. I love learning, and have always been driven. Part of that, I’ve come to realize about myself, is probably to try and feel a little less stupid all the time. I consider this to be one of the ways in which I’ve leveraged my depression: by using it as a source of drive to better myself.

I don’t know as much as a lot of people in this field, but I’ve become determined to walk in and share 100% of what I do know, and I do that damn good compared to the so-called rock stars. Be comfortable with what you’ve got. If you know only 1% of what others know, but walk in 100% of it, you’re going to achieve more than someone who knows 100% and only walks in 1% of it – and if there are a hundred people out there walking in everything they know, then they’re collectively going to outperform the rock stars in every way.

Learning is important. Getting to 100% isn’t nearly as important, though, as consistently walking in 100%. To let you in on a secret, there really is no 100%; good science continually leads to more learning. Do the most you can with what you have, and not only will you make great impact, but you’ll find you’re still learning and growing your skills.

There are a lot of people competing to be top dog in this field. Many are extremely bright people that choose to elevate themselves by pushing others down. Others hoard knowledge for fear they won’t be special without a bag of tricks. Others have their own character flaws that they’ll have to face some day. Please, please, strive to be the antidote to this:  Freely share knowledge. Be an encouragement to this field. Lift others up and collaborate, build, and make an impact together. There is always someone smarter than you, but there are also a lot of people behind you – you could be the one to help advance them.

There Are No Rock Stars

If you devote yourself to doing good work and making impact, you’ll quickly realize what many others in the tech community have: there are no rock stars.There’s not a single skill in this field that any self-proclaimed rock star or stunt hacker knows that you can’t learn yourself, and probably become even more proficient at. You get out what you put in. Computer science is one of the few fields that is based solely on human ingenuity. Everything down to the Boolean logic gates, lambda calculus, data structures, and processor microarchitectures: it’s all an artificial, man-made (and woman-made) construct. Unlike other sciences like physics, biology, and mathematics, where God made the rules, everything you’re studying in computer science started as an idea somebody had. The first several iterations were probably awful. Eventually, it got to something workable… and here we are! 

This should be very comforting. At the end of the day, we’re all impostors. Your entire success in this field is based on how much time you want to devote to understanding other people’s ideas about what a computer should look like. Some of it is really fantastic, some of it really sucks. The top minds throughout history still haven’t been able to make perfect computers. There is plenty of work to do, and it begins with understanding other people’s ideas and building on them. Whether you’re studying computer architecture, artificial intelligence, or any other related area, nothing is off limits, and nothing requires a PhD to innovate in. You have the chance to make great impact in this field if you devote yourself to learning and muster the confidence to innovate.

Seek Impact, Not Credit

Confidence can be really hard to come by in this competitive field. I’ve only seen one consistent pattern of success, and that is to seek impact rather than credit. Basing your confidence on a reputation means that your self-worth is entangled with others’ opinion of you and their perception of the significance of the work you do. When you seek reputation, you’re giving license to other people to judge you, when you’re the only opinion that truly matters. Whether or not anyone recognizes all that you do is irrelevant. What’s important is that you are accomplishing what’s important to you, and making an impact in areas you want to impact, and in the lives of people you want to impact.

When you chase after impact instead of credit, things get a lot clearer about your mission. You’re more inclined to share what you know with others, to give away a lot of whatever you’ve created because you know it’ll go further and even inspire others. You’ll help advance other people because you’ll know that you had a hand in the impact they’re making too.

Code ownership even changes. This relic from the 90s that’s made otherwise bright teams completely dysfunctional is suddenly more tractable when the focus is on impact, rather than who gets to own the damn thing. It’s the spirit of where agile programming emerged from. The best agile teams understand that it’s the impact and not the longevity of the code that matters. Technical debt cycles out in good agile teams, because they’re passionate about innovation and okay with the concept of doing work. With passion comes drive. With drive comes better collaboration, and ultimately better design evolution.

Focus on one thing: Doing good work. Meaningful work that is satisfying to you. Be a philanthropist with your knowledge, a freight train with your work, and indifferent about your reputation. If you seek impact first and foremost, that’s what you’re going to make.

Look up to those quietly making a big impact in this world and try to be like them. When you’re not chasing after the approval of others, you also become a pretty good bullshit detector. When you see someone whose reputation is louder than their impact, you’ll be able to recognize it, and you wouldn’t trade your impact for all the cred in the world.

Avoid Toxic People

Nothing will drag your well-being down faster than dealing with toxic people. The toxicity and the affect it had on me is the biggest reason I left Twitter. It is, by definition, poison, but can be an order of magnitude stronger for someone already dealing with depression. If Twitter wants me to expose myself to the kind of abuse and toxicity they invite on their platform, they can pay me for it.

Cutting off sources of toxicity is a step toward self-preservation. Yes, we should try and work through differences with people, but when those relationships are irrecoverable, you owe it to yourself to get away from them, whether virtually or in real life. Your first responsibility is to you and your emotional well-being.

Social media is an artificial construct to begin with! Self-worth cannot be in any way tied to follower count or social media popularity. Popularity is a volatile and superficial construct in real life, how much more so is it online. Follow counts don’t translate cleanly to reputation. They don’t translate cleanly to friendships. In spite of the fascinating parallel to fiction that ties social media popularity to an ephemeral, reputation-based currencyof sorts, some of the greatest minds in the world either have very small follower counts, or aren’t on social media at all… they’re too busy making an impact to even bother.

At the risk of sounding anti-capitalist, the more that social media companies can make you believe you need to have a strong social media presence, the higher their inflated corporate valuations get. Social media uses you a lot more than you use social media. Keeping you online directly translates to demographics for marketing, advertising dollars, and ultimately captive eyeballs. You’re the product. Follow counts have no bearing on your own success in the real world. If you struggle with pressure to maintain an image or to curate a persona online, the sheer volatility of that is going to, at some point, begin to drag you down and affect your emotional state.

Seek Robust, Reciprocal Relationships

I don’t do well at friendships. I’ve tried for decades. People just aren’t reciprocal, and you end up being the only person putting energy into them. Then ten years later, someone will look you up only when they need something. Happens all the time to me, and it tanks my self-esteem. It would make anyone feel used. Human relationships are the only thing that will have value when you’re 96, yet they’re the one thing we work on the least. The best advice I can offer is to work at relationships, but at some point, stop wasting your energy on non-reciprocal ones. One-way relationships are a drain on self-esteem and time.

Coworkers at many companies tend to avoid personal relationships. What a wasted opportunity. We’re put on this Earth for a very short time. If you feel passionately about the impact you’re making at work, then you share a connection with others. We have one chance in life to get to know and to encourage the people around us. At the end of this, all the tech we created is going to be obsolete and worthless when it reaches end of life. It’s the lives we’ve impacted with it that will matter.

Making friends outside of tech can be equally rewarding, and give you the chance to slow down and unplug from all of the drama in this industry. It gives you an opportunity to appreciate someone for qualities that are completely different from your own, enjoy a different type of life when you’re hanging out, and may open your eyes a bit as well. This can also reduce your pressure by letting you just be a human, and not necessarily a nerd – which is hard work. In tech, a lot of people look at non-tech as sheep, but in reality, there are some people out there a hell of a lot smarter than us who can’t figure out how to get their printer working. They’re worth the time to get to know. They might even share your core passions, but in a different way.

Communicate Well

It’s important to stay connected to people you work with. From a management perspective, having a more active feedback loop than the norm can be a particularly sensitive need for someone with depression. For years, I’ve found myself constantly wondering if I’m doing a good job, or if I’m failing miserably at this and nobody’s telling me. Anxiety can build up to ridiculous levels when you don’t get enough feedback, and you can read too much into a dry spell of communication to even start worrying about losing your job for absolutely no reason whatsoever.

Such anxiety can be a huge, demotivating stressor if you haven’t gotten any feedback in a while, and so the antidote is to keep communication open with managers, making sure they understand that you need a regular [and honest/open] feedback loop. A good manager will work to communicate at a level that you need; it’s in his or her best interests to, as your performance is one of the things they’ll be judged on.

In relating to others, it’s easy to get shot down in tech, and nobody enjoys it, especially if your ideas haven’t had a fair shake. Too much of this can be detrimental to your morale. It’s good to review a topic before getting into a discussion or meeting, and poke holes in your own ideas. This will help you prep so that you have answers when you’re discussing in real-time. It’s important to sound confident and sure of yourself if you want to be heard, and so knowing exactly what you’re talking about will help you to form responses in advance.

Asynchronous communication can help for thinking out complex topics between face-to-face conversations; it’s important to take time offline to think about your responses before expressing them, especially if they’re getting you emotional. Writing out the entire plan, with answers to anticipated questions and opposition will help to refine and distill what it is you’re proposing. Understanding the nuances to your own plan makes for an even better one.

Technology should be about who has the best solution to a problem, and not who’s the most aggressive in a meeting. Unfortunately, it can often go the way of the latter, so learning how to advocate for yourself and defend your position is important. The way to do this is not to become more aggressive – this only makes the problem worse, and increases the total smart asshole3count. Instead, develop exceptionally well thought out responses that elegantly, but effectively shut down attacks against your ideas, using intelligent and indisputable technical arguments. I’ve seen the pros do it and it’s a beautiful thing when it happens.

Walk through the entire conversations you anticipate you’ll have, fully understanding the personalities that will be in the room. Come up with responses for best and worst-case reactions, and refine your ideas along the way. This is useful advice for anyone, but is particularly useful in preventing you from being too frequently shot down, interrupted by aggressive people, or ignored. While most folks would simply leave the room frustrated, such encounters can easily leave a depressed person feeling useless or like a failure, and withdraw from future discussions. That’s not what you deserve for yourself.

Get High, the Right Way

People deal with depression in ways that are either healthy or unhealthy. The unhealthy mechanisms are easier and provide a high; an anesthesia to try and forget you hate yourself, even if (or sometimes, especially if) they’re destructive in the end. In tech, anesthesia typically takes the form of drug or alcohol abuse, a porn addiction, committing tech crimes, online trolling / doxing / humiliation, or even just being dictatorial toward contributors to a project.

If you’ve been in tech long enough, you’re smart enough to know that there’s a high you can get by immersing yourself in totally owning a challenge. One of the things that got most of us into tech was the thrill of the challenge. Being creative is incredibly good therapy for anyone struggling with depression. It helps to light up your brain, countering the effects that depression has in turning it off. Challenges grow you, rather than destroy you, and can build your confidence and spirits back up. Finding new personal projects to spend time on can give you something to really sink your teeth into, to enjoy and also feel smart at, and eventually feel that same excitement in owning it. With personal projects, nobody needs to know about your failures along the way, you can learn at your own pace, and when you do finally nail what you’re doing, it usually turns into a conference paper.

You’d probably be surprised at what else your mind is capable of simply because you’re highly intelligent – you must be if you’re working in tech. Writing and music have always been therapeutic channels of expression for me, but in addition to therapy, there’s a need for growth. I’ve recently started fixing up old pinball tables. I’ve also taught myself how to take professional photographs, speak Norwegian, read Greek, and a dozen other things that just seemed like good challenges. When you’re in your lows and feeling worthless, you can look back on all of the other skills you’ve picked up, and it can help take the edge off. More importantly, rising to the challenge can also give you that same rush you had when you first broke into tech.

For deeper technical learning, the best way to learn is to get involved in research that’s above your skillset and out of reach – a different kind of challenge. There are a bunch of great free online college classes you can take / watch to expand your learning. I’ve got stacks of college texts, architecture manuals, and books on data types, algorithms, machine learning, and anything else I can get my hands on. If you’re up for a challenge, another approach that’s worked for me is to dig into some random research paper and try to learn about the area of research, then reproduce their results. There are papers, source code, hardware, and plenty of resources out there to dig into. Find something challenging and be willing to learn. One of the great benefits to this is that you become more proficient at learning itself!

Feeling a personal level of success can help to maintain your self-esteem, and give you a pool of successes to draw from when you’re feeling like a failure. It helps to keep confidence in yourself up too, and not hedge it all on your job. There’s a lot more to you than the job you work at. If you’re working in tech, you’re a lot smarter than you probably think you are. Anything you want to learn is within grasp, if you have the confidence to stick with it long enough.


It’s hard surviving in the tech community, no matter who you are; at times, I wouldn’t call what I’ve gone through to be surviving, as much as being peeled off the pavement, but I’m still here. The typical struggles this field presents are amplified significantly when trying to navigate it with depression. It’s about time people started talking about it and stopped pretending it isn’t an issue. Tech culture is bad enough as it is. We’re a bunch of nerds at the end of the day. Many of us traded font disks at user groups and bootlegged cheesy games over 2400 baud. I don’t get how things got so bent out of whack, and I’ve only scratched the surface of the problems in tech.

There are probably a lot of people struggling badly with depression in this field, who would benefit greatly by being given permission to be freely open about it without risk of ridicule or repercussion. It would benefit tech greatly if we thought about these issues rather than how to build a bigger rock star stage at cons. There exists the potential for supportive tech sub-communities, cultural changes, and improved resources for what I think is a more widespread issue in any workplace. Peer groups, meetups, better resources, and confronting the social issues in our small community could have tremendous impact, but we have to be open to having these discussions before anything can improve.


  1. A Tutorial on Behavioral Reflection and its Implementation, Jacques Malenfant, et al.
  2. Cory Doctorow on whuffie; Truncat, Aug 2003
  3. Malory isn’t the only imposter in infosec; Ben Hughes