#7: All Consuming, or, How to Partition

As one might partition a hard drive, I’ve found that learning to partition one’s thoughts and priorities is vital when it comes to being a programmer. In my previous career in politics and government, I worked directly for candidates and representatives whose entire lives revolved around their campaigns and careers. And since their days were consumed by politics, they also tended to expect their employees to be available day, night, and on weekends. Early on, I found that this was extremely taxing on my mental health and I found myself anxiously avoiding hobbies or time with friends knowing that my boss, at any moment, could call and ask for advice, an email, or a sound byte.

Enter partitioning. I’m not sure where I first heard of the technique, but I eventually learned about a way of “splitting off” one’s thoughts and emotions to only think about what’s relevant to one’s situation at the time. When I was at work, I had to learn keep my mind from wandering to what I was going to do that weekend, something I wanted to do in a video game, or daydreaming about fishing at the beach near my house. Similarly, when at a bar with friends, playing video games, or fishing, I had to force my attention to the moment and not think about unfinished work, upcoming deadlines, or anxiously check my phone for missed communications from my boss.

It took practice and time, but I was immediately grateful for the results when I did. The technique helped keep anxiety at arms length when it was time to relax and distractions away when it was time to focus on work. Though partitioning in and of itself took effort and discipline to enforce, I found that on the whole it led to better mental health, more focus, and more fun.

Now that I’ve transitioned into software engineering, I’ve found the situation to be messier. Since, at least while I’m in school, work isn’t defined by hours in an office, projects and assignments tend to bleed into other areas of life. I’ll be stuck on a bug or a feature I can’t quite figure out how to implement and take the single-minded frustration with me to dinner with family, or I’ll have to close out a project at the end of the “work day” because my brain is fried, but be unable to enjoy hobbies because I’m still thinking about how I left something unfinished with no clear idea how to proceed. I constantly have to remind myself to implement my own strategies of partitioning and quite often switching mindsets ends up enabling my subconscious to continue processing problems I was having and lead to a Eureka! moment in the middle of a meal where jumbled thoughts become clear scribbles on a napkin.

So advice to all my fellow students and future software engineers: learn how to partition your thoughts and emotions. Your quality of work and quality of life will thank you.

Leave a comment

Your email address will not be published. Required fields are marked *