Managing your Significant Other when working from home

I’m writing a book about successfully working from home; click here if you want to know when it is complete.

When you start working from home you have to prepare those around you for the inevitable consequences of this new lifestyle. I’d recommend telling your neighbors, kids, pets, imaginary friend(s), team of personal therapists, and parole officer.

And of course the absolute most important person to prepare is your Significant Other (SO). A lot of people who try working from home give up after about a month and when you ask them why they say “I was driving my wife crazy so she threw a burrito at my face”. If you do not properly handle the work from home transition (aka “The Great Move Away From Pants) you will eventually have a burrito thrown at you – I just proved it with science.

When you start working from home your SO’s life is going to change in unexpected ways and they need to be prepared for this shift. The way you communicate, interact, and smell are all going to change in ways that they don’t expect.

Why? Because of mismatched expectations about the benefits to their lives.  The sad reality is that working from home does not offer many benefits to the significant other.  Maybe eventually you will look at them more and will be able to do cool things like eat lunch with them sometimes or do them small favors. But the reality is that telecommuting (i.e. riding your phone to work) has certain realities that lead to other not so pleasant realities for your SO:

Change for you Consequence for your spouse
You can achieve higher productivity because you don’t have to deal with others slowing you down You are less patient
Less physical interaction with others Your SO now lives with a slightly crazy person who thinks that eating cereal with eggnog instead of milk is totally normal
Cooler coffee breaks, low key lifestyle They slowly begin to become jealous of the fact that you get to listen to music/watch Oprah while working
No longer have to shave or get all dressed up They now live with a person who thinks track suits are a good look
Full-time access to Internet and kitchen Live with 120% more juvenile and fatter version of you
You are always around You are 140% more annoying

You can see these realities and mismatched expectations when you announce your transition:

Honey, I’m going to start working from home.

Your SO hears other things:

Sweetheart, I am now available to wait for packages and repairmen for you full-time.
Organic maple syrup, we can now talk on the phone for four hours a day divided up into separate conversations spaced 17 minutes apart even when I’m in the bathroom.
French Toast sticks you can eat on the go, We are going to save $400 a month that we used to spend on gas and soap so feel free to spend that guilt-free by yourself on something that upgrades our lifestyle permanently without chatting with me first.
Peanut Butter M+M Gift Basket, I have achieved more freedom in my life and you should let your jealousy boil slowly like in a rice cooker until it burns our intimacy like if you picked up a rice cooker and it was crazy hot so you dropped it on your head and wow that hurt.
Never-ending pancakes from IHOP, you know how when you call me at work you say I’m sort of a jerk and are different and sound stressed – you now live with that version of me!

The SO Management Plan

You need to make sure that your SO knows what working from home actually is and establish the below ground rules.

You wouldn’t like me when I’m working from home but will like what it makes me.

Tell your spouse / girlfriend / live-in monkey what working from home is – a risky challenge with a high payoff.  Working from home is stressful – you have to work much harder at staying in the loop, reading between the lines, networking, and focusing to get things done.  Managing the tension of working out of your home – where you used to just relax – is not easy. Let them know that focused/work version of you isn’t chill/at home version of you.

You working from home may offer no direct benefit to your SO but does offer massive benefits to both of you.

Working from home successfully is not easy and might not be all roses and free burritos for your spouse, but it does offer them some good overall relational benefits:

  • When you work from home you are more in control of your environment and schedule thus leading to an overall happier version of you
  • They no longer have to listen to you complain about co-workers (because cats are not co-workers)
  • You can, if managed properly, save an amazing amount of money
  • You can, if managed properly, have free time in the middle of the day to do other things (if you have a typical commute you can gain 10 hours a week to spend with your family, level up in your favorite video game, work on your novel, tweak your karaoke robot – whatever.  For those of your doing the math at home with an abacus: 10 hours is more than a typical workday that you gain.)

Separating work from home is a critical component of telecommuting success and is the only one they can help you with

Your SO can’t help you communicate effectively, stay organized, stay professional, and get more things done but they can help you separate working from non-working.  There are two common complaints that affect worker and SO: the SO complains that the worker continues working past normal work hours (since the office is right there) and the worker complains of being constantly interrupted by their SO during the day.  Both of these common failures are just cases of work and home not being separated aggressively.

How to separate work from home is a separate topic, but the attitude should be that during established work hours you simply aren’t there.  Any interruption should be run through the filter of “Would you have called me during work for this?”.  I have my SO text me just like she would have if I had been at work – don’t knock on the door.

I’d also suggest a month trial run in which you have very hard and fast rules about work hours, communication, and availability so that you set expectations firmly – i.e. as the worker don’t be helpful in the beginning.  The space this creates allows them to realize that after they leave you alone for a while you are able to establish yourself as a reliable telecommuter that you will be a more relaxed version of yourself.

Being left alone and in charge leads to super-productivity if you are intentional about it, and having more control means more freedom means more happiness, and will allow the sort of things that they desire.  When the Cheetos-dust clears most SOs when given the choice prefer a happy slightly crazy/stinky spouse to a clean miserable one.

I’m writing a book about successfully working from home; click here if you want to know when it is complete.

5 minute book review: Facts and Fallacies of Software Engineering

Facts and Fallacies of Software Engineering by Robert L. Glass is a fascinating little change of pace that I just finished reading. It was written by an academic-type (i.e. he may have a beard that he rubs while he talks) who also worked in the commercial the-code-has-to-work world. The book is laid out as 55 Facts and 10 Fallacies about software development across multiple topic groups.  In each Fact or Fallacy he states a conclusion, talks about any controversy surrounding the truth, and shows the underlying research.

A lot of the facts are well-known but they are still good to read since it shows you the theoretical underpinnings or empirical data. As an example I wasn’t aware of how much research has been done to prove this fact:

Understanding the existing product is the most difficult task of maintenance (Fact 44)

Some conclusions are well-stated versions of what many experienced programmers would nod their head to:

  • For every 25% increase in problem complexity, there is a 100% increase in solution complexity (Fact 21)
  • Error removal is the most time-consuming phase of the life cycle (Fact 31)
  • The best programmers are up to 28 times better than the worst programmers (Fact 2)
  • New tools and techniques cause an initial loss of productivity / quality (Fact 6)
  • Tacos are delicious (Fact -2)
  • Programmers like either Indian food or sushi but rarely both (Fact -3)

The list goes on and on. Some of the facts are a bit surprising and made me think:

  • Rigorous inspections [code reviews] can remove up to 90% of errors before the first test case is run (Fact 37)
  • Designer “primitives” (solutions programmers can readily code) rarely match programmer “primitives” (Fact 29)
  • Modification of reused code is particularly error-prone (Fact 19)
  • Better methods lead to more maintenance not less (Fact 45)

The Fallacies are even more interesting – Glass picks apart urban myths and particularly any thinking or techniques that are advocated by researchers and software salesmen that simply don’t work:

  • Software needs more methodologies (Fallacy 5)
  • Programming can and should be egoless (Fallacy 3)
  • Given enough eyeballs, all bugs are shallow (Fallacy 8)
  • You can teach people how to program by showing them how to write programs (Fallacy 10)

This book made me think, put into clear language some of my experiences, and was fascinating in that it exposed me to some research on software development. Recommended.

How to work from home without going insane (purple monkey dishwasher)

I’m writing a book about successfully working from home; click here if you want to know when it is complete.

So you’ve decided to work from home. As a rookie-veteran of working without a traditional office for one year I’m here to tell you that it is the greatest and worst thing that can happen to your work life – much like being transferred to a glitter-packing facility. What follows is a quick two minute guide of what you need to know before you take your pants off and turn up those old Hootie and the Blowfish albums.


Working from home completely changes your interrupt cycle. At a typical desk job you are interrupted constantly due to meetings, cake feasts, fire drills, people coming over to tell you about what the lake was like on Saturday, daydreaming about tripping said individuals, etc.

When you work at a location of your choice you can control what distracts you. If you want to work for 4 hours and not use the bathroom you can do it; if you want to work with 2 lbs of nachos taped to your face like a beard while wearing a sombrero filled with nacho cheese for snacking you can do this. Most people think they will be far more productive due to being able to control large blocks of time, but I found that the experience was quite jarring.

What you will realize is that outside of your normal distractions your body has learned to not focus for very long on anything. In my case after years of working in an environment where I was constantly interrupted I couldn’t focus on anything for more than 20-30 minutes (about the longest free period I had on average). I would internally interrupt myself constantly: twitter, facebook, doodling, trying to clean nachos that fell onto the keyboard from my nacho beard, calling the manufacturer of said keyboard after the ‘s’ key stopped working, writing a strongly-worded letter calling the manufacturer a bunch of “lazy jackae”, picketing outside their headquarters, etc. Typical stuff.

When you work in an office you don’t allow yourself to constantly be interrupted internally – you simply can’t watch every video that looks funny, you can’t read each article on The Morning News everyday, you can’t keep up with Hacker News like you think karma points are worth money.

The way to get over this is pretty simple – practice. I for one spent about a month making love to The Pomodoro Technique (meta: learning to make love using this technique is experimental and not recommended by most doctors) but it worked quite well for me in training my brain to recognize interruption events and stop them. Now I can go over an hour without eating a nacho.


When you have a ‘bad’ day at a normal job you still feel a sense of accomplishment – you drove to work, you drank some coffee, you attended a few meetings, you chatted with some co-workers about how little progress you were making – you did some concrete tasks.

Working from home alone you have days that you feel like you get *nothing* done. As soon as you get going you are interrupted, you spend a few hours working on something that you later scrap and start over, you can’t figure something out. These days happen in an office but when you are alone with them they create extreme emotions. The thing you need to remember is that one day like this can be followed by a sugar-rush Work-From-Home monster day: a day in which you get as much done in a day as you remember getting done in a week at BigCorp. An entire feature imagined, mocked up, coded, then just plain mocked, debugged, re-tooled, polished, stabilized, and then shipped.

Crippling Depression – ride it like a wave

If you work at home for long enough away from other real people you will be surprised how much you will miss the interaction. The annoying “did you see the game?” water cooler talk and “OMG Its Friday!!” chit-chat that used to make you want to hide in a conference room is actually a pretty effective social convention to avoid The Question: “Why am I working right now when I could be doing XYZ?”.

While working you will have many moments when you will think things like:

  • I work from home now, I could go take a walk – right now!
  • I work from home now, I could go eat some yogurt – right now!
  • I work from home now, I could ride a bike – right now!
  • I work from home now, I could watch The Wire – right now!

In the spring these thoughts are tough and you will stare out the window and cry a single slowly descending tear before turning back to your semi-colon delimited job and push through. In a normal office you don’t think about the difference between working and playing hooky because the threat of getting fired for playing Grand Theft Auto III at your desk is very real.

In addition you will need to take steps to keep in touch with others in your field less you become a Work-From-Home monster like many that I have met. Signs you are becoming cripplingly depressed without realizing it from working from home:

  • You see a former co-worker and talk for 20 more minutes than would be normal. Even after they have gotten up and left the stall you continue.
  • You are way too active on twitter, facebook, g+, etc. and constantly send videos to your friends like you work at Tosh.0.
  • You watch TV instead of listening to music and you talk back to the characters.  You think you hear Ferb talk back to you.
  • You drink Diet Pepsi just to let the pain make sure you can still feel something.

If any of these things happen put some pants on and go to a coffeeshop.

The greatest thing about working from home is your kids. They are also the worst thing.

This might be a personal problem as:

  • I work on the same floor of the house as my kids typically play.
  • My wife currently stays at home with the kids.
  • Before I worked from home I never listened to music while working (due to a deep-seated and irrational fear of being caught singing out loud a Jon Secada song)

I was very stressed with the noise of my kids and the general stress that kids cause when you do concentration-based work. I felt like a bad Dad because I would have to tell them 8 times that I wasn’t “done yet” but was just coming out to go to the bathroom, refill nachos, etc.

Once I realized that working at home meant more time with my kids I just mentally substituted the time spent in the car with time on the floor with them, and my stress melted away awkwardly like reheated queso.

Less informal communication means more organization

I’m an organic and an improviser. I’m not naturally organized. But working from home in the absence of informal methods of communication means that you need to have prepared the following:

  • a to-do list that you can share (workflowy, RTM, etc.) in less than one minute
  • a general daily plan that you can recite at beginning, middle, end of day.
  • a weekly plan of what you want to get done and what you did last week
  • a plan for when you will meet with the client, boss, parole officer next

Enjoy it

I know that at some point my work from home life will be put on hold or go away. And I decided when I started that I wanted to do a good job and to enjoy it enough that when I looked back I wouldn’t say that I regretted much. To remind myself of this I wrote “San Diego means a whale’s vagina” on my whiteboard (since this kinda isn’t the sort of thing you can do in a normal office).

So go – enjoy it. And please just go take a shower.

I’m writing a book about successfully working from home; click here if you want to know when it is complete.

Great discussion, as always, on Hacker News.

Republished on Lifehacker.

Fixing problems Part 1: Introduction and Attitude Adjustment

As DBAs, software developers, Homo Sapiens, and lovers we have to solve problems.  There is a common misconception that support is for the more junior folks on a team and thus being good at it is a sign of “being a little baby”.  While support is a great way to learn a software ecosystem and organization and thus “grow” a junior person into a senior one a lot of problem-solving falls to the rock star programmers or wizard DBAs in most organizations.

Yet some of these people aren’t any good at it.  In fact, they are awful.  I’ve seen people that are very good at doing very hard technical things – creating something from nothing, thinking of all the things that could go wrong, refactoring and integrating a large subsystem, etc. – fail at simply fixing a problem with an existing system. You can take your rock star and send them off to fix a support issue and they will return with a confused look, eight hours of wasted effort, a missing finger, and an STD.  Working with some truly gifted problem solvers I think that there are some differences in Attitude, Practices, and Skills that separate the junior and senior problem solvers.  Let’s start with Attitude.

First, there IS a problem

Never deny that there is a problem.  If someone is at your desk, on the phone, flooding your email with red exclamation points, or outside your house knocking on the window there is clearly a problem.  The problem might be that they don’t understand something and the problem might not be your fault, but the issue should be treated with respect as a real problem if they took the time to contact you.  Don’t deny it or argue.  Why would you deny it anyway, because you see support as negative.

Don’t see support as a negative shameful thing or a junior task

As long as things keep changing, there will always be problems.  (This next part is hard to put down in writing) If you aren’t writing bugs you aren’t writing software.  If you aren’t changing systems you aren’t working.  A support issue is not an insult, a bug is not a breakup.  Yes, you should make sure that you don’t write infinite loops, and yes you should make sure that you test the latest SQL Server upgrade before you install it in production at 10 am on the last day of the month.  But in most organizations there is a constant to and fro of creating new things and then fixing issues that crop up with them, so don’t pretend as if a problem is an anomaly.  True root cause and issue prevention are topics for another post, but don’t act surprised that software systems don’t always work as expected.


In my home office I have a fortune cookie taped to one of my monitors that says: “You have the ability to analyze and solve any problem”, and over time I have started to believe it (by looking at it 27 times a minute).  The fact is that most people that are good at support are good because they believe that given enough time they could fix any issue.  ANY issue.  Given 20 years and enough coffee they could learn C/C++, reverse engineer SQL Server, learn about cross-platform multi-threading, and fix that bug.

The ability to not freak out and lose it

Something is broken but don’t be scared (its just moving electrons for the highest bidder).  The fact that someone is at your desk and not someone else’s is a good thing, don’t panic and freak out and yell things that you’ll regret later (Aside: yelling is always regretted – only thing I’ve not regretted yelling “OMG ITs MILEY”). Don’t blame people or come off as condescending; assume that they are your desk because they know you can fix it, not because they think you caused it.  Figuring out root cause and a long-term solution are separate things; as are fixing and blaming.  You are in charge of fixing for now, so just focus on that.  Besides, over time a calm person is going to be relied upon more while those freakout will only end up on reality shows.

Next post – Practices that improve your ability to fix complex technical issues.