For the past six months or so, I’ve been primarily doing freelance development work. And I have to be honest - it’s pretty lonely a lot of the time. Sure, I have a decent number of meetings with the people I’m working with or with friends/contacts, but a lot of this interaction is via the computer, and I end up spending a lot of the day on my own, staring at my computer screen.
Now, I’m not the most extroverted person out there (if we’re being honest, I’m a mildly to moderately shy introvert), but I do like being around other people at least some of the time. For the past several years, I’ve been noticing that I get lonely when I’m sitting in front of my computer coding. I like interacting with machines - they fairly simple and reasonably predictable, but after a while, it gets sort of old. Even though socializing hasn’t come naturally, I’ve found that I enjoy getting to interact with other people on a daily basis. The tasks I enjoy most are building things and seeing how real humans interact with them. Unlike computers, humans will always push the button that says “don’t click this,” or try to use your product for a different use case than the one you intended. They constantly surprise you. I’ve realized that I find it a lot more enjoyable to build things that real people can use than to build things that are just technically interesting. So, over the years I’ve been moving more towards “product-focused engineer” than “backend engineer,” even though I’ve had a lot of experience building backend systems. A lot of the work I’m currently doing involves building out front-end user experiences for early-stage products. Even though the actual work can be lonely, at least there is a part of it where I get to see the results of my work.
When I’m working for a company, typically I have coworkers who are in the same situation, so there are lunch times and periodic breaks to play chess/get coffee/etc… The problem with working on my own is that I don’t have those. And, to boot, I need to worry about hours on the clock, so every time I take a break, I end up feeling guilty that I’m not doing billable work. I’m slowly getting over that one, mostly because I realized that the best way to get in more billable hours is to take care of myself. When I’m feeling lonely, I tend to not be very productive, and I end up spending most of my time surfing the web and wasting time.
Loneliness is the primary thing that has killed it for me in the past. The last few times when I ended up in a flat spot (typically after the death of a startup), I ended up find a job pretty quickly. Typically, it ended up being the next reasonable option rather than the thing that felt right to me. Because, to be honest, anything felt better than sitting alone at home and trying to get myself motivated to be productive (when I didn’t even know what I was going to be productive with). But this time I resolved to stick it out for a bit longer. And things have gone reasonably well so far. I’ve found some great projects to work on, and I’ve been learning that it’s possible to make a living without having a job that I go to every day.
How to (Begin to) Deal With This
So what are the solutions that I’ve tried or seen for combatting loneliness? I can’t say that I’ve figured it out (I actually started writing this post because I was feeling lonely), but I’ve had the opportunity to try a number of different things. And talking to some other people, I’ve found that a lot of programmers/solo practitioners have to deal with similar issues, even though it isn’t something that comes up all that frequently.
The most important thing is to take care of myself (kind of strange how this ends up being a blanket solution to most of the problems one will encounter). If I’m not eating right, or sleeping enough, or exercising, or even meditating enough, I’m going to find myself feeling depressed and lonely (I haven’t been doing too well lately with a few of these). I also need to make sure that enough time is spent working on things “for me,” like writing blog posts, or building projects that I want to build. Finally, I’ve found that not working weekends is one of the nicest things I can do for myself. When I work weekends, I usually end up feeling resentful, and reducing my productivity during the week. I’ve recently instituted a “working hours” policy during the week. I set particular hours when I can do work, and the rest of the time I’m “off.” Even if I haven’t “done enough work,” it’s time to put away my stuff and go home when my “work day” ends. Of course there are exceptions, but I find that the “extra time” I work during off hours is generally pretty unproductive, and is better-spent reading or watching cat videos on Youtube.
The second piece is making sure that I have a reasonably active social life. This can be tricky if I worry about “the clock,” but in the end, I’ve decided that the clock will figure itself out if everything else is right. So I generally plan to go to events two to three nights per week. My philosophy on events is that it’s fine to leave if I’m not having fun, but at the very least I go and give it a try. Meeting up with friends/acquaintances/people who seemed nice at Meetups is also a good thing - I schedule at least a few coffees/lunches/meetings each week. I don’t accept everything that comes my way, but I find myself going to a lot of speculative meetings. Sometimes these even turn into paid projects, but even when they don’t, it’s fun to meet up with people and hear about what they are working on.
Another solution (this is actually turning out to be a necessity) is working out of a shared space with other people around. I tried working from home for a while, but it was way too isolating. I sometimes spent the entire day sitting at my kitchen table, and when it was time to go to bed, I realized that I hadn’t left home. After a while, I found a co-working space, which was fine for a while, but after some time I realized that it wasn’t the right situation (it was too far from home, so I ended up just working from home most of the time). So I visited a bunch of spaces until I found something that seemed right. The space that I chose is a 5 minute bike ride from home, gets enough sunlight, is fairly quiet, and still has the benefit of having people around. Plus, they have events a lot of nights, so if I end up working late, I might be convinced to go the to event instead.
A final solutions I’ve seen other people try is to find a business partner whom they can work with. It’s nice to have someone else around, especially if his or her skills complement yours, and whenever you’re feeling down, there is a good chance they can pick you’ve up. I’ve done this with startups, but I’ve held off on my consulting business, although I have friends who have used this to reasonably good effect. With a consulting business, it’s a bit trickier, because one person typically ends up having to find projects for both people. Which is more efficient in some ways, but considering that I haven’t had a full plate of work until fairly recently, I’ve held off.
On a related note, it can be good to have some people to talk to (even via text or GChat). It's easy to think that since I'm all alone at work (or wherever I am), no one wants to be around me. But that's clearly not the truth. I have a decent-sized list of people who I can ping whenever I'm feeling lonely or down. I used to suffer it out by myself, but I've learned that this is almost always a mistake. Within a few minutes, I can usually get someone on the phone/computer to talk to. Talking to another person for even a few minutes can make a huge difference. A lot of people are in a similar situation, and can sympathize with where you are right now. Heck, if you are ever feeling down, you can even ping me if you want.
So these are just a few things that I’ve tried - clearly it isn't an exhaustive list, but everything on this list has helped me at some point (and often many, many times). If the people reading this have any suggestions, I would be happy to hear them.