in Search
Welcome to Neopoleon - Sign in | Join | Help
Navigation: Home | Forums | Galleries

Book review - "Coding Slave"

[Note: Another post written from the comfort and safety of a big piece of metal that was launched into the sky using forces unknown to me, and to which I will summarily refer as "magic." I did not post this while in the air, so get off my ass, FAA.]

Well, I'm back at 37,000 feet, and scared witless as usual. I'm not flying Song today, so I don't have the pleasant distraction of an airline with a sense of humor to keep me from thinking about the fact that, as far as I'm concerned, the only thing keeping this big metal tube in the air is the result of an engineer scratching his head while alone in his office at some odd hour of the morning, wanting to get home to see his family, putting the final touches on the craft design, clocking out, and then saying to himself, "I think it'll work. Anyway, I want breakfast."

Things are going just fine, though, thank somebody. I don't believe in any particular god, so I guess I might as well thank Boeing.

Thanks, Boeing.

The nice thing, though, about getting stuck with nothing but 444,000 inches between you and your maker (again, Boeing) is that there's plenty of time to engage in activities which would be relaxing if it weren't, just to remind you, for the 123 American football fields of distance that lead back to the ground.

In spite of these fears, though, I managed to accomplish something today. I say "managed to accomplish," but what I did wasn't difficult at all. It required less effort than taking the trash out, and was more entertaining than a Gary Coleman televisual marathon on cable.

It was also thought provoking. Big time.

I finished reading 'Coding Slave' by Bob Reselman.

I'll start the formal bit of this review by stating that, if you are a software developer in the traditional sense (that is, you relate to Dilbert more than you relate to your friends, family, and dog), then you need to read this book. There. That's out of the way.

I first encountered the one called Bob Reselman during a .NET Rocks interview. Many of you know this, and it's nearly a waste of time to say it. The show was extremely popular, and I'm still getting email/comments/other from people who want to express their opinions about the show. Bob definitely pushed some of your buttons. There are those among you whose buttons were pushed pleasantly, and those among you whose buttons might have been pushed one too many times, a little too tough, and with no great satisfaction.

Either way is fine. At this point, awareness of Bob, whether you like his ideas or not, is what is important (note that, although I'm providing the "counter" viewpoint in an attempt to represent everybody, the majority of commentary on the show has been, not just good, but fantastic - I think a mini Cult of Bob has sprung up (and you can count me in)).

I'm not going to spoil the book for you, so I can only go into so much detail about why it's important to have your radar occasionally pinging Bob. Let's just say that he has made some difficult observations, and offered at least one person's ideas on how to deal with the problems raised by the observations.

Bob sees some trouble. Bob isn't the only one. Many of us see trouble. Bob just said it all very well. That's all.

The first half of the book is mainly spent setting the scene. Bob establishes the world of mainstream software development as it stands today, and then uses the second half of the book to address that world. Reading through the first half without stopping to exclaim, "Yes! Exactly! That's what's happened to me" is tough, and I'm not talking about the sex.

Oh, yeah. There's sex. There's a decent amount, actually, but it's there for a reason. Some of the less, well, adventurous of you might find the sex offensive, but that's only if you take it at face value. If you stop to ask yourself why Bob included it, then you'll start getting some interesting answers. Some wake-up calls, as a matter of fact. If you're lucky, you might even get assaulted by your own brain taking off on its own set of tangents, each one proposing an interesting answer to the question of "Why so much sex?" My own personal answers have elevated Bob in my mind from the status of "Cool guy I met on the show" to "Bob is a subtle mother!#@$er, and I want to have his children, but not really that last part."

Quite a bit of the book is like this, actually. You might read over a passage and, at first, conclude that it wasn't a necessary addition. But, that's Bob playing with your head. He knows his audience. He knows that he's targeting software developers, and he's managed to create situations that are not at first obviously connected to the industry, but which, provided you expend the neuronal effort to comprehend them, get you asking some very interesting questions about your life, your passions, and your profession. If you approach this book the same way you approach a software problem, then you'll walk away with a solution. It's fascinating like that. It leaves room for you to ask "Why?" which is what many of us do (or should do) at our jobs every day.

The book is also controversial. You're probably reading about all the question asking that's going to go on in your head while reading it, and you might be wondering how Bob handles it. To put it bluntly, Bob doesn't leave much in the way of loose ends. Just as happens with software projects, you might not agree with Bob's conclusions, but that opens the door for you to one-up him, and I'm guessing that this is exactly what Bob wants.

Bloggers often write about The Conversation that happens across the blogosphere. With 'Coding Slave', Bob has just started one hell of a conversation. It's philosophy for coders. It's something you'll want to discuss, not at the water cooler, but with your coding friends in your spare time in a comfortable environment.

For those of you who have felt powerless in recent years as you've heard rumors and seen the results of offshoring, Bob is providing the first few words in a discussion about how to take that power back. He's asking us to stop working 80 hours a week for a few minutes, read the book, and think about all the horribly messed up idiocy that takes place in our profession, and which we can't solve or address because we never stop working 80 hours a week to read books like Bob's.

Not that there are other books like Bob's. I mean, there very well could be, but they aren't on my radar. Right now, Bob is all I've got, and that will suffice for the moment.

Like many coders, I spend a lot of time reading purely technical books. They're great, and I need them so that I can do the work that's required of me, but they don't provide perspective. They don't make me think about the profession - just the tools to get the job done. After all of this, it was nice to finally read a book about software developers rather than software projects. It was nice to get away from the "Here's what to do, and here's how you're going to do it" that comes with technical books. It was nice to finally be asked, "What do you want?" and "Why in the hell aren't you out fighting for it right now?"

You owe it to yourself to get away from the curly braces, the End Ifs, and other bits of your purely coding life long enough to read 'Coding Slave'. I feel that one reason our industry is in such hot water is that we're such a bunch of weenies who never assert themselves. Bob talks a bit about how to fix this. He actually offers a couple of ideas. One of them is great food for thought, while the other... Well, I'll let you draw your own conclusions about the second, less discussed idea. It's certainly entertaining, and that's for damn sure.

Another great thing about the main solution proposed in the book is that it would help facilitate weeding the posers out of our profession and giving them a boot to the backside. If we implement Bob's ideas, we can kick these HTML blundering bastards back to HR, or wherever it is that they're from. Diary Queen. I don't know.

Take or leave his ideas, you should at least expose yourself to them. There's much, much more to coding than just typing one line after another in the hopes that you don't get fired.

The book's cheap ($12.95), and it's a one of a kind. Things like this really don't come along every day, and I think it'd be cool if we all did our bit to support people like Bob. I wouldn't have said it before, but our profession needs some philosophers. Seriously. It almost sounds laughable if you're a typical tech type ("We don't need no stinking philosophers!"), but if you'd like to be convinced otherwise, then read 'Coding Slave'. Really.

And it doesn't matter if you're a .NET/Java/American/Eskimo/DBA type. This book applies to you.

The book isn't perfect, of course. There were places that I thought the dialogue could have been better, but it doesn't take away from the book in any meaningful way. I'm just nitpicky.

All said and done, this book gets all of my thumbs, directed in as upwardly a direction as possible. Highly recommended.

Check out the web site here. Ordering page is here.

P.S.

If you've also read 'Coding Slave' and plan on reviewing it on your site, then let me know and I'll link to you.

Published Wednesday, April 21, 2004 1:38 AM by Rory

Filed Under:

Comments

 

Curt Hagenlocher said:

"the only thing keeping this big metal tube in the air is the result of an engineer scratching his head while alone in his office at some odd hour of the morning"

Oh, no, Rory, the truth is far more frightening. The truth is that he relied on SOFTWARE to tell him that his calculations were correct...
April 21, 2004 4:06 AM
 

paul said:

Get outside and enjoy the celebration we call springtime!
April 21, 2004 10:31 AM
 

Pooja said:

A slightly different perspective on solving the outsourcing issue here:
http://money.cnn.com/2004/03/09/pf/workers_to_india/
April 21, 2004 12:00 PM
 

Rory said:

Paul -

"Get outside and enjoy the celebration we call springtime!"

You've never been to New London, have you?

It's still curl-up-with-a-good-book weather here :|
April 21, 2004 1:07 PM
 

paul said:

Why don't you read the Adventures of Huckleberry Finn...


http://www.marktwainhouse.org/
April 21, 2004 1:35 PM
 

Rory said:

"Why don't you read the Adventures of Huckleberry Finn"

I might just do that, although I'm more of a "Letters from the Earth" kind of guy.
April 21, 2004 1:50 PM
 

paul said:

Yes, the Earth used to be a great place....
http://www.positiveatheism.org/hist/twainlfe.htm#0
April 21, 2004 1:59 PM
 

Chris said:

I recommend a book series called "The Dark Tower", it's by Steven King, and it's very well written.

Or, "The Life of PI".

My mom always told me, "Truth is always stranger than fiction"
April 21, 2004 2:08 PM
 

Grant said:

Rory, I'm in the midst of reading the book and i"m really enjoying it. The user group I co-chair, www.WeProgram.Net, will be giving away a free CodingSlave shirt and a copy of the book at our May meeting.

In my brief conversations with Bob, he's very excited about getting programmers to take the quiz at www.codingslave.com/pages/csGetProgram.php (it's the first link on the left). Check it out -- the quiz is thought provoking!

Like you, I'm hoping to catch up with him at TechEd!
April 21, 2004 2:59 PM
 

Rory said:

Grant -

"In my brief conversations with Bob, he's very excited about getting programmers to take the quiz..."

The scary thing about the quiz is... Well, the quiz itself, really. Kind of lays it out for you without any sugar-coating, and you have to stop at the end and admit to yourself that you don't like things the way they are. That's tough, of course, since it means work, but it sure as bloody-hell would be worth it if it meant getting to go back to that same quiz someday and see a much more positive set of results...

"Like you, I'm hoping to catch up with him at TechEd!"

It almost sounds like there's an informal TechEd _Coding_Slave_ "Birds of a Feather" session brewing :)
April 21, 2004 3:38 PM
 

Grant said:

Sign me up for the CodingSlave BOF! In the words of Mao: "A single spark can start a praerie fire."
April 21, 2004 5:52 PM
 

Rory said:

Grant -

"'A single spark can start a praerie fire.'"

I think that'd be the Arson BOF, but I get what you mean :)

Maybe we *should* plan a slightly more formal get-together.

Hey, Bob - you reading this? Type once for "Yes" and twice for "No."
April 21, 2004 5:57 PM
 

Bob Reselman said:

Rory, I am here.

Yes, let's all meet and become friends. I will be at Tech Ed from Sat 5/22 to Monday night 5/24. I wanted to stay longer, but biz in LaLa Land calls. How about a Sunday night BOF soirée?
April 21, 2004 7:41 PM
 

Jeremy Brayton said:

I'm not a professional programmer. I've never really worked in a type of environment where one or more programmers were working on a project.

With that said though just reading this and the couple of points of the book make it important for practically every industry. The software industry can be particularly worse in some of these areas. Such as since you work behind a desk 80 hours a week, you have physical problems. Because you work said 80 hours, you can't eat decent meals so you're forced to have fast food. These 2 can be said for any desk type job though and should be addressed. To be honest, programmers shouldn't be fat or unhealthy but some of us often are because of the 'restrictions' placed upon us.

"I wouldn't have said it before, but our profession needs some philosophers. Seriously. It almost sounds laughable if you're a typical tech type ("We don't need no stinking philosophers!"), but if you'd like to be convinced otherwise, then read 'Coding Slave'. Really."

To be honest, every job that has these same conditions really needs people like this. These people should be management. They should be technically savvy to know what product they're pushing but they should also know the implications of pushing their developers to the breaking point. Extreme levels of overtime becomes like a 'required' work experience when it should be more like 'under extreme dire circumstances only when necessary like when we're about to go bankrupt'.

I guess part of the problem is capitalism too. We live in a country that operates differently than the majority of the world. The rest of the world gets 4 weeks off where we're lucky to get 1. They work maybe 30 hours a week while some of us push 80 all the time. There are obvious phsycological and physiological reasons why working a lot of hours is overall a bad idea for human beings.

I believe that if software companies slowed down they would actually have fewer bugs. Sure it seems rather retarded that by slowing down you get more done but a well rested person is often the sharpest.

You could test this out by getting a group of programmers together. Get 10 fat overworked 80 hour a week people and 10 fresh out of college 'never coded in a cubicle' programmers. Give them both the same assignment. Give the 10 overworked (Team Dilbert) people a deadline that keeps them working somewhere between 10-12 hours a day for roughly 5 days. Give the 10 fresh people (Team IHateYou) a deadline that keeps them working roughly 6-8 hours a week never allowing for overtime but spread their deadline from 5 days to 8 or 10 (depending on the project). Now compare the results. Which one has fewer bugs? Chances are the fresh people will have fewer bugs simply because they're well rested. Everything in the experiment should be identical with the only difference being how long people spent at the office working on the project. You can't take anything home or even think about it during your off time (good luck getting a company to agree to this, or a programmer for that matter...).

I just don't get why companies, knowing perfectly well how harmful the practices are, choose to enforce them as 'work ethic'. Companies that if I don't work their 'required' 80 hours a week I get fired. Doing the math makes this seem rather dumb.
There are 168 hours in a week (7*24). A good sleep pattern reserves 56 of those hours (8*7). That leaves you with 112 hours a week that you are actually awake and doing something. If you took up 80 of those hours in work you're left with 32 hours a week. Lets say that the 80 hours doesn't include travel which is roughly an hour a day (any more or less greatly impacts the remaining time). That drops the 32 remaining hours down to 27. So you're left with 27 hours every week by which to do things. Under a typical 40 hours a week though, you would be left with 67 hours. 67 or even 27 hours seems like a lot of time but in reality it isn't.

I believe that this country has the potential to have great capitalism but not at the expense of the overall wellbeing of it's workers. Right now a lot of us are suffering for the 'almighty dollar' and it sickens me. I don't need a product so bad that you can't pay your workers or work them incredibly long hours. I'd rather have a stable product that took 2 extra months than have some rushed crap version where you have to immediately apply 50-60 patches just to make it function the way it should when I bought the damned thing. Maybe that's just me though...
April 21, 2004 7:46 PM
 

Rory said:

Bob -

"Yes, let's all meet and become friends. I will be at Tech Ed from Sat 5/22 to Monday night 5/24. I wanted to stay longer, but biz in LaLa Land calls. How about a Sunday night BOF soirée?"

Sunday night ought to work for me. I'll post about it sometime next week, and we'll see what we can drum up...
April 22, 2004 2:19 AM
 

Marc Christofferson said:

Makes you want to goto LaLa Land doesn't it.
I worked with Bob on a couple of projects in the midwest. What a treat! Creative, innovative, scary all describe working with Bob.

April 22, 2004 2:46 AM
 

guyINCOGNITO said:

what?!? they're letting rory into tech ed? as what, an "attendee"? that's no freakin fair. it ruins the whole concept of the "attendee" program!
April 23, 2004 4:05 AM
 

abaum said:

Received my copy last week. I thought it was nice touch that Bob (or perhaps someone in India :P ) leaves a personal note and signature on the inside cover. Anyway, I read the book over the weekend, and wasn't disappointed. I'm trying to arrange with the 'powers that be' to attend TechEd and would definitely like to get together.
April 28, 2004 3:35 AM
 

Jeff Atwood said:

July 8, 2004 6:18 AM
 

TrackBack said:

Finished Coding Slave
April 26, 2004 3:42 PM
 

TrackBack said:

Non-technical books you should read
May 14, 2004 1:34 AM
New Comments to this post are disabled

About Rory

I *own* this site, you loser.