Managing Software Engineers, by Philip Greenspun (philg@mit.edu)


anteriorpróximo

Excellant article with an inaccurate title. More correct is "Managing a Software Sweatshop." And what's wrong with working in a sweatshop? It robs you of your humanity and you become a disfunctional member of society. Your personal relationships, if you have any, breakdown. You do not contribute time to your child's school or extra-curricular activities. You do not contribute to your church's work -- you might not even go to church. And all this distortion of the employee's personal life is to make the business owner and his inner-circle very rich. It's actually a great experience for a short while, but it is unhealthy for people in the long run.

-- Robert Canright, November 8, 2000
You know, if Greenspun here is really serious about wanting to get programmers to work these really long hours and if he is honest about how much it improves the profitability of a company, then I wonder why he doesn't pay by the hour. The most direct way to reward someone for the hours they put in is to pay them for each and every hour they put in. Freshman econ kinda stuff there. You pay them a competitive wage at 40 hours per week, and then every hour over that, they get the same rate at time and a half overtime, as the law requires. If it is so massively profitable to have programmers work those hours, there should be PLENTY of cash to pay the programmers for working those hours, right? So the more they work, the more money they make. If instead, the management is trying to get rich on the backs of the employees, they'd pay a flat rate and then try to work the employees as much as possible. Why should those extra hours be free? You want it, you have to pay a premium. I'd even argue that there should be an increasing scale, so hours over 60, for instance, should perhaps be paid double, then hours over 80 are paid 2.5, and so on for every 20 hours more in a week. That extra time is extremely stressful and hard on one's outside life, and so the cost goes up. My personal belief is that if Greenspun DOESN'T do something like this, then his whole article is BS because he's not backing up his rhetoric with his money.

-- D Goodkin, November 9, 2000
Remember folks, this article is about how to put out products cheaply and in the shortest time possible (which usually go hand-in-hand but not always) to make the most money for the company. That's why "Managing" is in the title. It is not about how to create the highest quality products. It is not about how to retain employees. It is just about making money. In certain fields of programming this is a viable solution for the short-term. Trying to pass it off as "for your own good" is just the rhetoric-spin that people always use when trying to get you to do something that is not in your best interests.

-- Jeffrey Kabbe, November 9, 2000
Is there anything wrong with working circa 70hpw? That's probably a bit more than I do (yes, I have a family). However, I'm not sure about trying to *code* for that kind of length of time. If you can code for even an afternoon a day then you're productive. I'll let you figure what an afternoon is.

I do think it's a mistake to measure hours: that's just an accounting convenience to determine client billables. Billable hours are a largely sensible business practice, because they're easy to pad and have the seeming forms of accountability and professionality. Closed source used to be a largely sensible business practice as well.

There's a difference between billing hours and getting things done (but we all know that). Hence I disagree with another poster who said that ArsDigita should pay by the hour. Since being paid by the Things Got Done maybe difficult to implement in a general way, a salary seems a reasonable compromise. But in terms of evaluating your ability to work *hpw are shockingly useless and almost certainly misleading. What does the fact you've worked 90 hours this week state about what you accomplished? What does ArsDigita's mission statement mean in terms of hpw? As computer scientists like to say, these things are orthogonal.

Anyway, all you really need to know is how much you got done last week/month/year. Since that's roughly how much you'll get done next week/month/year. If you're not happy with that amount of got done, then you need reflect on your life in order to change things.

Also, I'm surprised at no mention of Extreme Programming so far. It's supposed to be controversial, so if you liked this page you'll probably like this book: Extreme Programming Explained (also a good of example of a book that is no longer than it should be).

-- Bill de hOra, November 12, 2000


anteriorpróximo