

Mothers should be programmers - araneae
http://lepid0ptera.livejournal.com/65083.html

======
Dove
It's a decent idea in principle, but I'm not sure how well this would work in
practice. I can think of two problems.

The first is distraction. When I am working on a difficult problem, it's true
that I often need periods of inane distraction interspersed with periods of
extreme focus. In theory, taking care of a child and hacking could be
combined; where I go for walks or play video games now, I could be playing
patty-cake. But those breaks need to occur when I intellectually need them,
not when the baby needs them. When I am madly coding something I understand
well, I very much need to avoid distraction. When I am mulling over something
I don't understand, I very much need to embrace it. So I suspect this would
not work well in practice.

A second problem arises from simple physical compromise. I am presently seven
months pregnant, and--much as the admission grates on me--I have found my
performance slipping throughout. Sometimes because I am tired, sometimes
because I am forgetful, sometimes because I am more excited about the coming
baby than the current project, sometimes because half a dozen random things
are wrong with me physically and discomfort is . . . distracting. I had hoped
to keep working at full capacity, and while I've kept working full _time_ , I
have to be honest: I haven't been as effective as I once was. Where I used to
produce a couple brilliant ideas a day, now it's more like one or two a week.
I don't see that improving just after the trauma of birth, during the
subsequent hormonal adjustment, and what with the excitement and distraction
of _having a baby around_.

Programming is an activity that depends so much on mental sharpness; where
caffeine and sugar are performance-enhancing drugs, insomnia and strange
hormones are remarkably destructive. On a bad day, I can spend 8 hours not-
quite-achieving what should be half an hour's work. Mundane programming I can
usually still do, but great hacks? Not so often anymore. Nor do I see them
recurring with regularity for a while. No doubt about it, being a mother is a
sacrifice intellectually. All indications are that it's well worth it, and I
wouldn't do otherwise. But it strikes me as unrealistic to suggest that it's a
light side-activity that one can casually combine with a serious commitment to
work. Even very intellectual work.

~~~
DaniFong
Very good points,

I suspect that programming and other forms of concentrated work will require a
phase shift in order to continue a high level of productivity, and the type of
productivity won't be the same.

But, as DHH of 37signals points out, people don't typically use their hours
well anyway. If raising a child left only two hours a day to work, that's
still 10 hours during the week -- as much time as DHH spent coding basecamp
and rails his first year. If you add to that time you can spend planning,
communicating, and thinking about the problem (to fill the time when you're
more likely to be interrupted) you can optimize those few hours even further.

So far as I can tell, this is the pattern my mother used while she was caring
for me and working her way through journalism school. I had colic. But she'd
do her interviews in the intervening time, and she'd collect all the
information she needed, and wrote fragments she wanted to include. When she
got the chance, she sat down and wrote the whole article in a single sitting.

PS: Thanks for being part of this community. I started to read your comment
page, and you've contributed many wonderful insights I've had to copy to
remember for later :-)

~~~
Dove
Thanks for your kind words!

I follow a similar pattern at work these days. Having amassed a large amount
of technical knowledge, I can spend time I can't spend innovating in teaching,
documenting, cleaning up code, running test cases, doing research, doing
arcane analysis. And while one or two brilliant ideas a week isn't what I'm
used to, it's not nothin' either.

But oh, for those two-day coding runs of yore, during which it seemed I could
move the earth . . .

------
mahmud
Let's hope the kid stays asleep in 5 hour blocks, because that's how long my
hacking runs go.

Programming doesn't suit people who are constantly distracted; the way I cope
with others' presence around me is to completely ignore them. I can have
conversations for hours on end while I program and not remember any of it. I
agree to things, laugh with jokes and listen attentively. All of it a facade,
of course; I don't really care about others when hacking.

Days run into each other sometimes and you have no idea what went in the
world. I wouldn't do this when I have a baby, and I don't recommend it to new
parents. Do marketing for 2-3 years, instead, and give that kid full attention
when you go home.

~~~
anonjon
That sounds more like being on a bad opium trip to me than programing (not
that I've ever been on an opium trip...).

I mean, sure I agree, in certain aspects of the job there is a level of
concentration and 'state' that you have to maintain in your skull in order to
be able to program properly.

But a certain amount of the required 'state' can be alleviated by having a pad
of paper next to your desk and writing everything down. The rest of it can be
dealt with by writing code that has a simple and sensible structure.

And honestly, the majority of my coding is mind-work. I don't have to sit at a
computer for 5 hours to be thinking about that piece of code I'm going to
write. One I have read the right documentation and I have figured out what the
problem is, I normally need a bit of time for it to gel, then I type it into
the machine.

I think the point of the post was that new mothers need time to bond with
their infant. 'Doing marketing' for 2-3 years instead implies to me that they
are working the 9-5 grind (which a programmer can theoretically avoid). Which
misses the point entirely...

There's no reason you can't sit at the computer with the baby right next to
you.

------
joshuarodd
I work as a senior-level programmer/analyst for a mid-sized private
university.

My workday normally starts around 7:45 AM. On a good day, I leave for home
around 7 PM. Sometimes I get to leave "early" by 6 PM. I usually break for
about 1 hour (or less) at lunch time.

I do not wear T-shirts or tennis shoes to work. There is one other programmer
who does; his contract has not been extended past the end of this December. I
do work from home, but only because I don't get all of my work done between
7:45 AM - 7 PM when I'm at the office.

I could not use an OLPC formatted with Breezy for my work. I use a 2.26GHz
Core 2 Duo w/ 4GB of RAM, and I still find my computer is too slow and doesn't
have enough RAM to, for example, run more than a few VMs at once.

I do often work from 2 AM - 4 AM at home when inspiration strikes and I cannot
sleep. One reason for this is the lack of distractions at this time of night:
my wife is in bed sleeping and there are no coworkers to stop by and try to
chat.

However, I could not work from home and satisfy my job duties. There are too
many times when I need to work in person with, for example, a professor having
trouble with one of the programs I've written, or go to a meeting with the
deans of some of the schools at my university.

I also don't have sufficient bandwidth at home to work satisfactorily. I often
do tasks where I need a 100Mbit or 1000Mbit pipe to my workstation; a 10Mbit
connection is not sufficient. (For this same reason, I don't sit outside on
the commons and work on my laptop wirelessly.)

Because of these reasons, I have chosen not to have children at this point in
time, as I don't feel I could adequately give them the time and attention they
deserve. It would be really nice to take off a few months of time to spend
with my wife & my family, and have my job guaranteed when I choose to return,
but that is simply not an option I have.

(For the geeky amongst you, the thing I do that needs bandwidth is mostly
using TNS for running PL/SQL; running TNS over a 10Mbit WAN is frustrating at
best, and completely useless at worst. It is not suited towards dealing with
terabyte-sized data sets.)

~~~
nzmsv
Well, you don't _need_ a 100Mbit pipe for a dumb terminal. There is nothing
preventing a useful remote desktop session on wifi to your workstation back on
campus. Except possibly for an overzealous IT department (the kind that blocks
upgrading from IE6 because of "security risks").

Also, what you are describing is a job in a bureaucracy. This kind of
environment isn't something do be proud of, it's something you work despite
(though this is my personal preference, and there may be people who like
this).

The point of the article isn't that it's _easy_ for any workplace to
accomodate a mother working from home. It's that it is _doable_. This depends
on someone higher up in management having the will to do this. But this is a
management problem, not a problem of discrimination against women.

Basically, this is not a problem if the people higher up in the food chain
would start treating their subordinates as human beings. Which, sadly, might
just be too much to ask of a lot of managers.

~~~
joshuarodd
A dumb terminal session (or TightVNC, RDP, etc.) would suit for about half of
what I do. The problem is that my productivity with the other half is
compromised by being off-site.

As far as the bureaucracy goes, that is one of the pitfalls of working as a
staff programmer in academia. The point of my post, however, is that many
staff IT or programmer jobs are simply not compatible with the kind of working
environment lepid0ptera describes, and I think this extends outside of IT or
ERP style teams at large instutitions: my friends in the game or design
industry frequently pull long shifts when trying to meet hard deadlines. This
kind of environment is what is hostile to parenthood in general (not just
mothers trying to take maternity leave).

------
zby
I now babysit my daughter and hack on some Open Source projects. When she is
playing she likes to have my attention, when I sit at the computer she would
come and show that she wants that I take her on my hands, I can read Hacker
News or something but usually I can do programming only when she is asleep
which is now two times a day about 1/2 - 1 hour, and often she gets asleep
when we are on the daily walk - then this 1/2 hour of my time is lost. Then
there is feeding her and cooking for me and my partner, and cleaning, usually
I can do some cooking when she is awake but it's not very effective work. Not
much time is left, maybe in the evening.

~~~
niels_olson
This is a great observation. I watched my (then) 4 and 1 year-old kids the
summer after my first year of med school. It took me about 2 days to decide it
was time to install this operating system called Linux I'd heard about. I
could read while they were awake, but could only dive deeper when they were
asleep, which was not much time at all.

So I agree with you, and I'll up that to say that things don't really get
easier as they get older, because they sleep less. You'd think the older they
get, the more time you'd have, but, at least at 4 and 7, it really just means
they can climb higher, fall further, hit harder, and break bigger things.

------
bugs
This is reasoning that programmers can be mothers not that mothers should be
programmers.

But one main problem is when children are young mothers are much more likely
to be tired or worn out running on little sleep and probably have less
time/will to work on complicated problems

~~~
justinhj
You've never looked after a baby have you? Going to work in the morning feels
like going on vacation.

~~~
colomon
That's because you're leaving the house and getting away from a constant
distraction. This is exactly why trying to work from home at the same time you
are being a stay-from-home-parent is incredibly hard.

Believe me, I've tried doing programming work during periods while watching
our young son, and it is nigh impossible to do any heavy duty work unless he
is sleeping. Writing one-line unit tests is doable. Debugging complicated code
is just barely possible if you are lucky. Breaking new ground is downright
impossible.

I suspect the author of the original post is not actually a mother...

~~~
tptacek
Get a nanny.

~~~
bumblebird
I'd disagree. Just learn to use time better. When you're feeding a baby, think
over problems. When baby's asleep, code them up.

When you have less time to hack, you tend to use it more efficiently (I've
worked at home most of the time my youngest 2 were babies).

I can't imagine having had a nanny and missed out on all that bonding, fun,
and awesomeness that is baby/toddlers.

(Not to mention things like my son puking up a full bottle of milk straight
onto the keyboard of my laptop - I was feeding him and coding at the same
time, which was probably a bad idea).

~~~
tptacek
You can absolutely do both things: have a nanny, and bond with your infant.
Work from home, and use the nanny to keep the kid out of your hair when you
need to focus.

Of course, no nanny costs more than the most junior developer makes.

I'm not sure how toddler awesomeness is relevant to the discussion. Nobody's
offering a free lunch. But there clearly are jackasses who don't want to hire
women because they think maternity leave is going to screw them.

~~~
bumblebird
FWIW I don't see how that's a jackass thing to do. There's a chance that a
woman may take maternity leave, then never return. That's an extra cost to the
employer. It's a higher risk. I'm of the opinion that real freedom means the
freedom to discriminate if you want to.

Insurers are freely able to discriminate, it seems like employers should be
able to as well (I know in this age of political correctness it's impossible
to).

Should terminally ill people be able to go on apprenticeships? I'd say on
balance no - if they die before they're trained in the job, then the employer
who is footing the bill of training them, has lost out.

~~~
tptacek
You shouldn't hire terminally ill people at all. Turnover is expensive. Also,
the chronically ill drive up insurance premiums. For that same reason, you
shouldn't hire people over 35. Another reason not to hire people over 35 is
that people under 35 will work 80 hour weeks for no additional pay. That's
also a good reason only to hire offshore developers, or, better yet, H1-Bs
from H1-B bodyshops: they can't quit, or they'll be deported.

~~~
bumblebird
Right. And personally, I think those decisions should be up to employers.
Similarly, I'm completely against the minimum wage. Give employers the freedom
to hire who they want, for whatever wage they want to offer.

~~~
justinhj
Where does equal opportunities fit into that view? Not at all, does it?

------
pbiggar
I had a very similar thought. Programming is very enjoyable in the same way
that puzzle solving is. There are millions of people out there who enjoy
puzzles, evidenced by the popularity of Sudoku and those Nintendo DS "brain
games". If you put the two together, you end up with millions of housewives
programming.

New book from O'Reilly: Hacking for Housewives.

------
tptacek
_The reason maternity leave is so long, and results in so many women never
coming back, is because of breastfeeding and bonding. The physical trauma of
childbirth doesn't last that long, and some women won't want to breastfeed,
but pretty much all women will be bonding with their infants._

So what? Both men and women bond with their infants. One, the other, or both
will inevitably sacrifice bonding for income. Women with full time jobs who
want their kids breastfed, pump.

Why do women need special arrangements to rejoin the workforce? Doesn't that
simply perpetuate the gender discrimination we already have in the industry?

It is _unlawful_ to discriminate against female candidates because they might
take maternity leave. It's also stupid: whether they take formal leave or not,
the performance of a new father is going to plummet as well. Let's leave it at
that.

------
bumblebird
There's nothing stopping them is there. Any mother that wants to program can,
and they can easily find work to do at home.

The fact is though that most mothers aren't interested in programming :/
Something that doesn't really need 'fixing' (Because it's up to them what
their interests are).

------
jlm382
It's almost a little sad to hear that having a child brings down a woman's
ability to go into a good working profession... running a startup takes a long
time, and many founders end up having kids in the midst of all the action.
(Evan Williams just had a child a few months back...) but women don't have
that fortune.

I was speaking to a female VC a few weeks ago on being a professional and
having kids. She told me flat out not to think about having kids until my
thirties (if ever), because it's the only way. And even then, it's going to
take a crap load of time away from your job.

~~~
tptacek
VC's make poor company operations advisors, and even poorer family planners.
Women delay having kids because men expect priority treatment for their
careers, and so make inadequate concessions to child care (or standard of
living).

Here's a news flash: if you're an entrepreneur, your life will be no more or
less accomodating to children when you're 35 than it is now.

------
Mz
This piece only talks about the needs of the new mom and neglects to address
reasons why the company should feel motivated to be accommodating. That's like
asking for a raise because you need money rather than because you bring more
value to the company than you used to. Here are a few reasons companies should
make an effort to accommodate the needs of moms:

Diversity. A diverse workforce is a strength for a company. Excluding moms
would cause a weakness in the corporate culture which may go entirely
unrecognized, even if it ultimately helps contribute to the failure of the
company.

One thing this particular form of diversity could help address: The fact that
females play games a lot less than males as well as generally have less
interest in a variety of tech products. If there were more women and mothers
in programming, the odds are good that apps would be designed in a way which
appealed more to the female market than many of them currently do.

Company policies that are friendly to moms and their kids tend to also be
better climates for anyone who can't make it on "traditional" terms of
success. Finding an effective means to accommodate the rather large issue of
motherhood would tend to automatically create a company culture and set of
policies that resolved many lesser issues with little or no additional effort.
Happy workers who don't hate some aspect of their job are generally going to
do a better job. If the working climate is vastly superior to that of your
competitors, you will likely also garner high levels of employee loyalty and a
lower turnover rate. Lower turnover pays dividends in many ways, well beyond
just the obvious savings of not having to spend so much time and money on the
hiring process.

