

Did your boss thank you for coding yourself to death? - yason
http://www.skorks.com/2010/02/did-your-boss-thank-you-for-coding-yourself-to-death/

======
agentultra
Are programmers freaking lemmings or something?

We're people, damnit. We choose to work overtime for various reasons. Some of
which include: putting dinner on the table, keeping our jobs, getting our foot
in the door, and so forth.

In my experience there are only 3 cases for working overtime:

1\. You're a new, mediocre, or terrible programmer. You've been given three
months to deliver a web site using a framework that practically holds your
hand and wipes your ass and yet you still need more time. Everything seems
hard. There's nothing you can do but brute-force your way to the finish line:
stay up late and work that overtime to get it done and make up for all the
time wasted googling, procrastinating, and debugging with a shotgun.

2\. The suits messed up. They set a deadline without consulting you. They took
on a contract with an incredibly short deadline because the business needs the
money. They forgot to plan ahead for the big industry conference and they need
something to show off to the other suits that will be there.

3\. You've entered a culture of slavery. You just got your foot in the door at
a big company. Unfortunately things have been sliding downhill and they never
told you just how bad it has gotten during the interview process. Some people
who stick to their guns will run for the hills, but you've got bigger
responsibilities and cannot afford to take another month off job-searching. If
you don't join in, they'll just make you look bad and the suits will fire you.

For me it's simple: if I can't get it done in 8 hours a day, someone didn't
consult me for an estimate and its their fault. I may choose to work the
overtime to get it done, but it's not something I personally tolerate. I value
my life more than my work and my free time is important. But sometimes you
have to do what you have to do to put a roof over your family's head and
dinner on the table.

It's not as stupid as, "programmers love working overtime because they're
passionate people!"

I'm passionate about what I do. But I'm passionate about life. Programming is
a part of that. Slaving away to make some other dude rich isn't.

~~~
Androsynth
4\. You own shares in an exciting young company. You own your overtime, not
the other way around.

~~~
jquery
Really? Let's do the math:

Let's be very generous, you own 2% of the company, so you are entitled to 2%
of the company's profits. Let's be generous and assume you contribute 20% of
the company's productivity. Your influence on your 2% is equity is 20% x 2% =
0.4%. For this extra 0.4% compensation, you work 50% more hours.

50% divided by 0.4% is about 125x. So you are on the losing end of this deal
by a ratio of 125 to 1. Your "screwed factor" is 125.

Tweak the variables to find out your screwed factor.

~~~
jquery
If my calculation is wildly off base, please let me know why, I would
appreciate it.

~~~
trominos
Even assuming that this "screwed factor" is something meaningful, you
miscalculated it. I think you're trying to find (percentage increase in work
over normal hours/percentage increase in pay over normal pay).

If your pay is just a percentage of a company's profits, the amount of equity
you hold has no impact on this number. If you working 50% more hours generates
10% more profits (or whatever) for the company, you get 10% more pay for 50%
more work, so the screwed factor is 5.

Again, this is assuming that the screwed factor is meaningful in the context
of a startup, and it isn't. First of all, the different possible outcomes for
an early employee of a small startup can mostly be boiled down to two, maybe
three: the startup IPOs and you get rich, it gets sold and you get well-
compensated, it fails and you get nothing. Treating your income as a very
smooth function of the hours you work is misguided in this kind of scenario.

Second, contributing to a culture of working really hard on the startup (by
working overtime) might be more important than the work you actually do in
your overtime. Startup employees don't work in a vacuum.

~~~
jquery
Appreciate it. Can't really understand you right now, running a high fever,
but I'll check back later.

------
CoryMathews
"Programmers love to work long hours! There I said it, c'mon admit it, your
job/boss doesn't make you do it, we do it to ourselves."

I stopped reading. We don't. In fact a job that only required 30hr/w would be
great. Even if I took a pay cut.

~~~
megamark16
This. I love what I do, but I wouldn't mind doing less of it, especially when
I'm doing it for someone else (working on someone else's dream instead of my
own). I love my job but I love other stuff more, like spending time with my
family.

~~~
megablast
There seems to be two types of coders (or maybe even more!). Those with their
own families, and those without. If you have a family, you have found
something more important. I don't, so I will spend sometime with friends and
family, but most of my time coding. I could go out every night, or watch tv
every night, or read a book, but I prefer to create something.

~~~
kscaldef
Sorry, no. Some of us prefer having other hobbies even in the absence of a
family. And your comment that you "prefer to create something" is offensive
and condescending considering the diversity of activities that other people
engage in outside of work.

~~~
tkahn6
How is that offensive and condescending?

He derives enjoyment from creating while maybe you choose to do other things
for enjoyment. To each his own - isn't that your point?

~~~
kscaldef
There are other forms of creation than coding. The choices are not just code
more or watch TV, as he seems to suggest.

~~~
megablast
Hey, yeah didn't mean to imply that. I mean, you could paint, or write, which
are all very worthy pursuits. I mean, I also bike ride every now and again, do
a bit of downhill. But still spend most of my time (free or at work) coding.

------
gizmo
> So, lawyer vs programmer, which one is the chump?

The paralegal working 80 hours a week is a chump, no doubt. Many lawyers want
money and status, and get disillusioned once they realize not everybody is
going to make partner.

Most of them didn't enjoy law school much either. So they invest most of their
adult waking hours in the law, only to realize at their 32nd birthday that
they might not make it.

So I think they outchump us.

~~~
nzmsv
Hmm... I think not being a chump requires the ability to stop and reflect on
the situation.

We are in an industry obsessed with "ninjas" and "rockstars". The same author
who wrote this article bashing long hours has articles about how grades and
good knowledge of math are all-important on his site. But these long hours and
near-perfect grades really are just a way to compete.

So we are in this cutthroat competition. Understanding math you are unlikely
to use in real work is a status marker. So are grades. Are they just that? No,
just like a shiny BMW is also a good car. But competition in any well-paid
career eventually becomes unsustainable (or close to it). Doctors and lawyers
are already there, but their fields had more time to get to that point.

~~~
Tamerlin
"But these long hours and near-perfect grades really are just a way to
compete."

The only thing that the long hours are competing for is favor from managers
who don't have the faintest idea as to what a competent programmer does.

I've said it before, but it bears repeating due to context -- the best
managers would get rid of the workaholics, and yet most managers reward them.

~~~
arethuza
My own pet theory is that bugs are far more likely to be created late at night
than at any other time.

~~~
Tamerlin
There's probably enough bad code out there, and plenty of sweatshops, so the
data's already there for the analyzing :)

The catch is, who's going to do it? The ones who are creating the bugs are too
busy creating the bugs, and the folks who just get their job done and go on
with their lives probably don't care. :)

------
motters
Unless its directly in your own interests, it's actually irrational to be
working out of hours. If you're being paid for the extra work or you're the
company owner or a major shareholder then it does make sense, but otherwise
there's little benefit to be had. There might be other special circumstances,
such as if you're working for a charitable cause where part of the benefit is
in trying to improve the wider society, but in most for profit businesses this
doesn't apply.

~~~
eru
Perhaps if you'd liked your work?

~~~
dpritchett
If you like your work enough to put in 80 hours a week on it please ensure
that the additional 40 hours reward you in some equitable way.

If you want to work the extra 40 hours for free you can do it for a charity
(or your own startup!) rather than your for-profit employer.

~~~
eru
Why so much respect for charities? They are often hopelessly inefficient. If
somebody wants to work extra for their employer, let them do it.

~~~
dpritchett
It's the opportunity cost. When you provide an employer with unpaid labor they
profit at the expense of your family/hobby/startup/charity/mental health.

Your extra time could be devoted to the benefit of people, projects, or causes
dearer than your employer's pockets.

~~~
brianto2010
> _"When you provide an employer with unpaid labor..."_

Programming jobs don't pay overtime?! With an extra 40 hrs/wk, regardless of
the job, the employee should get a sizable compensation, right?

~~~
dpritchett
Corporate programmers in the US are usually salaried. Salaried programmers are
exempt from overtime thanks to the Department of Labor:
[http://www.dol.gov/whd/regs/compliance/fairpay/fs17e_compute...](http://www.dol.gov/whd/regs/compliance/fairpay/fs17e_computer.htm)

------
city41
Working long hours is counterproductive. If you find yourself doing it, it's
probably an indication there is something fundamentally wrong with your
process.

At my current job we have fully adopted agile programming and really respect
the tenant that a developer should work no more (or less) than 40 hours a week
(we also assume each day has about 2 hours in overhead, netting 6 hours of
actual work time). It makes a _huge_ difference. Leaving every day at 5
o'clock enhances everyone's mood, energy levels, ability to think, and the end
result is we are far more productive during those 8 hours. Compared to when I
worked at MS and 10 hour days were "normal" and 12 hour days were very common,
I actually get a lot more done in an efficient, packed 8 hour day than a
resentful, stressed out 12 hour day.

~~~
strlen
The problem with "everyone leaves at 5" is that everyone's forced to come in
at 8 or 9. Some people work differently. I'd take a 50-60 hour work week with
_flexible_ hours (and ability to learn new technologies, improve existing
infrastructure and initiate "venture" projects) over a 45 hour work week with
_fixed_ hours and a strict adherence to a development methodology. Perhaps
that's why I am drawn almost solely to technology organizations and could
never see myself working anywhere else (e.g., consulting or internal systems
development).

~~~
city41
True, I hear you. I can't speak for everybody. But I still think there is
truth that efficient, sustainable hours can be more productive than long,
stressful hours.

~~~
strlen
> But I still think there is truth that efficient, sustainable hours can be
> more productive than long, stressful hours.

I agree here (when I find myself working 60+ hours a week outside of rare
crunch time, I am usually doing something wrong e.g., giving bad estimates or
losing focus), but forcing people to work "efficient hours" (you _must_ be in
the office at 9, vs. being allowed to come in at 11 and stay until 8) is micro
management (loss of autonomy).

Not being allowed to do (even non-user facing e.g., infrastructure) projects
without permission from project management, planning meetings and daily status
reports is another example of micro management. Perhaps this isn't a part of
agile manifesto (just like concentration camps aren't a part of the communist
manifesto), but that aspect is certainly a feature of almost all
implementations of uppercase-A agile (scrum, XP, etc...). I'm all for frequent
releases, continuous integration (and possibly continuous deployment),
iterative development (at least for product features) et al, but you don't
need a full blown "Agile" process (planning meetings, daily stand-ups, index
cards, bringing in training consultants, hiring "scrum masters", etc...) for
that.

Work life balance is important. It's also very important to work smartly and
use labour saving techniques (adequate hardware, tools/automation).
Performance requires maintenance and I make sure to allocate down time (time
with friends and relatives, concerts, non-technical reading, trips/vacations,
exercise, etc...) to myself on a regular basis.

However, the most important aspects of a job (to me) are autonomy, great
colleagues and challenging work (exposure to new concepts and technologies,
which frequently have a learning curve). Given a choice between working a 1-2
hours more and giving up any one of these aspects, I'd gladly accept a few
hours more of work.

~~~
city41
I don't include working 8-5 in my definition of "efficient". Although I do
think working the same hours as the rest of your team has benefits too good to
ignore. I mean having a life where you can still exercise, eat well, enjoy
some hobbies, spend time with friends, etc. Means that when I sit down to
work, I'm so much more focused and willing that I ultimately get more work
done.

I agree following a process to the letter without really thinking about what
it's doing for you is bad. If you feel agile is not allowing you to pursue
other needed things then that's bad. Take what works for you from a process
and leave the rest behind.

------
tlb
Thank you to everyone who has worked hard either as a colleague or by building
any of the products that make me happy. I'm genuinely grateful to all of you,
from the folks at HP in the 70s who made wonderful calculators (my first
exposure to great technology) up through today where Apple, Dropbox, Google,
and many others are a large part of my daily life. Your hard work has made
things that changed the course of history, pleased millions of users, and
affected everyone on the planet in some way. Keep up the good work.

------
wenbert
While many people here may disagree with this; this is very real in the
Philippines. Maybe in your country, you are compensated for your efforts. But
here, when you are working you never feel you are compensated enough.
Seriously, the basic salary here isn't enough to raise a family. It isn't even
enough to buy yourself a decent and healthy meal daily.

That is why many programmers here, code themselves to death here. I have many
friends who are very unhealthy because they have to work 2 or 3 jobs at the
same time. Coffee and cigarettes seem to make them think faster (BTW, I
haven't had a cigarette in over a month, so yay for me) or probably they do
not have enough time for other pleasures aside from these.

I myself used to work 9.6 hours (that's with no overtime) from Mondays to
Fridays. When I got home I work an extra 6 hours on the internet. On weekends,
I work at least 8 hours. And I still live with my mom because I still can't
afford to live alone and have an internet connection.

Working your mind off I think is as hard ass working physically. At least my
brother, who is a nurse can sleep soundly at night without thinking about
solving anything. He can rest his mind and his body. I on the other cannot
rest my mind and therefore it is impossible for me to rest my body.

I love to code that is why I do what I do. But sometimes, posts like these
come up from time to time. Also, I think this is more of a problem with the
entire system here.

FYI: Nurses here are paid dirt shit. Not even above the minimum wage: about
240PHP a day and a Big Mac is about 150PHP. They are paid less than the floor
cleaners in the hospital and the hospital treats them like shit. I can easily
make 3 to 4 times from what he gets per month. He chose this career because
there is an opportunity for him to go to another country where he gets paid
what he deserves. He is really good at his job and he has a passion for it.
Too bad the hospitals treat their nurses like disposable cups.

~~~
julsonl
Oh I didn't know that was the case. I grew up and graduated in the Philippines
with a Computer Science degree, but didn't manage to experience work there.
Most of my friends work in HP, Canon and other multi-nationals, and entry-
level work is paid dirt-cheap. Although it scales up considerably as you gain
experience, though I've heard that it doesn't scale and pay as well as someone
on the IT management track, which sucks. Maybe that is also the case in Cebu?
I'm only familiar with Manila.

Also, I've always had the impression that living with your mom does not carry
the same stigma as here in the US. The only time people release their shackles
from their parents is when they get married, even that doesn't occur quite
often too.

Why are you working over-time in the weekends anyway? Is it related to your
Monday-to-Friday job?

~~~
wenbert
I used to work an American company it started to pay well but then the US
economy got hit a few years ago.

Working on the weekends is not related on the day job. I do other stuff online
to make extra money. It's funny, now that I have thought of it, I have been
doing sidejobs longer than my dayjob. I had sidejobs since at the 2nd year of
college.

Also, I forgot to post that I am shifting careers. Now, I code on my free time
- for fun! I now work for a Norwegian surveying company. I spend a lot of time
in a ship inside the survey room. Still computer related but I with less hours
:D and hopefully bigger pay.

~~~
julsonl
Yeah. I sort of took a quick glance at your past comments and found that, just
forgot to update. That sounds like an awesome job! I just hope you don't get
to pass around the Horn of Africa that much ( _knocks on wood_ ).

------
edw519
_"He is dead, too much hard living!". Too much hard coding would be more like
it._

Wow, those ones and zeros must have really been heavy!

Every time I see landscapers, construction workers, farmers, nurses aides, or
anyone in one of my customers' factories or warehouses, I thank my lucky stars
that I was born when I was, I had an aptitude and interest in programming, and
I found the perfect career for me.

Sure I work hard, but my hard work is hardly the same as _their_ hard work.

I've spent a career on my ass, building applications that hopefully make the
lives of those who do physical work just a little easier.

My last career was a cook. After a 6 hour shift in a 110 degree kitchen
serving 2,000 meals, a 12 hour stint in an air conditioned office in my Aeron
chair seems like a vacation. Oh, and did I mention I earn more in a month than
I did in a year as a cook?

I never expect my boss to thank me for anything. My boss (me) gives me the
best bonus I could ever ask for. I get to do it all over again tomorrow.

~~~
pw0ncakes
The "hard living" comment seems to imply drug use, a common cause of premature
cardiac death. There was also mention of "coke" at the end of the OP, although
it's ambiguous which unhealthy substance (the sugary one, or the deadly one?)
was being described.

I'd imagine that cocaine use is relatively rare in technology, but it occurs
in finance quite a bit. That's the dirty not-so-secret of the long hours in
investment banking. I also think it's safe to assume that cocaine use is a lot
more dangerous than long coding binges.

~~~
strlen
I'd argue the sweet stuff can be quite dangerous as well when consumed in
large quantities. There's the directly dangerous effect (weight gain,
diabetes) and the secondarily dangerous effect (weight gain, low energy
resulting in low self-confidence which triggers depression).

~~~
SamReidHughes
Coca-cola is definitely dangerous, and the temptation to power my way through
coding problems with large amounts of Coke, which I could not resist for
longer than a week, put me on the path of severe health problems, due not
entirely to weight gain (since most Coke-based calories would substitute for
other calories) but also from the practice of having a short term fix to any
problems involving to consumption of sugar, not to mention the cycle of being
tired -> drinking Coke -> being unable to sleep -> being tired the next day.
After quitting (my job), I fell to a _recreational_ level of Coke consumption,
and my body is thanking me for it to this day. The scary question is whether I
can maintain this through another development job...

------
praptak
"Well, unless that same manager is right there with you, entertaining you with
amusing anecdotes at 2 am, his words are worthless."

His presence at the office at 2 am wouldn't change this fact either. Staying
late oneself is one of the ways to pressure ones subordinates into long hours.

------
wheaties
My company thanked me for working overtime on a project. Mind you, we worked
6-7 days a week for several months and got a 3 hour canoe trip. Hey, whatever,
at least someone, somewhere recognized it.

~~~
benmathes
That sounds like they abused your monkey-brain's inability to measure the
value of your time and that canoe trip. In short, that would almost make me
_more_ pissed off than no reward. No reward at all is cheap, a relative-
pittance of an award is cheap _and_ duplicitous.

The next time they ask you to work an extra 50% for a few months, don't.
Instead work your normal hours and give them a banana; that would only be
fair.

~~~
varjag
I think you read too much into it. It is obvious both parties realize canoe
trip is not a compensation for work, but a mere token of recognition. I.e.
"although we can't afford/not willing to compensate it we are aware of the
extra work you put in".

Did execs got extra for themselves out of it? Maybe, maybe not. Without
knowing the specifics and the situation of the company it is meaningless to
speculate. Is it "fair"? Probably not. But then, in the military there were
thousands of people who had to risk their lives and got just a shitty medal
out of it - not even a canoe trip. Life isn't about fairness, but I think even
a token recognition is better than the other most likely outcome - no
recognition of your effort.

~~~
aaronbrethorst
At least in the military you're serving a higher purpose than 'maximizing
shareholder value.' Assuming, of course, that you're not employed by Xe.

------
rjurney
I started a new job a couple months ago after having worked double time for
months at the last job. I tend to set tough/arbitrary deadlines for myself and
then struggle to meet them. I throw myself into every job like its a startup
and get very into it. I have a tendency to over-work. My new boss is aware of
this. I get yelled at for working until 3AM. I am told to focus on a healthy
balance. Everyone is encouraged to hit the office gym. I do so most days at
4PM, and it makes me more productive the rest of the day. Fruit for breakfast
and vegetables are available for lunch daily. I work from home when I'm tired
of sitting in my office chair. Since starting this job my resting heart rate
is down from 95 to 72.

And I'm more productive than I was at 80 hours a week and not taking care of
myself. An unhealthy lifestyle is not efficient.

------
nonononono
Nope. During the day my coding is like driving a taxi - it's driving, but I
don't really get a say in where I go, or when, and I have to make sure other
people are happy with it. When I code at home, I'm a boy racer - hooning
around doing cool stuff as and when I feel like it. If it ain't like that for
you, you've either been exceptionally lucky in the job market, or you're being
played and haven't even got the nouse to have noticed yet.

------
gills
Yes, my boss did thank me. Thank you, self.

------
shrikant
_Except for one bit which was impossible to implement, though the spec said
otherwise - even the client didn't realise this, but John picked it up._

Let me see if I got this right: it was impossible to implement, but the spec
said it was possible. The client didn't realise it was impossible to
implement, but John made it possible anyway.

So the spec was right all along, and John implemented it? Am I missing
something awesome here that uber-hackers totally get? Can someone explain this
to me?

~~~
kscaldef
I think that's meant to read "but John picked up on it". I.e., he found the
error in the spec which the client had overlooked.

~~~
shrikant
Ah okay, did not parse it that way at all. Thanks, much appreciated.

------
alttab
Ever try moving a man by pushing on his ankles? How about his head?

Smart programmers use just enough effort in the right places to get the effect
they want.

Dumb programmers right a lot of code. The code you never write never breaks,
and never needs fixing.

I'm starting to realize that if no one else will give a shit - don't do it. Of
course, this isn't a free pass to write shitty code. You don't have to be
ineffective to take pride in your work.

------
avk
I balance slavish dedication with passion. The more I care, the less I mind
putting in more time because it really doesn't feel like work. That works for
me, at least while I'm young and hungry for startups.

My approach changes dramatically when I'm working for somebody else because
it's hard to find something to care about on the same level as your passion
projects.

So the key seems to be passion. Have a lot of it? "Work" more because it's not
really work. Have a little? Mind your hours and your rate.

------
InclinedPlane
I find it amusing how many people work super long hours without thinking about
the consequences.

For one you are telling your employer how much less valuable you are, assuming
you are on salary. Working 80 hours a week for the same amount of money
effectively dilutes your hourly earnings, factoring in overtime, to 40% of its
original value. If your boss called you into his office and told you he was
switching you to hourly and giving you a 60% pay cut you would probably be
pretty pissed, even though effectively it meant you made the same amount of
money given your hours.

For another, studies show that for software development people don't actually
get more total work done working past about 50ish hours a week. All that other
in-office time gets wasted by inefficiencies caused from over-work, lack of
sleep, lack of concentration, and being forced to do tasks and errands at work
that would normally be done at home (eating meals, relaxing, paying bills,
etc.)

------
Jd
I don't code for my boss. I code for myself.

------
silentium
No that's why I quit !

