Sometime on May 6th - over two weeks ago now - I shot out a innocuous tweet asking what might be a good blog topic. I think I said something like "python, family, ...." - the overwhelming majority of them responded with "write something on family", ironically, as I was reading those responses sitting at a stop light (yeah, I know - don't yell at me) I got a phone call from my wife asking me to come home immediately. You see, my wife is very, very pregnant with our second child, and it's not been an easy pregnancy for her. We've had a lot of scares, and we've spent a fair amount of time in and out of our local hospital - so when she said "come home right now" - you can expect that everything else pretty much evacuated my brain except that.
I guess the twitter responses acted as sort of a cosmic hint as to what was coming - the abbreviated version being that my wife, bless her soul, was deemed "high risk" and admitted to the hospital on the 6th - with the expectation that she would not leave until she gave birth. Fast forward two weeks in the hospital, a myriad of tests, blowing out budgets on gas (what the hell) and being a "Single Dad" for most of that that time, and I can happily report that mommy and baby are stable, but still hanging out inside my wife.
These past two weeks taught me a lot about myself, about my family - some things that I thought I knew were brought to task and tested - heck, some of the things I was going to write about were put to the ultimate test. You may not really care about any of this - I'd go someplace else at this point if that's the case. I do hope to outline my thoughts on balancing things (though I remain terrible at it) and finding the time. You're not going to find a cure all, or a hack that will "just make things work" - that doesn't exist.
The original idea behind throwing the "family" topic out there to twitter was that I've been stewing a lot on a now (in)famous post by Merlin Mann (of 43 Folder fame) entitled "Cranking" that I've linked to a few times. In that post, Merlin gave me one of the best "perspective resets" ever. If you haven't read the piece, go, do it now - if you're not a parent, it still applies. If you are, I doubt you can make it through it without some tears in your eyes. It's as much about Merlin's own perspective reset as to "why am I doing this" as it is about taking a step back and looking down at the crank you've been turning and realizing it's not connected to anything.
"Cranking" refers to the idea of turning a crank (duh) - something that we all do - we wake up, flip on the computer and crank - we crank out code, documentation, we ship products and we build empires. We turn a crank to get the money, get some task done, we do it day in and day out - and then one day we may look around and realize that maybe our daughter is grown up as asking for the keys to the car, or that we've just been turning a crank that really doesn't mean all that much. We're doing it for enjoyment, we're doing it because maybe we love it, but what else that we love are we missing out on? Do you really love it?
As a parent of a beautiful, impertinent, incredibly (frighteningly) intelligent and perceptive 3 turning 4 year old girl - Merlin's essay obviously struck my nerves like the hammers hitting the wires inside a piano. This quote hangs in my head still:
And, every single morning at almost exactly 6:00 AM Pacific Time, my three-year-old daughter wakes up, jumps out of her crank-free, regular, big-girl bed, tears out of her regular bedroom, and--even before she gets her hot milk or takes off her pull-up or tells us to turn on Toy Story 2--she dashes into our regular bedroom, runs up to our regular non-hospital bed, and screams, "DAD-dy! DAD-dy! DAD-dy!" until I wake up and say, "G'mornin', Sweet Bug! Did you have nice sleeps?"
Because an annoying, rambling, disagreeable little man like me gets to have this alarm clock in piggy-patterned footie jammies run up to a regular, crank-less, healthy-Dad, non-hospital bed and make him feel like he's The Greatest Thing in the Universe.
(Cranking, 2011, Merlin Mann)
So. Go, read it - if you're not a parent, it's still relevant - you know why? Because turning the crank has to have a purpose - I've spent most of the last year un-learning years of built up mental muscle memory trying to get this fact jammed into my tiny little lizard brain. You see, I'm Jesse - and I'm a workaholic. No, actually, I'm worse than that - I define myself by my works and how much those around me value them. Me without a "job" is not a "me" at all. I would happily sit there turning a crank as hard and as fast as I could if I believed in it, even if, in three years, it wouldn't matter.
Define "job" as loosely as you like - for me, it's as much the job that pays me money (something I am also "re-learning" how to use, manage and the true meaning of) - maybe it's working for the Python Software Foundation - maybe it's contributing to open source code. For me, I've got a number of cranks that I turn - some less effectively, others with more. Maybe this is part mental sweep (a GTD term), it's certainly not meant to toot my own horn as you'll see soon enough, but the "high level" things are:
- My Job - I get to do what I love, with awesome people, but I turn that crank. I turn it as hard and as fast as I can. It's a startup, and you win as a team, or you lose as one. You turn it hard and you turn it fast in hopes that you can build something amazing, something that changes some component of the (technology) world around you. I love it, I wouldn't trade it for anything. It is still, however, a crank.
- Being a PSF board member. Another crank, one I volunteer for - one that I turn because I'm just as passionate about Python The Community as I am about Python the Language. This one has sub cranks - things that I spin because they (in my mind) must be done. Sprints work, outreach, funding things, work to get servers for projects, modernizing contributor agreements. I could cut out all of the other things and slow this one down - but why? If I'm not going to do the work that must be done, why am I there to begin with?
- Being a Python Core contributor. This one, I am afraid, has suffered at the hands of the others. I've been terrible at turning the crank for the module I am the defacto maintainer for (though I have asked for help). I've managed to combine the PSF/Community and Core aspect into the mentorship program, something I value almost more than actually getting patches pushed in myself. In theory, the mentorship program will do more of Python as a project than anything I could ever hope to code.
- Being PyCon chair. Last year, I was co-chair for the PyCon conference. For the next two years, I will be chairing the conference. I almost didn't. I still have my reservations - but again, I care, strongly about the community that welcomed me despite me being a horribly broken human being, and Van Lindberg, a good friend of mine showed me that it could be done without going insane. So I picked up that crank. I will be the chairman for PyCon 2012, and 2013 in Santa Clara. No seriously, I care about the community.
- Being a "writer". Yes, I consider writing for my blog, and other things as much a crank as all of the above. I love writing - my wife things I'm good at it. I love doing it. I wish I could do it, in the way that I love to do it and get paid for it (oh well), but I love knowing that I've reached out and taught something, said something or helped someone. That, and I do it for me. My writing - turning this crank - is as much a selfish endeavor as it is a selfless one.
- An outspoken community member. Also known as "someone is wrong on the internet" - I spend a lot of time staying up to date on thing involving everything I've listed above, and commenting on internet forums, mailing lists, etc trying to help and educate people. This crank is unhealthy - or rather - it can be. I can easily find myself feeding assholes or wasting time debating language semantics when, at the end of the day, it won't change a single thing in the universe. Like Jacob "I refuse to tolerate assholes" - but I pay the price in emotional currency.
I look at this not even close to exhaustive list of cranks (projects, themes, things) and in some ways, I'm proud. In others, I'm terrified. I am also ashamed. I look at them and then I look at the works of Jacob Kaplan-Moss, Raymond Hettinger, Kenneth Reitz, Georg Brandl, Armin Ronacher, Doug Hellmann and many others and I say to myself "I am not doing enough - I am not a good enough engineer" or I look at the things they have built and I worry my meager turning of the Python** cranks will be meaningless in the face of the ages (see also, "impostor syndrome"). So I turn those cranks harder.
And I turn. I love my job. I turn. I love my community, I turn. I love writing, discussing, debating. I love putting smile on peoples' faces and I love the people and the world around me. So I turn those cranks. My "expectational debt" (thanks again Merlin) load is so high as to be borderline insane. It's funny: I recently took on a project completed unrelated to all of this that's a paying gig because it felt like a mental vacation - and it has been, ironically keeping both me and my wife sane as we can work on it together. Cranks aren't bad. Cranks are cranks.
I've left something out - intentionally. I've left out the thing(s) that really matter - the things that should never, ever, ever be considered a "crank" - a duty, a job. I left out my family.
To some people, a family - a wife, a daughter, your mom, your dad, a brother or sister come naturally. For some people, your emotional ties to family run fast and deep naturally. I'm not one of those people. I have various reasons why (not something I'm willing to discuss in public) - but I have trouble turning the same passion, drive and energy into this one thing I know matters more than any of the other bullshit I've talked about. I have constant trouble knowing when to stop and simply watch my daughter grow up.
As I've worked to improve my awareness of this - I've noticed how bad I've been/gotten. This is why "Cranking" hit me so hard. My ability to balance my time and attention effectively, while also spending it on the things that matter most has been grossly out of alignment. My iPhone has been a surgical attachment - I reply almost in real time to email work, or non-work related. When I should be sitting on the couch comforting my wife, or watching a movie (even though we've seen Tinkerbell 900 times) with my daughter, I'm sitting on my laptop turning a crank of some sort (for what it's worth - I'm writing this while my wife and daughter are sleeping). Instead of focusing on them, though I love them dearly, I would do anything for them, I'm turning cranks because:
But, even when my shitty little crank was not attached to anything, I did keep cranking. Because, Dads do their job. It's what they do.
I've always allowed myself to be defined by my "job" - my cranks. My sense of self is derived from my works - that's just who I am. Family, for some reason, that emotional attachment is something that has always been broken in some way for me. So, while I've been here for my wife and daughter these past 4 years, and we've made some wonderful memories, and I love them dearly - I've not "been all I can be". I've not been there as I've needed to be, or I've let the shitstorms I run through stink things up for them. Nothing is worse, or more selfish than snapping at my wife or child because someone sent me an email on a mailing list that pissed me off.
My job is to run through the shitstorm, it is to be covered in poop, realize it will be stinky, but to keep running allowing my momentum to carry me through. Before I come home though - before I talk to my wife or my four year old daughter who knows the context and proper usage of the f-bomb for some odd reason, it's also my job to take a shower and rinse the poop off. Because they don't deserve it, and they are more important than any of the cranks I'm turning.
Along the same time of cranking - another post came along that was an additional sucker punch. I know you've read it - you had to have. It's called "The Last Post" - by Derek K. Miller - it was posted by his family, per his wishes, post-mortem. Derek knew he was dying, and so he wrote this piece in advance. It's a message to his family, his children - and to the world. It's the final post to his blog. When I read it, I was knocked on my ass. Despite all the changes I've made, and have been making (discussed later), this post also brought my failings, or rather, my priorities (or lack thereof) into a stark contrast.
The world, indeed the whole universe, is a beautiful, astonishing, wondrous place. There is always more to find out. I don't look back and regret anything, and I hope my family can find a way to do the same.
I want to be able to say the same thing. In some dark, selfish place in my heart, I am jealous of Derek - for his ability to write those words, to come to that level of peace. His message - that post - is just another hammer blow on the bell in my head telling me to wake up. As I said on hacker news:
... and the fact I have a second child probably coming Very Soon Now, I have to admit I'm sitting back and thinking hard about where I've spent, and am spending my time. I'm thinking about all the wasted time and opportunities I've accrued over the past 31 years.
I'm thinking about all the time spent arguing with people on the internet and giving up my free time to change some small part of the world, and not playing with my almost four year old daughter, or talking with my beautiful wife.
Take stock in your life and make sure you're following your passions. Make sure you try to remember and capture every moment before it's gone. Change the world while you're still here.
Appreciate the world while you're still here.
My daughter is almost four. I love her and my wife more than anything, despite my frequent and persistent ability to lose focus or make that critical synaptic connection. The smile and laugh of my daughter - the smile and laugh of my wife. The sun poking through the trees while my daughter sits on a swing - these things are more beautiful than the code and community I crank so hard on - they're far more important. You say though - "But Jesse, you turn those cranks for them" - yes, I do. I work not just because I love it - but because it puts food on the table. I work on community building and efforts because I want to change some small part of the world my daughter will grow up in. I want to make programming/at least one programing community more welcoming for her. All of the things I do can be justified by self interest and in the name of supporting my family, and changing the "world" for them. Still though: It's not a justification to miss the laugh or smile or moment with her, or my soon-to-be-born second daughter or my wife.
So now, that I've admitted that no - I'm not super dad, I am a broken human being and I too am looking for that balance between cranking, work and everything else, I'll share some of what has helped, and some of what I've done and continue to do.
Changes are hard for me, sometimes they feel impossible. Especially when they require the fundamental re-wiring of things you've allowed to go on for over 30 years.
The process of change started for me about the same time I started at Nasuni - it was at that point I once again quit smoking (and haven't smoked since - anyone interested in buying my massive cigar collection?). So the process started with health. I'd grown tired of being sick, fat and edging towards death, especially watching the amount of life my daughter is infused with. Later, I picked up playing paintball for exercise/as a release - but then I ended up wrecking my knee, so after a cortisone shot and barely missing surgery on my knee I really kicked things into high gear. I needed exercise but it needed to be something low-impact. I chose Bikram Yoga which has turned out to be an amazingly good choice. The yoga not only helped my body (I've lost weight, become more flexible, etc) it's helped my mind. My focus and meditation has gotten better, and my mind has grown quieter - it's gotten much easier to focus on things, I'm calmer and generally more in control of my self.
I also changed my diet completely. No more carbs, no more sugar, proper vitamin supplements - it's part Ketogenic and part Paleo. Since I've started, I've gone from 275lbs (a year ago) to 181lbs (today). I feel better not only physically, but mentally (although, I can not drink so much as a drop of alcohol). I'm more healthy and prepared to tackle things in general, not only can I better engage with physical things, I'm less likely to die due to bad habits and miss out on my family. The mental aspects can't be lauded enough - I'm happier, more able to focus, more excited about life. More recently I've switched to (and am loving) a standing desk which has actually helped the physical aspects as well as the focus aspects (oddly enough).
The next step - the harder ones - have been mental/habit changes. I've started timing tasks - I work on just about everything in "sprints" or "pomodoros" - whatever you want to call them - I have a timer set for 45 minutes. When that timer is running, I close everything not related to that thing, that includes twitter, email, chat - everything. Total and complete blackout, if someone interrupts me, in person, I consider the sprint ended unless it was directly applicable to the task. When the time is up, I take a short break, and then set it again and go back to cranking on something. The important thing is to give up on multitasking.
I can juggle lots of things - I can't do it at once in the same window of time and hope to make any progress. Each 45 minute block is accounted for in a master spreadsheet - not only do I know what it was for (PyCon, Work, Personal) and how long, I also know what was done (Fix a bug, write a module, do research). I slip a lot - I forget to set the timer, or I get the urge to lie to myself on a spreadsheet only I will ever see, but by in large, it's helped me focus a hell of a lot more in general. Especially at work - I know where/what I'm tackling, and at what rate I'm making progress. The only things I tend not to time are writing sessions - like the one I am doing now - I still completely black everything else out though.
Things like Apimac Timer, or Rescuetime can help here. The important thing is a focused window - drop everything that is not part of the task your working on. Don't forget though, a given time window could be "deal with email". Being focused is no excuse to screwing the people you collaborate with by not being responsive. Breakup your tasks into digestible chunks - hell, pull the "Debt Snowball" method on projects/bigger tasks - do a bunch of the smaller things to reward yourself / give your brain the dopamine squirt of progress earlier in the cycle.
I know it may come off as vaguely fanboyish at this point - but listening to and reading lot of Merlin Mann's stuff has helped me - his time and attention talk is excellent. I really recommend listening to the 5x5 podcast - a lot of what he's said or mentioned has rung pretty loudly for me. I've cribbed some of his techniques, or rather - thoughts on how to approach things and applied them. Inbox Zero - Yup. I'm operating on the "respond, followup or nuke" method of email management. Track tasks / things you only intend on working on - the rest is junk you need to get rid of. It's emotional baggage.
Emotional control/reaction control is still the hard one for me. I'm a rocket-sled into the volcano type of guy. I react hot and fast to everyone, and everything. Getting that in check has been rough going - the yoga, writing, etc has helped in that regard, but it also takes a lot of pure willpower and effort. Lately, due to the higher stress levels, I've adopted the rubber band technique to stop myself / put myself in check - it's a rough, ugly hack, but it's better than snapping at someone, or reacting overly quickly. It's important to stay passionate about things, and I'll never stop sharing my opinion - just not in a way that shuts the people down around me.
So now, with all the emotional/project focus - a lot of which seems focused on getting things done rather than addressing the core problem of "not living" where does that leave the home front?
Being more effective when I do have time, more calm and meditative allows me to enjoy and connect with my wife, with my kid. It gives me the freedom to realize that the world won't burn down if I don't have my iPhone scream at me from across the house that I have a new email, or check twitter, or read my news feeds. No, those things will still be there when I am ready to engage them. I'm learning, the hard way, how not to be a slave to my cranks, my addictions, my passions.
No, instead, I've shut off automatic email checking on all my devices. I don't know when something comes in. When the laptop is open: I'm working on something, otherwise, the laptop is closed. I've muted all auto-notifications on my laptop, shut off growl, sounds, etc. I check email in between sprints, or once an hour (still working on that one) and when I do, I deal with the ones that must be dealt with, right then - or I do nothing, leaving it for a sprint. I batch my news reader gorging into blocks of time in the morning and afternoon (and make generous use of Instapaper and an iPad) . If I find myself hot under the collar about "something on the internet" - I'll stop, take a breath and remind myself that the people around me don't deserve that fire.
I've also set (small) goals to help me move certain things forward - something I've heard time and again is to "keep your hand moving" (from "Writing down the Bones") - so I've adopted a version of 750words - nothing hard and strict. Just a goal - write 750 words a day, on anything. This doesn't include code though it could be about code (maybe I should adopt a version for code). It could be about family, code, etc. It could be for the company blog, my own, or just in a journal (another thing I have started doing - keeping a physical journal).
As I've been doing all of the above, I've also been learning the components of personal finance and debt that I've been lacking (e.g. how to do a damned budget and stick to it, and that, yes - the borrower is in fact, slave to the lender) - this, plus all of this work has led me to the realization that time and attention are like money and a budget. They're finite resources you don't get back. You can grow them through discipline and you can control where they go, but it takes work. There is no get out of jail free card.
So; I've cut distractions - I'm focused on being a better Dad and husband when I am home, no more sitting there ignoring my daughter while I hack (unless of course, it is an agreed upon period of hacking). When I tackle projects, I do it sanely and on my own terms - and I do it on time I can afford to use, with the attention it deserves. I hack and work when my wife and daughter are sleeping, when they're out of the house, or when we've agreed it's "my time". All other time is off limits.
Unless I'm just sitting on the couch watching Tinkerbell for the 9000th time. Then I might read my news on my iPad while my daughter is curled up next to me. Maybe.
I don't know what the future holds: I've made a lot of changes in a short period of time: I'm literally half the man I used to be, and some days I don't stick to the path or the ideals I've laid out - I make mistakes, I forget to write, I get caught up in something and I miss my daughter trying to show me the fact she wrote her name (who is the asshole? This guy). I'm going to continue to turn the cranks I have adopted, maybe I'll turn them differently though, delegate more, push some tasks that come out of my mental grist mill off into the ether. I'm not sure.
More recently, I've started reading Mindfulness in Plain English - I don't know that I'll adopt meditation, but maybe some of the mental exercises involved can help me focus where I need to even more. Maybe it will help me realize new aspects of those cranks I turn. Hopefully, it would help me enjoy life - the life of my family that much more.
Who knows what's going to happen, I'm always interested in new approaches, thoughts, ideas and tools. Right now though, I'm going to push my fat pug off my couch and take my daughter to go see Barney live.
I think that's worth at least one hour of free time for Daddy later.