Slashdot Mirror


Why Does Software Cost So Much?

David Kennedy writes with a review of Tom DeMarco's older Dorset House title, Why does software cost so much? (sub-title: And Other Puzzles of the Information Age.) Sounds like something to put in the same section of your library as Frederick Brooks Jr.'s The Mythical Man Month . Why Does Software Cost So Much? And other Puzzles of The Information Age author Tom DeMarco pages 230 publisher Dorset House rating 7 reviewer David Kennedy ISBN 093263334X summary An older collection of essays, some good, some bad, from one of the most respected names in the software management field.

Summary: An older collection of essays, some good, some bad, from one of the most respected names in the software management field. An interesting read, not least because of the amusement to be gained from how things have, and haven't, changed. Worth reading if you have the time, but not as essential as some of his other titles.

Check your sources. Tom DeMarco is an established industry figure who occupies that rarest of market niches - he's a management consultant/guru who has the respect of technical people. He's the co-author (with Tom Lister) of the classic "Peopleware" (which I suggest you rush out and read), and it's on the strength of that title that I read his work. I normally lack even the slightest interest in management titles, on the basis that Sturgeon's Law seems to be especially strict in that genre. For example, both my copies of "The 7 Habits of Highly Effective People" and "The Monk Who Sold His Ferrari" ended up in the bin. (If it helps, I have a library of about 5K books [mainly novels], and have only ever thrown out 4.)

What's this book about? This is a 1995 title, and as such is interesting for historical value. The blurb states:
"Drawing together several essays published previously, plus ten all-new papers never seen beyond his circle of colleagues, Tom DeMarco tackles a multitude of tough subjects and wrestles fresh insight out of them. Here's a compact, compelling edition of this acclaimed consultant's views of managing the software process."

What you get is 230 pages of essays or opinion pieces. There are 24 pieces, ranging from a couple of pages to a couple of dozen pages. A smattering of titles:

  • Why does software cost so much?
  • Management-aided software engineering
  • Lean and mean
  • If we did only one thing to improve...
  • Software development: State of the art vs State of the practice
  • Software productivity: The Covert Agenda

As the titles suggest, the focus is on software projects specifically, although much of the discussion re managing the effort could apply to many technical disciplines. All pieces which refer to surveys don't use numbers pulled from a hat, they use numbers pulled from the bibliography at the back.

Target audience It's a mix. Most of the pieces seem aimed at management, from team leader to project manager, but the discussion will be of interest to most programmers, especially those suffering from the Bad Management Blues, or who are thinking of taking a step sideways into a team lead role.

What's good? Quite a lot. This isn't a long book, and it's not going to revolutionize your life, but it makes for a decent couple of hours reading. The author can certainly write, with a chatty style obviously honed by a career based on presentations. All the pieces are easily digested, and usually contain a nugget of something interesting.

There are a few nice points in here re how and why you should manage your software project, but for me, the interesting thing about this older title is that it's a very different world he's talking about! For example, one piece, from 1989, talks about the difference between programmers working on identical tasks. They show nice charts and I was amazed to see PASCAL and BASIC in there. I expected to see COBOL of course, but the small size of the C wedge was shocking. Of course, there was no wedge for C++, let alone Java or Perl.

As with any older title, there are technological fossils like this to be marveled over in several essays, but it's quite interesting how the author pronouncements are generally, well, reasonable and right. He's not Nostradamus, and doesn't predict specifics, but there is a nice discussion on language uptake (he rails against FORTRAN and COBOL in a world of Modula-2, Oberon and SmallTalk! I suspect more people now now use the either of the former languages than all the latter languages put together). In this essay, he talks about how some of the third generation languages are wonderful, but suffer from inadequate or confusing libraries. He suggests that only wide and deep libraries really make people change languages in the real world. I know (from reading his new title, "Slack", review coming) that he's much further from the code now, but I wonder what he makes of Perl or Java? (Certainly the thing that lured me from C++ to Java was the libraries. Well, I missed the STL which makes the Collections API look like a child's homework.)

Other essays talk about the Microsoft anti-trust trial, or the fate of IBM. In both cases he seems to be more-or-less on the money, simply by being slightly cynical and not making any mad assumptions. Of course, by the same token, nothing he predicts is particularly startling, but still, of interest when reading.

There are a quite a few pages devoted to things which don't relate to technology specifically, and hence, don't appear dated now. These generally concern scheduling, or people management, and generally are as good as people expect this author to be. When he's good, he's very good. I want to work with a manager like him someday, just to see what it's like! However, even in these people-skills sections, I can't help but wonder what he'd revise in the light of the whole dot-con debacle.

What's bad? Well, this is a fix-up title, and some of the essays are, to be frank, crap. I doubt any but his most ardently completist fans want to read an essay on his experiences trying to work with desktop video for example. A couple of the essays just struck me as, well, rather pointless. Sometimes funny, but pointless. These tended to be the "Not previously published" ones, and I think there's a reason for that.

Alternate titles Oh, sure. There's a shelf full of titles like this in your nearest bookshop. I don't generally like any of them though, so I'll just recommend his earlier Peopleware and his latest, Slack.

You can purchase Why Does Software Cost So Much? from bn.com. Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.

4 of 264 comments (clear)

  1. It's simple. by Anonymous Coward · · Score: 1, Troll

    We live in a world where work is no longer necessary, at least not in the sense of 100% employment. As technologies replace countless jobs, not only in number but in description, capitalism needs to find new ways to keep the old myth of employment going.

    By creating an endless cycle of upgrades and software bloat, jobs are created, money changes hands and capitalism can gasp one more breath before hopefully dying.

    If software were built like hardware, and people weren't brainwashed into computer addiction, software would be small, fast and efficient. The implication is that it wouldn't take thousands of programmers years to churn out buggy code.

  2. Moderation hints by smileyy · · Score: 1, Troll

    -1 for anyone who can't infer that the book is not primarily talking about bespoke software, not commercial software.

    --
    pooptruck
  3. The glory hole protocol - section 3 by Anonymous Coward · · Score: -1, Troll

    3.0 It does happen but mostly stuff happens by sight and by a standard protocol.

    3.1 If you want to be the person who helps the other person cum:

    1. Go into a booth; close and lock the door, if possible.
    2. Drop some money in the video machine.
    3. Sit down if the establishment provides a place to sit.
    4. Expose your genitalia (usually by dropping your pants) and get hard.
    5. Wait for someone to come into the booth next to you or check the person out in the next booth by looking through the glory hole. Don't be shy about this, almost everybody who is there is looking to be checked out by the person in the next booth.
    6. If you like what you see, stick your finger through the glory hole far enough so that the other person sees it. Withdraw it to show him you are ready to receive him. If you want him to use a condom, place it in the hole between you now.
    7. If the other person wants you to play with him, he will stand up and place his penis through the hole. If he doesn't, he won't. If he will use the condom you placed in the hole, he will take it now. Sometimes he will just want you to watch him play with himself.

    3.2 If you want to be the person who cums:

    1. Go into a booth; close and lock the door, if possible.
    2. Drop some money in the video machine.
    3. Sit if you wish but standing up is the generally accepted indicator that you are not willing to play with anyone else.
    4. Expose your genitalia (usually by dropping your pants) and get hard. You will find it more difficult to get someone to play with you if you don't have at least a half-mast hard-on.
    5. Wait for someone to stick their finger through the glory hole.
    6. Put a rubber on now if you want. Place your penis through the hole. Some guys will just play with you; others will suck you; a few will want you to penetrate them anally.

    3.3 If you want to take turns:

    If you stop playing with someone before they cum, and stand up with yourself exposed and hard, that is a general signal that you would like to take turns. That is, it's now time for him to withdraw his penis and allow you to place your penis through the glory hole so he can play with you. Your best opportunity to make this happen is to find someone who is sitting down (looking to play with someone) and is willing to play with you (responds when you stick your finger through the glory hole).

    This will result in one of two things happening - the other person will either oblige or refuse. The typical refusal is shown by the person sticking his penis back through the glory hole or by leaving and looking for someone else to play with.

    On occasion, the person being played with will want to help you cum. He will signal this by withdrawing his penis from the glory hole before he cums and putting his finger through the hole. If you want to be played with, place your penis through the hole. If you aren't ready to be played with, stick your finger back through the hole after he does. Negotiate from there.

    There have been many occasions that I have refused to take turns and just wanted to make the guy cum. For example, if I want to go through a few guys that evening before I cum, I won't let the first guy play with me and risk cumming too early. I think some guys take it as a rejection and it is not meant that way.

    3.4 If you want to have anal sex:

    Follow the same procedure as above, except place your anus as close to the glory hole as possible. When the person on the other side sees this, he will attempt to penetrate you through the glory hole. You should shortly begin to feel him pressing his penis or finger up against your anus (or nearby). Guide his penis or finger to where you want it to be. Please note: usually if the other person is not at least 6+ inches long, this is a pretty difficult position and penetration may be impossible. You may have to settle for his finger.

    And, if you do this without a condom, you have a death wish.

    3.5 If you want to have sex with someone in an adjoining bathroom stall:

    A favorite of truckers - the bathroom stall is the only major anonymous sex stop on or near interstate highways. The protocol is very simple.

    If you want to play with someone, go to a stall at the farthest end of the bathroom. Close the door, pull your pants down and wait. When someone comes into the next stall, move your foot so that you know the other person can see it and slowly start tapping it. If the other person wants to be played with, they will kneel down and place their penis under the stall wall.

  4. Re:Because by Anonymous Coward · · Score: -1, Troll

    Liberal Arts? Is that a gay course of study or what? It must suck to be you, or you must suck.