Slashdot Mirror


The Mythical Man-Month Revisited

jpkunst writes "Ed Willis, over at O'Reilly's ONLamp.com, gives his varied reactions to Fred Brooks' classic The Mythical Man-Month, after 'having finally read it in its entirety'. '[...] simultaneously you can see just how much the field has changed since the original writing and just how much has stayed stubbornly the same.'"

317 comments

  1. Man-month? by Guy+Innagorillasuit · · Score: 5, Funny

    What, like a manstrual cycle?

    1. Re:Man-month? by JoeBuck · · Score: 2, Funny

      Which reminds me of a line from the book. Something like: it takes nine months to produce a child, no matter how many women are assigned to the project.

    2. Re:Man-month? by Anonymous Coward · · Score: 0

      For a 'manstural cycle', you need one of these.

    3. Re:Man-month? by osu-neko · · Score: 1

      Indeed. That's from a discussion on the divisibility of tasks. If certain parts of a project are easily divisible, it makes sense to assign multiple people to that part of the project. If a task is not divisible, it makes no sense to assign more than one person to it -- it cannot benefit from parallelism. A car can be more quickly build if many people are working on it, since people can be building the engine while others are building the frame, but some takes (like having a baby) can't be effectively divided. In the ideal case, it has no impact on the time it takes. In the more common case, is slows things down as people try to divide the indivisible task.

      --
      "Convictions are more dangerous enemies of truth than lies."
    4. Re:Man-month? by wideBlueSkies · · Score: 0, Offtopic

      Well, I'm happy to try. Please send me nine of the hottest...um..most fertile looking ones and I'll see how quickly I can get em' to produce babies. Hee Hee.

      wbs.

      --
      Huh?
    5. Re:Man-month? by CodeMonkey4Hire · · Score: 3, Interesting
      Don't forget all of the status reports and project meetings to discuss the progress of the indivisible tasks and to look for solutions on how to improve productivity.

      Then the really fun meetings when you're behind schedule. The finger-pointing. Blame shifting. Back-stabbing.
      Oops, I forgot to explicity use my <burned-out> and <pessimism> tags.
      --

      Let's go Hurricanes!!! 2006 Stanley Cup Champions!!!
    6. Re:Man-month? by xp · · Score: 1

      The exact quote is: The bearing of a child takes nine months, no matter how many women are assigned. -- Fred Brooks

      ----
      Is Your Boss A Muppet?

    7. Re:Man-month? by Anonymous Coward · · Score: 0
      Well, I'm happy to try. Please send me nine of the hottest...um..most fertile looking ones and I'll see how quickly I can get em' to produce babies. Hee Hee.
      No problem, you sexist hog. There's one catch: All nine are named Vanessa. "Hee Hee."

      Douchebag...

    8. Re:Man-month? by Anonymous Coward · · Score: 0

      Who cares what their names are...?

  2. Still one of the best "I-was-there" books by ab762 · · Score: 3, Interesting

    Fred's account of the 360 project still has lessons to teach, despite the intervening years. If you haven't read it, go read it.

    1. Re:Still one of the best "I-was-there" books by LittleGuy · · Score: 4, Interesting

      Fred's account of the 360 project still has lessons to teach, despite the intervening years. If you haven't read it, go read it.

      And from an outsider's view of another "I Was There" project, try Soul of a New Machine by Tracy Kidder. Both books were required reading in Computer Science at college about 20 years ago.

      Now, is MMM still relevant in the current Microsoft-dominant environment, with a new Operating System every few years, impacting software development? Is the concept of software development still valid, or is it a matter of hobbling "off the shelf" solutions together?

      --
      Mod Karma -1: I sed bad wurds. If I cep my mouf shut, I wud be at riyses.
    2. Re:Still one of the best "I-was-there" books by Anonymous Coward · · Score: 0

      Now, is MMM still relevant in the current Microsoft-dominant environment, with a new Operating System every few years

      Not to be picky but Microsoft is hardly putting out an OS every few years. Most companies are still using Windows 2000 which is by my math over 4 years old and Longhorn is still way off. And you also make it seem like this Microsoft domination is something new. It's been that way for pretty much over a decade now.

      All that aside, a lot of in-house application development is either focusing on webbased platforms (ASP, PHP, JSP, etc.) or in platform independent languages.

    3. Re:Still one of the best "I-was-there" books by robnauta · · Score: 3, Insightful

      Actually I believe it was about OS/370 ? The main point was that when a team makes a first OS, it'll be small, fast, elegant, essentials-only. When they then make their second OS, it will have all the 'cool' features in it that they scrapped in the first one, and the result will be a bloated, slow, complex and buggy monster.

    4. Re:Still one of the best "I-was-there" books by LittleGuy · · Score: 1

      Not to be picky but Microsoft is hardly putting out an OS every few years. Most companies are still using Windows 2000 which is by my math over 4 years old and Longhorn is still way off. And you also make it seem like this Microsoft domination is something new. It's been that way for pretty much over a decade now.

      Just pointing out that between now and when TMMM came out, you have the rise of the microcomputers (Apple and the IBM Clones) and the operating systems which run them (DOS, Windows, Mac, Linux, et. al).

      Does Brooks' model change from that when the behemoth computers of the 60's walked the Tech World?

      --
      Mod Karma -1: I sed bad wurds. If I cep my mouf shut, I wud be at riyses.
    5. Re:Still one of the best "I-was-there" books by Detritus · · Score: 3, Informative
      It was OS/360.

      It's called the "second-system effect".

      --
      Mea navis aericumbens anguillis abundat
    6. Re:Still one of the best "I-was-there" books by Anonymous Coward · · Score: 2, Insightful

      I'll second that. I read this in college for software engineering and even on our 4-8 person projects it made sense. In the corporate world, it makes more sense, but no one really listens. The same pressures of time and budget seem to outweigh the lessons learned from Mr. Brooks.

      I reread this a couple years ago and was amazed how much of it still is true. OSS development changes some of this, but for most of the world, the lessons apply.

      This should be required in every CS college curriculum.

    7. Re:Still one of the best "I-was-there" books by Fulcrum+of+Evil · · Score: 4, Insightful

      Does Brooks' model change from that when the behemoth computers of the 60's walked the Tech World?

      No. Brooks' model is one of software development in general, so the particulars of what is being developed matter not at all.

      --
      "We returned the General to El Salvador, or maybe Guatemala, it's difficult to tell from 10,000 feet"
    8. Re:Still one of the best "I-was-there" books by EvilTwinSkippy · · Score: 2, Insightful
      No, not really.

      No matter how "huge" and IT project is, it is still made up of individual pieces that must be developed and maintained individually. Each of those pieces needs a team to develop it.

      OSS merely takes care of a lot of the core functions for you. Instead of having to go out and implement a Kernel, you can use a ready made one. Instead of having to implement a network file system, you can employ one of the myriad that are available. Your project sits atop these other peices, but the same fundimental forces go into it's development.

      Take Video game development. Very few games use their own graphics engine. But even though the engine is already done, you still need to write the software the runs on top of the engine (i.e. your game.)

      --
      "Learning is not compulsory... neither is survival."
      --Dr.W.Edwards Deming
    9. Re:Still one of the best "I-was-there" books by dasmegabyte · · Score: 4, Insightful

      Why wouldn't it be? Back in the day, 8 man teams were stringing together different pieces of hardware with software. Now, we're stringing together difference pieces of software to create software packages. The complexity hasn't changed...because as software became abstracted, people began expecting more of it for their software dollar. In 1964, all people expected from an operating system was file operations and maybe some time slicing. Now, an OS better have a robust suite of networking tools and an MP3 player if it intends to compete. This is why so many people upgraded to XP, despite it being a mere evolutionary improvement over Windows 2000. It absorbed into the OS functions had previously been the auspice of the third party, and in doing so, (theoretically) streamlined them.

      It's no different than any other consumer market. Cars come with standard options that were top end ten years ago. What's top end now is pretty far removed from "just being a car," stuff like DVD navigation systems, radar nightvision and dynamic suspension systems. In another ten years, some of these will be standard on all cars, and what's top-of-the-line will be something that seems obscene and unnecessary to us right now.

      --
      Hey freaks: now you're ju
    10. Re:Still one of the best "I-was-there" books by dasmegabyte · · Score: 1

      Incidentally, the Second System Effect definitely still applies, although it should be renamed to "The Second API effect."

      Version 1.2 of my current API is virtually unusable, and I'm embarrassed that I didn't catch myself in the middle of said effect.

      --
      Hey freaks: now you're ju
    11. Re:Still one of the best "I-was-there" books by Skjellifetti · · Score: 1

      Hobbling "off the shelf" solutions together wins my vote as best description of most corporate EAI efforts.

    12. Re:Still one of the best "I-was-there" books by Jason+Ford · · Score: 1

      Are you suggesting that "so many people upgraded to XP" because it absorbed user-land applications into the operating system? I suspect that very few people upgraded because of a perceived efficiency gain with respect to such applications.

      Do we have statistics about the number of users who upgraded to XP, as opposed to the number of users who are now using XP (likely because it came with their shiny new computer)?

      --
      I did not become a vegetarian for my health, I did it for the health of the chickens. --Isaac Bashevis Singer
    13. Re:Still one of the best "I-was-there" books by joNDoty · · Score: 1

      FYI- these 2 books - The Mythical Man Month and Soul of a New Machine were STILL required reading for University of Notre Dame computer science grads who took Computer Architecture and Software Engineering as of the class of 2003. I remember it vividly - being the ONLY courses in the entire engineering curriculum that had required reading! I mean, come on, required reading? I thought that's what all those mandatory liberal arts courses with the football players were for.

    14. Re:Still one of the best "I-was-there" books by wideBlueSkies · · Score: 1

      I was reading some Chevrolet brochures from the 50's recently. I was suprised to see that the blower motor for the heater was an add on option back then. Same thing for the passanger side rearview mirror.

      Weird.

      And yet it's interesting to see that over the years that the marketing itself hasn't really changed over the years. The cars, while primitive by our modern standards, were being pushed as the ultimates in comfort, convenience, luxury, etc.

      The ultimates, eh? After looking at those ads, I'm more skeptical about advertising than ever.

      Buy me, buy me, buy me, year after year...... these ad guys have been ripping us off probably since the beginning of time.

      wbs.

      wbs.

      --
      Huh?
    15. Re:Still one of the best "I-was-there" books by Brandybuck · · Score: 2, Informative

      If you haven't read it, go read it.

      I have read this book. But that means absolutely nothing, because the upper management of my company has not read it. We're making every mistake Brooks wrote about in MMM. We're even making mistakes written about in NSB.

      We're making mistakes Brooks never dreamed of, because Brooks didn't write in a time of offshoring development. We have a CEO who truly believes that two inexperienced developers twelve time zones away are more productive than one experienced developer in house.

      --
      Don't blame me, I didn't vote for either of them!
    16. Re:Still one of the best "I-was-there" books by dasmegabyte · · Score: 3, Insightful

      Why should you be skeptical of advertising merely because products get better over time?

      There are plenty of REAL reasons to dislike advertising (such as the fact that it caters to the least common denominater, is overly self important and rarely tells you what you REALLY need to know when evaluating a product or service, instead misleading you with empty statistics such as how popular something is or how many awards it's gotten in advertiser supported magazines). But you can't blame ADVERTISERS for the fact that, someday, a better product may be made. Their job is to inform you of the product that exists RIGHT NOW -- and if the 1973 Corvair was the best Corvair ever made, they're be right to say so, even though it's an extremely shitty car.

      Is this a rip off? I dunno. If I need to buy a car, I don't really care that a better one will be available in ten years. I might like to know which is the best car right now. And certainly, since I'm going to be test driving it, I'll be in a prime position to judge for myself whether the car is sufficiently "ultimate" to meet my exacting standards.

      Personally, I don't think it's possible for a company to rip you off. People rip themselves off by placing impractical expectations on products with minimal research. Advertisers merely take advantage of that; they make things out to be useful, because they're trying to sell you something. Sneaky, yes, but I don't know why you feel the need to take their word at face value when you KNOW they'd benefit by not telling you the defects.

      But I guess in a world where people believe that the world is less than ten thousand years old because some guy who died SIX thousand years ago says a ghost told him that, you can't expect a whole lot of logic. After all, if people can base their whole worldview on wild, unsubstantiated claims, how do you think they're going to evaluate what brand of facial tissue to purchase?

      --
      Hey freaks: now you're ju
    17. Re:Still one of the best "I-was-there" books by dasmegabyte · · Score: 2, Insightful

      No, but I have conjecture and anecdotes. Those are types of statistics.

      Back when XP came out, I distinctly remember disrespecting people at work who went out to buy it. But many of them were thrilled with it, mostly for the "user-land" applications. One guy told me he was excited because it had CD burning built in to the OS and had actually got a CD burner bundled with his purchase. Another was excited by the prospect of XP's driver backoff (which, incidentally, does the same thing I did in 2000 for years...copies the current hardware profile before making a change).

      At that point I realized that the world of commodity computing and the world of consumer computing were completely unrelated. True, they had spent more money that I did for the same results. But they also spent a few hundred hours less time researching them. Many of these people don't go home and browse slashdot for three hours a night, and instead fuck their wives, go bowling, etc.

      --
      Hey freaks: now you're ju
    18. Re:Still one of the best "I-was-there" books by xp · · Score: 1

      The classics on procedural programming remain relevant because core programming remains procedural -- OO makes procedural skills more relevant rather than less.

      ----
      Is Your Boss A Muppet?

    19. Re:Still one of the best "I-was-there" books by JohnQPublic · · Score: 2, Insightful

      Kidder's "The Soul of a New Machine" should be required reading for anyone considering managing technical people. The lessons Kidder noted from the Data General team he observed are timeless.

      And yes, Brooks' "The Mythical Man Month" is still valid, because it isn't about code, it's about software project management. Like it or not, nothing has really changed in the field in the last 30 years. Yes, the languages have changed (although APL programs and C programs typically have the same number of comments, excluding the lawyerese). Yes, we type in front of LCD screens now (although code windows still default to 80 "columns"). But programmers are still writing programs and those programs are still interacting with each other and still suffering from complex-system effects. And the "second system effect"? Just ask anybody who's had to pay for a rewrite of their pre-existing system in Java, C++ or whatever else the paradigm du jour is.

      Brooks rules, plain and simple.

    20. Re:Still one of the best "I-was-there" books by Jason+Ford · · Score: 1

      C'mon, mods! Where's the (+1, Funny) for the Lionel Hutz reference? To which I reply, "Facts are meaningless. Facts can be used to prove anything that's even remotely true."

      Ok, I agree with this point: people didn't necessarily upgrade to Windows XP because of these new features, but, once they upgraded, they were happy to find them.

      I should note, though, that the examples you cited (CD-burning and XP driver backoff) don't seem to me to be user-land applications, like Word or IE. I was thinking that you meant that people liked that Microsoft has inextricably (and unnaturally) linked the browser with the kernel.

      --
      I did not become a vegetarian for my health, I did it for the health of the chickens. --Isaac Bashevis Singer
    21. Re:Still one of the best "I-was-there" books by foobsr · · Score: 1

      In another ten years, some of these will be standard on all cars, and what's top-of-the-line will be something that seems obscene and unnecessary to us right now.

      It is all there.

      This one - Euro 500.000+ is obscene. IMHO.

      CC.

      --
      TaijiQuan (Huang, 5 loosenings)
    22. Re:Still one of the best "I-was-there" books by NickFortune · · Score: 1
      Personally, I don't think it's possible for a company to rip you off. People rip themselves off by placing impractical expectations on products with minimal research.
      So, if I undertake to sell you a crate of choclate, for example, take your money and then send you a crate of doggie poo, that is me being a Bad Person.

      But if I form a limited company, take your money and send you doggie poo for chocolate, then apparently I have done nothing wrong. Instead you become a victim of your own unreasonable expectations.

      I can't decide whether that's corporate propaganda or good old fashioned trolling.

      --
      Don't let THEM immanentize the Eschaton!
  3. Am I the only one... by byolinux · · Score: 3, Interesting

    ...who'd never heard of this book?

    Maybe I'm just uneducated, or maybe it's an American thing... here in England, we probably have dozens of books that are unknown anywhere else.

    1. Re:Am I the only one... by Anonymous Coward · · Score: 1, Informative

      "Maybe I'm just uneducated, or maybe it's an American thing... here in England, we probably have dozens of books that are unknown anywhere else. "

      I'm from England. I love that book and it was taught to us as a college set text. so it's not an Americvan thing ;)

    2. Re:Am I the only one... by plumby · · Score: 1

      I'm in England and pretty much everyone I know in my IT dept. has at least come across "The Mythical Man Month", if not read it.

      It was probably the first non-technical IT book I read (many years ago), and I remember it had a very big influence on me back then. I really ought to re-read it.

    3. Re:Am I the only one... by baywulf · · Score: 4, Informative

      It is a very thin book but I have only skimmed through it. The name of the book basically comes from this idea...

      If you were for example painting a big house or something it my take one man two months to complete. But if you had two men then it takes one month. The more people you add the faster the job it done. So we often talk about how many man months are needed to complete a job. But that are many tasks that cannot be made faster by adding more people. Brooks states that programming is one of those tasks. Adding too many people to the programming effort will only make it take longer because of interdependencies, communication and coordination required. The programmer and time are not fungible. We cannot simple expect to complete a project that takes 1 man 18 months with 18 men in 1 month. As you add more men the time improvements become less and less.

    4. Re:Am I the only one... by byolinux · · Score: 1

      Must just be me then. :(

    5. Re:Am I the only one... by byolinux · · Score: 1

      That's what I need... a decent synopsis of the book.

      Barnes and Noble's website couldn't offer that as far as I could see...

      Thanks

    6. Re:Am I the only one... by talexb · · Score: 4, Insightful

      And in fact as you add more people it takes longer and longer.

      The trick is to have a team just small enough that you get the project done as quickly as possible. It's sort of like the marginal revenue curve .. charge more and fewer people will buy the item, charge less and your profit is less.

      But the comparison to a surgical team is apt: You don't add more surgeons, necessarily, you add assistants to hand instruments to the surgeon, keep tabs on the patient, hold the light, etc.

    7. Re:Am I the only one... by Anonymous Coward · · Score: 0

      As my boss likes to say, 9 women can't have a baby in a month ....

    8. Re:Am I the only one... by AKAImBatman · · Score: 4, Interesting

      The programmer and time are not fungible. We cannot simple expect to complete a project that takes 1 man 18 months with 18 men in 1 month. As you add more men the time improvements become less and less.

      In other words, programmers tend to run afoul of Amdahl's Law. ;-)

      Actually, Amdahl's Law would probably be a good way of calculating the maximum effective team size. Unfortunately, it can be very difficult to ascertain a value for the "work" needed on a project. Not to mention the "human factor" of programmers who are faster, less experienced programmers, and "cowboy coders" who refuse to check any of their work into version control.

    9. Re:Am I the only one... by YetAnotherName · · Score: 4, Informative

      Right. My favorite way of helping "managers" see this is by rhetorically asking, "So, why can't nine women make a baby in just one month?"

    10. Re:Am I the only one... by Anonymous Coward · · Score: 0

      Sounds like the pregnant woman theory to me....
      If it takes nine months for a woman to have a baby, how long will it take nine women to have a baby?

    11. Re:Am I the only one... by Anonymous Coward · · Score: 0

      I'm English and I'm reading the Mythical Man Month right now. I've been meaning to buy it for years.

      Maybe I'm just uneducated, or maybe it's an American thing..

      I'd wager it's the former. Do you read The Daily Mirror by any chance?

    12. Re:Am I the only one... by fijimf · · Score: 5, Interesting


      The British equivalent would be C.A.R. Hoare's ACM Turing Award acceptance speech The Emperor's Old Clothes.

    13. Re:Am I the only one... by kraut · · Score: 1

      yes.

      --
      no taxation without representation!
    14. Re:Am I the only one... by IMarvinTPA · · Score: 1

      My favorite take on that is: "It still takes 9 months to have a baby, no matter how many women you assign the task."

      Marv

    15. Re:Am I the only one... by fijimf · · Score: 5, Funny

      Since one human year equals seven dog years, couldn't we save time while keeping the team size small by hiring dogs as developers?

    16. Re:Am I the only one... by gorre · · Score: 1

      I've heard of the book but never read it. Before I start my third year at university though I have a list of books the department recommends I read over the summer and this book is on it. Can somebody tell me if it's really worth reading, I mean is there anything in this book except the (seemingly obvious*) observation that adding more people to a project doesn't make it finish faster and actually may in fact cause problems making it take longer?

      * Although perhaps it only seems obvious now and wasn't before this book was written.

      --
      "Madness is something rare in individuals - but in groups, parties, peoples, ages it is the rule." -- Nietzsche
    17. Re:Am I the only one... by AlecC · · Score: 2, Interesting

      Many years ago we bought a development system which supported maximum of six developers. The manufacturer justified this by pointing to research saying that this was the larges sixe of team that could work together on a single project. As you increased the size of the team, the productivity increase associated with each new person fell. The sixth person on the project only increased productivity by 10% of the productivity of the first person on. The seventh perfson decreased productivity.

      Their view was that if you want to deploy more people on a project, you have to divide it into sub-projects wiith relatuively much more formal and documented interfaces between the separate teams.

      My experioence would not contradict this at all.

      --
      Consciousness is an illusion caused by an excess of self consciousness.
    18. Re:Am I the only one... by jeremyp · · Score: 2, Interesting

      Why would it be obvious that adding more resource to a task makes it slower? There are plenty of people about (some who are in my company, some who have read MMM!) who think that works even for software dev.

      The answer is yes: read it. It's a classic of the IT World and contains some important ideas (as well as being an interesting view of the IT World 30 years ago).

      --
      All I want is a secure system where it's easy to do anything I want. Is that too much to ask ~~ Randall Munroe
    19. Re:Am I the only one... by LizardKing · · Score: 3, Interesting

      Most programmers I've worked with in the UK have either read "Mythical Man Month" or at the very least heard of it. The same goes for Jon Bentleys "Programming Pearls".

      Both books were a little bit of an anti-climax when I first read them, probably because I expected way too much in the way of blinding insights. I found I was like the bloke that Brooks sat next to on a plane journey (described in the second edition) - so much of what the book has to say seems obvious now.

      However obvious those insights may seem, big projects still get bogged down with the same old problems. I guess that means managing really big projects is still a bit too much for most of us to cope with.

      Chris

    20. Re:Am I the only one... by LetterJ · · Score: 3, Funny

      I add to that and say that if you try, you'll find yourself supporting 9 times more baby than you planned for.

    21. Re:Am I the only one... by ISPpfy · · Score: 1

      Thank you for that link - that was a very interesting story. Mod Parent up, please.

    22. Re:Am I the only one... by miu · · Score: 3, Interesting
      The same goes for Jon Bentleys "Programming Pearls".

      This one is beyond a classic, it is still very useful and I re-read it every couple years. The notes on back of the envelope calculations (pi seconds is a nanocentury, the rule of '72', etc.) and the continual admonishment to rethink your data structures are things I try to always keep in mind during meetings and implementation.

      You'd be surprised how often a SWAG (scientific wild ass guess) about memory or time requirement can point things in the right direction early in the process.

      --

      [Set Cain on fire and steal his lute.]
    23. Re:Am I the only one... by kmo · · Score: 1

      Or more succinctly, 9 women can't make a baby in one month.

    24. Re:Am I the only one... by mOdQuArK! · · Score: 1

      Although statistically speaking, you would get 1 baby per month (barring any defects) - and if you stagger the conceptions 1 month apart, then once production began, you could have a sustainable 1 baby/month after the initial 9 month waiting period).

    25. Re:Am I the only one... by galacticdruid · · Score: 1

      "cowboy coders" that "refuse to check their work into source control". you mean unemployed hacks who live w/ their mom? ahhahahah, seriously, if someone won't check their code into source control because they're too busy tending their cows you've got a problem.

      --
      we are all one consciousness experiencing itself subjectively - bill hicks
    26. Re:Am I the only one... by blighter · · Score: 2, Interesting
      Thank you!

      In fact it's exactly like a marginal revenue curve.

      It's a generally applicable economic principle that is called "declining marginal utility".

      As you add more resources to any production the "marginal utility" of each new resource will be less than the last until eventually they start getting negative.

      In plain English what this means is that if you can do somthing with one person, adding a second will probably speed things along. Adding a third person may also help, but less than adding the second did... eventually you will reach a point where adding another resource (people, in this example) will actually slow things down.

      Like I say, this is a general economic principle. Usually the example used is agricultural (a little ferilizer allows for more crops, other things being equal, keep adding more and more fertilizer, eventually you'll start reducing your yield instead of increasing it) but it's widely applicable and just one of the reasons that a more widespread understanding of basic economics would be a Good Thing.

    27. Re:Am I the only one... by Anonymous Coward · · Score: 0

      Yes.

    28. Re:Am I the only one... by Zardus · · Score: 1

      I don't see why not. It's worked for Microsoft!

      --
      You can mod your friends, you can mod your nose, but you can't mod your friend's nose.
    29. Re:Am I the only one... by Mr.+No+Skills · · Score: 1

      It might be an American thing. This book has been required reading for Computer Science undergrads and a lot of Engineering students since first published in 1978. I've never met anyone who hadn't heard of this book.

      But I have met a lot of people who bought the book and never read it....

      --
      Sleep is for the Weak
    30. Re:Am I the only one... by robertjw · · Score: 1

      Plus, how much better would the rest of the staff's job be if we had cuddly puppies to put up with rather than all those surly programmers.

    31. Re:Am I the only one... by Anonymous Coward · · Score: 1, Informative

      ... which is a quote from the book being discussed

    32. Re:Am I the only one... by Anonymous Coward · · Score: 0

      No, you are just ignorant. I hope your not in software, otherwise now might be a good time for a career change...

    33. Re:Am I the only one... by Anonymous Coward · · Score: 0

      Statistically speaking?!? You can prove anything with statistics, who gives a flying fuck. In the real world, it would still take 9 months to a baby, and at the end you'd just end up with 9 arriving all at once.

    34. Re:Am I the only one... by PingPongBoy · · Score: 1

      What do you expect? Programming requires a lot more inventive than house painting. If you want a team to paint the Mona Lisa, it will take longer too.

      --
      Know your pads. One time pad: good for cryptography. Two timing pad: where to take your mistress.
    35. Re:Am I the only one... by Karora · · Score: 1
      Yep, you're the only one. If you haven't read this then you're undereducated: fact.

      Here in New Zealand I give this book to any new employee who is ready to understand it.

      The learning around the idea of the second-system effect alone is worth it, but a thoughtful person will inevitably start looking for (and seeing :-) meta-behaviour around projects after reading this, and that is truly invaluable.

      --

      ...heellpppp! I've been captured by little green penguins!
  4. Compression by 14erCleaner · · Score: 4, Funny

    Since all the blather about "internet time" in the intervening years, I'm surprised they didn't re-release it under a new title:
    The Mythical Man-Week.

    --
    Have you read my blog lately?
    1. Re:Compression by 14erCleaner · · Score: 5, Funny

      Although now that I think of it, they could also kowtow to modern sensibilities vis-a-vis gender and religion by retitling it:
      The Hypothetical Person-Week

      --
      Have you read my blog lately?
    2. Re:Compression by sparkywonderchicken · · Score: 0

      Funny but just to be a semantic jerk a myth is not a hypothesis. Fabled is better. Ouch stop hitting me!

    3. Re:Compression by cpt_rhetoric · · Score: 2, Funny

      More like the Mythical Outsourced Man Month!

    4. Re:Compression by Anonymous Coward · · Score: 0

      Don't joke about this. I am working now on a proposal and we are really working in Person Months: PM for short. So yes, the other day I had to ask, with a strait face, how much PMs I was going to get...

  5. Switch to the metric month! by Hamlet+D'Arcy · · Score: 5, Funny

    My company used to have a lot of problems with the mythical man month... that is until we switched to metric month.
    We've found that we get a lot more accomplished by switching to the 10 day work week and 10 hour work days.

    Now, if only Swatch would come out with a metric time piece.

    --

    If I seem short sighted, it is because I stand on the shoulders of midgets
    1. Re:Switch to the metric month! by byolinux · · Score: 3, Funny

      Now, if only Swatch would come out with a metric time piece.

      Psh. Real geeks use binary.

    2. Re:Switch to the metric month! by Hamlet+D'Arcy · · Score: 1

      Techically, it's not a binary clock... it's a BCD clock. And yes I have one sitting on my desk.

      --

      If I seem short sighted, it is because I stand on the shoulders of midgets
    3. Re:Switch to the metric month! by byolinux · · Score: 1

      "I stand corrected" - said the man in the orthapedic shoes.

    4. Re:Switch to the metric month! by Rorschach1 · · Score: 1
    5. Re:Switch to the metric month! by driverEight · · Score: 2, Interesting
      We've found that we get a lot more accomplished by switching to the 10 day work week and 10 hour work days.

      On the other hand, you would make your employees very happy if you had gone binary instead.

      --

      It's not the size of your .sig that matters, it's how you use it.

    6. Re:Switch to the metric month! by Psymunn · · Score: 2, Interesting

      Strange as this sounds, my girlfriend bought one of those
      Still, it bugs me that the 10s and 1s for the numbers each get their own binary digit. I suppose it means more LEDs (and lord knows i want more) but 12 o'clock should be 01100 not 01 0010
      Really just decimal if oyu think about it...

      --
      The Neo-Bohemian Techno-Socialist
  6. A must read since it uses "Modus Operandi" instead by Anonymous Coward · · Score: 0

    of the more familiar, watered down version, Mmmm...Ohhhhh..., one of the favorite abbreviations of the "nucular" club.

  7. Updated 20 year old book... by CmdrTostado · · Score: 0, Troll

    he should have revised the title to something a little less gender biased. This is 2004 after all.

    1. Re:Updated 20 year old book... by CmdrTostado · · Score: 1

      Oh, i'm sorry, they didn't update the book. This guy just got it read and reviewed. My mistake.

    2. Re:Updated 20 year old book... by Anonymous Coward · · Score: 0

      What would you propose as an alternative, The Mythical Woman Month?

    3. Re:Updated 20 year old book... by castlec · · Score: 1

      How about the Purposeless Person Period????

      --
      When I tell an object to delete this, am I killing it or telling it to kill me?
    4. Re:Updated 20 year old book... by Anonymous Coward · · Score: 0

      Given the popularity of misandry in western culture, I think he should update the title to be even more gender biased.

    5. Re:Updated 20 year old book... by RocketSHE · · Score: 1

      1975, when men were men, and women were men, and .... At least the old gender-confused language beats the current practice of calling people "heads".

      --
      ~==>RocketSHE
    6. Re:Updated 20 year old book... by surreal-maitland · · Score: 1

      as a female software engineer, i would argue that the title is not gender biased. the phrase in use is man month, not person period or woman week or anything else. people use the words man or mankind to refer to both genders all the time. it doesn't make them sexist, as long as you don't imply that a woman-month would be anything different.

      --
      -ninjaneer
    7. Re:Updated 20 year old book... by Anonymous Coward · · Score: 0

      Perhaps he should have formed a team of 20 reader/reviewers and they could have had this review done 1 year after the book was published (unless he knew he was behind schedule then it would have taken longer than it did alone) ..... what's that equation again...

    8. Re:Updated 20 year old book... by Sexy+Commando · · Score: 1

      You mean like these?

    9. Re:Updated 20 year old book... by surreal-maitland · · Score: 2, Insightful

      or maybe i just didn't realize you were kidding. there are plenty of people who don't joke about these things. :)

      --
      -ninjaneer
    10. Re:Updated 20 year old book... by LizardKing · · Score: 1

      Slighly off topic, but the origin of the word "man" was gender neutral. Some languages still make little disinction between gender (Finnish for instance).

      Chris

    11. Re:Updated 20 year old book... by Anonymous Coward · · Score: 0

      Yes, we should all be using 'person-months'. The conversion factor is 1.4.

    12. Re:Updated 20 year old book... by Anonymous Coward · · Score: 0
      as a female software engineer, i would argue that the title is not gender biased.

      Shut up, bitch. If us men say the title is sexist, it's sexist, and that's final.

    13. Re:Updated 20 year old book... by mattyrobinson69 · · Score: 1

      man can mean two things:

      male adult human
      mankind (man or woman)

      woman cannot mean two things - it only means female adult human

      therefore, anybody who says the title is sexist is a cunt, and anybody who suggests a name such as "the mythical woman month" is also a cunt

      i hate political correctness, feminists and those who play the race card (not that the latter has anything to do with this conversation)

    14. Re:Updated 20 year old book... by Anonymous Coward · · Score: 0

      Just out of curiosity...didn't you set up your .sig so that you wouldn't *have* to um...sign every post?

    15. Re:Updated 20 year old book... by epepke · · Score: 1

      I can write that one:

      "I would have this job done if I were allowed to and not subject to discrimination on the basis of my gender. Besides, why haven't the men done it?

    16. Re:Updated 20 year old book... by LizardKing · · Score: 1

      Just out of curiosity...didn't you set up your .sig so that you wouldn't *have* to um...sign every post?

      Yup, but I have signatures switched off in my preferences and have since forgotten what my sig is.

      Chris

    17. Re:Updated 20 year old book... by Anonymous Coward · · Score: 0

      Go to preferences and delete your .sig, then. It makes you look dumb to end your messages like so:

      Chris
      --
      Chris
      Corporate Rock Pig

  8. what a stupid article by ror+omg+wtf · · Score: 4, Insightful

    next on slashdot, O'Reilley makes fun of Henry Ford for not using computer controlled robots on the assembly line.

    1. Re:what a stupid article by byolinux · · Score: 1

      Er.. we're all controlled by computers. Haven't you seen that documentary? The Matrix!

    2. Re:what a stupid article by DaveAtFraud · · Score: 2, Insightful

      I'm glad I'm not the only one who thought that. Mr. Willis needs to also experience working in a large programming environment (e.g., 100+ developers working on something over several years). Many of the lessons from "The Mythical Man-Month" only become apparent when the size of the project is such that no one person can understand the whole in complete detail. An architech or cheif engineer may understand the overall concept but will not understand every gory detail at the lower-most levels.

      Likewise, his lack of any understanding of how the cost of correcting an error grows exponentially with how late in the development cycle the error is discovered speaks volumes about his lack of experience in commercial software (e.g., what if the bug requires the documentation to be re-printed? how about if it requires a product recall and/or advertising campaign to mitigate the harm to the reputation of the company doing the development?). That Microsoft follows the model of charging people for a new version of their bloatware that fixes the bugs in the previous version (while introducing more bugs at the same time) may be a good business model but it is hardly a contribution to the science of developing software.

      Too bad no editor at O'Reilley had enough sense to tell him to try again. On the plus side, maybe this will get a few more people to read TMMM before they transform into PHBs. Maybe Ed should apply for a position as a writer at the Alexis de Tocqueville Institute. I understand that they don't require that the people who write for them have any knowledge about what they're writing about.

      --
      They that can give up essential liberty to obtain a little temporary safety deserve neither safety nor liberty.
      Ben
    3. Re:what a stupid article by itsNothing · · Score: 1
      I don't care what topic you choose to skewer, but it's remarkably easy to take any text/subject more than 10 years old and show how it's antiquated.

      What a surprise!

      I heartily agree that this article is stupid.

      In the late 1960s, few people KNEW about Moore's law, and our field hadn't been around long enough for people to be able to watch the trajectory of miniaturization. To mock systems engineers who needed to factor in systems administrators for the VERY BIG 360/370 systems simply because you have TWO machines under your desk tells me that you are both immature and thoughtless in your perceptions.

      To take another tack ... you cannot possibly understand the importance of Moore's law if you can't appreciate what engineers in the 1960s needed to consider and do in comparison to what we have to do today. The author's attitude merely advises me that he is ill equipped to understand and act upon the accelerating changes that we are now experiencing.

    4. Re:what a stupid article by Anonymous Coward · · Score: 0
      An architech or cheif engineer may understand the overall concept but will not understand every gory detail at the lower-most levels.

      Or, more commonly, stupid ass "architect" can not understand any detail of any level of detail, which is usually the case in big corporations. :-)

      There are expections, but too often anyone calling him/herself a s/w architect is a person who never learnt basic skills of the craft of programming, and tries to compensate by reading latest buzzword-ridden magazines written by similar clueless architects.

      I do agree with you and the previous poster in that article was silly: making fun of the fact original book was written years earlier is as useful as making fun of other peoples' strange last names. I don't know why the author bothered to write up the thing, really.

  9. The more things change ... by YetAnotherName · · Score: 5, Informative

    Brooks put forth a lot of good ideas, some of which morphed and/or were independently discovered and some that were true then as they are today. For example, he says, "Build one to throw away." Amen to that.

    Another concept he brought to light was originally Harlan Mills's, that of making the programming team like a surgical team. A surgeon, or chief programmer, has primary architectural, design, and implementation responsibility, but is assisted by a copilot, administrator, editor, two secretaries, and a program clerk.

    While I've never seen such a team, I have witnessed pair programming that the XP (not Windows, eXtreme Programming) folks praise, and it works quite well. It may not be a full-fledged surgical team as Brooks would've liked, but the productivity of a pilot on the keyboard and a copilot following after every little mistake certainly improves productivity.

    1. Re:The more things change ... by CmdrTostado · · Score: 1

      I want the dude helping my surgeon to be a surgeon's assistant, no some layed off co-pilot, that picked up a easy job at the hospital.

    2. Re:The more things change ... by TomorrowPlusX · · Score: 4, Interesting

      An anecdote about XP...

      My first programming gig was writing device diagnostics for prototype set-top boxes in the mid-nineties. I was still in college, and my programming experience was basically just C -- and on windows and mac machines ( I was a kid ).

      The lead programmer could tell I had potential, but knew that the only way I'd be able to do a good job was to work *with* him, since I had to learn VI and learn how to work on an old sparc ( where we crosscompiled for the embedded platform ) he figured the learning curve would be easier if he sat at the keyboard and I went over the algorithms alongside him.

      It worked beautifully; we shared responsibility and caught eachother's bugs. After a while as I demonstrated that I was catching up ( read: I learned vi ), we began to take turns as keyboard jockey -- but regardless our combined productivity was much greater than by ourselves.

      The comeraderie was great. He was an old-school AT&T programmer and I had a hoot working with him and he had a hoot teaching me how to write *tight* low level code.

      The only troublesome part was, since we were developing a precursor to modern video on demand boxes, and it was back in 1995, we had a distinct lack of movie-length mpegs to test against. So we had only _Demolition Man_ and _The Crush_... Which means that for proper testing I must have seen each at least 100 times during my employment there.

      Plus we were testing picture in picture and looping stuff for multiple mpeg streams and this meant I sometimes would be watcing demolition man while Alicia Silverstone's stunt-butt scene would loop *forever* in a mini-window.

      It drove me mad.

      --

      lorem ipsum, dolor sit amet
    3. Re:The more things change ... by duffbeer703 · · Score: 4, Interesting

      One of things that advances like email and voicemail have cost us is the elimination of secretaries and clerks.

      Those workers carried alot of instituional knowledge and brought alot of unseen benefits to organizations.

      --
      Conformity is the jailer of freedom and enemy of growth. -JFK
    4. Re:The more things change ... by Anonymous Coward · · Score: 0

      Hmmm. Couldnt help but empathise with the video sotry there. In the mod 90s I was writing audio/video streaming software. I had test files that tested various properties of the codecs(ie one would have heavy base, one would have lotsa high freq, one was a sine wave(one and just BTW... Korns song Freak On a Leash starts with an almost pure sine wave in case anyones interested)). Anywas... I have about a dozen songs and a couple of movie indelibly etched into my neurons.

    5. Re:The more things change ... by RetroGeek · · Score: 1

      Those workers carried alot of instituional knowledge

      Wait for it.....

      As the work force grays, and more and more people retire, the amount of corporate knowledge lost will be staggering. What businesses need to do it get these people to DOCUMENT what and how they do things.

      Of course they never will, as it reduces their own perceived value.

      This might not be bad, as old ways of doing things are replaced by newer, more streamlined methods, but still....

      --

      - - - - - - - - - - -
      I am a programmer. I am paid to produce syntax not grammar. Deal with it.
    6. Re:The more things change ... by computational+super · · Score: 2, Insightful

      What drives me crazy is the fact the EVERY SINGLE PERSON WHO HAS EVER WRITTEN A PROGRAM SAYS THE SAME THING ABOUT PROJECT PLANNING (all of which is covered in this book), yet the people who schedule, manage, and plan software projects (at least the ones who've never written a program) STILL think we're all lying to them and that if they just push hard enough, offshore enough, get people to work enough unpaid overtime, etc. etc. etc. they'll reach that mythical man-month.

      --
      Proud neuron in the Slashdot hivemind since 2002.
    7. Re:The more things change ... by barzok · · Score: 1
      Because programmers aren't trained in project management. If you aren't formally trained, the thinking goes, you don't have the qualifications to give an opinion on it.

      I completely agree with your point, but flip it around - what would your reaction be if your project manager tried telling you how to organize your source code and how your development environment should be arranged?

    8. Re:The more things change ... by lxdbxr · · Score: 1
      ... I sometimes would be watcing demolition man while Alicia Silverstone's stunt-butt scene would loop *forever* in a mini-window.

      You really must have seen it one too many times to be halucinating Alicia Silverstone in that film

      --
      -- Nothing unusual happened today
    9. Re:The more things change ... by Anonymous Coward · · Score: 0

      Funny, the exact same thing cought my attention.

      I started working with digital video in 91. In other words, pre-MPEG (Intel AVS, in case you are wondering). Compression was so expensive that we had only 4 clips of about a minute each. I saw those a LOT.

      Then MPEG came along and I had to develop the MPEG decoder drivers. This time I got to choose the movie to use...

      I can still recite the first couple of minutes of Wayne's World II. I must have seen it at least a 1000 times (as I had to reverse engineer the MPEG hardware Windows driver, it took a little while).

      Funny to hear other people had the same experience.

    10. Re:The more things change ... by EvilTwinSkippy · · Score: 1
      My first job at the museum was Imax operator.

      Sure, cake, watch the movie, clean the screen, check for sound, and put the beat down on anyone talking through the movie.

      I underestimated the power of watching the same movie 100 times. At least it was Imax. If the main focus was getting stale, I would peer around the screen and find where the shadow for the helicopter was, or find some rude graphiti at the edge of the shot.

      My fellow operators would keep statistics about annoying attributes in film. The movie "Wildfire" the narrator blurts out "Fire" 143 times in 35 minutes. And the scenes they show of the Sky Crane are staged. We would also pick out the shots in Everest that were really shot in Nepal versus the ones they were re-shot in Colarado. (If the lighting is good, and the people in the shot don't look like death warmed over, they were probably in Colarado. Especially since they wore same outfits all the time in the Colarado shots.)

      --
      "Learning is not compulsory... neither is survival."
      --Dr.W.Edwards Deming
    11. Re:The more things change ... by cratermoon · · Score: 2, Insightful

      Except, as the parent clearly pointed out, PMs don't have the qualifications either. At least as a software developer, I know how to do my job and can tell when someone telling me what to do is full of shit.

    12. Re:The more things change ... by iabervon · · Score: 1

      One thing we've learned since then is that you can build one of each piece of the program to throw away, and never throw the whole thing away. Provided you're written reuseable code, you can even throw away the whole architecture without losing most of the code at once.

      Also, it's easier to convince people of if you call the first one a stub, a demo, or a mock-up. You build a first one so that the rest of the teams can use it while you do the real one. You build a first one so that you can give marketing an idea of what to sell. You build a first one so that people can evaluate something with actual behavior, rather than a specification which might not be well-defined. It's also more convincing if you can either do the first one really quickly or salvage a lot of the code from it when you throw it away.

      I like the surgical team idea, but I think that a lot of the members can be shared with other teams. The administrator is probably more effective when performing this role for most of the teams. The product of the editors for the organization as a whole will be better if they are all the same person (and therefore have consistant style and such). The program clerk job is probably largely handled by revision control these days. Tools should probably be a team by itself, since it's a development task which is often as large in total as the official product. Testing needs to have a cross-team role, to the extent that it isn't satisfied by automated processes. This reduces the team membership to the surgeon and copilot (plus shared people on call), which is the XP pair programming idea.

    13. Re:The more things change ... by dasmegabyte · · Score: 3, Interesting

      On the other hand, the guy I used to work with was at least a 20 year veteran who was my complete opposite. Whereas I wanted to innovate and make the program intuitive and pretty, he wanted somebody to tell him exactly what to do and wanted to do it whether it worked or didn't. Whereas I believed source control to be a tool to maintain a semi-official development release that was stable and working, he believed in checking in all source code, even if it included stuff that didn't work. Whereas I believe that mistakes are made and should be forgiven, he took every fat finger as a sign of incompetence. And while I believed that the code base was OURS since we all contributed to it, he believed that once you wrote something it was YOURS and nobody else could touch it. Which is amazingly stupid, since it implies that I would have to have him stop what he was doing to fix any problem I found in his APIs, which I wasn't about to do even though he had no trouble pressuring me to add things into MY code that helped him.

      Needless to say, what little pairs programming we did has caused me to swear off of it forever. It was something like You were very lucky.

      --
      Hey freaks: now you're ju
    14. Re:The more things change ... by cratermoon · · Score: 2, Interesting

      I am more than happy to commit my knowledge to paper (or bits), because I know that the written information will likely be a ghostly echo of real knowledge. It is Hard to communicate explicit understanding through writing, and all but impossible to communicate the implicit knowledge that is the real value of experience. If a business were to attempt a moderately effective program of creating written records of the institutional knowledge of their people, they would quickly discover the cost and effort swamping the budget.

      Most attempts to write documents for things that are contained in the practices and processes of the people, of which I have experience with a few, result in a listless pile of binders that few read and fewer get any understanding from. In the cases I've been involved with, once the written document was published to the organization, the calls and emails from people trying to understand and put into practice the material just added another demand on the time of person who has the knowledge.

      Knowledge can't be effectively captured merely through writing it down for many reasons, but a good one is that not everyone learns most effectively by reading. On the other hand, so-called "social learning" techniques like those discussed in Situated Learning and The Social Life of Information are much better guides for how to retain and spread knowledge.

      It appears common, however, that professional trainers are threatened by anything that would reduce the budget and power of the corporate training department. As an experiment, if your company is big into pre-packaged training materials, try getting a formal mentoring program going in your company.

    15. Re:The more things change ... by Anonymous Coward · · Score: 0

      Warning: Project Manager here. I think the best PM's have PM training *and* a programming background.

      However to defend PM's they are VERY PRESSURED by management to come up with faster-better-cheaper project plans. Ever hear of a schedule that did not have the word "aggressive" in front of it?

    16. Re:The more things change ... by TomorrowPlusX · · Score: 2, Informative

      I'm talking about _The Crush_ playing in a mini window while I watched _Demolition Man_

      But then, you could simply have read my comment.

      --

      lorem ipsum, dolor sit amet
    17. Re:The more things change ... by computational+super · · Score: 1

      Or a timeline that wasn't "tight"? I didn't intend to blame PM's with my original post... it's the whole idiot beauracracy that's to blame. I know there are complete moron PM's out there who attended a two-week PM-ing seminar who think that's enough to qualify them, and a lot of great ones who understand that there's inherent complexity going on, but eventually you seem to bump into one of the "top decision makers" who ignores what we've ALL been saying for the past, oh, thirty years or so. Makes you wonder how these people become top decision makers...

      --
      Proud neuron in the Slashdot hivemind since 2002.
    18. Re:The more things change ... by Daniel+Dvorkin · · Score: 1

      Perhaps this dichotomy arises because formal training in programming teaches useful skills, whereas formal training in management teaches nothing of any use whatsoever.

      --
      The correlation between ignorance of statistics and using "correlation is not causation" as an argument is close to 1.
    19. Re:The more things change ... by RetroGeek · · Score: 1

      try getting a formal mentoring program going in your company

      Ah yes, but in today's bean counter dominated HR department, who has anyone to mentor?

      But then, bean counters are ALWAYS short-sighted, focussing on the quarterly bottom line more than anything.

      <disclaimer> Yes, I know there are expections</disclaimer>

      --

      - - - - - - - - - - -
      I am a programmer. I am paid to produce syntax not grammar. Deal with it.
    20. Re:The more things change ... by CptNerd · · Score: 1
      .
      I completely agree with your point, but flip it around - what would your reaction be if your project manager tried telling you how to organize your source code and how your development environment should be arranged?

      I have had PMs try to do that...

      Somehow they felt that their training as management enabled them to manage anything...
      --
      By the taping of my glasses, something geeky this way passes
    21. Re:The more things change ... by nettdata · · Score: 5, Funny

      I used to be the head IT guy at Nettwerk Records, home of Sarah McLachlan and Bare Naked Ladies, Dido, etc., and my office was right over the main "dubbing station".

      There was a practice of leaving the audio up for all of the radio dubs that were made for each single, so that the glassy-eyed intern could ensure that it was recorded properly. This was done literally thousands of times... one for each major and minor radio station in North America. For each song that was released. And each interview/soundbite. All during the Lilith Fair days. Joy.

      Unfortunately, the interns didn't last too long in this job, as they quickly got very bored of it, so there would be a new one every day or two... each one initially VERY excited about working with "Sarah!", so they'd crank the volume.

      This drove me nuts. Almost literally. I'm an older Van Halen and Ozzie fan, and cannot stand to listen to Sarah's stuff more than once or twice... it's not my cup-O-tea. That being said, this was like some insane water torture for me.

      It really hit home when I was in to see the dentist a few years back, and he was doing a routine examination on me, and he started to get really concerned. "Are you in pain? There doesn't look like there should be any pain, but you're all tense and flinching... what's up?"

      It was at that point that I realized that the receptionist was a HUGE Sarah fan, and was playing Sarah's just released Mirrorball compilation in its entirety... that I'd already heard almost infinitely.

      So, I spilled the beans to the doc, and he laughed, got up, went to the CD player, and popped in some classic VH. I loosened right up, almost to the point of going to sleep, I was so relaxed.

      The next time I went in to see him, sure enough, Sarah was back on the CD player, but on seeing me, the receptionist killed it and popped in some Stevie Ray Vaughn, and all was well. They'd actually made a note in the book that said "absolutely NO SARAH while he's here".

      That dentist has my business for LIFE now, let me tell you!

      I guess what I find interesting is that such exposure to audio/video stimulus repeatedly can have big impacts on you... without even really knowing it. I wasn't actually consciously aware of my "audio rage" until it was pointed out to me.

      It's almost like it's audio/visual repetitive stress injury or something.

      Weird.

      --



      $0.02 (CDN)
    22. Re:The more things change ... by Elvises · · Score: 1

      Not to mention, if you are a clued-in line manager, you'd better hope your boss has a clue, too. From personal experience, coming up with a realistic schedule and defending it can get you canned quickly, and a yes-man brought in to replace you.

    23. Re:The more things change ... by barzok · · Score: 1

      So have I. And I had the same reaction that I'm sure you had. Which is why I posted that.

    24. Re:The more things change ... by ucblockhead · · Score: 1

      Heh. Reminds me of a demo I did when I worked for a music website. Part of the demo was a music sample. I heard the same fifteen second excerpt of a Coldplay song over and over and over...probably thousands of times.

      --
      The cake is a pie
    25. Re:The more things change ... by sdcharle · · Score: 1
      It worked beautifully; we shared responsibility and caught eachother's bugs.

      Yeah, that's a side effect of pair programming, picking up your partner's illnesses and vice versa.

    26. Re:The more things change ... by Clover_Kicker · · Score: 1
      +5 Insightful.

      I wrote an article about documentation. If you've got any criticism/feedback I'd love to hear it...

    27. Re:The more things change ... by cratermoon · · Score: 1

      Well a proof of my own point -- miscommunicated what I was trying to say about mentoring. When I wrote that suggestion, I was referring to the specific context of within a company where they like formalized pre-packaged training and the training department is "in charge" of all employee training programs. My prediction is that the experiment as I suggested it will reveal an anti-mentoring bias among formal professional trainers.

      You are correct, in tight-fisted companies there will be way more work than people to do it, and certainly no program to develop talented people up through experience.

    28. Re:The more things change ... by Anonymous Coward · · Score: 0

      Hah. We kicked AVS ass with Amiga CDXL. Shame our parent company execs were a load of money grabbing buffoons in the bahamas.

    29. Re:The more things change ... by RetroGeek · · Score: 1

      My prediction is that the experiment as I suggested it will reveal an anti-mentoring bias among formal professional trainers.


      Only the poor trainers. The good ones know that they cannot teach everything, and there is nothing like hands-on experience.

      I have known one or two good ones out of many bad ones. Sad really...

      --

      - - - - - - - - - - -
      I am a programmer. I am paid to produce syntax not grammar. Deal with it.
  10. My Thoughts by USAPatriot · · Score: 2, Interesting

    If I've learned one thing it's that in IS/IT/CS you either adapt and move on or you end up doing tech support on the midnight shift. Plain and simple. I think Fred Brooks touched on it in "The Mythical Man Month" when he said that computer programming will never be a mature field because to excel in it you must always be changing your language focus. Lets face it, all one has to do is take a quick look at the demand for certain skill sets on the net to get a pretty good feel for what's relevant today and I'm not sure c++ is anywhere on that radar screen. Most of my work as of late has been all Java and c#, with some legacy C programming done (on low level systems only of course, nobody would pay someone by the hour to have app level work done in C these days) Sometimes I wonder when I hear people complain about how the CS industry tends to shun the old timers when the truth is that a lot of these old timers are trying to hang on to legacy technology like C++ or perl when the industry has moved onto bigger and better things.

    --

    Slashdot Moderation: From positive to terrible in 2 "insightful" posts.

    1. Re:My Thoughts by byolinux · · Score: 1

      Didn't Microsoft say that C++ was still the best way to develop for Windows?

      I'm doing C# mostly now.

    2. Re:My Thoughts by EvilTwinSkippy · · Score: 4, Insightful
      Kinda funny. All that trash talk over the decades about C++ versus C, and who is still here.

      Like I care, I do most of my work in scripting languages. (IncrTCL if anyone cares.)

      --
      "Learning is not compulsory... neither is survival."
      --Dr.W.Edwards Deming
    3. Re:My Thoughts by DoubleDownOnEleven · · Score: 0, Redundant

      It's a troll people. I remember seeing practically the same text appear in all sorts of posts.

    4. Re:My Thoughts by Anonymous Coward · · Score: 0
      the truth is that a lot of these old timers are trying to hang on to legacy technology like C++ or perl when the industry has moved onto bigger and better things.

      Assembly, C, and Perl. There may be bigger things, but there are none better.

    5. Re:My Thoughts by Anonymous Coward · · Score: 0

      TCL, like most programs, is written in C.

      $ tar tvf tcl8.5a1-src.tar | grep "\.c" | wc
      174 1044 13728

    6. Re:My Thoughts by BigGar' · · Score: 1

      Kinda funny. All that trash talk over the decades about C++ versus C, and who is still here.

      Ummmm, COBOL??

      --


      Shop smart, Shop S-Mart.
    7. Re:My Thoughts by Fulcrum+of+Evil · · Score: 1

      COBOL??

      Well, FORTRAN too.

      --
      "We returned the General to El Salvador, or maybe Guatemala, it's difficult to tell from 10,000 feet"
    8. Re:My Thoughts by Pionar · · Score: 1

      who cares how old some language is or that it's "legacy", as you so stupidly put it, as long as it works? If a guy knows the basics of programming (control structures, variable types, etc.) he doesn't care what the language is as long as it's the best tool for the task.

      Programming IS a mature field, because no matter what language you use, the concepts don't change that much. Medicine is a mature industry, right? Look how much that has changed over just the last 10 years! Surgeons have had to learn new devices, such as lasers and sound wave devices (forget what they're called), but the task of removing a kidney stone remains the same concept, just new and better tools.

      But what you say about adapting and moving on is true. And make sure you don't become "that guy". You know, that guy that knows fortran, or that guy that knows how to do some ancient task. It'll end up that that'll be all you do.

    9. Re:My Thoughts by EvilTwinSkippy · · Score: 1
      TCL, like most programs, is written in C.
      $ tar tvf tcl8.5a1-src.tar | grep "\.c" | wc
      174 1044 13728

      I should know. I've written extensions for it.

      --
      "Learning is not compulsory... neither is survival."
      --Dr.W.Edwards Deming
    10. Re:My Thoughts by Anonymous Coward · · Score: 0

      Regarding essence and accident, I have spent too much time on the accident.

      There should be repositories where unique sets of source code can be downloaded. Perhaps like Wiki collaboration.

      I have spent a whole day figuring out how to
      call a function, or how to perform some certain funcationality.

      In C++, "How should I read a file from disk?" should list stdio, Win32, MFC, etc. and advantages/disadvantages.

      In Perl, "How do I upload a file to the server?"

      Every new environment requires the programmer to
      know useless implementation details, and it is never presented in a way that can be learned quickly enough.

    11. Re:My Thoughts by oliverthered · · Score: 0, Flamebait

      Most of your work is in Java and C# (yuck) because I expect your doing scripting and glue, maybe a bit more core functionality if Java but nothing my little sister couldn't do.

      If you were doing more techinical work (that I wouldn't expect my little sister to do) then I expect you'd use a more technical language, like fortran, c, c++. with a bit of prototyping in Java, VB or .Net if you want to.

      Swing=C (because Java's slow at GUI's)
      Windows=C (because .net's slow at GUI's etc...)

      --
      thank God the internet isn't a human right.
    12. Re:My Thoughts by CptNerd · · Score: 1

      There should be repositories where unique sets of source code can be downloaded.


      There is. Unfortunately, it's the US Patent and Trademark Office.

      --
      By the taping of my glasses, something geeky this way passes
    13. Re:My Thoughts by GPLDAN · · Score: 1

      like C++ or perl

      Damn, Perl is already on the trash-heap of programming languages? I guess so. I just saw a university site that I had coded a perl CGI with a RBDMS back end web-app replaced last week with an ASP, after 5 years of solid use.

      Better go hang myself now, I'm done...

  11. A Classic Book by CharAznable · · Score: 3, Interesting

    The Mythical Man Month is the canonical text for managing software projects. I told my non-techie boss to read it before asking me to do stuff, so what he has an idea of what is reasonable, what is not, and what kind of hurdles we might encounter.

    --
    The perfect sig is a lot like silence, only louder
    1. Re:A Classic Book by NeoFunk · · Score: 5, Insightful

      Yeah, I think you're right here - I think the problem is that most techies read this book and roll their eyes and say "yeah, tell me something I DON'T know". However, I think it would be a quite valuable read for a non-techie boss-type who wants to successfully "manage" a software project

      They should make this book required reading in all MBA programs, in other words :)

    2. Re:A Classic Book by barzok · · Score: 2, Funny

      But did he learn anything?

    3. Re:A Classic Book by CharAznable · · Score: 1

      Well, he's being exceptionally patient, so I suppose he did!
      the interesting thing, is that everything is going exactly as the book said it would.. We're getting ready to throw out the first one!

      --
      The perfect sig is a lot like silence, only louder
    4. Re:A Classic Book by Anonymous Coward · · Score: 1, Funny

      I told my non-techie boss to read it before asking me to do stuff

      I asked my boss too, telling him it should not take more than an hour to read it. He said he has no time and told his two secretaries to read it and come back in half an hour with a recapitulation of it.

    5. Re:A Classic Book by jbelcher56 · · Score: 3, Informative

      It's funny you should mention this. I am finishing up my MBA (MIS concentration) and in my system analysis and design class, we studied nearly all of the topics discussed in this book. I believe the text that we used even cited many passages from this book. We then had to complete a group project, which forced us to utilize the material in a somewhat realistic setting (creating a project time tracking app). So the MBA's that want to work in technology are getting at least exposed to this. Hopefully this will make for better management, but who know's.

      --
      Don't get off the boat. Absolutely, goddamn right.
    6. Re:A Classic Book by Cragen · · Score: 1
      hey, most of us /.'ers don't RTFA, but he wants his boss to RTFB?

      (IANA/BIPOIRF: I am not a /.'er but I play one in real life.)

      Lions, Tigers, and Gods! Oh, MY!

    7. Re:A Classic Book by EvilTwinSkippy · · Score: 4, Funny
      Trained rats would be an improvement over modern IT managers. They will at least cease doing something that causes them to have their testicles electricuted.

      It warms my heart to see MBA's are getting real training. I hope some day to have to revise my targets of derision, and (gasp) perhaps raise my level of esteem of them above household vermin.

      --
      "Learning is not compulsory... neither is survival."
      --Dr.W.Edwards Deming
    8. Re:A Classic Book by Anonymous Coward · · Score: 0

      I think the problem is that most techies read this book and roll their eyes and say "yeah, tell me something I DON'T know".

      It's easy to tell someone something that they think they already know. A great many truths are only obvious after somebody else has said them. What's hard is only telling the parts that are true, without the anybody-but-me attacks (It's management's fault!), the perfect-world theories, popular but proveable false ideas, etc.

      The other trick is summing up a whole lot of indistinct concepts into coherent thoughts and strategies. It's what designers are supposed to do, but we sometimes forget that it applies outside of our area of interest, as well.

  12. A wonderful dissection by tcopeland · · Score: 4, Funny

    Well done indeed:

    ================
    Regarding source code documentation:

    "The most serious objection is the increase in the size of the source code that must be stored. As the discipline moves more and more toward on-line storage of source code, this has become a growing consideration. I find myself being briefer in comments to an APL program, which will live on disk, then on a PL/I one that I will store as cards."

    For who among us is this not true? Honestly, you just can't shut me up on cards.
    ================

    Definitely worth a read. To coin a phrase: LOL.

    1. Re:A wonderful dissection by Alomex · · Score: 1

      Funny, indeed, but somewhat childish. TMMM contains so many deep truths that it seems shallow to focus on the out-of-date parts of it. To quote the chinese proverb:

      When the sage points to the sky, the idiot sees the finger.

    2. Re:A wonderful dissection by Anonymous Coward · · Score: 0

      "The most serious objection is the increase in the size of the source code that must be stored. As the discipline moves more and more toward on-line storage of source code, this has become a growing consideration. I find myself being briefer in comments to an APL program, which will live on disk, then on a PL/I one that I will store as cards."

      For who among us is this not true? Honestly, you just can't shut me up on cards.


      It was these types of snarky comments that put me off of the review. He at least labeled then as "impudent", but still they smacked of condescension and a lack of appreciation of the technical limitations the industry faced 30 years ago.

      This might be well done in a more humorous setting, but to make fun of the book on one hand and make serious commentary as well struck me as inappropriate at best.

    3. Re:A wonderful dissection by EvilTwinSkippy · · Score: 4, Insightful
      Well, I suppose you are going to complain next about having to understand binary.

      Modern computers have their quirks. In 30 years my kids are going to be asking me why I keep referring to "disk space" and "RAM." Then I'll have to explain that back when I programmed, you had two types of memory, the high-speed stuff the computer would work in, RAM. RAM was expensive, finite, and would lose it's contents when the computer rebooted. We also had "disks" that while they were slower, they stored a lot more infomation, were cheaper, and were non-volitile.

      Laugh. But you too are going to sound like and old fart one day. And the respect you show or don't show for those that came before you is going to be what you instill in those that come after you.

      --
      "Learning is not compulsory... neither is survival."
      --Dr.W.Edwards Deming
    4. Re:A wonderful dissection by tcopeland · · Score: 1

      > In 30 years my kids are going to be
      > asking me why I keep referring
      > to "disk space" and "RAM."

      But if that's the case, I daresay you won't be talking about disk space and RAM anymore.

      I think this review is a backlash to the adulation that's usually given to this particular book. I mean, some of the concepts in there are fine, but some of them have been superseded by tech improvements.

      > you too are going to sound like
      > and old fart one day

      Hm, hopefully that's avoidable....

      > the respect you show or don't show

      Of course, one should be respectful. But, at the same time, it's important to know what to learn from older books and what has changed since then.

    5. Re:A wonderful dissection by Fulcrum+of+Evil · · Score: 1

      Modern computers have their quirks. In 30 years my kids are going to be asking me why I keep referring to "disk space" and "RAM."

      Are you kidding? I get that _now_. People just don't get the distinction.

      --
      "We returned the General to El Salvador, or maybe Guatemala, it's difficult to tell from 10,000 feet"
    6. Re:A wonderful dissection by Lonath · · Score: 1

      My biggest beef with it is his comment about hardware rentals:

      I sure hope someone's been paying my software and memory rent. I haven't been, at least the last little while.

      Isn't this essentially what Sun and Microsoft are talking about when they say the cost of hardware goes to 0? Isn't this one of the goals of the DRM crowd? To make it so you don't own anything, but instead you just license it and use it according to their terms? Amazing how things keep coming back...

    7. Re:A wonderful dissection by EvilTwinSkippy · · Score: 1
      If you read between the lines, the point he was making in the blurb is precisely what you were saying: Capabilities Change.

      In this particular case he was noting that comments are difficult to make on cards. They are simple on disks. I.E. When a new technology allows you to do something better USE IT.

      (I feel like I'm discussing a religious passage here or something.)

      --
      "Learning is not compulsory... neither is survival."
      --Dr.W.Edwards Deming
    8. Re:A wonderful dissection by tcopeland · · Score: 2, Funny

      > When a new technology allows you
      > to do something better USE IT.

      Convergence achieved!

      > a religious passage

      I've got the King James Mythical Man Month... "and thou shalt make a first version, and this thou shalt throw outside the gates, upon the rubbish heap".

    9. Re:A wonderful dissection by Brandybuck · · Score: 1

      When a new technology allows you to do something better USE IT.

      Just as long as you don't believe it's going to give you significant productivity advantages. Because it's not. That was Brook's other famous work, "No Silver Bullet." He said that all the huge breakthroughs in software productivity had happened during the first twenty years, and that all that was left were incremental improvements. He wrote it because at the time there were bunches of people touted various nostrums to double your productivity.

      A few years ago he revisited NSB, and discovered that he was still correct. In ten years we had seen any one technology or process that doubled productivity. OO didn't do it. RAD didn't do it. 4GL didn't do it. But there were still people promoting "get productive quick" solutions. Just like today...

      --
      Don't blame me, I didn't vote for either of them!
    10. Re:A wonderful dissection by nlindstrom · · Score: 1
      Modern computers have their quirks. In 30 years my kids are going to be asking me why I keep referring to "disk space" and "RAM."
      Are you kidding? I get that _now_. People just don't get the distinction.
      Amen. I can't begin to remember how many times I've asked a simple question like "how much memory does your PC have?" only to be told something like "um, forty gigs?"
    11. Re:A wonderful dissection by mc6809e · · Score: 2, Insightful

      Amen. I can't begin to remember how many times I've asked a simple question like "how much memory does your PC have?" only to be told something like "um, forty gigs?"

      Well, maybe we are the ones that have it wrong.

      From the standpoint of users, anything in RAM is forgotten when the power is killed, while everything on disk is "remembered."

      Now, which should be called memory?

    12. Re:A wonderful dissection by Fulcrum+of+Evil · · Score: 1

      Well, maybe we are the ones that have it wrong. From the standpoint of users, anything in RAM is forgotten when the power is killed, while everything on disk is "remembered."

      We are, by dint of being in the profession, the arbiters of correctness in computer jargon. Memory is just another word for RAM.

      --
      "We returned the General to El Salvador, or maybe Guatemala, it's difficult to tell from 10,000 feet"
  13. yes it was "kiloherz" and "kilobytes" in the 1960s by peter303 · · Score: 3, Insightful

    Moores law predicts an increase of a thousand every 15 years. We are now in gigas, transitting into teras 40 years later.
    A lot of basic technology in compilers, OSes, user interfaces, and artificial intelligence was invented under those terrible constraints.

  14. Man Mythical Month by NeoFunk · · Score: 1, Interesting

    A year ago, I was in a software engineering class where the professor made us read this book.

    The only thing about this experience that sticks out in my mind is that the professor always referred to the book at the "Man Mythical Month". It was kind of hard to take any of the in-class discussions seriously with this going on. He knew his stuff, too; he clearly understood the concept of the "man month" and the mysticism surrounding it, yet he continued to hilariously butcher the title day in and day out.

    The book itself was halfway interesting, but it didn't say anything that anybody with a couple years of software engineering experience didn't already know.

    1. Re:Man Mythical Month by Anonymous Coward · · Score: 0

      Are you talking about Jon? That's the best class I ever had and I didn't notice he pronounced the title like that.

    2. Re:Man Mythical Month by Anonymous Coward · · Score: 0

      No. Sebastian :) You would have noticed.

    3. Re:Man Mythical Month by Chris+Burke · · Score: 1

      You know, most professors would have been able to handle a correction... He probably would have appreciated it.

      --

      The enemies of Democracy are
    4. Re:Man Mythical Month by xTown · · Score: 1

      The book itself was halfway interesting, but it didn't say anything that anybody with a couple years of software engineering experience didn't already know.

      Then or now?

      Obviously not then, because Brooks was already an experienced engineer when he wrote the book--and the reason he wrote the book is because he wanted to share the lessons he'd learned.

      And obviously not now, because software development teams still make the mistakes that Brooks talks about it. Hell, my company just tried to throw more people at a project to try and get it done faster. Fortunately, we were able to stop that from happening.

      I think the reason that you believe your statement to be true is that Brooks' clarity of presentation makes you think that the ideas are obvious. They're not. If they were obvious, they wouldn't still happen.

    5. Re:Man Mythical Month by untaken_name · · Score: 1

      They're not. If they were obvious, they wouldn't still happen.

      Really? I guess that's why there aren't any train-auto accidents anymore. Perhaps your logic is flawed.

    6. Re:Man Mythical Month by xTown · · Score: 1

      Perhaps yours is, since the two situations aren't really analogous. Stupidity causes auto-train accidents. Not knowing any better causes misapplication of manpower to projects.

      I don't think it *is* immediately obvious that adding another person to a late project makes it later; how can it be? That's the whole reason that Brooks wrote MMM--it seemed counterintuitive that adding manpower to the project was detrimental.

      Then again...it's true that knowing something and doing something about that knowledge are two entirely different prospects, so in a way, you're right. But I still disagree.

      (Also, auto-train accidents are caused by a wide variety of factors, and they're *accidents*. Misapplication of manpower is deliberate, if well-intentioned.)

    7. Re:Man Mythical Month by untaken_name · · Score: 1

      ever heard the saying 'too many cooks spoil the broth?'
      it's been around a while.

  15. It has helped me tremendously by Dan667 · · Score: 2, Insightful

    the surgeon team, advice that more people does not necessarily make the project get done faster, no silver bullet, and on and on. Great information and even dated stories on things like the conversion of paper to microfiche is entertaining as well...

    1. Re:It has helped me tremendously by GuyWithLag · · Score: 3, Insightful

      Heh... I've been known to use on occasions the phrase 'You can't get a baby in a month using nine women...' - you can actually see the a-ha! effect this has on most persons...

    2. Re:It has helped me tremendously by CodeMonkey4Hire · · Score: 3, Interesting

      Yeah. If you want to have a baby in a month, you need to hire an 8-months pregnant woman.
      (Analogy: don't start from friggin' scratch and you can't customize everything, the parents have already been chosen!) Otherwise, you got 9+ months of waiting.

      --

      Let's go Hurricanes!!! 2006 Stanley Cup Champions!!!
  16. Perpetual Conflicts of Interest by Moblaster · · Score: 5, Interesting

    Man months will always be mythical. Unfortunately, it's frequently in the interest of technical workers to provide their clients (internal or external) overly optimistic assessments of project feasibility. That's apart from the naturally rosy estimates of one's one programming/system admin abilities, versus a sober understanding of the full complexity of a project.

    It's also hard convincing "novice" customers that will buy into the experience-proven truth that small feasibility projects make the bigger projects cheaper, more productive and more deadline-friendly. The instant gratification complex of customers is at much at fault as the hunger to get and keep jobs among the IT workers.

    Also, programmers usually get into programming through hacking, pleasure programming, or other forms of "undisciplined" programming. Often, the impulsive "go at it" style is the only one they know and enjoy. That causes problems too. As anyone who has ever tried project-managing programmers tends to find out, managing programmers (especially newer ones) is a bit like herding cats.

    The one ugly truth nobody likes to talk about is that buggy/complicated systems help ensure jobs. Let's face it... the fact that Microsoft software crashes a lot creates good opportunities for consultants and IT staffs to justify their jobs. And does anyone think that Oracle would have grown into a multi-billion company if there weren't so many highly trained DBAs/High Priests running around promoting its mysterious wonders? Who knows how quickly this foul fruit will sour when all of this rot is billed by the hour?

    1. Re:Perpetual Conflicts of Interest by Anonymous Coward · · Score: 0

      The one ugly truth nobody likes to talk about is that buggy/complicated systems help ensure jobs

      That's simply a fallacy. This is the same thinking that led a manager in one shop I worked in to withhold fixes for all of the bugs in the S/W. He thought that once the bugs were fixed there would be nothing left to do.

      In the mean time, the marketing guys were thinking up all sorts of nest stuff to add to the product, but none of this stuff could be done because the development team was still busy fixing bugs piecemeal instead of moving ahead. This was at a time when the product had monopoly status in its particular niche.

      Eventually competitors appeared who were doing all of the things that the marketing guys wanted and nearly put the company under.

      Fixing bugs does not keep people employed. It wasdtes time and resources that could better applied to improving the product/system/whatever and those things keep the enterprise competitive and that is what keeps people employed!

    2. Re:Perpetual Conflicts of Interest by fermion · · Score: 1
      The man-month spoken in here has little to do with an inability to estimate personal effort needed to complete a project or the quality of a system after a specific amount of personal time expended. While it is true that amateur programers has become more a problem, the fact is at the time the book was written all that existed were amateur programmers.

      The actual point is that release time does not scale linearly given additional programmers, even if those programmers are assumed to be of generally equal ability. What this means is that if you calculate 5 man-moths to complete a project, it is a fallacy to believe that 5 programmers can complete it in one month. At a most basic level, there are relationships between each on that much be managed. Those relationships take time. The upshot of this is that you may be better off with 3 programmers than five.

      This also leads to encapsulating functionality so that the unnecessary relationships are minimized, which leads to the advice is books such as Composite Structured Programming.

      The major books that deal with the problems you cite tend to be more recent, like Debugging the Development Environment and Rapid Development. Yes I know both of these are MS Press. Evil. But the Mac side had really good developers.

      --
      "She's a scientist and a lesbian. She's not going to let it slide." Orphan Black
  17. Typo... by Anonymous Coward · · Score: 1, Informative

    You put "bigger and better things", that should read "bigger and slower things".

  18. Open source by Unnngh! · · Score: 5, Insightful
    From the article...

    There is a certain smugness at work in the idea that the architect will make better decisions here than the user will. Certainly this view is out of favor now. We normally try to find out what the user wants (somehow) and then find a way to design our software to provide this to them in the most sensible manner we can envision. I can't imagine saying "no" to the user regarding a feature...

    It seems that a lot of open source development actually adheres to the original architect premise here. In this case, the developer is the user and therefore knows best, at least for himself. I always find gathering requirements to be frustrating, and it never feels like a completed task. Especially when the developer is green in whatever industry they're developing to, the users can kill the usability of an app by nitpicking it to death--there is no real overall vision.

    It's a shame, IMO...

    1. Re:Open source by rjstanford · · Score: 3, Funny

      Especially when the developer is green in whatever industry they're developing to, the users can kill the usability of an app by nitpicking it to death--there is no real overall vision.

      So... if the developer tries to do something in a field that he has no exposure to, and the users complain that he's missed the point, its somehow their fault? Hmm... whatever.

      --
      You're special forces then? That's great! I just love your olympics!
    2. Re:Open source by Unnngh! · · Score: 1

      Well, if they missed the point, that is not good, and the users should obviously be able to point that out. But I have often seen users give one explanation of how something works, change their mind completely on the mechanics of the thing halfway through the project, then hand it off to another user with differing opinions. Good project management should forego this but it's often just developer-user with little intervention. The Mythical Man Month provides good pointers for someone in this position, actually.

    3. Re:Open source by wrp103 · · Score: 3, Interesting

      I found reading this article quite fascinating. I'm one of those old-timers who remembers what Brooks was writing about. I've read that book several times, and still recommend it to people who want to understand software project management.

      But what was most fascinating was the author's impressions of the book. He certainly pointed out artifacts that I had glossed over (they seemed normal to me). However, I was also surprised at how he interpreted what Brooks said much different than I had.

      For example, the above quote was in reaction to the statement:

      "Often the fresh concept does come from an implementer or from a user. However, all my own experience convinces me, and I have tried to show, that the conceptual integrity of a system determines its ease of use. Good features and ideas that do not integrate with a system's basic concepts are best left out. If there appear many such important but incompatible ideas, one scraps the whole system and starts again on an integrated system with different basic concepts."

      What I think Brooks was saying (or at least what I read from his statement) was that to add a new feature that behaved significantly different than the rest of the system is a bad idea, even if the new feature is very useful. I don't have the book with me, but I'm guessing it was in the chapter where he talked about the beauty of a cathedral came from the fact that each builder followed the original plan.

      (During the middle ages, it took so long to build massive church buildings that the construction spanned the lifetimes of several builders. In many cases, each new builder had a "better idea", and so their part of the building looked different than the rest. The result was a patchwork architure that didn't look anywhere near as nice if any one of the individuals builders had been able to build the entire structure.)

      I don't think Brooks was saying to ignore the needs of the users, but rather to make sure your changes fit into the overall structure of the program. If different parts of the system work differently, it will most likely lead to user confusion. That is why changes should fit within the framework of the original program. Imagine a system where the author of each component was able to create their own user interface. When you select option 'A', you do it this way, but when you are using option 'B', you have to do it that way. The end result is a confusing mess, even though each individual component might have a perfectly reasonable way of doing things. Its just that most people expect a system to have some consistency in its behavior, appearance, and interfaces.

      Speaking of ignoring users, however, I recall reading an article where Kernighan claimed you should ignore all suggestions when a system is first released. The reason is that most people are reacting to the fact that they are trying to use the system differently than it was originally intended. Often, they are expecting the new system to do something in the same way as some other system they used. Once they get used to working with the system, they are able to anticipate how the system wants them to do something, and they become happier and more productive.

      If you rush to implement many of the initial suggestions, you will often start changing the overall architecture and/or interface of the system, which is what Brooks (IMHO) is warning against.

    4. Re:Open source by symbolic · · Score: 1

      I can't imagine saying "no" to the user regarding a feature...

      I always try not to confuse the "what" (features) and the "how" (implementation). Users can tell me what they need to accomplish, and I can then use this information to develop a reasonable implementation based on current standards and practices. Saying "no" (or at least pointing out the problems) with respect to certain implementation requests can sometimes be a good thing.

    5. Re:Open source by aka-ed · · Score: 1
      A number of things in the piece were grating, and you've put your finger on the most annoying. It was quite clear that Brooks was talking about concept integrity; he did not say to refuse the client's request -- he only stated that "ease of use" is dependent on the core concept's correspondence to the client's needs. Had Willis put this concept together in his mind with Brooks's willingness to "throw one away" (which Willis also rejects), perhaps he would have understood both concepts better, and seen valid modern analogs to them.

      It annoyed me especially to see Willis call Brooks "smug," when Willis seems to view previous generations as Marie Antionette viewed the hungry.

      He repeatedly clucks at Brooks for "almost getting it right," where "getting it right" seems to be certain memes which the author takes for granted -- as if Brooks were in some parallel world that had no part in the creation of those memes!

      --
      I survived the Dick Cheney Presidency 7 to 9 AM 7-21-07
    6. Re:Open source by Anonymous Coward · · Score: 0

      The article's author fails to understand the actual product that Brooks was in charge of - an Operating System. Brooks's customers were not the grandmothers who need Clippy to tell them how to cut and paste. His customers were applications programmers who were using the system calls that his team provided.

      When an operating system tries to be all things to all people you end up with a house of cards where you do things like write a special free() command specifically so that SimCity can continue to depend on OS bugs. (Too lazy to look up the recent Slashdot article to which I am alluding...)

    7. Re:Open source by Anonymous Coward · · Score: 0

      I am a big believer in fixing things in place. I think that if you have a program and start adding features to it that have to be shoe horned in to fit that you can do a refactor in place on the code so that it changes it underlying methods to encompass the new things, while still performing the old things the same, or better.

      I think that overall this approach will win nearly every time because it is faster, it leads to changing the program to be much more modular over time, so that future refactorings are much easier. Eventually you will have a very small core of your program and everything else is layered on top in very clear and consistant ways, that very closely models the problem you are trying to solve.

      Rewriting from scratch everytime often does not work at all. Or it is years before you can release a new product that is better than the old product. *cough cough* Mozilla *cough cough*

      It's like when they remodel one floor on a building, to add handi-capable bathrooms, they don't tear the whole thing down and start over.

  19. Funny how Willis... by jbellis · · Score: 4, Insightful

    takes TMMM as an endorsement of everything XP. That's not what I took home from it...

    I guess eye of the beholder and all that. :)

  20. Infantile review by Thagg · · Score: 5, Insightful

    I believe it was Mark Twain that said "History doesn't repeat itself, but it rhymes."

    Picking on Fred Brooks' TMMM by noting it's anacrhonisms is about the most juvenile thing I can imagine. I can only surmise that the alleged reviewer was forced to read the book by somebody he did not like, and while he read the words he certainly didn't extrapolate the lessons to his present day situations.

    When I re-read The Mythical Man Month I can see, in every paragraph, perfect analogies to my work today, and the work I see of other people in other fields. I can't wait to have the reviewer look at The Soul of the New Machine and laugh about how people used to build CPUs out of discrete parts, and how therefore none of the lessons of that book have any applicability today.

    Who hasn't seen -- or lived -- an example of Brooks's "The Second System Effect?" The movie that I just finished working on, The Chronicles of Riddick was precisely an example of that paradigm with respect to Pitch Black. Every page of the chapter on The Second System Effect has one-to-one correspondences to the work on this movie.

    There are few things that I'm dogmatic about -- but Everybody needs to read this book!

    Thad Beier

    --
    I love Mondays. On a Monday, anything is possible.
    1. Re:Infantile review by EvilTwinSkippy · · Score: 4, Insightful
      Not only does everyone need to read this book, it needs to be kept on the shelf right next to their reference material.

      It's a book that requires a mature mindset to appreciate properly. (Kind of like object oriented programming.) It only makes sense after you yourself have hit the very walls the book describes.

      Shanon's theorum states that information is measured by it's surprise, what you weren't expecting. This book is one non-intuitive (at least to the layman) observation after another. But they are all true. And they all make sense once you are in the feild.

      It's that "you would have had to have been there" they makes the book such a difficult read to the layman and the newb. It's also what makes it so damn interesting to the veteren. You know you are ready for the book when every chapter you feel relief that you aren't the only person in the world who has gone through that.

      --
      "Learning is not compulsory... neither is survival."
      --Dr.W.Edwards Deming
    2. Re:Infantile review by IrresponsibleUseOfFr · · Score: 1

      I think your criticism of the review is a little harsh. Sometimes it is valuable to reflect on what things have changed and what things haven't in particular fields. It gives you insight to pick out fads and what remains to be the kernel of the problem.

      I will say that, on a personal level, I don't much care for Fred Brooks. From actually hearing him talk, he came across to me as one of those managers that doesn't give due credit to the work of his subordinates. I think that idealogy is reflected in many of the things he says in Mythical-Man Month.

      Mythical-Man Month is a decent enough book at pointing out problems with developing software. But, I don't think it gives you any greater insight than just being on one project that fails, or ran overtime/over-budget (and according to statistics alomst all programmers will experience that, and often). In that sense, I think a book like Death March is much more valuable to prepare future professionals for what they will face in the real-world.

      As for solutions that Brooks gave. Most of them didn't turn out be such great ideas, i.e. surgical team. He totally punts on how you develop programmer skill half-scoffing at the 10x productivity number.

      All in all, I don't think Mythical Man Month is a must read. Death March + Code Complete will give most programmers a much better start. And Peopleware is a much better book for managers. Mythical-Man Month is James Fenimore Cooper of American Literature.

      --
      Facts are meaningless. You could use facts to prove anything that's even remotely true! -Homer Simpson
    3. Re:Infantile review by Shimmer · · Score: 1

      Picking on Fred Brooks' TMMM by noting it's anacrhonisms is about the most juvenile thing I can imagine.

      I completely agree. It's like critiquing the U.S. Constitution because it was written with a quill pen instead of a word processor. Or mocking the Founding Fathers because they had to ride horses to get anywhere.

      --
      The most rabid believers in American Exceptionalism are the exact same people whose policies are destroying it.
    4. Re:Infantile review by Anonymous Coward · · Score: 0

      You obviously didn't read the article or you are bitter because Ed Willis ran over your dog or you want to make love to Brooks.

    5. Re:Infantile review by r · · Score: 4, Insightful

      Picking on Fred Brooks' TMMM by noting it's anacrhonisms is about the most juvenile thing I can imagine. I can only surmise that the alleged reviewer was forced to read the book by somebody he did not like, and while he read the words he certainly didn't extrapolate the lessons to his present day situations.

      Indeed. The Brooksian concerns may be situated in a different era, but the reviewer's derision betrays a pervasive lack of understanding of the underlying constraints - and that within those constrainsts, Brooks actually makes some damn good points.

      For example, the APL story, where the reviewer ridicules the anachronistic idea of renting memory for software. And yet, he completely misses Brooks's larger point - that the cost of ownership for software is not just from the code itself, but from code plus the infrastructure it requires. Once we generalize it to modern kinds of infrastructure (e.g. bandwidth costs), we see the lesson is just as valid, and just as ruthless to those who haven't learned it.

      Not to mention other instances of missing the forest for the trees. Sure, Brooks may have foreshadowed XP and other strange team development approaches. But his points were much more fundamental - that team efficiency is sublinear with respect to team size and non-monotonic, that it peaks at fairly small team sizes, and then starts decreasing, etc. Indeed, this analysis did not merely foreshadow development styles - such analysis made them possible at all.

      But the author is a self-professed neophyte, so maybe this review should be taken with a grain of salt. :) However, it does make one wonder why O'Reilly would publish it. Are they that desperate for contributions?

      --

      My other car is a cons.

    6. Re:Infantile review by alex_tibbles · · Score: 1

      I agree. The puerile style spilled from the jokes into the meat of the story too. "Unit testing didn't exist before XP" etc.
      -1: Un-funny

    7. Re:Infantile review by chromatic · · Score: 1
      However, it does make one wonder why O'Reilly would publish it.

      Because in the thirty years since Brooks wrote the first edition, computers are a few times more powerful, at least an order of magnitude cheaper, and modern programmers have the opportunity to be maybe twice as productive as those who wrote OS/360 in assembly. I want people to ask a few questions:

      • Is it still a good book?
      • Do Brooks' postulates still hold true today?
      • If so, do his conclusions still work?
      • If not, are there similar conclusions to draw?
      • Has the field of programming changed in the past 35 years?
      • If not, why not?

      The first page is somewhat flippant, but Ed and I worked on it to make it less jarring. I think it's necessary to raise the question of what exactly has changed since the late '60s.

    8. Re:Infantile review by mikery1 · · Score: 1
      However, it does make one wonder why O'Reilly would publish it.
      Because in the thirty years since Brooks wrote the first edition, computers are a few times more powerful, at least an order of magnitude cheaper, and modern programmers have the opportunity to be maybe twice as productive as those who wrote OS/360 in assembly.
      The question is not 'Why would Oreilly publish a reconsideration of TMMM?' -- the question is 'Why would Oreilly publish this pathetic attempt at a reconsideration of TMMM?'

      There's the juvenality of pointing out anachronisms that takes up the first part of the article.

      But it keeps getting just as bad. In response to the 'solving bugs introduces between 20 & 50 % risk of new bugs,' we get:
      I do not believe the risks to be this high now in any reasonably well-run organization. They may come close to 20 but should be nowhere near 50 percent. In short, we can claim have become better at maintenance over the past 30 years.
      It's these off-the-cuff dismissals of TMMM w/o any backup or sense of experience that make the review largely irrelevant. If this was an experienced developer/development team updating TMMM for today's generation that would be one thing. But the whole article just reeks of a newbie trying to act all 'that'.
    9. Re:Infantile review by r · · Score: 3, Interesting

      I think it's necessary to raise the question of what exactly has changed since the late '60s.

      An article that actually analyzes these issues would make a spectacular read.

      Alas, instead of doing that, this article only picked out a few random, specific pieces for discussion, and made a few observations about them. The questions you mention didn't seem to be reflected in the finished piece at all. And the flippant tone and lack of breadth or depth suggest a rather unflattering modus operandi.

      TMMM is a complicated book about complicated processes; spending two pages discussing only a few of its elements does it no justice at all. But the questions you mention are very much worth asking, and should not be abandoned because of a rough start on one article.

      I wholeheartedly hope that the author would take another look at his article, and maybe write another, this time really comprehensive, in-depth analysis of how and whether the practice of programming changed since TMMM. Maybe even publish it as a series of articles on the site. A comprehensive analysis of Brooks's postulates would be a most welcome contribution.

      --

      My other car is a cons.

    10. Re:Infantile review by Bozdune · · Score: 1

      Hmmm, comparing Brooks to Fenimore Cooper is a little harsh, too, my friend. Remember Twain's demolition of Cooper and the "Cooper Indian?" Fred Brooks deserves better.

      Brooks had to build an operating system for a modern computer (yes, the 360 architecture is still thriving today) with stone knives and bear skins. His tools were Xerox machines, file cabinets, secretaries, and punch cards. His insights on the process -- what worked and what didn't -- are remarkable, and they are worth reading today.

      However, I certainly agree that Brooks' conclusions about the optimum way to run a software project (the "surgeon," etc.) were unconvincing then, and remain unconvincing today. We should look to Brooks not for solutions, but for very clear statements and characterizations of the problems (and immutable rules) facing a large development team.

      As far as what Brooks accomplished, remember that the basic concepts of OS 360 live on, 40+ years later, in most every IBM mainframe operating system, except for VM derivatives. Sure, we don't run OS/MFT any more, but all the stuff I remember from the 70's, which was the same as it was in the 60's, is STILL AROUND. I could walk into an IBM mainframe shop tomorrow, put together a JCL deck using what I remember from 1975, and it will work. That is, bluntly, amazing.

      It seems to me that the Mythical Man-Month is still a "must read." The XP-centric musings of the newbie reviewer are irritating and puerile, and in about 10 years he'll be very sorry he wrote the piece. But, then again, what human being doesn't wish he could apply today's wisdom to what he did 10 years ago? So I won't join the critics in lambasting him.

      If your average PHB reads just the first few chapters -- which is easy -- s/he will be a far more effective manager. Anyone in the field who hasn't read this book should do so. Period.

    11. Re:Infantile review by chromatic · · Score: 1

      The depth is my fault. We normally run articles under 2000 words and I guided Ed to write for that length.

      I'd also like to see a deep analysis of how programming has changed (or hasn't) in the past forty years, but that seems like a Master's thesis, not an article. Maybe next year.

  21. Ed may be missing the point... by landoltjp · · Score: 5, Insightful

    [in response to a passage about developers needing their own machine (singular), and that it is supported]

    I just bet this is the root of all my problems -- I have not one but two machines all to myself at work. Do I have any systems programmers or operators? Not a one. It's a miracle I can accomplish anything at all, under the circumstances.

    Ed is missing the point here. I think that such a comment by the original author was based on the time-share days, not the more modern workstation days. "Back then", you all worked on terminals and did batch work on a central frame. Nowadays, the central server is good for no more than saving your Pr0n

    If one were to generalize, I think that it would be better to say that "Teams building core applications need a dedicated developent environment in which to work; a system that is up to the task, properly isolated, and properly supported"

    1. Re:Ed may be missing the point... by tommasz · · Score: 4, Insightful

      Brooks was writing in a time and for a time. Ed, as you've noticed, is reading the book in the now. Nothing wrong with that, but he spends far too much time in the beginning of the article laughing at Brooks' words and examples and too little time at the end in dealing with the principles that Brooks was trying to get across. Since the book is still widely read, it would have been far more helpful if he had stuck to a critique of Brooks' points in terms of today's software development environment.

    2. Re:Ed may be missing the point... by adam872 · · Score: 1

      I run a systems environment for a software development and testing team right now and I can tell you that Brooks' comment is as true now as it was then. My experience is that the Software Engineers I work with are great at writing and testing software and not so good at managing systems. This is OK, as they have someone like me who has complementary skills in that area. I have just inherited a collection of machines that were previously run by a small group of developers (Solaris, Linux and Window). What a shambles!

      So, I don't buy the author's opinion that System Admins are not necessary in a development shop. Bollocks I say. They should be spending 100% of their time gathering requirements, designing, building and testing and leave the mundane systems stuff to someone who is trained to do it. Just because you cut code in C++ or Java doesn't mean that you know anything about systems.

    3. Re:Ed may be missing the point... by kpharmer · · Score: 4, Insightful

      > frame. Nowadays, the central server is good for no more than saving your Pr0n

      No, things haven't chanaged that much on many software projects.

      Want to develop with real data? It often makes sense to share a development database - that can be designed, populated, and maintained by the dba.

      Developing large, complex analytical applications? Is your production destination a massive cluster? Then you'll probably need a development environment that's at least a small cluster. And no - every developer doesn't get their own cluster.

      Need to interface with MQSeries, Websphere, a content manager, and a workflow manager? You really don't want to spend the time to get all that crap working on everyone's pc. Once again, you'll be way better off sharing a development server.

      etc, etc.

    4. Re:Ed may be missing the point... by Detritus · · Score: 1

      It's still true when you are dealing with new/custom hardware or complex systems. How many systems get built or procured? Each customer site gets one. Hardware engineering needs one. Software engineering needs one. Managers who are trying to save money will often try to reduce the number of systems. Hardware and software engineering can share the same system. Maybe, but you can't test software when the hardware engineers are installing, testing and debugging their engineering changes. Even worse is shipping the one and only engineering machine to a customer site. How do we test software changes? Buy a bunch of plane tickets and send a team to the unlucky customer site?

      --
      Mea navis aericumbens anguillis abundat
    5. Re:Ed may be missing the point... by Call+Me+Black+Cloud · · Score: 1

      I don't think he missed the point; he's just going for a laugh. I think we all understand how the field has changed or at least that it has changed. His jokes were more annoying than funny.

      But you know, he may be on to something. This could be the next wave of comedy, so let's take a look at a Model T owner's manual...

      It is a significant fact that nearly all Ford cars ard driven by laymen - by owners, who in the great majority of cases have little or no practical experience with things mechanical.

      Boy, how short sighted was this author to not use the word "laypeople"? Didn't he expect women to read the manual? Of course, if women in his day are anything like my wife the manual would never see the light of day!

      How do the Foot Pedals operate?
      The first one toward the left operates the clutch. When pressed forward the clutch pedal engages the low speed. When half-way forward the clutch is in neutral (i.e., disconnected from the driving mechanism of the rear wheels), and the releasing of this pedal engages the high-speed clutch. The center pedal operates the reverse. The right-hand pedal operates the transmission brake.


      What kind of car has 3 pedals and not one of them is the gas pedal? And rear-wheel drive? I'm surprised the manual doesn't just tell owners to put their feet through the floor of the car and start running!

      On a side note, the manual is an interesting read. It tells how to disassemble the engine and how to grind the valves to remove carbon build-up.

    6. Re:Ed may be missing the point... by mikael · · Score: 1

      I just bet this is the root of all my problems -- I have not one but two machines all to myself at work. Do I have any systems programmers or operators? Not a one. It's a miracle I can accomplish anything at all, under the circumstances.

      And how many people do OS and application vendors employ in order to develop hardware, maintain applications and device drivers, when compared to the number of development teams around the world.

      --
      Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
  22. Zeno's Paradox by TXP · · Score: 2, Interesting

    Part of the reason for a mythical man month in my opinion is zeno's paradox. Lead Developers create massive amounts of code and then expect the hired help to come along and understand all of their code and as well produce work of their own. Just as the hired help catchs up in understanding the Lead Developer has already replaced or added more code. It is the responsibility of the Lead Developer to create and section off as much of their's and others code as possible through API's libs, jars... Create as many Black boxes's as possible. Take responsibility for your own black box. Of course this is going to break down quickly when someone starts writing broken black boxs. Then you end up playing the blame game.

    1. Re:Zeno's Paradox by jvalenzu · · Score: 1

      What does that have to do with Zeno?

    2. Re:Zeno's Paradox by TXP · · Score: 1

      Nothing. Its a poor analogy. What I'm trying to say is that many a developer for hire who joins a project late will be playing the catch up game. Much like in Zeno's paradox with the runner.

  23. Old Timers Take on the MMM by stinkyfingers · · Score: 3, Insightful

    I worked for a guy who wasn't very technical. He was old school Navy, but he knew all the contacts in the government so he could keep them at bay while we were trying to write software. He used to say ... Three men and a woman can't make a baby in 3 months.

    1. Re:Old Timers Take on the MMM by TrentL · · Score: 1

      Three men and a woman can't make a baby in 3 months.

      Yes, but these days one man and one woman can make 7 babies in 9 months.

    2. Re:Old Timers Take on the MMM by Anonymous Coward · · Score: 0

      That's odd, the Navy guy that I knew used to say that three men could make a woman in one night.

    3. Re:Old Timers Take on the MMM by Anonymous Coward · · Score: 0

      "Crash programs fail because they are based on theory that, with nine women
      pregnant, you can get a baby a month."

      Wernher von Braun

    4. Re:Old Timers Take on the MMM by xmas2003 · · Score: 1
      Just to echo that comment, the classic example I use to amplify Brook's theory that "throwing people" at the project won't make it get done any faster (and will often make it take longer) is that a woman can have a baby in 9 months, but 9 women can't have a baby in 1 month.

      Yea, I know 9 women can have 9 babies in 9 months (i.e. you can multi-thread/process! ;-), but if you are focused on a specific project, what I say above applies.

      I read this book a decade or two ago - haven't read it for years, but truly a classic in the field with a lot of it still applicable today.

      --
      Hulk SMASH Celiac Disease
    5. Re:Old Timers Take on the MMM by sfjoe · · Score: 1

      ... but 9 women can't have a baby in 1 month.

      9 women????
      You lucky bastard. Around here, we'd be expected to make a baby in one month with only 4 women.

      --
      It's simple: I demand prosecution for torture.
  24. Build one to throw away by Smallpond · · Score: 3, Insightful

    Hey, Boss, we're going to do all the development work needed to create the product, then we're going to pitch it, take what we've learned and start over.

    Donald: You're fired!

    1. Re:Build one to throw away by dubl-u · · Score: 2, Interesting
      Hey, Boss, we're going to do all the development work needed to create the product, then we're going to pitch it, take what we've learned and start over.

      Well, as long as you're being honest about one approach, you could be honest about the traditional other approach:

      Hey, Boss, you've given us eighteen months to build something that nobody has ever seen before. You have vague and conflicting notions about the product, some of which are frankly impossible. So we're going to spend a bunch of time jawing and theorizing, and then produce some documents that nobody will ever look at closely again.

      Then we'll spend a lot more time apparently working hard, although we'll have very little to show you, so you'll always be nagged by suspicion that we're not being very productive. Then we'll miss a couple of artificial deadlines. Somewhere in the last month of the plan, we'll finally show you a working version. We will discover to our mutual horror that although what we built bears some resemblance to what you asked for, it is not much in the way of what you wanted, and it's even less what you want now after 18 months of changes in the market.

      You'll ask us to change things, but your changes aren't ones we have anticipated, so it will be very expensive. You will be faced with the unfortunate decision between shipping something second rate or starting from scratch. You will declare victory, ship it, and then quickly slink off to a new job before anybody realizes how hollow your triumph is.


      The secret to the build-one-to-throw-away aproach is to do it in small increments. Is the boss eager for a dubious feature? Is a developer all hot and bothered over some new technical approach? Try it for a week, producing a new version of the app at the end of it.

      If the idea turns out to be a complete turkey, then the worst case is you've lost a week of work. But generally, the idea has some merit, even if it's only as a stepping-stone to a better idea, so it's rare that it's a 100% loss.
    2. Re:Build one to throw away by Anonymous Coward · · Score: 0

      Thats 'THE' Donald to you, pal.

    3. Re:Build one to throw away by gnu-user · · Score: 1
      There is already at least one good reponse here, but the full quote addresses this quite well....

      Hence, plan to throw one away; you will, anyhow.


      Mr Brooks was the 360 project manager. The books audience is project managers (read "bosses"). He was fully aware of organizational politics.
    4. Re:Build one to throw away by dasmegabyte · · Score: 1

      I've noticed that the key to being a proponent of XP is to ignore MOST of the tenets of XP. AS a whole, it's a stupid philosophy, but it has ideas that are quite brilliant. Pairs coding is one of them; it's especially effective when both of you are learning something for the first time. Establishing a contact who will actually use the software is good, too...my boss thought I was crazy when I asked to personally gather requirements for my last app, as opposed to having a product manager do it, like the other guys did. But my project has been very well received and has had no enhancement requests yet...and it only took about 6 hours of time to meet with three customers.

      --
      Hey freaks: now you're ju
    5. Re:Build one to throw away by Oligonicella · · Score: 1

      How the hell was this insightful? It shows a complete lack of understanding of the *meaning* (read full quote) of the phrase. Moron.

    6. Re:Build one to throw away by Anonymous Coward · · Score: 0

      We may throw it away eventually, but not before 500 customers throw up their hands. We ship no matter what it looks like, and we would be out of business if we didn't.

      Company name withheld to protect my job

  25. A simpler metaphor by epepke · · Score: 1

    You can't get a baby in one month by making nine women pregnant.

    1. Re:A simpler metaphor by Anonymous Coward · · Score: 0

      Yes but I can try, dammit.

    2. Re:A simpler metaphor by mooingyak · · Score: 1

      Except that the average number of babies per month will actually be 1 / month.

      Nine women can actually produce nine times as many babies in the same time frame as one woman can.

      --
      William of Ockham had no beard. The most likely explanation is that it was chewed off by squirrels every morning.
    3. Re:A simpler metaphor by jathan · · Score: 1

      Your missing the point. The point is to produce "THE SAME BABY".

      With a previous example, one guy can paint a house in 2 months. So 9 nine guys can paint nine houses in 2 months. Same as your pregnant women example.

      What they CAN'T do, is paint 1 house in approximately 6 2/3.

      (2 months at 30 days per month is 60/9 = 6 2/3).

      The same is true of software. If one programmer can write a certain type of software in a couple of months than 9 programmers should be able to write 9 different copies of that software in a couple of months.

      Who cares?

      The point is to write only one piece of software in as little time as possible. It just turns out that you can't always throw N people at a project and complete it in 1/N of the original time.

    4. Re:A simpler metaphor by Anonymous Coward · · Score: 0

      You can't get a baby in one month by making nine women pregnant.

      Although you can sure have a lot of fun trying!

    5. Re:A simpler metaphor by mooingyak · · Score: 1

      I didn't miss the point, I've just never liked the analogy. One woman ALWAYS takes 9 months (for a normal pregnancy, no twins, etc) to produce a baby. It isn't something that can change. Adding people to a software project can increase the speed with which it gets developed. It just isn't a linear increase, and you eventually lose any benefit from adding people. This is very different from childbirth.

      --
      William of Ockham had no beard. The most likely explanation is that it was chewed off by squirrels every morning.
    6. Re:A simpler metaphor by Anonymous Coward · · Score: 0

      Actually, painting a house is one of the few things that actually speed up the more people you put onto it, within reason.

      You can put 1 person on each side of the house with a paint brush, a ladder and and can of paint and let them have at it.

    7. Re:A simpler metaphor by sprprsnmn · · Score: 1

      Aye, but there are certain taks in development that CANNOT be partitioned. This is the point of the pregnancy analogy as an example of an unpatitionable task.

  26. Programming Large scale systems by plcurechax · · Score: 4, Insightful

    I think Ed Willis missed one major point of Fred Brook's writing, and that is that when he was the manager of the OS/360 team, programming was focused on large system development. "Computers" weren't cheap microcomputers you store under the desk, but very expensive systems where priests (operators) in white robes (lab coats) keep it going, and commercial users were billed in dollars per seconds of computer time.

    Brook's writing is focused on programming large systems like operating systems, or major Information Systems (IS) like bank's accounting, or a Wall-Mart's inventory system. These are still large complex tasks, which isn't done using a couple of programmers sitting side-by-side writing a bunch of code on a couple of PCs.

    Willis' comparison to a classic book to modern programming method is laughable, because all those said modern methods (XP, Agile, iterative development, refactoring) were influenced by Brook's writings.

    IMHO Willis' piece at ONLamp wasn't very insightful and didn't do much for me. I would recommend to any new or young programmer to read The Mythical Man-Month, it's consider a classic for a reason and don't get bogged down with the historic context in which it was written or trying to poorly graft modern programming paradigms onto MMM.

  27. Project Managers can't read by _critic · · Score: 3, Insightful

    When I began my most recent job as a Unix Sys Admin, I made a point of buying a copy the this book and giving it to the project manager. I think it's still gathering dust on a cube-shelf somewhere.

    When I think of the problems we've encountered in the intervening years and how much time, energy, money and emotional stress would have been alleviated by simply understanding half of what Brooks covers in his book, I want to cry; okay, sometimes I want to just laugh maniacally . . .

  28. silver bullet(s) by happyfrogcow · · Score: 3, Insightful

    He admits freely the possibility that combinations of improvements may yield this order-of-magnitude improvement -- he draws the line at single factors. So there is no one, single silver bullet.

    There is no such thing as multiple silver bullets. "silver bullet" is a term derived from killing werewolves, where it takes a single silver bullet to kill the beast. not 2, not 3, but one. One thing and it's done.

    The author of the article implies that there may be several silver bullets. that's how i read this section. saying "so there is no one, single silver bullet" is redundant and alludes to the fact that there is a concept of multiple silver bullets. that's wrong.

    there is no silver bullet. just leave well enough alone.

    1. Re:silver bullet(s) by Anonymous Coward · · Score: 0

      There is no such thing as multiple silver bullets. "silver bullet" is a term derived from killing werewolves, where it takes a single silver bullet to kill the beast. not 2, not 3, but one. One thing and it's done.

      Hrmm, I always thought the term Silver Bullet was a beer manufacturer's nickname for one of its products. And, in fact, there is such a thing as multiple Silver Bullets, as they may be purchased in packages of six, twelve, even twenty-four at a time.

      While I would agree that a single Silver Bullet isn't going to make an order-of-magnitude difference toward solving your problems, you may find that after a half-dozen or so the problems disappear completely -- effectively an improvement of infinite orders of magnitude!

    2. Re:silver bullet(s) by Anonymous Coward · · Score: 0

      But what if you're facng 2 werewolves? How many silver bullets would you use?

  29. Ed Willis leaves a lot to be desired by rfc1394 · · Score: 2, Insightful

    In his commentary on Brooks' work. There are a number of issues Willis comments about, including a 'sneer' at the software rent and memory rent. And other comments on the expensive costs of computers at that time. Realize Brooks' is talking about programming on mainframes, machines where you mostly did batch processing and served hundreds or thousands of users.

    It wasn't all that long ago when parts for micro computers were expensive, very expensive. I remember when 16 megabytes of memory - and a lot slower than what is available now - cost US$400. I remember when an 80 megabyte hard drive cost US$420.00. I remember these prices because that's what I paid. This is less than 15 years ago. The availablility of really powerful computers for individuals at astonishingly low prices is an extremely recent development.

    The lowering of prices (and the resultant raising of the standard of living for those who buy those things) has been going on for thousands of years, as long as we've had free markets to allow this to happen. But initially (or as long as someone has had monopoly control over supply) prices were high and often the items were difficult to obtain. As products become commodities, prices drop. This is why 640 MB CDs (commodity) are now as low as 16c each (qty. 100), 50c each qty. 1. 4,200 MB DVD-Rs are $1 each (qty 4), while 100MB zip disks (proprietary) are still about $8 each (almost no discount in quantity).

    Willis is comparing terms and conditions now with the situation of (much worse scarcity) of 30-35 years ago, then cracks up in laughter at his own ignorance of the past.

    Paul Robinson <Postmaster@paul.washington.dc.us>
    --
    The lessons of history teach us - if they teach us anything - that nobody learns the lessons that history teaches us.
    1. Re:Ed Willis leaves a lot to be desired by kpharmer · · Score: 1

      > In his commentary on Brooks' work. There are a number of issues Willis comments about, including a > 'sneer' at the software rent and memory rent. And other comments on the expensive costs of computers
      > at that time.

      And don't forget that most large systems are still leased today. Just visit IBM, HP, Sun, etc and look at their large 8-way systems. I see these systems leased far more often than purchased outright.

    2. Re:Ed Willis leaves a lot to be desired by Anne+Thwacks · · Score: 1
      I remember when 16 megabytes of memory - and a lot slower than what is available now - cost US$400.

      Megabytes??? Some of us remember when it was 16 WORDS of memory, and $40,000! and characters had only 6 bits!

      And we had to walk to work in the snow, and it was up hill both ways

      --
      Sent from my ASR33 using ASCII
    3. Re:Ed Willis leaves a lot to be desired by maduro55 · · Score: 1

      Back in my day all we had was a '1' and a '0', and we damn happy.

    4. Re:Ed Willis leaves a lot to be desired by maduro55 · · Score: 1

      I should've used the preview.

    5. Re:Ed Willis leaves a lot to be desired by StormyMonday · · Score: 1

      Willis is comparing terms and conditions now with the situation of (much worse scarcity) of 30-35 years ago, then cracks up in laughter at his own ignorance of the past.

      Not just in hardware and software costs, but also in matters of organization. For example, you'll never hear anybody complain about unit test routines or internal structure diagrams anymore. When I started in this crazy business (a decade after Brooks), you'd get chewed out for writing one line of code or one line of documentation that the customer didn't demand.

      Another example would be Brook's statement that a major programming team should have their own machine. It sounds falling- off- a- rock obvious now, but at the time, it took the development team out from under the very firm thumb of MIS (now called IT). The old line about MIS people being the equivalent of priests is very well taken -- and they were the nastiest kind of Puritans.

      --
      Welcome to the Turing Tarpit, where everything is possible but nothing interesting is easy.
  30. legacy technology ??? by Anonymous Coward · · Score: 0


    hang on to legacy technology like C++ or perl when the industry has moved onto bigger and better things.


    C is the lingua franca of computers. Know it, and you can talk to any computer. Your word processer is written in it. Your browser is written in it. Your operating system is written in it. Your drivers are written in it. You spreadsheet is written in it. Your media player is written in it. Your shell is written it. Your scripting language is written in it.

    Legacy? ... or foundation?

  31. Re:yes it was "kiloherz" and "kilobytes" in the 19 by Anonymous Coward · · Score: 0

    > Moores law predicts an increase of a thousand every 15 years. We are now in gigas, transitting into teras 40 years later.

    Yes and in 40-odd more years, faster than planck time. Moore's "law" does have a theoretical limit. Besides, he only talked about the number of transistors doubling, nothing at all about speed.

  32. I can't believe O'Reilly published this crap by decaf_dude · · Score: 1

    So he caught a few contemporary references in a book written over 30 years ago and that makes MMM irrelevant? If that's all you got from this book, the paper was wasted on you, because the book describes fundamental principles of software development that are as valid today as they were 30 years ago.

  33. Guess I need my eyes checked by Aggrazel · · Score: 2, Funny

    I first read this as "Mythical Man Moth"

    So I was thinking Arthur from "The Tick" was coming back.

    Imagine my dissappointment...

  34. Paradigms shift by AJWM · · Score: 1

    It's somewhat amusing that, even with the reviewer's nod to the primitive level of hardware in the 1960s when the book was first written, he still doesn't quite get the implications.

    For example, where he says about programming teams: Even with the provisos listed in the book (one Language Lawyer can support two or three Surgeons, the Administrator may be able to look after two teams) this all seems excessive. I'm not clear at all on what the Programming Clerk does even after reading through the description a couple of times. I doubt the two Secretaries are truly necessary.

    First, it was "Program Clerk", not "Programming Clerk" -- much of the work that person would do would be handled automatically these days by version control systems, email archives, and so forth. Which reflects on "I doubt the two Secretaries are truly necessary". Today, no. Then, yes. Remember, there were no PCs then. This goes beyond just the requirements for a mainframe support staff to keep the developers' test machine humming. This also meant no voicemail, no email, no wordprocessors (remember typewriters?), no PDAs, no shared calendar systems, no spreadsheets, no instant messaging, no project management software, paper files instead of disk files, etc, etc. Of course two secretaries were necessary, or the project leads would never get any other work done. Today, though, one part-time secretary for the team would probably be sufficient.

    At least Brooks didn't include a keypunch operator to create the card decks from the programmers' coding sheets.

    (And actually some of the really big projects -- like OS/360 -- did have access to some of the above technologies -- eg for document editing -- but they were mainframe based.)

    --
    -- Alastair
  35. Re:I had a project that demonstrated this well... by symbolic · · Score: 1


    We were supposed to convert a large number of documents from one format to another by a certain deadline. The management had overestimated the per-person productivity, and as a result, we started falling behind. The owner of the business mistakenly believed that if he tripled the number of people, he'd get triple the output (we had 3 8-hour shifts running at one point). He found out how wrong he was, but couldn't bring himself to understand why. Eventually we got through it, but there were a lot of bumps and bruises along the way.

  36. The author is a whiner and a nitpicker by melted · · Score: 3, Insightful

    The insight contained in this (very old) book is still 100% applicable today. I've worked in software for 6 years now, and re-reading the book from time to time I get more and more help from it.

    I wish my management read it, too. They seem to think they're gods and they can solve everything by hiring more contractors (as opposed to managing existing programmers/testers better).

  37. No, Brooks' point goes beyond Amdahl's Law by JoeBuck · · Score: 4, Insightful

    Amdahl's Law just says there is a part of the work that can't be parallelized; in a system that follows Amdahl's Law, adding more resources always makes things slightly faster, though there are diminishing returns.

    Brooks' Law says that you can actually make the project later by adding more people. That's because the new people have to be brought up to speed, all the team members have to communicate, so you can lose more time than you gain.

    1. Re:No, Brooks' point goes beyond Amdahl's Law by Tony-A · · Score: 2, Funny

      There was an old rule of thumb (pre Brooks).
      If one programmer can do it in one year, two programmers can do it in two years.

  38. Alarming quotes from the article by iamacat · · Score: 2, Insightful

    Users now typically buy enough real memory to hold all the code of major applications

    Is the author saying that most people have more gigs of RAM than an install of MS Office takes on disk? I doubt any real major app fully fits into physical memory.

    I think he's saying you will invariably throw away the whole implementation either all in one go or a little bit at a time, so it's wise to "plan to throw one away."... This is probably not acceptable now -- certainly I'd be embarrassed to have to do this.

    I guess that's why we are exposed to so many programs that should have been thrown away. Airplane designers build and discard many mockup models to discover problems that are not apparent beforehand. In programming, you just need to build one airplane and you are free to reuse any well-working pieces from the discarded model, so what's the big deal?

    "The fundamental problem with software maintenance is that fixing a defect has a substantial (20-50 percent) chance of introducing another." I do not believe the risks to be this high now in any reasonably well-run organization.

    Didn't we see a study recently that Microsoft is more likely than not to introduce another vunerability with a security update? Definitely simple software maintanance should be supplemented by periodic major cleanups and even discarding/rewritting problem pieces.

    "A discipline that will open an architect's eyes is to assign each little function a value: capability x is worth not more than m bytes of memory and n microseconds per invocation. These values will guide initial decisions and serve during implementation as a guide and warning to all." Even in embedded development where I make my living, I rarely see anything like this level of budgeting detail.

    So assign values at granularity applicable to your field "capability x is worth not more than 100K and 0.1 second per invocation".

    I think the author of the review is still in denial, despite his efforts to keep open mind. "Mythical man-month" was written at the time of small, efficient programs running on limited hardware. Now we have propotionally (and sometimes unproportionally) more complicated and inefficient programs running on more powerful hardware. This just makes software development more perilous, although the end result is undeniably more valuable to users.

    Sure some problems shifted from lower-level ("this function is 600 bytes. I ought to cut it down to 200 or less") to high-level ("our app takes up 512MB when running. We need to make each feature loadable on demand to keep average user's memory footprint reasonable"). And if nothing else helps, god bless you, maybe you really have to go through each function in 512MB and shrink it from 600 bytes to 200. But overall, few things really went away. You just need to look for them in another place/design phase.

  39. Many things don't scale by nuggz · · Score: 1

    The problem is many things sometimes scale.
    CPU time is one.
    Make it faster, it scales well.
    Add another processor(2,4,8 way), it scales okay.
    Turn it into a distributed computer. Maybe it scaled, maybe it didn't.
    In some cases like rendering a movie it scales very well. In other cases it won't scale as well.

    Many systems (social or technical) have corresponding constraints and issues. A bit of wisdom can make it all a bit more clear.

    To those who would bash the specifics of the situation decades ago, don't you think in a few decades they'll be laughing at your typing code and being all excited about extreme programming and crap?

    It will be the same problems in a different frame, but by then you'll be wise enough to realize it.

    1. Re:Many things don't scale by Anonymous Coward · · Score: 0

      You are onto something here.

      Now ask yourself, in what case did the distributed system scale well, and in what case did it not scale well.

      I think that you will find that things like that scale better the more self contained and repetative the tasks are.

      So, when initially architecting a system, look at how well you can break things out by interfaces, and see if you can make more than one part use the same interface.

      If you can design a system to expand fuctionality by allowing plugins to the core, then you can have an almost unlimited number of developers in seperate projects writing plug ins to add functionality to a single core.

  40. Same end effect by LittleGuy · · Score: 1
    Well, as long as you're being honest about one approach, you could be honest about the traditional other approach:
    • Hey, Boss, you've given us eighteen months to build something that nobody has ever seen before. You have vague and conflicting notions about the product, some of which are frankly impossible....


    If it succeeds --
    Boss: And it was all my idea!

    If it fails --
    Boss: You're Fired!
    --
    Mod Karma -1: I sed bad wurds. If I cep my mouf shut, I wud be at riyses.
  41. A must-read for anyone in software development. by AJWM · · Score: 1

    And I know I'm not the only one to think so. Some years back when I was working with McGraw-Hill (on deploying BIX for Byte Magazine), I noticed a (partially emptied) case of the books in the IT manager's office. (He promptly offered me one when I remarked on it, but I'd had a copy for a couple of years at that point. He'd already passed them out to everyone on his team.)

    What I found significant about that is that The Mythical Man-Month is published by Addison-Wesley, a McGraw-Hill competitor.

    --
    -- Alastair
    1. Re:A must-read for anyone in software development. by Inthewire · · Score: 1

      Fuck it, then, 'cause you've got a(n open) mind.
      Read Carl Sewell's _Customers For Life_.

      --


      Writers imply. Readers infer.
  42. Re:yes it was "kiloherz" and "kilobytes" in the 19 by mikael · · Score: 1

    IF you double the number the transistors, then the transistors are also half size, which means that the electrons have half the distance to cover, so the speed can double as well. For graphics cards, performance is doubling every 12 months. For CPU chips, performance is doubling every 18 months.

    --
    Vintage computer adverts: http://www.vintageadbrowser.com/computers-and-software-ads
  43. Re:Old Timers Take on the MMM (and CMM) by gosand · · Score: 1
    I worked for a guy who wasn't very technical. He was old school Navy, but he knew all the contacts in the government so he could keep them at bay while we were trying to write software. He used to say ... Three men and a woman can't make a baby in 3 months.


    That is a damn good statement. I just got back from a 2 day CMM (Capability Maturity Model) class, and luckily my boss came too, as did his boss. They got to hear first hand from a very good instructor with years of real-world development and management experience what the CMM *IS* and what it *ISN'T*. Too many people think that the CMM has nothing to do with producing good software - and they are 100% right. The Software CMM has to do with getting a handle on how you MANAGE SOFTWARE PROJECTS. One of the benefits is to be able to more accurately hit your schedules. To the parent poster's point, sometimes you can only do things so fast. One of the great charts for project management is this:


    Optimize....Constrain....Accept
    COST
    SCHEDULE
    S COPE
    QUALITY

    You can Optimize one, Constrain one, and Accept the other two. (sorry for the format, F'n Slashdot filters) Imagine it is a grid, and you have to put a check in the columns

    Data suggests that customer satisfaction goes DOWN when you go from L1 to L2. This is because you are figuring out how to get control of your projects. After that, customer sat goes UP. This is because while your estimates and schedules may not seem that great, you are more likely to hit them. Once your customers get it, they are happy. What is better, saying you can deliver it in 6 months then actually delivering in 12, or saying you can deliver in 6 and doing so in 7?


    And the CMM is no guarantee of anything, it is simply a demonstration of your maturity in being able to manage your projects. Of coures, that is if the CMM is done CORRECTLY.

    --

    My beliefs do not require that you agree with them.

  44. India and Parallel Processing? by sacbhale · · Score: 2, Insightful

    This is analogus to the concept of parallel processing. Just like u cannot achieve a double speedup by turning a single processor machine to double processor the same applies to the concept of the mythical man month.

    Over the years processors have become cheap and even if adding more processors doesnt make it more efficient there is (evene if only slight) difference. so we dont mind paying just about the same amount to throw more processors into the machine to achieve ecen a 20% speedup.

    The whole point behind this example is that when u take the problem to say India where u get 3 people to work for the same amount of money u will not mind throwing them at the problem even if u can save just a couple of days. Because in the end the bottom line is still benifiting.

    No offence to Indians( I am one) but thats just economics.

  45. The problem with trying too hard to be nice... by Anonymous Coward · · Score: 0
    A point from the author:
    There is a certain smugness at work in the idea that the architect will make better decisions here than the user will. Certainly this view is out of favor now. We normally try to find out what the user wants (somehow) and then find a way to design our software to provide this to them in the most sensible manner we can envision. I can't imagine saying "no" to the user regarding a feature just because it doesn't fit into my current conceptual view of the system, and the notion of throwing out the current system so we can devise a better one that embodies all the features we want is a luxury no one can afford.

    To illustrate where I think the author has gone wrong here, and I realize this is a subjective point, one should look at Mac OS X, Windows XP, and Linux Desktop GUIs. Apple tries to only incorporate in the GUI what they feel does not conflict with the overall look and feel. They don't even like to give their users control over themes. And Steve Jobs says ``no'' all the time, even though it offends everyone at some point. Microsoft tries harder to give people what they want. And the Linux Desktop designers fall all over themselves trying to be the most popular kid on the block. I'm sorry, but I find the Mac OS X interface to be the easiest to use and the Linux Desktops to be the hardest to use, and I don't think I'm alone. This guy is just plain old fashioned wrong, wrong, wrong.

  46. A puzzle by ch-chuck · · Score: 1

    If it takes 7 programmers 7 months to finish 7 projects, how long does it take 8 programmers to finish 8 projects?

    --
    try { do() || do_not(); } catch (JediException err) { yoda(err); }
    1. Re:A puzzle by Anonymous Coward · · Score: 0

      7 months assuming the new hire is competent and the 8th project is similar to the others.

    2. Re:A puzzle by AndroidCat · · Score: 1

      No. Because there's an 8th guy, you have to add more management and that's going to slow everyone down. ;)

      --
      One line blog. I hear that they're called Twitters now.
    3. Re:A puzzle by fair_n_hite_451 · · Score: 1

      There is not enough data contained in the question to formulate the answer.

      Is it 7 programmers taking 7 months EACH to write their 7 programs, or 7 programmers each taking one month to write their 7 programs, thereby totally 7 man-months of work?

      --
      Reason why there is hope for the future generation #364:
      "I wish my grass was emo so it could cut itself."
  47. Future Slashdot Story... by feloneous+cat · · Score: 2, Funny

    Mythical Man-Month A Myth. Nine women bear a child in one month through genetic engineering. When asked, the lead researcher shrugged and replied, "We just wanted to piss Fred Brooks off."

    --
    IANAL, but I've seen actors play them on TV
  48. Timeless concepts by mec · · Score: 1

    I got the same impression from the review.

    For instance, Brooks talks about the importance of having a dedicated system administrator. The reviewer makes fun of this, pointing out that he has his own dedicated computer, and he doesn't need any administration.

    Sure, fine, the desktop computer doesn't need someone to mount tapes on it. But someone's still gotta take care of the spam filter, the firewall, the on-site backups, the off-site backups. There's still plenty of admin work to do.

    Similarly for dedicated systems. "Ha, ha! The sort team gets a dedicated 4-to-6-hour slot! How quaint!" Well, the scarce resource is no longer a machine with a compiler/linker/debugger. But how about the embedded target machines? Does every developer have one, or are there two of them in the lab, and one of them is broken, and the other effectively belongs to the alpha geek who's camping it?

    Brook's comments about adding developers and increased communication costs also foresages something that happens on many open source projects: random patches arrive faster than anyone can deal with them, leading to huge backlogs for patch review.

    I could go on. But enough from me; go read your Brooks again!

  49. Comments on cards by KenSeymour · · Score: 1

    I don't understand. The one time I programmed on punched cards, I used comments.
    It was in FORTRAN.

    The command cards in the deck would 1) cards for the source file, 2) cards with commands to compile and link the program, 3) a card with the command to print out the list file, 4) cards for input data, 5) the command to run the program, 6) a card with the command to print the output.

    If you had a logic error, you had to figure it out by going through the printed list file and keeping track of what was in each variable at a given point
    to see where it went wrong.
    The comments in the printed list helped you keep your bearings.

    There was a function on the keypunch machine that you could use to copy the card for a banner comment line to another card.

    I have to describe the banner comments because of the lameness filter.

    So a FORTRAN banner comment would start with a C and have a lot of asterisks on it.

    Now that we are so advanced, we use a /, a lot of asterisks and end with a /.

    I guess in summary, making comments on cards was easier than trying to execute in your head a printout of uncommented code to explain the output you got.

    Since I made a lot of typos, I had to buy an extra box of blank cards for the course.

    --
    "We can't solve problems by using the same kind of thinking we used when we created them." -- Albert Einstein
  50. Lightweight review by a lightweight reviewer by Animats · · Score: 2, Interesting
    The author does a bit of scripting. It's not like he's the lead developer on Oracle or something. A look back at Brooks by a major developer would be more useful.

    The "chief programmer team" concept has fallen out of favor, with one notable exception - game development. Game projects have team members with well-defined roles, because they must integrate many elements that aren't just code. Games have artwork, music, motion capture data, maps, textures, character models, and props. Game teams look more like film production crews, with individuals responsible for specific areas. "Librarian" and "toolsmith" jobs are very real in game development. There's usually a lead "director", who is expected to know all the technologies involved.

  51. Re:yes it was "kiloherz" and "kilobytes" in the 19 by untaken_name · · Score: 1

    warning: incorrect assumptions, leading to spurious logic.

    IF you double the number the transistors, then the transistors are also half size,

    What if they are 1/4 size? or 3/4 size but the new base is bigger? what if they are on a slot processor instead of a socket one? What if they're exactly the same size, there's just twice as many of them?

    which means that the electrons have half the distance to cover, so the speed can double as well.

    ehehehehe. you're funny.

  52. Leasing vs. buying by Old+Man+Kensey · · Score: 1
    Large business infrastructure items are almost universally leased instead of bought and probably always will be. It just makes good business sense -- when you have a long-term lease commitment, lots of stuff tends to be included like maintenance and basic supplies, and you have the benefit of having equipment now that you can make money off of (hopefully enough to pay for the lease fees), vs. not having it and thus not making as much, which means you can't save any money to pay for it and you end up never getting it.

    When you go into, say, a Kinko's, odds are every single machine in that store, right down to the 11-inch laminator in the customer area, is leased, with a maintenance contract (if it's not leased, then it probably was leased for so long that it went off-lease and became owned by the store.) Look on the side or top of the stuff in there and you'll see a label with the lessor info: who to call, what the number is, the equipment serial number, etc.

    When equipment breaks a lease saves simple hassle in the business too -- instead of having to trust some employee to monkey around in there (which you may or may not be able to spare man-hours for), you just take it out of service, have another store produce orders if need be, and call the lease company. And trust me, when you're talking about a half-million-dollar copier, you do not want to have to eat major repair costs because your screwdriver slipped and you skewered the main vacuum tube or dented the motherboard on the controller.

    --
    -- Old Man Kensey
  53. Yeah, but ... by gstoddart · · Score: 1

    If you'd need an infinite number of monkeys for Shakespeare, I'm thinking you're gonna need the same order of magnitude of dogs to accomplish anything.

    YOu gotta remember, the monkeys might bash on the keyboard, but the dogs will just sniff each others butts.

    --
    Lost at C:>. Found at C.
  54. Re:Old Timers Take on the MMM (and CMM) by untaken_name · · Score: 1

    Optimize....Constrain....Accept
    COST
    SCHEDULE
    S COPE
    QUALITY


    I knew a guy when I was contracting to the Air Force that used to put it like this:

    Cheap, Fast, Good - pick 2.

    I find this to be applicable almost anywhere.

  55. Re:Old Timers Take on the MMM (and CMM) by gosand · · Score: 1
    I knew a guy when I was contracting to the Air Force that used to put it like this:

    Cheap, Fast, Good - pick 2.


    Except "good" can be interpreted in different ways. That is why it's more clear if you split it out into scope and quality. Scope refers to what you say you will produce, quality refers to how well you produce it. :-)

    --

    My beliefs do not require that you agree with them.

  56. SysOps by DCheesi · · Score: 3, Insightful
    I just bet this is the root of all my problems -- I have not one but two machines all to myself at work. Do I have any systems programmers or operators? Not a one. It's a miracle I can accomplish anything at all, under the circumstances.

    Umm, ever heard of an IT department? Granted they rarely actually program anymore, but they're still configuring and maintaining your system for you*.

    *Except of course in my job, where the great & powerful IT department is afraid to even touch a Linux machine (like the ones we use for actual development!)

  57. Like the quote from the Tao: by ThousandStars · · Score: 1

    "You can demonstrate a program for a corporate executive, but can't make him computer literate."

  58. zerg by Lord+Omlette · · Score: 1

    If you haven't already read the book, go ahead and pick it up. Even if you don't agree w/ what he writes, forcing you to think about this shit will make you a better programmer.

    What he writes at the very end is the absolute clincher, makes going through the book quite rewarding.

    --
    [o]_O
  59. C++ best for Windows by Anonymous Coward · · Score: 0

    The Bill Gates money quote is that it was Visual Basic -- the C/C++ version may run faster, but the VB one gets developed real quick.

  60. Don't forget "Death March". by khasim · · Score: 2, Insightful

    I find that the books have the most value because they not only describe WHAT the mistakes were, but WHY people who knew better made those mistakes.

    People keep making the same mistakes, for the same reasons. Even when they know better.

    The trick is to identify the conditions that exist PRIOR to making the mistake and focus on changing those conditions (example: management does NOT know what they want, just that they want something and it has to be next month).

    Managing the conditions is very tricky.

  61. Brooks and Agile development by Aron+S-T · · Score: 2, Informative

    Not too long ago I wrote an article about software development methods which heavily focused on Brooks as a precurser of Agile methods. Those who are interested can read it here.

  62. ...not everything... by ggwood · · Score: 1, Informative

    Of course I totally agree the book is a classic, but some major portions of MMM, to my knowledge, have never gained favor, such as the surgical team analogy to working on code, where there would be like six people involved on any major code change. Certainly the man month is mythical, but IIRC that is just the early chapters. Read on and there are other things - many true, but as far as I know, many unpopular and/or untested.

    Like many great works, Brook's discription of the problem is excellent, but his attempts to solve it are not all perfect. Thus, I would not hand it to a manager to read without some preface to it.
    ____________________________________________

    --
    a war on terrorism? How can we end a war on a method?
    1. Re:...not everything... by hicksw · · Score: 1

      Surgical teams don't scale. They are fine for the problems they can reach - like modern games. This may be a limiting factor in the future of games programming; thye haven't quite hit that wall yet.

      Some of the problems he identified are still unsolved after all these years, so don't blame Fred. We have done no better.
      --
      rearranging bugs since 1962

  63. Person as four-port and hierarchical organization. by Ungrounded+Lightning · · Score: 3, Interesting

    I read this in college for software engineering and even on our 4-8 person projects it made sense. In the corporate world, it makes more sense, but no one really listens. The same pressures of time and budget seem to outweigh the lessons learned from Mr. Brooks.

    I saw a great explanation of WHY you get less per man on a large project than a small one, and why hierarchical organization seems to be necessary on projects with large numbers of people but can be dispensed with on tiny ones.

    Imagine each person as a device with four "ports" (each representing a fraction of his time and/or attention). Each "port" can be used for communicating with one other person or doing one unit of work.

    On a one-person project all the ports are used for work. You get four units of work done per day.

    On a two-person project each person has one port used for communicating with the other and three for doing work. You get six units of work done per day.

    On a three-person (non-hierarchical) project, each person has TWO ports tied up communicating, and TWO for doing work. Again you get six units of work done per day.

    On a four-person (non-hirearchical) project, each person has THREE ports tied up in communication, and only ONE left for work. Now you're down to FOUR units of work per day - same as a single hacker in a closet.

    On a five-person (non-hierarchical) project, each person has all four ports tied up with communicating. Nothing gets done. B-)

    Of course you can to a limited extent increase the number of "ports" by tools to improve communication, or by overtime. And some people are better at switching tasks or communicate quickly, and thus have more "ports". But the same basic idea applies.

    You can go beyond a handful of people and retain some productivity by restricting the interpersonal communication paths - to keep people from using up job-time communicating with others when it's not job-related. This tends to lead to specialization, with some people only communicating. That leads to a tree organization, with the "leaves" being people who actually do some work on the code proper, communicating only with one or two neighboring leaves, and others just communicating - and deciding what messages to forward.

    And of course this leads to all the classical pathologies of hierarchies: Distortion of messages by multiple hops. Much decision-making must be done in the tree (and often far from the relevant data) to prevent saturating the communication links. "Leaves" are data-starved and must follow the decisions of "non-leaf nodes" or the project becomes disorganized. So the non-leaves become authorities and run the show.

    To do large projects without such explicit communication hierarchies controling the workers you need to divide it into modules done by standalone groups, plus assemblies also done by standalone groups. The standalone groups must be redundant (so that at least ONE of the groups doing each particular thing gets it to work adequately.) Then the hierarchy is still there, but in the form of the invisible hand of evolutionary/market forces: Leaf modules are adopted or rejected by the assembly-constructing group constituting the next level up the hierarchy toward the root of the overall project, assemblies are adopted or rejected by larger-assembly groups, and so on. (Of course there can ALSO be more than one root, and users of the resulting product can replace modules or assemblies with others that do the job if they car to do so.) Each group can be flat or hierarchical, according to their own leanings (and the needs of their task).

    --
    Bantam Dominique roosters crow a four-note song. Once you've heard it as "Happy BIRTHday" you can't NOT hear it that way
  64. "Interesting"?!? WtF?!! by Anonymous Coward · · Score: 0

    What the fuck is "interesting" about this post? Some moronic undergrad took a class where his professor kept mistaking a book title? WHO GIVES A SHIT?!?!?

  65. "Interesting"?!? WtF?!! by Anonymous Coward · · Score: 0

    What the fuck is interesting about this post? "Lessons to teach"? Like what? This jackass doesn't bother to offer even one example. "Go read it." Gosh, thanks. May as well mod this half-assed post "+1 Informative." Idiot moderators.

  66. Big Deal by Anonymous Coward · · Score: 0

    Someone every year writes about the mythical man-month, and how things have changed. I can't believe /. even ran this article.

  67. 9 women by strong_tiger · · Score: 1

    Put another way, 9 women can't make a baby in 1 month.

  68. On the other hand, a book to avoid. by Ungrounded+Lightning · · Score: 0, Offtopic

    Some years back [...] I noticed a (partially emptied) case of the books in the IT manager's office. ([...] He'd already passed them out to everyone on his team.)

    Sounds like a good man to work for.

    On the other hand, if anyone in upper management EVER starts enthusing about _Crossing the Chasm_, start your next-job hunt IMMEDIATELY and QUIT as soon as you find a good replacement! Do NOT wait for your stock options to vest (they will soon be worthless) and start unloading the ones that have already vested.

    _CtC_'s central message is hidden in a line near the end of one of the last chapters. It is: "Screw the early-hires with the big option plans. Only the founders and management deserve the big bucks. The early hires were necessary at the start, but now are overpaid and a drag on the bottom line. They are compulsive drones who have no power to fight you. This action won't even hurt you NEXT time around, because they are obsessed and will be early hires again at the NEXT company. You MUST do this to make your company stable for the long term."

    The net result is that the pointy-haired executives, soon after discovering this book, dump the early hires. (And even if the author HAD been right, they do it too soon.) The early hires are the ones who actually had the skills and knowlege, and applied the hard work, to make the founders' hairbrained scheme WORK. As a result they are the repository of the internal knowlege of HOW it works. By dumping them without extracting this knowlege the execs kill maintainence and follow-on, and thus doom the company - starting in a couple years.

    Of course by then they've moved on, so the NEXT set of upper management inherets the collapsing house of cards. But meanwhile the people who actually implemented the product are dispersed, and their stock is worthless.

    So as soon as you see this infection taking hold, liquidate, cut your losses, and move on.

    --
    Bantam Dominique roosters crow a four-note song. Once you've heard it as "Happy BIRTHday" you can't NOT hear it that way
    1. Re:On the other hand, a book to avoid. by Anonymous Coward · · Score: 0

      You got modded down? OH TOOO BAAAD!

      Whatcha gonna do?

  69. But the result would be by Ungrounded+Lightning · · Score: 1

    Since one human year equals seven dog years, couldn't we save time while keeping the team size small by hiring dogs as developers?

    Yes.

    But the result of such a project would be a real bitch.

    --
    Bantam Dominique roosters crow a four-note song. Once you've heard it as "Happy BIRTHday" you can't NOT hear it that way
  70. But don't build TWO to throw away. by Ungrounded+Lightning · · Score: 1

    For example, he says, "Build one to throw away." Amen to that.

    But never build TWO to throw away. If you don't learn enough from the first one to make the second one right, you'll never stop looping and deliver a product.

    Development is not the letter "O". It's the letter "Q". You can loop a LITTLE, but eventually you have to deliver and move on.

    Try to get it right the first time. Get it right the second.

    Successful software development is like growing a perfect crystal. You're constantly diddling the additions to get the atoms lined up with no flaws. But once they're right you move on to the next layer. Build it, test it, fix it, test it again, loop till it passes, then LEAVE IT ALONE and MOVE ON.

    (If you tested it as you went, the ONLY parts you'll EVER have to go back and change are the ones where you either didn't understand the spec or the spec changed.)

    --
    Bantam Dominique roosters crow a four-note song. Once you've heard it as "Happy BIRTHday" you can't NOT hear it that way
    1. Re:But don't build TWO to throw away. by Anonymous Coward · · Score: 0

      Hello fucktard.

  71. A source of the rose coloring. by Ungrounded+Lightning · · Score: 1

    That's apart from the naturally rosy estimates of one's one programming/system admin abilities, versus a sober understanding of the full complexity of a project.

    Part of the problem with estimating is that it's easy to only think about the time spent on the part you already KNOW how to do, and hard to even imagine the part you DON'T know how to do yet.

    (My rule of thumb is to multiply the time I THINK it will take by three - because the part I have to learn on the way and can't visulalize now usually takes up two-thirds of the total project time.)

    --
    Bantam Dominique roosters crow a four-note song. Once you've heard it as "Happy BIRTHday" you can't NOT hear it that way
  72. communication growth exponential by GunFodder · · Score: 2, Interesting

    Brooks explicitly deals with the subject of communication. He points out that time spent on communication grows exponentially with the team size. This means that at a certain point adding people will actually decrease the amount of available work time and therefore increase the development time.

  73. heads? by GunFodder · · Score: 1

    What luxury! At least "head" refers to a part of the body. Here we're called "resources".

  74. Software Engineering as a discipline by ufnoise · · Score: 3, Insightful

    I really like the comparisons that are made between Software Engineering and Chemical Engineering when he revisits the MMM years later(Chapter 19). In discussing software engineering as an engineering discipline: He may be right that the field will never develop into an engineering discipline with as precise and all-encompassing a mathematical base as electrical engineering has. After all, software engineering, like chemical engineering, is concerned with the nonlinear problems of scaling up into industrial-scale processes, and like industrial engineering, it is permanently confounded by the complexities of human behavior

  75. I only wish timesharing were obsolete! by RoboProg · · Score: 1

    Oh, to have a workgroup server with only 15 people on it!
    Unfortunately, we regularly have to use a server with about 50 users. Ouch!!!

    'Course, I often use my laptop (linux) when the job-of-the-day does not require propietary tools which only work on The Great and "Mighty" Server.

    Yes, most places use PCs or individual workstations, but you'd be surprised.

    --
    Yow! I'm supposed to have a plan?
  76. Re:Person as four-port and hierarchical organizati by Anonymous Coward · · Score: 0

    Imagine each person as a device with four "inputs" (each representing a fraction of his total pleasure power). Each "input" can be used for pleasuring one other person or doing one unit of cum.

    On a one-person jink all the inputs are used for himslef. You get all kinds of weird shit put in there every day.

    On a two-person jink each person has one input used for pleasuring the other and three for the insertion of toys. You get six loads done per day.

    On a three-person party, each person has TWO inputs tied up plesuring, and TWO for doing himself. Again you get six loads done per day.

  77. Soul of a New Machine (DEAD Eagle) by f16c · · Score: 1

    While working as a tech testing RADAR receivers for Westinghouse, I read this book. The machine in question was the 32 bit upgrade for 16 bit minicomputers sold by Data General at the time (1986?). I ended up working with the machine later as part of a test-only test set due to the fact that the differences between the machines were extreme enough that a floating-point processor was never developed. The development environment was of such poor quality that one young EE (after fighting with the software for months) quit in disgust. Because there was no floating point unit the 16 bit machines were able to test a module in 3/4 of the time required by the newer model. This and the availability of '486 class micro's killed the market for similar DG machines. While the older machines could be coded in Fortran and was capable of decent hardware floating point, the newer machine used a restrictive Pascal compiler of the day - not something you really want for scientific/engineering applications as all of the heavy lifting had already been done in the wrong programming language. Trying to rewrite the code to provide more than test capability - troubleshooting and options for test - required more than one guy at a console part-time and the company didn't replace the outbound engineer with a repacement. The test-set IIRC was owned by the Air Force anyhow.

    No sig in hell.

    --
    bob@Osprey:~>
  78. Hefty support structure by ca1v1n · · Score: 3, Insightful

    The author points out the apparent inefficiencies in Brooks's surgical development model, but he seems to miss the logic behind it. Brooks notes that there's at least an order of magnitude difference between an employable programmer and a really good programmer. His well-informed suggestion for the ad-hoc development methods of the time was that an organization with 200 programmers, managed by the 20 best, should fire the other 180 and put the 20 back to work. Of course, if those 20 programmers have the other 180 backing them up, doing things like building tools, testing, researching language constructs and data structures and the like which will improve certain critical bottlenecks, they, the "surgeons", can keep focused on actually writing the bulk of the code that makes it into the finished product.

    Certainly many of the criticisms were well-supported, but I think the author missed the background on this one.

  79. Nads that go crunch by Inthewire · · Score: 2, Interesting

    Holy God do I ever want to introduce that smarmy reviewer's reproductive organs to my steel and leather shod foot.
    What a self-loving asshole.
    "Fred wrote in a time where systems were smaller and slower, where capacity was expensive.
    So I'll mock that, and ignore the fact that he contributed more to our world than I'll ever even review."

    --


    Writers imply. Readers infer.
  80. Please tell me how to avoid hiring you by yogibeaty · · Score: 1

    for my next project. Anyone who really thinks that "it didn't say anything that anybody with a couple years of software engineering experience didn't already know." is in dire need of a recto-cranial inversion.
    I've worked in the field since 1974 (IBM/360) til today (Mac G4) and I can count on the fingers of one foot the number of designers, programmers, engineers and architects who wouldn't benefit from a bi-annual re-reading of TMMM. Perhaps you believe that you are the 2nd coming of Brian Kernighan, but in my NSH opinion, you are a real danger to any serious software project (as opposed to the 50-500 line "programs" you write in school)
    John

  81. Plan to throw one away by Salamander · · Score: 1

    Unfortunately still true. Every novice programmer starts out thinking they're better than anyone else and will be able to get stuff right the first time. Over time they learn that they're wrong. Whether the second version is done as part of the same project (or job) or a different one, whether it's superficially similar or just similar in its internal design, there will be a second version. If you're good a majority of the lines of code in the second version will be recycled from the first, but it's practically a guarantee that the major conceptual structures will be different. Get used to it. Learn to use it to your advantage. People who continue to deny it spend their careers either doing trivial things or doing more serious ones in a totally half-assed way. If you want to get good at building something besides toys, learn how to build on past experience.

    --
    Slashdot - News for Herds. Stuff that Splatters.