Slashdot Mirror


Disproving the Mythical Man-Month With DevOps

StewBeans writes: The Mythical Man-Month is a 40-year old theory on software development that many believe still holds true today. It states: "A project that requires five team members to work for five months cannot be completed by a twenty-five person team in one month." Basically, adding manpower to a development project counterintuitively lowers productivity because it increases complexity. Citing the 2015 State of DevOps Report, Anders Wallgren from Electric Cloud says that microservices architecture is proving this decades-old theory wrong, but that there is still some hesitation among IT decision makers. He points out three rookie mistakes to avoid for IT organizations just starting to dip their toes into agile methodologies.

281 comments

  1. I love it by ruir · · Score: 5, Funny

    Love the smell of coffee plus bullshit in the morning.

    1. Re:I love it by Anonymous Coward · · Score: 2

      Are you trying to tell me that there are no silver bullets?

    2. Re:I love it by Scareduck · · Score: 1

      Yeah, when did Slashdot become a craven press agent?

      --

      Dog is my co-pilot.

    3. Re:I love it by msauve · · Score: 1, Insightful

      He'd better work on proving that the corollary is wrong: "You can't produce a baby in a month by getting 9 women pregnant."

      --
      "National Security is the chief cause of national insecurity." - Celine's First Law
    4. Re:I love it by Hognoxious · · Score: 3, Insightful

      When Dice bought it.

      Next!

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    5. Re: I love it by Anonymous Coward · · Score: 5, Funny

      "The idea behind microservices is that some types of applications become easier to build and maintain when they are broken down into smaller, composable pieces which work together."

      Wow. No ever thought of that before.

    6. Re:I love it by Anonymous Coward · · Score: 0

      I love the smell of managerial crap in the morning... The smell, you know that ozone smell, the whole corporation ... smelled like bureaucracy.

    7. Re:I love it by Anonymous Coward · · Score: 0

      I let my java to cool down so I needed some services of my micro-oven this morning.

    8. Re:I love it by Marginal+Coward · · Score: 4, Informative

      Although your version has a certain roguish charm, I prefer the elegance of the original: "The bearing of a child takes nine months no matter how many women are assigned."

    9. Re:I love it by Zero__Kelvin · · Score: 1, Interesting

      True enough, but adding more men to the process near the end doesn't make her later!

      --
      Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
    10. Re: I love it by Zero__Kelvin · · Score: 1

      Late enough to produce a baby in a month? I think not.

      --
      Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
    11. Re:I love it by internerdj · · Score: 1

      No the silver bullet is coffee. If you don't have coffee then the work that would take 5 developers 5 months would take 25 developers 5 years.

    12. Re:I love it by Anonymous Coward · · Score: 0

      No but it sure as hell makes it more expensive and wastes a lot of effort.

    13. Re: I love it by scafuz · · Score: 1

      we should build an OS above this concept

    14. Re: I love it by Curunir_wolf · · Score: 2, Insightful

      we should build an OS above this concept

      Then we can ruin it with systemd!

      --
      "Somebody has to do something. It's just incredibly pathetic it has to be us."
      --- Jerry Garcia
    15. Re:I love it by Anonymous Coward · · Score: 0

      Although your version has a certain roguish charm, I prefer the elegance of the original: "The bearing of a child takes nine months no matter how many women are assigned."

      "If it takes one man five minutes to dig a one foot by one foot by one foot hole, how long does it take 100 men?"
      Answer: Much longer than five minutes. First they need to organize the men in a hierarchical command structure.
      Then they need to hold lots of meetings about the requirements documents. Then they need to decide who is actually dig the hole.

    16. Re:I love it by Xiaran · · Score: 2

      Exaggerated claims about about a methodology in the software industry? Whatever will happen next.

    17. Re:I love it by Ukab+the+Great · · Score: 1

      Then you should try Kopi Luwak

    18. Re:I love it by __aaclcg7560 · · Score: 1

      A vanilla latte in the morning is a silver bullet.

    19. Re:I love it by __aaclcg7560 · · Score: 1

      "You can't produce a baby in a month by getting 9 women pregnant."

      I had a college roommate who had that dubious reputation. Nine pregnant girlfriends, all got abortions, all wanted his scalp when they discovered what he did as they were all friends. I was appalled. But I wanted his scalp because he got fired from his job, waited 30 days to tell me, and didn't have the rent. One thing to screw over your girlfriends, another thing to screw over your roommate.

    20. Re:I love it by plopez · · Score: 0

      Not to mention he probably hose d up the lives of any man interested in dating those 9 women. C'mon, don't ruin it for the next guy.

      --
      putting the 'B' in LGBTQ+
    21. Re:I love it by themightythor · · Score: 1

      Not to mention he probably hose d up the lives of any man interested in dating those 9 women. C'mon, don't ruin it for the next guy.

      Why? Because a woman who's had an abortion is somehow damaged goods?

    22. Re:I love it by Gr8Apes · · Score: 1

      Ah, but you missed the actual meat of the article (no did not RTFA) in terms directly mapped from TFS: 5 women can produce 25 babies in 45 months where 25 women can produce 25 babies in 9 months. (theoretically only)

      --
      The cesspool just got a check and balance.
    23. Re:I love it by __aaclcg7560 · · Score: 1

      If it was between one man and one woman, it wouldn't matter that much. If it was one man, one woman and eight of her friends, it opens up a huge can of worms. One of the women transferred to a college that was 150 miles away in the middle of the semester because the situation was too much for her. She was thoroughly messed for a long time afterward.

    24. Re: I love it by MenThal · · Score: 1

      ... on the way out, at least.

    25. Re:I love it by Anonymous Coward · · Score: 0

      Nine women can indeed have an average throughput of a baby a month ;) Latency however is a different problem.

    26. Re:I love it by tnk1 · · Score: 1

      That depends on whether the baby is taken in isolation and assumed to always survive gestation in the nine month period required.

      Assigning one woman to baby creation actually is a probability of less than 100% to have that baby created in a nine month period due to complications of pregnancy and the occasional project terminations. Therefore, assigning two or more women is more likely to create one baby, over many attempts in a nine month period, than one woman being assigned to that task.

      Still, it probably does not require nine women. We can definitely get that efficiency down to less than four.

    27. Re:I love it by Maxo-Texas · · Score: 1

      Seriously, while some women can get an abortion without consequences, it's not many. Most have emotional damage around sex, intimacy, and pregnancy for the rest of their reproductive years. Some have problems the rest of their lives.

      That seems to fit the definition of damaged goods. It's no different than any other trauma. They could have been attacked by a dog, or hit by a car, or etc.

      In a rational world, given two females equal in every other way, why choose the one who is going to have land mines to deal with? In the real world, we don't find out that information until after we've already fallen in love so we just have to deal with the consequences.

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    28. Re: I love it by Maxo-Texas · · Score: 2

      You know, we could apply this to older programs. We could take the routines and refactor them into smaller pieces... we could call them "sub" routines. What's cool is that you could iterate it and further refactor those into even lower level subroutines.

      Wow... this could change programming!

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    29. Re: I love it by fractoid · · Score: 1

      It's almost like problems that are trivially decomposable into a bunch of simpler problems are more amenable to parallelization!

      --
      Rampant carbon sequestration destroyed the Dinosaurs' tropical paradise. I'm here to help repair the damage.
    30. Re:I love it by davester666 · · Score: 1

      There are silver bullets. They just don't kill vampires.

      --
      Sleep your way to a whiter smile...date a dentist!
    31. Re:I love it by delt0r · · Score: 1

      The phrasing i was told was "You can't get a baby in one month by getting 9 woman pregnant".

      --
      If information wants to be free, why does my internet connection cost so much?
    32. Re:I love it by cwsumner · · Score: 1

      Silver bullets are actually really bad. 8-)

      The silver is too hard to properly indent to the lands and grooves inside the barrel, and it not only does not spin right but it builds up excessive chamber pressure. i.e., Poor accuracy and dangerous besides.

      So much for popular buzzwords...

    33. Re:I love it by cwsumner · · Score: 1

      I had a college roommate who had that dubious reputation. Nine pregnant girlfriends, ... ..., another thing to screw over your roommate.

      I heard of a guy who did that and one girl -was- his roommate. His name was Bobbet, look it up... 8-}

  2. Not a hard and fast rule... by Anonymous Coward · · Score: 5, Insightful

    ... it was a rule of thumb and a good one, because it was talking about how not all projects are scalable and the observation is bound to the historical time period in which it was coined. If some new unknown advance or theory came along, it doesn't disprove the ideas of the mythical man month. Because that observation is bound to certain contexts and certain projects.

    This is what happens when you take an observation out of its context both historical and otherwise.

    1. Re:Not a hard and fast rule... by fuzzyfuzzyfungus · · Score: 3, Interesting

      I don't know how broadly it can be applied(if it in fact works as well as they claim at all); but it would appear that the whole point of these 'microservices' is to produce smaller 'projects' so that you have more room to scale before complexity eats you alive. It's not so much a disproof of the 'mythical man-month'; but an adaptation to cope with it.

      Getting purely linear scaling without some sort of zero-latency hive mind is unlikely to be possible; but it seems fairly obvious that the amount of overhead you incur by adding 20 extra people to a five man project is going to be rather higher than adding a second person to a one man project(though the jump between 1 person and 2 people might actually be pretty big, if helpful in terms of producing documentation that somebody other than the 1 person understands). If you can break your projects down into smaller pieces, with complexity better contained, and well defined interaction between the pieces, you have teams small enough that you might actually be able to make them faster by making them somewhat larger.

      If your project is already a screaming heap of interlocking complexity, there simply isn't as much work that can be done in parallel. Aside from people stepping on each other's toes, there will just be a lot of "Part X can't be done until the guy doing Part Y finishes".

      Not so terribly different(if likely to be even less predictable because humans are involved) than deciding how a problem will scale if you throw more computers at it. If your problem is actually a large number of mostly unrelated problems, it'll scale nearly perfectly. If your problem consists of lots of somewhat interconnected problems it will scale; but demands on interconnect will become increasingly expensive. If it's a purely serial problem, and each step depends on the prior step, it may not scale at all.

    2. Re:Not a hard and fast rule... by gmack · · Score: 1

      It Is an adaptation to cope with it but you still lose time building APIs and tracking API's of the "micro services" that you are using. The tradeoff is still there.

    3. Re:Not a hard and fast rule... by Anonymous Coward · · Score: 0

      It's like Moore's Law. It was never a law, merely an observation. It held true at the time, and for a surprisingly long time afterwards.

    4. Re:Not a hard and fast rule... by angel'o'sphere · · Score: 4, Informative

      Considering that to start a project a developer needs two or three or more weeks to even really start working, I doubt hat the imagined 25 developers can finish in the remaining one or two weeks anything.

      Combining DevOps, Micro Services and Mythical Man Month into one headline makes no sense anyway.

      Since when does a DevOp develop a micro service?

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    5. Re:Not a hard and fast rule... by bloodhawk · · Score: 1

      I would go a step further and say that any company or research making such an out of context claim should be avoided at all costs. If they can't understand the context of such a basic statement then I seriously don't want to rely on them for anything else.

    6. Re:Not a hard and fast rule... by Zero__Kelvin · · Score: 1

      Great point, were it not for the fact that Agile produces garbage. Always has, and always will.

      --
      Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
    7. Re:Not a hard and fast rule... by dave420 · · Score: 1

      Except where it does not, of course. Or are you saying all the successful projects which used Agile methodologies to be created don't exist?

    8. Re:Not a hard and fast rule... by Bengie · · Score: 1

      Adding one extra person to a one person team could have super linear speed improvements. Many times, very small groups can gain more efficiency than overhead in addition to increased throughput. I've seen similar things with some multi-threaded programs that I've written, where I saw an overall increase of cache hits when running two threads because the datasets were small.

      In my personal case at work, I do a lot of creative work when designing systems, and that requires a decent amount of mental down time. My cube mate has a similar issue. It works out well that when one of us is stumped on something, we ask the other for their opinion which gains us both two things. First is an outside opinion, second is the other person gets some needed downtime to step away from their own problems.

    9. Re:Not a hard and fast rule... by Anonymous Coward · · Score: 0

      Good point, and now with the increased overhead of process and people due to Agile, the problem is even worse. Brooks couldn't have foreseen daily meetings (scrum) and long biweekly meetings (sprint) where every developer, QA, product, project management, and every other stakeholder has to attend and every task (user story) you do is discussed at length enough for the group to score. And, you repeat the scoring enough times so that you can keep everyone busy for the entire two weeks. I work with a very productive team so it takes us about seven hours to score enough user stories to keep us busy. Between the hour long scrums and sprint planning, we're wasting over 20% of our day in Agile meetings.

      The people that have been added to the software development process for Agile do not contribute and waste about 1/5 of the time of the people that actually do the work. That is modern software development.

    10. Re:Not a hard and fast rule... by goose-incarnated · · Score: 1

      Except where it does not, of course. Or are you saying all the successful projects which used Agile methodologies to be created don't exist?

      Not really - even a stopped clock is right twice a day. As far as TFA is concerned, though, I find it absolutely hilarious that the agile fanclub has now gone so far as to "prove" MMM wrong on a very foundational level. Let me be clear: there are a class of problems that cannot be solved just by working more energetically.

      If you think you've solved the halting problem, you're naive.

      If you think you've produced sentient AI, you're naive.

      If you think you've disproved "throwing more programmers at a late project makes it later", you're naive.

      Extraordinary claims requires extraordinary evidence, and the claim made in the summary is in the same class of all other extraordinary claims, hence we require more than a simple "here's why our claim might be true".

      --
      I'm a minority race. Save your vitriol for white people.
    11. Re:Not a hard and fast rule... by Zero__Kelvin · · Score: 1

      No, I'm saying if they were successful it was in spite of Agile, not because of it.

      --
      Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
    12. Re:Not a hard and fast rule... by jellomizer · · Score: 2

      It is much the same concept of parallelizing algorithms. Some algorithms are easily parallelized where each unit isn't dependant on the other. Then you have others which cannot be parallelized, Things need to happen in that order and the start of the next step is dependant of the part of the first. The same with development projects. In order for someone to complete a particular section they need the results from an other. Then you have the difference between academic vision of software engineering, and real life. all the specs cannot be thought out.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    13. Re:Not a hard and fast rule... by whimdot · · Score: 1

      If you think you've solved the halting problem, you're premature.

    14. Re:Not a hard and fast rule... by under_score · · Score: 2

      Not really - even a stopped clock is right twice a day. As far as TFA is concerned, though, I find it absolutely hilarious that the agile fanclub has now gone so far as to "prove" MMM wrong on a very foundational level. Let me be clear: there are a class of problems that cannot be solved just by working more energetically.

      I'm part of the "agile fanclub" and I actually am constantly telling people that the whole reason for Agile is because of the truth of the Mythical Man-Month. Agile is not a silver bullet and if someone told you it is, then they didn't understand Agile. Agile values, principles and tools (such as Scrum or XP), give us an environment where we recognize the limits of complexity and communication and help us maximize goodness (productivity and happiness) given those complexity and communication limits.

      Extraordinary claims requires extraordinary evidence, and the claim made in the summary is in the same class of all other extraordinary claims, hence we require more than a simple "here's why our claim might be true".

      Strongly agree! This dev-ops thing is good, but it's at the height of its hype cycle right now. It's not a silver bullet and any claims to be one need rigorous evidence.

    15. Re:Not a hard and fast rule... by codeButcher · · Score: 2

      And one needs to read the essay, to realize WHY Brooks said what he said.

      His problem was not with technology or architecture, but with project management. The bigger the team, the more potential paths of communication between individual members, the better the project management needs to be to minimize communication down to the necessary minimum.

      If there is one BS that needs to be called, it is the one on the "collaborative open plan office". Which would be slightly off-topic, and all but beaten to death.

      --
      Free, as in your money being freed from the confines of your account.
    16. Re:Not a hard and fast rule... by Anonymous Coward · · Score: 0

      Since when is devops a position and not a methodology? Seriously this devops position lie is toxic and a waste of money.

    17. Re:Not a hard and fast rule... by Anonymous Coward · · Score: 0

      One might also notice that these services are basically pandering to the lowest common denominator... most software engineering that is so easily defined could be done by a computer program in the first place, if we had access to the software that can do it.

      It's a bunch of nonsense and it makes me sad every day that Slashdot picks up opinions like this... although it sure beats the alternatives.

    18. Re:Not a hard and fast rule... by Capt.Albatross · · Score: 1

      It's like Moore's Law. It was never a law, merely an observation. It held true at the time, and for a surprisingly long time afterwards.

      It still holds, generally speaking. The author of this article is mistaking his simplistic wishful thinking for insight.

      As others have pointed out, it is not as if no-one thought of divide-and-conquer before, and there's nothing new in devops that would justify an expectation of different results.

      Sooner or later, the author is going to rediscover the law of diminishing returns, and be saying "of course, you must have exceptionally competent people to make it work", as have all prior silver-bullet finders.

    19. Re:Not a hard and fast rule... by Anonymous Coward · · Score: 0

      Since when is devops a position and not a methodology? Seriously this devops position lie is toxic and a waste of money.

      Management likes the "devop" position title because it allows them to rule over the workers like a tyrant with the constant threat of Damocles sword hanging over their head along with immediate termination. I worked for such an organisation; it was pure hell.

    20. Re:Not a hard and fast rule... by Penguinisto · · Score: 2

      Let me be clear: there are a class of problems that cannot be solved just by working more energetically.

      Actually, TFA specifically says you'll most likely have to re-architect the product/application/problem *first*, before you just throw energy at it. TFA also goes on to say that you have to fundamentally change the structure of your organization if it isn't suited to the task (e.g. siloed orgs, etc).

      No where in TFA does it say you have to simply throw more resources at the problem.

      In fact, it even goes so far as to say that not all problems/projects are adaptable to this:

      One thing CIOs need to understand is that you don’t just buy a can of “Microservices” and paint all your code with it and be done. How you get there depends on whether you are trying to alter an existing monolithic application or are designing from scratch. Author Martin Fowler says most successful microservices start with an existing app and re-architect it and that it’s much harder to design for microservices from scratch.

      Lastly, microservices are not a boon to everyone. On-premise software, for example, might not be right for microservices, given the amount of coordination and infrastructure that is needed to deploy microservices applications. That doesn’t mean on-premise software couldn’t be architected around a set of services, but the deployment scenario (e.g. ship as a single-war or as an installer) precludes deploying as such.

      --
      Quo usque tandem abutere, Nimbus, patientia nostra?
    21. Re:Not a hard and fast rule... by Penguinisto · · Score: 1

      Since when does a DevOp develop a micro service?

      I was thinking about that... you can, to an extent, guide a team (a decent company will give you that ability and authority). OTOH, you'd have to get into the whole politics thing with the architects, team leads, and product owners before you could push anything like this.

      That said (and as TFA says), not all projects in a company are suited for it.

      Something else comes to mind... sometimes it does more harm than good to bust up a monolith. I know of a project that was broken down this way, and it wound up doing astoundingly stupid things (e.g. spewing 4,500 IPC calls betwixt 5 different servers just to establish one user session). While they really should have refactored the whole thing first (trust me, it's an ancient legacy stack that deserves to be re-written), they instead shot for breaking the thing down into bite-sized chunks, with little thought towards architecture or even communication between groups.

      --
      Quo usque tandem abutere, Nimbus, patientia nostra?
    22. Re:Not a hard and fast rule... by Penguinisto · · Score: 2

      If there is one BS that needs to be called, it is the one on the "collaborative open plan office". Which would be slightly off-topic, and all but beaten to death.

      You can never beat that ill-begotten bullshit idea to death. In fact, it needs to not only die, but have its corpse beaten until each subatomic particle is separated from the other, then have the whole mess carefully scattered to the four winds.

      --
      Quo usque tandem abutere, Nimbus, patientia nostra?
    23. Re:Not a hard and fast rule... by myowntrueself · · Score: 1

      Considering that to start a project a developer needs two or three or more weeks to even really start working, I doubt hat the imagined 25 developers can finish in the remaining one or two weeks anything.

      Combining DevOps, Micro Services and Mythical Man Month into one headline makes no sense anyway.

      Since when does a DevOp develop a micro service?

      What would actually happen in practice is that, under a DevOp model that 5 month project would never actually be finished no matter how many people you threw at it, even if you just set the 5 developers at it.

      Adding more devops guys doesn't make it take more or less time; devops projects are NEVER completed, its just ongoing development forever and ever.

      --
      In the free world the media isn't government run; the government is media run.
    24. Re:Not a hard and fast rule... by vtcodger · · Score: 1

      fuzzyfuzzyfungus' argument sounds plausible and I mostly agree with it. But I'd point out that even if the project is a large number of mostly unrelated problems, throwing a bunch of resources at it will probably introduce more than a few dependencies between "solutions" that would not have existed with fewer folks and more time.

      Those will have to be sorted out.

      Also, no matter how much parallelism, one manages to find, the eventual completion date will be the sum of the times required to complete the longest chain of dependent activities. It's unlikely that it will be obvious which those are ... except maybe in retrospect. Most problems tend to look vastly simpler ... in retrospect.

      --
      You can't see ANYTHING from a car, You've got to get out of the goddamned contraption and walk...Edward Abbey
    25. Re:Not a hard and fast rule... by bluefoxlucid · · Score: 1

      Nobody understands the context of this shit unless they firmly understand what a critical path is and how a scheduling network works.

    26. Re:Not a hard and fast rule... by Archangel+Michael · · Score: 1

      I would suggest a typical bell type curve to explain productivity of teams. One has productivity of one. Two people working on the same problem may have a result equal to, greater than, or less than two. And so on and so forth. The issue is that at some point, adding one more person starts removing existing productivity. Once you get to this point, it takes a good team leader to recognize the problem isn't manpower issue, but rather a structural issue.

      The problem is, very few project managers understand the diminishing returns of adding additional bodies, let alone the point where adding people actually hurts productivity.

      --
      Agent K: A *person* is smart. People are dumb, stupid, panicky animals, and you know it.
    27. Re:Not a hard and fast rule... by Gr8Apes · · Score: 1

      This, 100 times over. I have never seen a bigger productivity drop than when an organization adopts agile. The only place I can see it work at all is with pure GUI work which, not surprisingly, is where the greatest adherents are. It is also the most fickle of the design areas as it is customer facing and generally the customers themselves are the biggest obstacle in giving crap requirements in this area in the first place.

      Customer feedback just isn't very important when you're writing a set of transactional services with auditing and correctness requirements.

      --
      The cesspool just got a check and balance.
    28. Re:Not a hard and fast rule... by myowntrueself · · Score: 1

      Considering that to start a project a developer needs two or three or more weeks to even really start working, I doubt hat the imagined 25 developers can finish in the remaining one or two weeks anything.

      Combining DevOps, Micro Services and Mythical Man Month into one headline makes no sense anyway.

      Since when does a DevOp develop a micro service?

      Arguably the devops crew will never actually finish a project ever; it'll always need a bit more tweaking and tuning!

      --
      In the free world the media isn't government run; the government is media run.
    29. Re:Not a hard and fast rule... by shadowrat · · Score: 1

      shhh. don't post stuff implying it's beneficial to have a 'cubemate'. how many people do you want packed into a cube? If word gets out that two are good, it's just going to go up from there.

    30. Re:Not a hard and fast rule... by Anonymous Coward · · Score: 0

      No, I'm saying if they were successful it was in spite of Agile, not because of it.

      I think it depends on how success is define.
      If the definition of success is that the business owner has accepted it then agile gets success.
      As it's probably in the business owners KPI to have it work.

      If the projects produces garbage someone will say you are not doing agile right.

      How many micro-services can an organization cope with?
      I think it might reduce back to a reuse issue, how do you find the existing micro-service that meets your current needs?.

    31. Re:Not a hard and fast rule... by r-diddly · · Score: 1

      Also see: the entire Bible

    32. Re:Not a hard and fast rule... by Anonymous Coward · · Score: 0

      Mythical man month applies to software without a framework/platform.

      Nowadays, with SAAS, platforms and frameworks, agile does have a place and the myth doesn't apply.

    33. Re:Not a hard and fast rule... by david_thornley · · Score: 1

      When I worked on a Scrum project, it worked well, delivered an excellent product, and I was productive and happy. It wasn't customer-facing, and involved relatively little GUI work. The closest thing we had to a user was the engineer who showed up at all the standups. It did help that all of us were thoroughly familiar with the code base going into the project, and had a clear idea of what we needed to produce.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    34. Re:Not a hard and fast rule... by Anonymous Coward · · Score: 0

      But you need a second clock that's working to know when the broken one is right.

    35. Re:Not a hard and fast rule... by Anonymous Coward · · Score: 0

      You also add overhead on execution, so if 10,000 people use the software for a few years, you've gained some efficiency to produce it in slightly less time by sacrificing massive amounts of electricity and human time over the lifetime of the software.

      Great.

    36. Re:Not a hard and fast rule... by Zero__Kelvin · · Score: 1

      "It did help that all of us were thoroughly familiar with the code base going into the project, and had a clear idea of what we needed to produce."

      SO you are saying it wasn't actually Agile (i.e. SCRUM) then?

      --
      Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
    37. Re:Not a hard and fast rule... by Dastardly · · Score: 1

      I think that DevOps or more accurately deployment automation and Continuous Delivery make microservices possible. Without the end to end automated tests and the deployment automation to deploy the microservices, plus Electric Cloud's software or its equivalent to track what configuration of microservices is actually being tested and track that into production. Trying to manually attempt a microservices integration test across a dozen teams working on tens of microservices would likely result in a halting of development for a significant amount of time while all the integration issues are worked out, and then making sure that makes it to production is another manual headache. Automation to run that multiple microservice integration multiple time a day means less change to blame for problems which should make it easier to track the problem to a culprit and fix quickly.

      Once you are doing continuous delivery into test, it should stretch to production, so you are not only testing the application but the production deployment process as well. If you want that to happen the silos between operations and development need to be broken down because it is a little silly for development to work on all that reliable automation and have operations say "Nope, we have our own automation tools.", or to wait until the very end to hand off the tools to operations instead of having them involved from the beginning.

      I will say I am not attempting fine grained microservices. I like to say microservices with "micro" very loosely defined.

    38. Re: Not a hard and fast rule... by Anonymous Coward · · Score: 0

      Time spent organizing shit is exactly why the project slows down when adding people.

      Yeah of course if you don't factor that oin coding can be parallelized excet TMMM is about the project duration, not the coding phase duration, and missing that is kind of big.

    39. Re:Not a hard and fast rule... by rioki · · Score: 1

      The irony if it all is that Brooks himself proposed solutions how to cope with the Mythical Man Month. One of them was the "surgical team". In that developers are supported by additional staff. That is you don't add programmers to the team, you add specialists that take tasks of the hands of the programmers so that the programmers can work more efficient. If I see this correct, TFA is suggesting just that; split the problem into smaller problems (divide and conquer) and then put additional staff on hand to manage the Ops part and closely mesh them with the Dev part, thus DevOps. If people would actually read the damned book they would not spout nonsense the they are "proving this decades-old theory wrong", when actually implementing variations on solutions proposed in 1975!

    40. Re:Not a hard and fast rule... by angel'o'sphere · · Score: 1

      DevOps don't work on projects.

      They support project teams and their tool requirements ... e.g. test Automation, deployment and unix administration / scripting.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    41. Re:Not a hard and fast rule... by david_thornley · · Score: 1

      It sure seemed like Agile. We had no problem adapting to different things as our mechanical engineer made them up, and at the end of each iteration we had something that could be used (although at first it was pretty useless).

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    42. Re:Not a hard and fast rule... by Gr8Apes · · Score: 1

      "It did help that all of us were thoroughly familiar with the code base going into the project, and had a clear idea of what we needed to produce."

      If your final product matched your initial vision, then you weren't involved with an Agile project like most I've been involved in.

      --
      The cesspool just got a check and balance.
    43. Re:Not a hard and fast rule... by Zero__Kelvin · · Score: 1

      I was actually going for "Funny" on that one, and clearly failed miserably :-) Perhaps it is possible to do Agile and produce a good product with the right people, but I would counter that those same right people would have been successful with a decent development model too. Agile, in my experience, produces lousy software by default, because it allows it and IMNSHO encourages it. There is no substitute for what you already identified your team as having out of the gate, to wit a clear understanding of the software architecture (what you called a code base) and a clear idea of what you needed to produce. In other words, there is no way to take a group of programmers and crowd source an engineering effort, which is essentially what Agile claims to enable / accomplish.

      --
      Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
    44. Re:Not a hard and fast rule... by cwsumner · · Score: 1

      The Halting Problem just says that you can't prove that a program is perfect, because you can't prove that the tests are perfect. That's a Mathematicians game. Nothing in the real world is perfect, possibly short of "God", so the question is useless.

      The real question is "Can you make a program that works for normal work?". And the answer is obviously "yes". But just because it can't be perfect does not mean you can get away with not debugging it!

      "If Engineers built buildings the way Programmers write programs, the first woodpecker that came along would destroy civilization!"

    45. Re:Not a hard and fast rule... by cwsumner · · Score: 1

      I think that DevOps or more accurately deployment automation and Continuous Delivery make microservices possible. ...

      Mod this one up! ^
      The quick cycle of testing is key. And the major stumbling block is suprising people at a late date.

  3. Rule #1 by Anonymous Coward · · Score: 5, Insightful

    Don't spend all of your on Atlassian products. The last three startups I worked for bankrupted themselves with products and process and project managers and certified scrum managers. I spent more time moving little fake post-it notes around or searching for "issues" on JIRA than I did actual programming.

    1. Re:Rule #1 by Anonymous Coward · · Score: 0

      Quite interesting. Why do you still insist in working for startups? I equal that to working my ass off for others benefit.

    2. Re: Rule #1 by Anonymous Coward · · Score: 3, Insightful

      Our certified scrotum master made more than any of our developers and added no value. He actually cost us since he wasted about an hour a day of every developer's time.

    3. Re: Rule #1 by Anonymous Coward · · Score: 3, Interesting

      After finishing our six hour sprint planning meeting today, we waste more than an hour a day because of Agile. We do sprint planning every seven business days. About two hours of the meetings are wasted fighting JIRA bugs.

    4. Re: Rule #1 by Anonymous Coward · · Score: 1

      I knew my last company was in trouble when we canceled all developer hardware upgrades for the year to pay for Atlassiam crap like JIRA and Confluence. We are still bleeding money with $350 per hour consultants to try to get a reasonable work flow with JIRA. Confluence isn't too bad, but it crashes Chrome so they require you to use MSIE.

    5. Re: Rule #1 by Anonymous Coward · · Score: 1

      We lost our two best devs after forcing Stash(Atlassian's attempt at a Git) server. It was terribly slow, and Crucible(their attempt at a start of a code review system) were terrible barriers to getting work done.

    6. Re: Rule #1 by Anonymous Coward · · Score: 0

      > Crucible

      Be glad you have that rather than trying to use the code review tools in Stash! Stash only allows you to review all of the commits in a branch. It will not let you review anything else. Also, it doesn't show comments that others have posted, like Crucible does, so you end-up with a lot of people posting the same comments because they can't see other's comments until you do a full page reload. That has really hurt morale, because when you make a simple mistake, you immediately get three or more people that jump on you for it. You feel like Peter Gibbons in Office Space when reminded about the new coversheets.

    7. Re: Rule #1 by Anonymous Coward · · Score: 1

      We froze raises and upgrades for three years because of the high price of Atlassian's software. I guess we got lucky since we still got raises after several people quit in disgust. After two years, I'm still working on our migration from Mediawiki to Confluence. I'm never going to finish since most people refuse to use Confluence so We keep adding even more crap to convert.

    8. Re: Rule #1 by Anonymous Coward · · Score: 1

      Stash is dead which I'm sure will make many of us happy. Atlassian has kept that pretty quiet, but their support confirmed that they're no longer training new support employees on Stash.

    9. Re: Rule #1 by Anonymous Coward · · Score: 2, Informative

      after forcing Stash(Atlassian's attempt at a Git) server.

      I guess you'll be glad to hear that Atlassian gave-up on Stash. I called the end of last week to upgrade our license, and our new salesdrone confirmed that it was being killed. He said he could no longer sell licenses to Stash. We're in a bit of a hard place right not, but this is great long term for us.

    10. Re: Rule #1 by Anonymous Coward · · Score: 0

      I heard they're replacing it with something more confusing and expensive.

    11. Re: Rule #1 by Anonymous Coward · · Score: 0

      Why would you leave something open and scales well to go to Confluence? We used Confluence for about eight months, but it was just too slow to use. Also, unlike Mediawiki it doesn't allow you to edit part of a page. That makes it only appropriate for use with trivial documents.

    12. Re: Rule #1 by Anonymous Coward · · Score: 0

      For something that costs more than a developer, their products certainly don't add enough productivity to justify even a fraction of the cost.

    13. Re: Rule #1 by Anonymous Coward · · Score: 0

      Agile is about process and tools. The process is expensive time wise, and the tools are expensive dollar wise. You gotta pay to play.

    14. Re: Rule #1 by Anonymous Coward · · Score: 0

      Another three victims buried under the weight of the massive amount of processes and tools required by Agile.

    15. Re: Rule #1 by Anonymous Coward · · Score: 0

      Tables in Mediawiki were why we switched to Confluence. Performance was why we switched back. Of course, crashing Chrome didn't help win any support from our management that got tired of losing work.

    16. Re: Rule #1 by Anonymous Coward · · Score: 2, Informative

      $350 per hour consultants to try to get a reasonable work flow

      That is not uncommon. It took us over three years of work to get our workflow reasonable. In JIRA, we have issue types of bug, epic, user story, task, improvement, and new feature. Each issue type has its own workflow with between seven to twelve steps. The flowchart of how all of the types and steps work has over eighty boxes on it with over 200 lines(decisions). Needless to say many of our devs often spend more time mucking with JIRA than they do coding. The sad thing is that things are much better now than they were when we first bought JIRA.

    17. Re: Rule #1 by Anonymous Coward · · Score: 1

      The can't close Sprint thing? It sucks wasting everyone's time to go through a few hundred bugs one at a time to try to find what is clocking the close.

      The other annoyance is their burn down chart that doesn't adjust the estimate line if you have to add to the Sprint. I know Agile requires you to be inflexible, but it would be nice.

    18. Re:Rule #1 by JaredOfEuropa · · Score: 2

      Rule #2: Don't work for a startup unless there's some equity in the offing. Preferably not in the form of stock options that give the owners the option of simply firing you before they vest. If a company demands a lot from you (startups usually do) and your contribution makes a sizable difference in the success of the company, you should ask for a slice of the pie.

      --
      If construction was anything like programming, an incorrectly fitted lock would bring down the entire building...
    19. Re: Rule #1 by Anonymous Coward · · Score: 2, Insightful

      Those long meetings are brutal. According to Agile, you must score enough stories to keep everyone busy the entire sprint. If you want to beat the mythical man month, getting rid of Sprint planning would go a long way towards that.

    20. Re: Rule #1 by Anonymous Coward · · Score: 0

      There's no force close! The Atlassian guys are obviously not UNIX people.

    21. Re: Rule #1 by JaredOfEuropa · · Score: 2

      I'll do you one better: my last client migrated from Mediawiki (encyclopedia) and Confluence (team sites) to Sharepoint. What a disaster. Sharepoint looks nice in demos, but there are some serious issues with the architecture, it does not scale up well and TCO for large deployments is enormous, and it tries to be everything at once (documents management, team sites, content management, wikis, and it sucks at most of them). And we had the expensive contractors to roll it out and try to sort of make it work as well. I'll take Confluence over Sharepoint.

      --
      If construction was anything like programming, an incorrectly fitted lock would bring down the entire building...
    22. Re: Rule #1 by Anonymous Coward · · Score: 0

      At least they made the right decision in killing it unlike with their IDE connectors. We spent months setting up out process and training everyone including paying for IntelliJ. Now Atlassian has trashed all of our hard work and six figures of software licensing fees. Atlassian constantly drops products.

    23. Re:Rule #1 by under_score · · Score: 1

      AAAARG!!! I can't believe that Atlassian is making so much on this crap. JIRA is the WORST POSSIBLE CHOICE for an Agile environment. The very first value of the Agile Manifesto is "Individuals and interactions over processes and tools". (Agile Manifesto)

    24. Re: Rule #1 by Anonymous Coward · · Score: 0
      1. Why are you still using a broken tool?
      2. Why are your sprint planning meetings so long?
      3. Why are your sprint planning meeting so frequent?

      You aren't wasting an hour a day because you're using agile - you're wasting an hour a day because you're apparently unwilling to address problems in your process. Given that, you would be wasting a large amount of time, no matter what development processes you followed.

    25. Re:Rule #1 by nine-times · · Score: 2

      Getting equity in a project that doesn't get off the ground will sill end up with you working for nothing. It's not really "working my ass off for others' benefit", but "working my ass off for no one's benefit". I'm not sure that's much better.

      It's a gamble either way, but sometimes I'd rather get a salary than equity.

    26. Re: Rule #1 by nine-times · · Score: 1

      I've never actually seen a Sharepoint implementation that worked out. Either nobody uses it, or management forces everyone to use it, and it turns into a big mess, and everyone hates it. I genuinely don't know of an appropriate use case for Sharepoint.

    27. Re:Rule #1 by Anonymous Coward · · Score: 0

      (Not OAC) Versus large corporations that typically have layoffs every quarter, pay less, have less benefits and demand just as much time and dedication? Seriously where have you been that hasn't demanded you give them everything for nothing all the time, the only place I've been that's actually treated me decently is my current startup.

    28. Re: Rule #1 by Anonymous Coward · · Score: 0

      I actually had a scrum master once where she actually did intervene in senseless BSing session and forced the group to actually make a decision instead. This happened once in 5 years which is a pity. Group decision process is nothing most of engineers can do themselves and a bunch of aspies is etremely bad at it.

    29. Re:Rule #1 by MobyDisk · · Score: 1

      Experience shows me that this problem is not limited to companies using JIRA. And some of the competing products aren't that great either. In my personal survey of local developers, the companies that love Agile the most aren't actually following the process: but they don't know or care. The ones that drank the kool-aid and try to stick to it function they way you described. The first group says things like "We do resources planning in Microsoft Project or on a big sheet of paper" and "We don't bother with points." A local "SCRUM" company told me that they don't hold proper backlog grooming/refinement sessions: instead the team lead and the product owner discuss what to do next sprint, assign the tasks, then ask the developers to give estimates in hours.

    30. Re: Rule #1 by Anonymous Coward · · Score: 0

      There is one. A small team, geographically dispersed around the world, organizing travel, information gathered from travel, and admin approvals. We're talking about 50 people distributed between about 8 offices, with between 3 and 20 people in any given office, at least half of whom are traveling at least half the time, with two authorizers on opposite sides of the globe for any one thing. Sharepoint (combined with monthly videoconferences) worked well to keep the administration synched and the data in the travel reports accessible. I have no idea why anyone would use it to organize a co-located team or a large project.

    31. Re: Rule #1 by Zalbik · · Score: 2

      Then you aren't using agile. Or not correctly at least.

      One of the most important concepts of agile is to identify problems in the process and eliminate them.

      If JIRA is slowing the dev team down, that should be identified in a retrospective & addressed.

      Also, a 6 hour sprint planning for 1 week sprints is excessive. The "out of the box" number is 2 hours/week.

      Finally, 1 week sprints are quite fast. Typically they should be used for prototyping or by a startup. In either of these cases, the planning "overhead' is usually minimized as everyone should already have a pretty clear idea what is being built.

      These are all items that the dev lead should be dealing with.

    32. Re: Rule #1 by phantomfive · · Score: 1
      It might make you feel better that the purpose of those planning meetings, and sprints, etc, is to give developers a sense of urgency, so they work harder. No joke, check out this article, from a project manager's perspective. Quote:

      most of the Scrum terms work in the same way, used to describe different pieces of work, seperating them into smaller manageable pieces based on the time frame it takes to complete each piece. Why? Its all about motivation theory and the relationship between motivation and time, essentially its all about how to make the team more productive by creating a sense of urgency. This is also the main purpose of Stand-ups and Time boxing.

      Believe it or not, these motivational strategies make me want to work less hard, not harder. They reduce my respect for the manager, and make me not want to follow them.

      --
      "First they came for the slanderers and i said nothing."
    33. Re: Rule #1 by Anonymous Coward · · Score: 0

      My team's productivity jumped quite a bit when we moved all our docs from Sharepoint to Mediawiki. There are still a couple of things that MW doesn't handle well (eg shared spreadsheets); we solved that with a simple LAMP stack and some custom wiki tweaks to pull info from the database. (That might not work for all use cases, though.)

      Fast forward a year or so and the whole department is moving from Sharepoint to Mediawiki.

    34. Re:Rule #1 by rockmuelle · · Score: 1

      Huh? We're a small shop and use Jira just fine. But, we also don't blindly apply Agile(tm) either. We use agile (as in the manifesto version, not the Certified versions).

      Jira is a productivity tool for managing tasks and workloads. If it's not effective for you, find another way to manage things. But, do find a way to manage your tasks and issues in a traceable manner. If you don't see the value in that, your process is likely the problem and no tool will fix it.

      -Chris

    35. Re: Rule #1 by Anonymous Coward · · Score: 0

      It might make you feel better that the purpose of those planning meetings, and sprints, etc, is to give developers a sense of urgency, so they work harder. No joke, check out this article [intland.com], from a project manager's perspective. Quote: "..., essentially its all about how to make the team more productive by creating a sense of urgency. This is also the main purpose of Stand-ups and Time boxing."

      This.

      Back in the waterfall days, you know what we used to call a project with an absolute deadline of making a deliverable once every two weeks, every two weeks, for the forseeable length of your career? We called it a Death March.

    36. Re:Rule #1 by Anonymous Coward · · Score: 0

      I spent more time moving little fake post-it notes around

      GreenHopper! We had two full time employees that all they did was move the virtual post-it notes around the screen on the JIRA add-on named GreenHopper. I've heard since then that Atlassian renamed it to JIRA Agile and made it even more complicated. We had consultants that spent well into six figures configuring that mess.

    37. Re:Rule #1 by Anonymous Coward · · Score: 0

      Scrum/Agile are the software equivalent of Common Core. It sounds good in theory, but in reality it is a disaster.

    38. Re: Rule #1 by Anonymous Coward · · Score: 0

      > Also, a 6 hour sprint planning for 1 week sprints is excessive.

      Why lie about that? I know you Agile guys can't defend the crap you spew so you constantly lie, but that is ridiculous. He wrote that they spend 1.4 weeks per sprint.

      Also, six hours is not excessive. You have to explain every JIRA issue well enough so that every developer can score it. If you have a fast moving and productive team, it can take quite a while to score enough points to make-up a sprint. For most of my tasks, I spend more than ten times as much time creating the task, grooming the task, explaining the task in sprint planning, talking about it in scrum, working with code reviews, working with QA for testing, verifying the work with product, reviewing it with stakeholders, etc. than I do coding. I'm lucky with Agile if I get to code for thirty minutes a day.

      Here's how we beat the mythical man month. Take away Agile, and I will have about 90% of my time free to code. I can spent about ten times as longer working. Yes, they'll be more problems because of less communication, but even if I spend half my time on that overhead, I'm still five times as productive. Nah, management will never buy that. It doesn't have enough meaningless jargon and expensive tools.

      > everyone should already have a pretty clear idea what is being built.

      Now I think you're just trolling. I've worked four more than a dozen startups in the Seattle area over the past twenty-two years, and more and more employees are Indian. They have no idea what we're building since they don't know the culture, business, or law here in the US. The last company I worked for made education software. Since 3/4 of the team had never even been in a US school, our Sprint planning meetings sometimes took days. Currently I work for a company that does payroll. Our Indian developers don't understand how payroll works in the US so Sprint planning meetings are very tedious and full of explaining the same things over and over again. Agile fails when you intentionally hire developers that know nothing about what they're building, and that is the norm now in the industry.

    39. Re: Rule #1 by Cederic · · Score: 1

      They just renamed it to BitBucket, so what's the deal there? Rename and kill feels like a losing strategy.

    40. Re: Rule #1 by Anonymous Coward · · Score: 0

      Also, a 6 hour sprint planning for 1 week sprints is excessive.

      He said the sprints were four hours short of a week and a half long. Why exaggerate? Because you're having trouble defending Agile.

    41. Re: Rule #1 by Anonymous Coward · · Score: 0

      the planning "overhead' is usually minimized as everyone should already have a pretty clear idea what is being built.

      Uhh, that’s why spring planning takes so long. I haven’t worked for a company in over a decade that had a majority of developers that knew something about the industry.

      Currently, I work for a company that makes software for orthodontist offices. Most of my coworkers have never been to a dentist and, other than myself, not a one has been to an orthodontist. None have ever dealt with the messed-up insurance system we have here in the US. This means scoring every user story can take hours of questions from developers. If you don’t understand the problem, then Agile demands that you not score it and demands that you not do it. We’ve spent several weeks with people that had nothing they could do between sprint planning meetings because we timebox the sprint planning meeting to fourteen hours every two weeks. That might sound like a lot, but when dealing with a complicated problems, it still isn’t enough.

    42. Re: Rule #1 by MenThal · · Score: 1

      JIRA is the worst? You young inexperienced naive whippersnapper. Never thought I'd miss JIRA, but after 9 months of LeanKit, the chilled ashes is preferable to the heat of the frying pan.

      And for anyone ever having been stuck with TechExcel; there really should be a support group of the survivors...

    43. Re: Rule #1 by Dastardly · · Score: 1

      Some other suggestions...

      Another place to look is whether the Spring Planning meeting is really just Sprint Planning.
            Has backlog prioritization been rolled into Sprint planning? Could the product owner do that during the Sprint?
            Is defect triage being done during "Sprint Planning"? Then you are doing two meetings. Which might be just fine, but maybe not everyone has to be present.
          Are you doing design and coordination during the meeting? Then, you are combining sprint planning with design and coordination efforts. This may be a good thing. It can be better to just block off the time each Sprint to get everyone together, rather than doing it adhoc and having to deal with a key person having a conflict. Plus design can often elicit questions about requirements, so it can be good to have the product owner available.

    44. Re: Rule #1 by goose-incarnated · · Score: 1

      Then you aren't using agile. Or not correctly at least.

      We hear this all the time when agile projects fail. What makes you think that the success of other agile projects is due to agile?

      One of the most important concepts of agile is to identify problems in the process and eliminate them.

      If JIRA is slowing the dev team down, that should be identified in a retrospective & addressed.

      Also, a 6 hour sprint planning for 1 week sprints is excessive. The "out of the box" number is 2 hours/week.

      Finally, 1 week sprints are quite fast. Typically they should be used for prototyping or by a startup. In either of these cases, the planning "overhead' is usually minimized as everyone should already have a pretty clear idea what is being built.

      If everyone has a pretty clear idea of what is getting built, why would you need an agile process?

      --
      I'm a minority race. Save your vitriol for white people.
    45. Re: Rule #1 by Anonymous Coward · · Score: 0

      > everyone should already have a pretty clear idea what is being built.

      Maybe if you're making something well defined like a word processor, but most enterprise software these days is much bigger and more complicated than that. Also, with hiring a lot of developers from outside of the US and with outsourcing, you now typically have a majority of programmers that have no experience with business, ethics, US tax code, insurance, customer relationships, etc.. They just didn't grow-up in that environment. That makes scoring tasks for Agile very time consuming. Even something as simple as the W-2 forms our software generates get screwed-up constantly.

      With the ACA-related changes required to fill-out the new box 12 code DD, we've added about 15 man-years of development just to generate a single number. We have four hundred pages of specs and about three hundred user stories. That gives us an average of twelve days per user story with about nine of those days in development. If I had developers working for me that understood benefits/health insurance and US payroll, I could have finished that project in about a tenth of the time. Rework is so costly that we have to further break-up user stories and thus score more user stories so that takes even longer.

    46. Re: Rule #1 by Maxo-Texas · · Score: 1

      Well.. to be fair, I've seen people try Agile ... and call it Agile... but I recognized they were really doing Waterfall.

      Oh! oh! got another one.

      Customizing SAP is known to produce failure.

      So the bright executives forbade any customization! All they allowed were "Gap fills".

      Some of the gap fills were 30,000 line programs.

      There were over 1100 gap fills.

      The project delivery date slipped from 2012 to (last I hear) 2030.

      But they are not "customizing it"!

      To be Agile, it really needs to follow the entire methodology. Now if it is really impossible to follow agile in a real world environment- then that's still Agile's problem even if they were not technically following Agile.

      --
      She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
    47. Re:Rule #1 by Anonymous Coward · · Score: 0

      You can, you know, get both.

    48. Re:Rule #1 by Anonymous Coward · · Score: 0

      We've been using JIRA and Confluence for the past 5+ years and absolutely love it. I've not seen better tools for developer productivity. If you can't use the tools properly - get yourself educated.

    49. Re: Rule #1 by Anonymous Coward · · Score: 0

      First off, Stash is not dead. They just changed the name to BitBucket Server. Which was a good move to avoid confusion with "git stash".

      What is your beef with it? I find it to be an excellent product that helps our development team immensely. I also found Atlassian support superb, we've encountered a couple of issues and they fixed them within a little over a week. There was a performance issue we had as well, but it was fixed by tweaking the memory settings.

    50. Re: Rule #1 by Anonymous Coward · · Score: 0

      Exactly.

    51. Re: Rule #1 by Anonymous Coward · · Score: 0

      Let me see if I got this right - you cancelled hardware upgrades for the year to pay a couple of grand for Atlassian software, yet you can afford paying $350 per hour for consultants? Allrighty then. Solid logic there.

  4. Snake oil is good for you! by Anonymous Coward · · Score: 1

    says the snake oil salesman. Big surprise :-)

  5. Hubris and Self-Interest by calexontheroad66 · · Score: 1

    Someone selling consultancy and services in DevOps saying you can have your cake and eat it too.
    From reading the article, microservices solve the team size coordination problem. Good luck with that on the real world.

    1. Re:Hubris and Self-Interest by fuzzyfuzzyfungus · · Score: 1

      If you actually have a problem that decomposes nicely into lots of little, neatly contained, problems it might work really well. It's just that if you have that, you are among the blessed and probably don't need any fancy consultants in order to do just fine. You'd need somebody who is actively capable of pulling defeat from the jaws of victory to screw it up.

      The sticking point is whether or not snake oil can dissolve seemingly insoluble problems into lots of little, neatly contained, problems.

    2. Re:Hubris and Self-Interest by gtall · · Score: 1

      Problems, I think, in general come about because some issue to be solved is complex with interlocking parts. It all the parts were more or less disassociated from each other, they'd already have small solutions, and gluing them together might give a sort of federated solution to something that probably isn't such a big issue to begin with, mainly because the pieces are already doing the job and the interactions are minimal.

      The problem with adding people is lines of communication forced by interacting problem parts. One has to forge agreements, discover a global architecture (not some silly whack job such as agile produces), decide on layers of authority, etc.

    3. Re:Hubris and Self-Interest by JaredOfEuropa · · Score: 1

      The "neatly contained" part is key to SOA and microservices: it's not just a matter of having a problem that lends itself well to decomposition, but also about having the right people to do the architecture. It's not a trivial job, and if you get it wrong you'll have to refactor and redefine a whole mess of services, and your project can escalate out of control quite quickly that way. Refactoring a monolythic project is easier.

      --
      If construction was anything like programming, an incorrectly fitted lock would bring down the entire building...
  6. Rookie mistake number one by Rumagent · · Score: 1

    Thinking that microservices is a silver bullet.

    This idea surfaces every now and then. It certainly has its uses and no doubt there are scenarios where you can beat the mythical man month.

    1. Re:Rookie mistake number one by Brulath · · Score: 1

      Microservices have some legitimate criticisms; it seems like you should only embark on that quest if you really know what you're doing and it's the best solution to your specific problem. It might be useful for expanding a monolith which is out of control, or for performance/language reasons in some cases, but building a whole system from microservices looks like it would be needlessly complicated once you delved in.

    2. Re:Rookie mistake number one by mwvdlee · · Score: 2

      The mistake is thinking ANYTHING is a silver bullet.
      If you think you know a solution that will fix all problems, you haven't seen enough problems yet.

      --
      Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
    3. Re:Rookie mistake number one by gweihir · · Score: 1

      While true, it is the (rare) exception, not the rule. For most real-world projects, the only way to speed them up is start with the best people you can get (and not the cheapest as is done to often these days) and then make sure they are not bothered by other things while they work. And, of course, use the smallest team that is still reasonable.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
  7. A email you want, an email you shall get by Anonymous Coward · · Score: 0

    A rookie mistake is not checking that my email has a 10 minute lifespan. This PDF seems to be a IT Automation sales pitch. Joe promptly emailed me.

    Hi ,

    Thanks for your interest in the 2015 State of DevOps Report. You can access it at any time here.

    Did you know that automation plays a vital part in building DevOps culture practices? Using IT automation software, like Puppet Enterprise, you can ensure consistency of environments (dev, test, prod) to support continuous delivery. Learn how Puppet Enterprise can help you build DevOps culture and practices.

    Thanks,

    Joe Henderson
    Puppet Labs, Inc.
    308 SW 2nd Ave., 5th Floor
    Portland, OR 97204
    USA
    503-575-9784
    joe.henderson@puppetlabs.com

    Manage your emails or unsubscribe.

  8. wrong premise? by cassidyc · · Score: 5, Informative

    I was under the impression (having actually read The Mythical Man Month) that the premise actually was "adding manpower to a late software project makes it later" which is not the premise being discussed here.

    1. Re:wrong premise? by luis_a_espinal · · Score: 3, Insightful

      I was under the impression (having actually read The Mythical Man Month) that the premise actually was "adding manpower to a late software project makes it later" which is not the premise being discussed here.

      Exactly. I call bullshit on whoever made the wrong claim that DevOps proved TMMM wrong. This is a case of software professionals not knowing what the hell they are talking about.

    2. Re:wrong premise? by jrumney · · Score: 1

      In any case, finding that a good architecture to start with helps make scaling from a 5 person team to a 25 person team reasonably free of overhead, does not mean that scaling will continue to teams of 100 or 1000 as are typical in enterprise scale failed projects.

    3. Re:wrong premise? by pdunkin · · Score: 1

      Yes! Mod parent up!

    4. Re:wrong premise? by Required+Snark · · Score: 1

      This is a case of software professionals not knowing what the hell they are talking about.

      That would be true all of the time.

      --
      Why is Snark Required?
    5. Re:wrong premise? by havana9 · · Score: 1

      Actually the example in luxury cars is plain wrong. Maserati cars are built on an assembly line. And an assembly line literally full of robots.

    6. Re:wrong premise? by mwvdlee · · Score: 1

      If you're doing projects where you don't have to do anything you haven't already done before, you should automate it.

      --
      Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
    7. Re:wrong premise? by Kiaser+Zohsay · · Score: 1

      I was under the impression (having actually read The Mythical Man Month) that the premise actually was "adding manpower to a late software project makes it later" which is not the premise being discussed here.

      That is correct, along with my favorite paraphrase, "Programming time is not fungible". Regarding the summary, perhaps the author should seek the advice of The Doctor: "Answers are easy. It's asking the right questions which is hard."

      --
      I am not your blowing wind, I am the lightning.
    8. Re:wrong premise? by nine-times · · Score: 1

      I don't think it's quite that. It's more like, "adding manpower to a project will not necessarily speed it up." The famous example is "9 women can't make a baby in 1 month."

      Adding manpower may help a project get done faster. It may make it take longer. It may make no real difference. It depends. It seems like what's being discussed here is that someone thinks they have disproved the concept, when really they just found one specialized situation where "it depends".

    9. Re:wrong premise? by Anonymous Coward · · Score: 0

      You're using facts. How antiquated.

    10. Re:wrong premise? by Anonymous Coward · · Score: 0

      Pretty much. The "adding manpower to a late software project makes it later" is often referred to as Brooks' Law, and is the nugget of TMMM. The rest of the book covers some methodologies to get around this -- many of which are now considered (if perhaps renamed) standard by such things as Agile.

      Mind, Brooks' experience and much of the book was about large software projects, like OS/360, comprising an operating system for new (concurrently developed) hardware architecture, a half-dozen or so language compilers, utilities, etc, etc. Try that with Agile or DevOps.

    11. Re:wrong premise? by stanjo74 · · Score: 1

      DevOps is not product development - it's glorified sysadmin. So yes, adding more sysadmins to babysit servers and software helps, the same way adding more babysitters helps with getting more diapers changed in a nursery.
      The MMM is about DEVELOPMENT - something that requires invention, brainstorming and constant communication - not just execution.
      Maybe because most of the "software development" nowadays is just configuring OTS frameworks and products, managers are confusing development with configuration and deployment.

    12. Re:wrong premise? by Anonymous Coward · · Score: 0

      I am still confused why an entire book needed to be written to convey a simple philosophy. People are way too long-winded, that is why adding more devs to a project makes it take longer. You can't get them to shut up and listen when there is 5 of them, let alone 25 of them.. ;-)

  9. Like my boss always says by Anonymous Coward · · Score: 0

    9 women can't make a baby in a month

    1. Re:Like my boss always says by Anonymous Coward · · Score: 0

      No, but they can make a baby a month for 9 consecutive months. Increase the number of women a little and you can have a baby a month indefinitely.

    2. Re:Like my boss always says by itsdapead · · Score: 5, Insightful

      No, but they can make a baby a month for 9 consecutive months. Increase the number of women a little and you can have a baby a month indefinitely.

      Yes, but that involves waiting 9 months for the first baby. Our competitor already has a baby, so we need a baby now and I'm a manager which entitles me to behave like a spoilt 2 year old so don't give me any of that "I know biology" bullshit and get me a baby by the end of next week or I'll fire you and give the job to my nephew who says that we can have a baby in 7 days if we use Agile Procreation techniques.

      9 months later: still no baby, but sprint 0.53.2 did produce a shaved rat embryo in a blue romper suit.

      More seriously, producing one baby a month is routine production, and production lines work well for that. Producing software is almost always design and development, which is much harder to scale (of course, there must be a lot of creationists in management because even when they grudgingly accept that it takes 9 months to produce a baby, they still seem to think that the design and development should only take 7 days).

      --
      In a survey of 100 programmers, 111111 thought that duck-typing was a good idea.
    3. Re: Like my boss always says by Anonymous Coward · · Score: 0

      Just like the Oatmeal comic, I was doing web design (10+ years experience) for a client who eventually wanted his wife involved because she'd just finished a class in web design.

    4. Re:Like my boss always says by Anonymous Coward · · Score: 0

      get me a baby by the end of next week or I'll fire you

      Don't make me kick you in your managerial reset button.

      Seriously. If more managers started getting kicked in the groin for this attitude, they would stop this shit pretty damned quick.

      Get to kickin'!

    5. Re:Like my boss always says by ChrisMaple · · Score: 1

      Outsource to Planned Parenthood.

      Oh ... You want a whole, intact baby? Nevermind!

      --
      Contribute to civilization: ari.aynrand.org/donate
    6. Re: Like my boss always says by Anonymous Coward · · Score: 0

      I would like to see those women try to make a baby without a man.

    7. Re: Like my boss always says by samkass · · Score: 1

      "Yes, but that involves waiting 9 months for the first baby."

      Not if you hire 9 consultants who are already in a state to contribute early...

      --
      E pluribus unum
    8. Re:Like my boss always says by Anonymous Coward · · Score: 0

      Actually, 6 days. (The seventh day is reserved for taking a day off.)

  10. I'm not convinced by Chrisq · · Score: 1

    Microservices may help parallelisation in one are, where the services are implemented. Designing and specifying the services and interfaces, then integrating and testing will have a complexity overhead. Also coordinating fixes and releases over a large number of developers will take longer. In most projects the advantage will be limited.

    Remember when the mythical man month was written a microservice-like architecture of text based systems using lots of discreet Linux programs and pipes was quite common and heralded as a way of splitting down a system and allowing parallel development, so the concept was probably know to the author.

    1. Re:I'm not convinced by Anonymous Coward · · Score: 0

      Remember when the mythical man month was written a microservice-like architecture of text based systems using lots of discreet Linux programs and pipes was quite common and heralded as a way of splitting down a system and allowing parallel development, so the concept was probably know to the author.

      Mythical Man Month was in 1975, on IBM OS/360 in ALGOL.

    2. Re:I'm not convinced by Dog-Cow · · Score: 1

      Unix, never mind Linux, did not exist when TMMM was written.

    3. Re:I'm not convinced by dwywit · · Score: 1

      No, I don't remember that, seeing as how TMMM was published in the 70s, and Linux was released in the 90s.

      If you meant Unix, then you're getting closer temporally, but you've still missed the target.

      I'll assume your auto-correct substituted "Linux" when you really meant "OS360", but I'd like to see some examples of "discreet OS360 programs and pipes" to support your statement.

      --
      They sentenced me to twenty years of boredom
    4. Re:I'm not convinced by Chrisq · · Score: 1

      No, I don't remember that, seeing as how TMMM was published in the 70s, and Linux was released in the 90s.

      If you meant Unix, then you're getting closer temporally, but you've still missed the target.

      I'll assume your auto-correct substituted "Linux" when you really meant "OS360", but I'd like to see some examples of "discreet OS360 programs and pipes" to support your statement.

      No I meant Unix

    5. Re:I'm not convinced by mwvdlee · · Score: 2

      Too bad, because the book constantly references OS360, whose development was the inspiration for the book.
      It's been a while since I've read it, but I don't remember it mentioning Unix, atleast not in any significant way.

      Back in those days you typically has many small, single-purpose programs "piped" using files, regardless of the specific OS.
      Given the small memory sizes available, this was pretty much the only way to handle large jobs.

      --
      Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
    6. Re:I'm not convinced by dave420 · · Score: 1

      Then you were still wrong. OS360 is not Unix. You xenophobes are not usually known for your factual awareness, but well done for admitting you were wrong.

    7. Re:I'm not convinced by Chrisq · · Score: 1

      Too bad, because the book constantly references OS360, whose development was the inspiration for the book. It's been a while since I've read it, but I don't remember it mentioning Unix, atleast not in any significant way.

      Back in those days you typically has many small, single-purpose programs "piped" using files, regardless of the specific OS. Given the small memory sizes available, this was pretty much the only way to handle large jobs.

      It's been a long time since I read it, I'm sure your right,

    8. Re:I'm not convinced by DutchUncle · · Score: 1

      Multics, on which Unix was based, was in the mid 1960s. OS370 had interprocess communication and multiprocess file access. Believe it or not, there WERE real computer systems before Unix and Linux, and don't let the garbage of DOS and Windows block your awareness of the tremendous amount of research and intelligent thought that had gone into systems before them.

    9. Re:I'm not convinced by timelorde · · Score: 1

      My summer intern job during college. Daily financial reports: 17 different COBOL programs, strung together by the wonders of JCL. No direct pipes, just intermediate files, which had to be written and read back from tapes (data was too big for the disks at the time). My job was to stay late and watch over it, figuring out how to restart it when it blew up somewhere in the middle.

    10. Re:I'm not convinced by Anonymous Coward · · Score: 0

      Nor would you remember that. The book is indeed based on Brooks' experience with OS/360, a massive undertaking involving hundreds (thousands?) of people at IBM. Now, it is somewhat true that many OS360 apps were built up from small single-purpose utilities (anyone remember these?), but there was nothing like pipes, it was all serial execution and fugly Job Control Language.

      Unix was (initially) built by a couple of guys in a back room at Bell Labs.

    11. Re:I'm not convinced by Anonymous Coward · · Score: 0

      If you really want your mind blown, look at what Burroughs Large Systems (and their OS, MCP (Master Control Program -- long before Tron) was capable of in the 1960s/70s.

      There were a lot of Unix concepts foreshadowed in those systems, and also of course in MULTICS, so they may have been part of the non-IBM zeitgeist back then.

    12. Re:I'm not convinced by david_thornley · · Score: 1

      I'd like to see some examples of "discreet OS360 programs and pipes" to support your statement

      I've used OS/360 Job Control Language, which is the closest you'd get to pipes. That was horrible (and Brooks does mention it in MMM as a bad thing). There were canned procedures, and even using them required a thicker card deck than any other type of control language I was familiar with. There were also canned programs, although I didn't use many of those.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
  11. Divide-and-conquer is an art by eulernet · · Score: 5, Insightful

    Dear Anders,

    I know you are trying to defend your point of view, that DevOps is THE solution to everybody's problems.

    I agree that divide-and-conquer is an approach useful in algorithms (especially if you pass Google's recruitment tests), but it's much more difficult in real life.

    Social loafing exists in groups, and has been known since a long time.
    Ringelmann measured the productivity at the beginning of the twentieth century, and discovered what is now named Ringelmann effect:
    https://en.wikipedia.org/wiki/...
    Ringelmann's original article explains that a team of 8 persons produces the work of 4.
    You may argue that you can optimize that by splitting in several groups, but the effect exists starting at 2 persons (85% of effort is produced).

    To a certain degree, you can optimize a process by splitting tasks in independent subtasks, preferably assigned to one person each.
    However, there are several major problems:
    1) some tasks are not as independent as you may imagine
    2) some tasks require that people with multiple domains work on them
    3) some tasks are so long that it slows down the entire process. It is well known in Supply Chain that a single bottlenecks reduce your output.
    4) splitted tasks become boring as hell
    5) working alone doesn't improve your knowledge

    So no, you didn't show that the Mythical Man-Month has been disproved.
    You just showed that dividing tasks to a certain level may improve productivity, which is nothing new.

    Also, applying efficiently DevOpt requires experienced managers.
    Experience comes from mistakes and mixing various techniques, like ITIL, Scrum, DevOps, etc.
    If you only use DevOps, I can assure you that you are bound to fail !

    1. Re:Divide-and-conquer is an art by tomhath · · Score: 3, Insightful

      To a certain degree, you can optimize a process by splitting tasks in independent subtasks, preferably assigned to one person each.
      However, there are several major problems:
      1) some tasks are not as independent as you may imagine
      2) some tasks require that people with multiple domains work on them
      3) some tasks are so long that it slows down the entire process. It is well known in Supply Chain that a single bottlenecks reduce your output.
      4) splitted tasks become boring as hell
      5) working alone doesn't improve your knowledge

      In my experience, your first point is where most attempts at microservices fail. Someone designs a monolithic application - then management chops it up into little pieces and thinks they have microservices. But they don't have microservices because all the same interdependencies are still there. All they have are chunks of a bigger program.

    2. Re:Divide-and-conquer is an art by Anonymous Coward · · Score: 1

      My Mythical man month rules of thumb is: anyone claiming to have broken the "it requires 1 women for 9 months to gestate a baby and this is not parallelizable" is trying to sell a "silver bullet".

      Microservices may look a good idea, but it is like claiming we have a world without coupling.

      Ex: split a monolithic django website with user/group/permissions and n resources into n+1 microservices; then you may deliver faster every subpart of the websites, but when it comes to glue your services for the security and the consistency of the evolving APIs you just create a huge overhead in "semantic versioning services", "cross domain authentication", "multiple dependencies technologies hell", "where is the doc", "how do I supervise everything and federate my logs to give them sense", "how do I handle the transactional access to my singletons for all micorservices (most of the time config)"? ...

      When you measure how much time it takes at the end of the process and look at the operational expenses due to over deploying technologies, devops and microservices look like a good solution but in practice they are frauds claiming "look the cost in building 80% of the project is less, you should not care that neither the total cost will be more, nor that the OPEXes are way more expensive, nor that we will deliver a 15% crippled by design full service".

      Devops finally show their true face: neither smart enough to code, neither knowledgeable enough to be a decent sysadmins, nor counting expenses correctly enough to be a manager or an architect.

      These people belongs to the sect of the "0x777", they even do 'curl | bash' .... How can you trust them?
       

    3. Re:Divide-and-conquer is an art by DutchUncle · · Score: 1

      Mod parent up, if I had any points. I worked on a project where the designer kept insisting that his design was decomposed and structured . . . yes, the little pieces all fit together - like a jigsaw puzzle, only one very specific way. "Structured" implies some kind of consistent interface, like Lego blocks that can be interchanged or moved or reused, not like a jigsaw puzzle.

    4. Re:Divide-and-conquer is an art by Dog-Cow · · Score: 1

      Why do you think "structured" implies interchangeable?

    5. Re:Divide-and-conquer is an art by DutchUncle · · Score: 1

      Yes, I think "structured" means decomposing the problem into pieces, and also looking for ways to mass-produce those pieces so you don't write the same code five or six times with tiny changes. It's like someone saying "I want something like an ARM processor, but I don't need some of the instructions and I have a great idea for a new one, so let's make our own processor out of NAND gates." In hardware, the very idea sounds moronic, but somehow people design their software that way.

      We had a subroutine to convert numbers to printable form on the screen. And a different subroutine to convert numbers to the printer. And another to print to the comm port. Oh, yes, of course, everything optimized for purpose . . . because one generic routine to format a buffer, and then use the buffer for whatever purpose, would cost an extra subroutine call. This was before OO, but even Algol and PL/1 and Pascal had structures - so we had all sorts of structures that were just one or two items different from each other, and OF COURSE they had no common subsets - the differences were in different places in each one because it just "seemed like where that variable belonged" instead of saying "Hey, all of these have the same 10 things plus one or two other things, how about a nested structure?" So OF COURSE we needed completely different routines to perform essentially the same functions on the ever-so-slightly-different structures. That's not design, or functional decomposition, it's just writing code.

    6. Re:Divide-and-conquer is an art by Anonymous Coward · · Score: 0

      Very much this.

      There are things that are trivial to split up and make work with in parallel, but there are more things that are considerably harder to make parallel because of the dependencies they have on other modules of the project in question.

      One common issue is a software developer, specifically the head managing it, cannot design a proper program spec that would allow for the code to be split up in to discrete sections to allow for said parallel development.
      You can take any idea and easily blow it up to be even more complex than it need be, but it is a delicate process to take it and split it up properly without too many dependencies other than, say, an API call, or a parameter list and what you need to return to the caller, and so on.

      Interfaces, parameters and the flow of data is one really good way to keep a program in discrete chunks, but you also need to iterate through what you expect you will need before you even do it, so it becomes an iterative process, and it can and often does change as you figure out that you need something else to be passed to this function, or you need this data back. Without proper documentation on these, it spirals out of control, then people need to check each others work to figure out what the hell is even happening, wasting more time!

      This is one of those things that come with experience rather than raw skill, because even if you knew a language inside out, it still doesn't make you capable of analysing a project spec and properly managing it.

  12. Indeed wrong premise + click-bait by luis_a_espinal · · Score: 1

    Plus the bloody "state-of-the-art" report is nothing more that a few bullet points with a form for collecting personal information. Lamest click-bait ever.

  13. Can we kill the term DevOps yet? by Anonymous Coward · · Score: 0

    Please?

    1. Re:Can we kill the term DevOps yet? by Hognoxious · · Score: 1

      But it's a mashup! It's Dev from Development and Ops from Operations, mashed up together.

      You've got to like mashups!

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    2. Re:Can we kill the term DevOps yet? by Zontar+The+Mindless · · Score: 1

      But there's no apps, which means it's for Luddites, right?

      --
      Il n'y a pas de Planet B.
  14. Next disproving Mythcal Woman Month. by 140Mandak262Jamuna · · Score: 1

    The latest report from my organization (please click on all the links and give me loads of personal information to sell) has disproved mythical woman month. The original myth holds that you can not get nine women pregnant and get a baby in one month. The absolutely latest and greatest agile methodology with Kanban technology and our copyrighted and patented bullshittology technique has totally disproved that theory. Come one, click, gimme my money. What are you waiting for?

    --
    sed -e 's/Chuck Norris/Rajnikant/g' joke > fact
    1. Re:Next disproving Mythcal Woman Month. by Anonymous Coward · · Score: 0

      Just be careful and tread lightly when its that Time of the Woman Month.

  15. Like the time... by Anonymous Coward · · Score: 1

    ...when nine women cooperated to make a baby in a single month.

    DevOps FTW!

  16. Never bet against the laws of thermodynamics by Eunuchswear · · Score: 1

    Never bet against the laws of thermodynamics or Fred Brooks.

    --
    Watch this Heartland Institute video
  17. CRITICAL PATH! by Anonymous Coward · · Score: 0

    Hold up stuff on the critical path and it doesn't matter about the rest. Anyway, projects are always underestimated. Who's zooming who said the lady in the pink caddy.

  18. DevOps isn't a thing by Anonymous Coward · · Score: 4, Insightful

    It's just a management term for making developers do support, and support staff try and develop. It's a fancy name for being "promoted' into doing 2 jobs.

    1. Re:DevOps isn't a thing by Anonymous Coward · · Score: 0

      I already knew this but I'm glad someone piped in and explained it to the uninitiated. DevOps is a joke and people who use the term non-ironically are diluting the value of the two professions they are attempting to conflate.

    2. Re:DevOps isn't a thing by Anonymous Coward · · Score: 0

      These fuckers did this to me too.
      As for a. word. I think from all the fads and big mistakes agile caused biggest amount of stress and pain. It is so vague that anybody can put anything there and builds up a false hope any simpletons among developers (who are otherwise mostly intelligent people) that they can do big projects without hated management. I laughed my head of I heard this first time and they looked at me like I was an idiot. After first project I made a study comparing costs of doing the same the old fashion iterative way we used to use before - the costs were 3-4 times bigger in 'agile'.There was no test suite at the end so no way you could make a small update and run regression etc. Fuck, the only reason it actually worked is that the system we abused was so robust that it took more consequent abuse to bring it down. After few years, dust settled, projects were outsourced, company almost closed. I guess we did not do this agile properly right?

  19. Who cooked up such a misleading summary?? by taikedz · · Score: 5, Informative

    1/ The Mythical Man Month was "referenced" (and mangled) about in an unrelated article by Eddy Baldry. It is he who mis-states the premise of the MMM

    2/ Mythical Man Month's statement is "Adding more manpower to an already late project delays it further." This is different from the premise stated by Baldry.

    3/ Anders Wallgren mentions nothing of the Mythical Man Month

    4/ Wallgren actually does say that microservices, underpinning some of the arguments for DevOps, is not suitaed for all projects.

    5/ The summary is a lie.

    --
    -- "Simplicity is prerequisite for reliability." --Dijkstra
    1. Re:Who cooked up such a misleading summary?? by Dog-Cow · · Score: 1

      5/ The summary is a lie.

      But, not the cake, right? Right?! /sobs

    2. Re:Who cooked up such a misleading summary?? by Anonymous Coward · · Score: 0

      5/ The summary is a lie.

      I thought the CAKE is a lie...

    3. Re:Who cooked up such a misleading summary?? by Zalbik · · Score: 2

      3/ Anders Wallgren mentions nothing of the Mythical Man Month

      Incorrect. From the actual article:

      Wallgren: The major benefit of a microservices architecture is that you can actually start to beat the Mythical Man-Month (i.e. the long-standing theory that adding people to a project lowers, rather than increases, velocity).

      This indicates that Wallgren exactly said that microservices help you beat the MMM.

    4. Re:Who cooked up such a misleading summary?? by taikedz · · Score: 1

      I stand corrected.

      --
      -- "Simplicity is prerequisite for reliability." --Dijkstra
  20. A moment, Watson. Consider the following: by Hognoxious · · Score: 5, Insightful

    Submitted by StewBeans and posted by samzenpus. A link to enterprisersproject.com.

    The only logical conclusion is that some fucker is selling something.

    --
    Confucius say, "Find worm in apple - bad. Find half a worm - worse."
  21. Agile is the best by Anonymous Coward · · Score: 1

    F*** Agile and all of it's cultist followers. It's nothing but a pointy-haired management scheme to avoid any sort of requirements gathering and to micromanage the s*** out of devs. I hope the people who came up with it and their "manifesto" burn in hell.

    1. Re:Agile is the best by Anonymous Coward · · Score: 3, Insightful

      Are you gonna be happier when they come with the same shit but just not call it "Agile"? Managers just want to manage, feel important, collect their bonuses. They are also afraid that if they are not noticeable enough they're gonna be fired for being unnecessary, which is true for most shit companies. Just like with sysadmins, the best manager is the manager you don't notice much, and the shit is just getting done.

      All the original Agile was about was working in a piecemeal fashion, keeping management's dirty hands away from twiddling requirements mid-process, and emphasizing the sad truth that at a software project's inception, you can't really say how it's going to ultimately work, what the customer REALLY wants, and thus cannot reliably design it in one big go and implement it in another. That's fucking it. Anything else on top is a snake oil sale.

    2. Re:Agile is the best by Anonymous Coward · · Score: 0

      There are different projects and different managers. Some projects need more management than others. I do not care what you call it. Common sense usually ran away as soon as the a. word was spoken. At the end it does not matter why projects fail. The biggest fail is that you actually do not see that projects can be made more efficient thus sparing us the dreaded throwing of more people at it in the 'last' big thrust.

    3. Re:Agile is the best by david_thornley · · Score: 1

      There's a lot of good stuff in Agile. There's also a large number of people who don't understand it and will claim they're using it, and an unfortunate number of those are managers. If they're micromanaging, I'd call it faux Agile.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
  22. Depends on the project by lyovushka · · Score: 1

    The common sense suggests that this entirely depends on the project under question. Say if there are five independent tasks each taking a month for a team of five, then a team of 25 will complete it in one month. On the other hand a woman "produces" a baby in 9 months but 9 women can't "produce" a baby in one month.

    1. Re:Depends on the project by myowntrueself · · Score: 1

      The common sense suggests that this entirely depends on the project under question. Say if there are five independent tasks each taking a month for a team of five, then a team of 25 will complete it in one month. On the other hand a woman "produces" a baby in 9 months but 9 women can't "produce" a baby in one month.

      Yet, as has been noted elsewhere, 9 women can produce a baby a month for 9 months, with a 9 month lead time.

      --
      In the free world the media isn't government run; the government is media run.
  23. Everything in the summary was fine until... by Anonymous Coward · · Score: 0

    Everything in the summary was fine until the point I've read "agile".

  24. has the OP ever read the book?!?! by Anonymous Coward · · Score: 2, Informative

    Partitionability is discussed in the book. Yes, if you can break a project down into small parts and work on those separately, then you can save time. The premise the OP incorrectly addresses is that some tasks cannot be broken down any smaller and therefore do not benefit from more people, and often are hurt because of the overhead of working together.

    There are many other suggestions in the book. Another popular one is don't add more people to a late project. Another is about having one chief and many supporters to ensure conceptual integrity.

    Perhaps you should read it? I recommend that all engineers read it every few years. I have read it a few times in my career and various points stick out each time.

    1. Re:has the OP ever read the book?!?! by Hognoxious · · Score: 1

      Yes, if you can break a project down into small parts and work on those separately, then you can save time.

      And if you could, you'd probably already be doing it.

      --
      Confucius say, "Find worm in apple - bad. Find half a worm - worse."
    2. Re:has the OP ever read the book?!?! by PPH · · Score: 1

      if you can break a project down into small parts

      This can only happen at a point well along the development timeline. When you understand the functions and interfaces and have the data structures pretty well defined. Or you'll get groups that all say, "You people start coding and I'll go see what the customer needs."

      --
      Have gnu, will travel.
  25. "Agile" claims to be better than everything else by Anonymous Coward · · Score: 0

    This is just another example of someone/something claiming to be smarter/better than what came before.

    And what exactly are the odds of THAT? Think about that - what are the odds coming up with a "new way of doing things" improves things outside of the specific problem it was developed to address?

    Which is why EVERY claim of "This is WAAAY better!" is almost certainly bullshit.

    Especially when an asinine fucking buzzword like "agile" is used.

  26. 9 women can't make baby in 1 month by tommeke100 · · Score: 1

    I think it's the same premise, but inverted. Management thinks the project will be finished faster if adding more man-power, but actually the inverse happens, it will be finished even later.
    A logical fallacy is not taking into account the complexity of a task. If one woman makes a baby in 9 months, 9 women should be able to make a baby in 1 month.

    1. Re:9 women can't make baby in 1 month by CastrTroy · · Score: 1

      Management must be pretty stupid then. I read the book after a year or so of being out of university and working in the industry, and just about everything in the book seemed pretty obvious. I guess if you come from a manufacturing or construction background, there might be some ability to add people later in the game to bring a late project back on time, but I imagine there's limits even in those fields. Anybody who thinks you can just throw more people at a problem in a field like software development doesn't have much experience in the industry.

      Also, I always thought the baby analogy was kind of odd. Of course you can't use 9 women to make a baby in 9 months, but you can get 9 babies in 9 months.

      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    2. Re:9 women can't make baby in 1 month by tommeke100 · · Score: 1

      I've read the book a couple of years ago, and in my Software Engineering courses in college in the 90s, the same thing was said. Also 15 years in the industry and I've heard the line "If you can't make it on time, we'll add more people to the project" over and over again. Mostly by clueless Project Managers without a CS/SE background.

    3. Re:9 women can't make baby in 1 month by Anonymous Coward · · Score: 0

      So, the latency is the same, but the throughput is greater? :)

  27. DevOps probably scales better than Development by Anonymous Coward · · Score: 0

    Comparing DevOps to Development is probably the issue. You can surely throw more warm bodies at DevOps tasks and get faster turn-around; it's not a creative profession doing creative or analytical tasks, but a trade doing mechanical tasks.

  28. But wait! There's more! by bwanagary · · Score: 1

    And he's figured out a way for 9 women to have a baby in 1 month too!

  29. Misleading, but sort of true by Lennie · · Score: 1

    You can't just speed up development teams by adding more team members.

    But the devops / microservices do help you to create an culture / architecture where you get more but smaller parts each with their own team.

    Thus you'd have more teams.

    So the project as a whole can might go faster if you can chop your software up in different pieces without any interdependence (which obviously doesn't always apply to all problems).

    --
    New things are always on the horizon
  30. OMG! by Anonymous Coward · · Score: 0

    This post has a lot in common with a 10 pound sack of crap --- and it's not the outside sack-like goodnes but the contents!
    Perhaps Wallgren should read the Mythical Man Month?

    1. Re:OMG! by Anonymous Coward · · Score: 0

      You're dismissing the usefulness of crap... it can be used as fertilizer, etc., this stuff doesn't even stand up next to crap!

  31. What good management is about by Anonymous Coward · · Score: 4, Informative

    I've managed software development teams for 10+ years.
    It's really fucking simple: as a manager, if you wanna do a good job, you have to 1) serve as the shield that protects your devs from the shitstorm of politics and stupidity that goes on at the highest level, so that it doesn't distract them and they can, you know, build shit, and 2) choose the right devs in the first place (the difference in productivity between a good dev and a mediocre dev can be fucking scary, let me tell you, we're talking 20x sometimes)

    That's it. Choose the right devs, let them do their work, make sure you make their obstacles vanish in advance. All this agile and scrum and shit, I've tried it, it's crap; if you need it, you don't have the right team. The only management tool I need is a Trello board and github and meeting one-on-one with the devs every now and then because they'll never come up to you and tell you when they have a personal issue.

    1. Re: What good management is about by Anonymous Coward · · Score: 0

      You nailed it, and you sound like my previous manager (in a good way).

      I left the midwest to work at a startup on the west coast and was initially kind of intimidated, only to find out these guys have no fucking clue what they're doing.

      Neck deep in buzzwords, 90% of our engineers are your definition of mediocre, management doesn't shield us from bullshit, and the founders think they're the next Steve Jobs so they require having their personal touch on everything versus letting the (good) devs just do their jobs.

      Thankfully I got a new offer so I'm resigning later this week.

  32. Rigelmann Effect by luis_a_espinal · · Score: 3, Informative

    MMM is largely used by software professionals as a bullshit soundbyte.

    Yes, in the 1% chance you have a sufficiently advanced project requiring intimate knowledge of very funky code, MMM holds true.

    Meanwhile, every other jackass is spouting, "Hurr, MMM!" for things like freaking CMS sites, where domain knowledge is widespread, easily attained, and frankly, not at all difficult to comprehend with a quick couple hours of looking at the code if you have any talent whatsoever.

    And yet we still have people fucking it up and delivering late and/or the wrong CMS site functionality. And we still get managers throwing bodies at the problem that is already late/wrong (despite being conceptually simple.) It happens all the time regardless of system complexity.

    MMM has nothing to do with projects requiring funky code. It is simple a software management rule: throwing more bodies to a late project won't make it go faster (in fact, it will make it default deadlines even more.) Whether is is a 1-man shop cobbling together a website or a 100-team developing a OS, if you are late, you are late, and no amount of additional manpower will change that.

    That is what MMM is about. You complaining about it (or claiming it is a bs sound byte) shows you don't understand the meaning of it.

    This is not even a software specific problem. Any type of complex project - from medical trials to inventory reconciliation, they all will suffer a bottleneck due to communication complexity.

    Shit, even tomato picking gets affected. You have 100 laborers picking tomatoes, and you are late. Great, now you throw 100 more. But then, you do not have the logistics in place to handle the throughput within the given deadline. Depending of the severity of lateness, MMM (can't get shit late not being late with more bodies) will also hold.

    It is simple and fundamentally a logistics problem, unless you actually think this is also a bs soundbyte. Google "Ringelmann Effect".

  33. We're building a skyscraper with Agile by jabberw0k · · Score: 1

    So far we're on the third sprint and we have a desk in a steel frame with a planter on top and a hot-dog cart to the side.

    1. Re:We're building a skyscraper with Agile by Qzukk · · Score: 1

      All I'm saying is that we can't develop something until we have a need for it, and has anyone really said they needed a second floor?

      --
      If I have been able to see further than others, it is because I bought a pair of binoculars.
    2. Re:We're building a skyscraper with Agile by Anonymous Coward · · Score: 0

      Understood. But if we do build that second floor, we need to re-do the walls on the 1st floor to support the 2nd floor.

      Can the client climb on the second floor with a rope? We used that in a treehouse last year. It should work the same.

    3. Re:We're building a skyscraper with Agile by Qzukk · · Score: 1

      Can the client climb on the second floor with a rope? We used that in a treehouse last year. It should work the same.

      Now, Steve, what did I tell you about pulling in dependencies without my say-so? I know you're comfortable with all those old frameworks but we need to keep our design fresh and cutting edge. Now, I've got this excellent system some kids just out of college put together, very next gen, very cutting edge. See, you just take a see-saw and the guy picks up a boulder and stands on one end of it...

      --
      If I have been able to see further than others, it is because I bought a pair of binoculars.
    4. Re:We're building a skyscraper with Agile by Anonymous Coward · · Score: 0

      No, but there has been a request for a third floor so if you could get that working first.

  34. Freagin microservices by Shados · · Score: 4, Insightful

    That stupid fad is created by small tech startups looking at how unicorn companies run, then bringing that in the big boy world and eventually going "What the fuck have we done?!"

    Yeah, if you microservice everything, you can ship those services faster. Much much faster. You redefined what it means to "ship". Instead of shipping a full feature, you shipped a tiny piece of one. But now that thing has to interact and be compatible with everything else that talks to it.

    At first, it just makes things easier. Until all the stuff you extracted into microservices become tech debt (well, they were tech debt to begin with: that's why extracting them out increased your velocity, and ignoring them is making you so much faster). You can't forget they existed forever...and it comes back. "Who knows what service XYZ does again?" "Look at that fucking outdated doc on the wiki! Good luck! Its in Perl 3!"

    And then you just massively increased complexity and trashed your velocity. It just happens later. Congratz, you can scale devops sky high...for a short of time...maybe a few years if you're good. Then it comes crashing down. But you can tell yourself its because you're not a "big company" and the "nimble startups" are catching up...until they make the same mistake.

    1. Re:Freagin microservices by Anonymous Coward · · Score: 0

      As long as it crashes after the founders make their exit, why would they care? (I've run into that a time or two)

  35. yep. We should talk by raymorris · · Score: 1

    Sounds like you have it basically figured out. You keep the corporate politics BS from interfering, and I'll deliver an effective, reliable solution quickly.

    > choose the right devs in the first place (the difference in productivity between a good dev and a mediocre dev can be fucking scary, let me tell you, we're talking 20x sometimes)

    I don't know, an average developer can produce quite a bit of technical debt very quickly. That's productivity, right? :)

    Message me when you're hiring.

  36. MMM is not about technology by luis_a_espinal · · Score: 1

    I don't know how broadly it can be applied(if it in fact works as well as they claim at all); but it would appear that the whole point of these 'microservices' is to produce smaller 'projects' so that you have more room to scale before complexity eats you alive. It's not so much a disproof of the 'mythical man-month'; but an adaptation to cope with it.

    In other words, divide-and-conquer meets software project management. That is how it has been done to deal with these issues, for a long time before micro-services. And microservices would not help if the project, the totality of the project is late. The issues related to MMM's postulates are, for the most part, technology agnostic.

    And in fact, the fundamental problems are not technology-based, but organizational/political ones. I love microservices, but they are, in the great scheme of things, a technical detail. No amount of technical silver bullet will help subvert organizational/political forces.

    1. Re:MMM is not about technology by Penguinisto · · Score: 1

      And in fact, the fundamental problems are not technology-based, but organizational/political ones. I love microservices, but they are, in the great scheme of things, a technical detail. No amount of technical silver bullet will help subvert organizational/political forces.

      This, a million times this...

      I did note however that TFA was aimed squarely at the C-level types (CIO/CTO) - these folks would be in the best position to do something about the politics, fiefdoms, etc and etc. The typical developer, sysadmin or devops guy? Not so much. Folks at our level only get to watch.

      (On the other hand, it's good to keep an eye on the trends anyway, if only to divine which fad-of-the-month that you will most likely be afflicted with in the near future...)

      --
      Quo usque tandem abutere, Nimbus, patientia nostra?
  37. Solved it: Multiple Unrelated Projects by Anonymous Coward · · Score: 1

    We do this now - we have multiple largely unrelated projects that we can work on in parallel.

    In this case so long as you have few resource allocation problems and staff can do their own job you can add staff and accelerate.

  38. STOP! It has ALWAYS been mythical! by just+fiddling+around · · Score: 1

    The first book on the subject was titled "The mythical man-month"!!!

    The same way the waterfall model had always been a counter- example.

    "discovering" that those models are worse than your current faddish methodology is like finding that your new "locomotion revolution" beats square wheels.

    Get off my lawn.

    --
    You're not old until regret takes the place of your dreams.
  39. Re:"Agile" claims to be better than everything els by tompaulco · · Score: 1

    Exactly. I have seen development methodologies come and go. The one thing they all have in common is that they are created for and marketed to the management. Because management is not good at, well, managing, development methodologies give them things that they can see and touch and thus believe that progress is being made. Meanwhile, every single development methodology has aspects that do not fit how development actually happens, and as such, time is wasted trying to fit how real life works into the development methodology. I have been at two different companies that used Agile. At one, I never heard the words "scrum" or "sprint" or "stand-ups". At the other I did, but the developers computers were locked down so that participation in the stand ups was difficult.
    Agile, to me, almost looks like a caricature of a development methodology. It is almost like Scientology, where L. Ron Hubbard made a bet that he could create a new religion and gullible idiots would eat it up.

    --
    If you are not allowed to question your government then the government has answered your question.
  40. A few counter examples don't disprove the general by Theovon · · Score: 4, Insightful

    I'm sure you can find plenty of teams of rockstar coders who can scale in amazing ways. Unfortunately, this does not apply to teams of average programmers. An average programmer knows how to code but is typically much less intuitive about how their components impact other developers. To deal with this, you need to do all this up-front design work that it entirely serial (not scalable) and takes a substantial portion of the total development time.

  41. Nothing scales linearly by tompaulco · · Score: 1

    Nothing scales linearly, but some things scale more linearly than others.

    --
    If you are not allowed to question your government then the government has answered your question.
  42. When you do microservices, it isn't one project. by mr_mischief · · Score: 2

    The lesson here isn't that you throw five times as many people at a project. The whole idea of microservices is they are small, interchangeable projects. If you split one big project into five smaller projects, you can have a small team do each project.

    This doesn't disprove anything about the Mythical Man-Month. It reinforces it. If you have multiple small, well-defined projects rather than one big, all-encompassing centralized project you can get the work done faster. If you want it all tightly integrated into a project the size of the 360, you need to wait.

  43. Or as my fluid dynamics professor said.... by Anonymous Coward · · Score: 0

    "if you can see it, it's nonlinear".

  44. And the MMM is not just about software projects by cbelt3 · · Score: 1

    Having managed projects ranging from R&D, defense systems, construction, and software development.. the MMM is all about work teams. Most successful project managers learn this sort of thing from experience (read pain and failure). Everybody thinks they have some sort of 'new concept' that is the magic bullet to 'solve software development problems'.

    Forgetting that the one common element is... people. No matter WHAT methodology you claim to follow, I guarantee at least half of your team will think it's bullshit, and begrudge the paperwork that is getting in their way of just getting the job done.. THEIR WAY.

    The best thing a good manager does is remove restraints and barriers, and filter bullshit. And let the team gel and get their shit done.

    1. Re:And the MMM is not just about software projects by John_Sauter · · Score: 1

      ...The best thing a good manager does is remove restraints and barriers, and filter bullshit. And let the team gel and get their shit done.

      Absolutely right!

  45. Amdahl's Law by jblues · · Score: 3

    Once again, this can be distilled down to an application of Amdahl's law, which states:

    If we have a process where 50% must occur in sequence, because of dependencies and prerequisites, while the remaining 50% can be farmed out across an infinite number of workers, then the speed-up given an infinite pool of workers is the reciprocal of 50% or two times. Not very impressive.

    Therefore to scaling up a team depends on management structures, lines of reporting and other I/O bottlenecks, and at any point we'll be either IO bound (communication is the limiting factor) or CPU bound (resourcing is the limiting factor.

    I didn't realize that Gene Amdahl is in fact alive and well, and also coined the term FUD (fear, uncertainty, doubt), which is popular, and well understood on Slashdot

    --
    If it acquires resources on instantiation like a duck, then its a shared_ptr<Duck>
    1. Re:Amdahl's Law by crunchy_one · · Score: 1
      Gene Amdahl and Fred Brooks were both important players at IBM, each making essential contributions to the System 360. That's an interesting connection between MMM and Amdahl's law, undoubtedly they talked.

      As for TFA, misquoting Al Swearengen, "someone open a window, it smell like cat piss in here."

    2. Re:Amdahl's Law by Anonymous Coward · · Score: 0

      Mod parent +insightful.

      I'd never seen that (now obvious) connection between Amdahl's and Brooks' laws before.

  46. Amdahl's Law by rockmuelle · · Score: 3, Insightful

    The basic idea behind the Mythical Man Month is essentially Amdahl's Law for human (instead of compute) resources. At some point, there's just no getting around it.

    But, just like with parallel and distributed computing, there are always people who don't understand the basic tenets of it and think they've found a way to transcend it (I'm looking at you Hadoop users).

    Learn it and never forget it:
    https://en.m.wikipedia.org/wik...

    -Chris

  47. Or as my company likes to do.... by Vermifax · · Score: 1

    Or as my company likes to do. Lay off 4 people and tell the 1 remaining he still needs to do the 5 month project in 1 month.

    --

    Vermifax

    Logout
  48. I do not think that word means ... by Anonymous Coward · · Score: 0

    ... what you think it does.

    If we assume the OP is taking a very "hard" interpretation of The MMM, perhaps something like "Man Months can NEVER be interchanged". Then if the OP has an example where they can trade manpower for months -- in that case, they would have a counter example. Which would disprove "never".

    But I can't honestly believe the OP thinks the proper interpretation of The MMM is "Man Months can NEVER be interchanged". So either the OP is being willfully obtuse, or they need to actually READ The MMM.

  49. Even as an agile supporter, I call BS on this by Anonymous Coward · · Score: 0

    Even as an agile supporter, I have to call bullshit on this clown. Adopting agile is meant to decrease process overhead and add practices meant to improve code quality. It does not do anything to reduce complexity itself or the burden of coordination (aside from reducing process overhead).

  50. A billion people! by Anonymous Coward · · Score: 0

    Could get it done in less than a second!

  51. everyone agrees it doesn't work by MooseTick · · Score: 1

    Perhaps some projects can be broken down into component, but there is a point that they can't anymore. If it takes 5 people 5 months, then perhaps 25 people can get it done in 1 month. But there are limits. I don't think anyone who has ever worked on a project believes that you can then put 750 people on most projects and get them done in a day. Sure, its possible if the task is trivial, but most aren't.

  52. Silver Bullet Found by Anonymous Coward · · Score: 0

    Huzzah! It seems a "Silver Bullet" has been found in DevOps.
    https://en.wikipedia.org/wiki/No_Silver_Bullet

  53. Isn't this what Agile promises? by ErichTheRed · · Score: 1

    The company I work for, who is late to everything, is now starting to get the Agile religion and is trying to apply it to systems work. (Yes, DevOps.) My honest opinion, having really given it a try, is that Agile is designed for the lowest common denominator engineering teams. Everything has to be broken up into small enough tasks that no one takes on too much, and sometimes more time is spent planning than actual working on stuff, forcing tasks to fit into this model. It's perfect if you are a big offshoring shop and are performing run of the mill development tasks that don't involve any business understanding. It's a whole lot easier to say "code me this service with these interfaces in 2 weeks, don't worry about the rest of the project" than to get developers thinking about the bigger picture.

    It seems like Agile and DevOps culture was designed for this kind of "we add developers at web scale" approach to development. If you're doing something that's more complex than the back end for a phone app, that's where it can break down. With Agile you _can_ split tasks up such that no one developer knows anything beyond their own little piece, but that doesn't scale because you can't quickly train new guys in a codebase or operational environment without any context.

    1. Re:Isn't this what Agile promises? by ADRA · · Score: 1

      There certainly are many naive managers who have no idea what Agile does and how well it works. In a lot of ways, Agile isn't always the best approach to every problem domain, but it is far more beneficial than your comment slams.

      In essence, Agile concepts encourage less up front (and as such harder to change) design, and smaller more manageable tasks that can be realistically estimated. Obviously if you slice too fine grained or too broad, you're going to run into different problems. Fine grained slicing, you waste a ton of time setting up component bounds and too broad and you've got the same old monolithic blobs which are hard to estimate and hard to show completeness.

      One example, we had a really competent guy take on a huge functional piece of work and spent 3 months bashing at it. We had faith in his brilliance, so he was almost entirely left to himself. Months later, we find that he wrote most of what he did well enough, but it didn't integrate well with the core system. Further, much of it was forced to be rewritten to actually integrate properly with the system. If we had properly managed him with Agile methods (we were using verrry loose agile), we would've divided the huge task into pieces, ran into the same problem earlier and ideally corrected the design decisions before it burned us badly later on.

      In regards to your 'not entire systems knowledge' problem, this is a development style, not a learning and interaction style. You're dividing WORK to be delivered. The second you have 2+ developers on a project people stop knowing the entire body of work. Agile neither encourages nor hinders one's desire to learn about all the pieces of a system. True, you have one discrete functional area to work on, but if you're telling me in a pre-agile world you never worked on anything specifically, I'd say people are wasting a lot of time constantly learning and re-learning functional areas when they should be far more effective specializing in areas they're good at and having a general understanding of the surrounding areas in case they need to integrate / change roles.

      I feel that you're not happy with your company in general and this is yet-another reason to bash them. Maybe they really are doing Agile badly and you should consider giving -constructive- feedback instead of bashing them on Slashdot. If the company is really making you so angry, you may want to consider a job change. Its better to jump than sit and fester in a job you hate. Trust me, I've been there too.

      --
      Bye!
  54. What Labs? by ChrisMaple · · Score: 1

    I know the link is to Puppet Labs, but it reads more like Muppet Labs. Doctor Bunsen Honeydew here.

    --
    Contribute to civilization: ari.aynrand.org/donate
  55. Re:When you do microservices, it isn't one project by PPH · · Score: 1

    If you split one big project into five smaller projects,

    You will need someone to select the split points and manage the communications between the sub-projects. And when each is done, you'll have to integrate them and test the assembly. Not that this is necessarily bad. But that mangement layer adds complexity and overhead. Agile might work well in an environment where the sub-projects are just teams sitting in adjacent cubicles, working in the same organization. Where interface problems can be solved by grabbing a few people, finding a conference room with a white board and working things out. But not so well if the inter-project communications involves customer/vendor contractual negotiations. And management starts to get it's panties in a bunch over change orders.

    In my experience, management is often selected based on the Dilbert Principle. Not the sort of people you want sitting at the nexus of the critical communications path between groups trying to get actual work done. Not to be totally down on Agile, it does formalize the inter-group communications, giving the PHBs well defined documents to rubber stamp and otherwise restricting their ability to invent new processes on the fly.

    --
    Have gnu, will travel.
  56. Microservices doesn't change MMM by Anonymous Coward · · Score: 0

    Microservices have nothing to with the mythical man month. As quoted "If 5 developers.... can't be reduced by 25..." If using microservices that means that original 5 may mean you can support 10, 15, etc. so that is the baseline number if you have 10 developers where 9 work on their own service with one providing the infrastructure for communication, trying to add 10 more will not make the project complete faster.

  57. Doesn't understand MMM or DevOps? by Anonymous Coward · · Score: 0

    Or both?

  58. Agile Procreation by John_Sauter · · Score: 1

    Please provide more information about your Agile Procreation techniques.

  59. No p values? And more questions by plopez · · Score: 1

    How did they randomize the subjects? They also first picked the subjects before selecting the hypothesis which I find odd. Did they skew the hypothesis to meet the population?

    What is the definition of DevOps? How cvan you discriminate between DevOps and no DevOps environments? I assume it is a spectrum, how is that controlled? What was the control in the study?

    --
    putting the 'B' in LGBTQ+
  60. Incompetency goes down, methodology goes up by Anonymous Coward · · Score: 0

    The amount of methodology and process necessary to complete a project is inversely proportional to the competency of the team members doing the work. Outsource to save money on coders, pay for it in process consultants, project managers and meetings. It is the great equalizer.

  61. Simple test by Anonymous Coward · · Score: 0

    Take a project that would take one developer one month, assign 10,000 developers to it and see if it is completed instantly.

  62. This is ignorance at it peak!!! by CAOgdin · · Score: 1

    Just one simple issue reverses the ignorant "reversal" touted above: A team of 5 five people who have to maintain bilateral, substantive communications with 4 others, has a total of 20 paths of dialog to maintain, so the project can be completed in five months..

    For a team of 25, there are 25*24 paths: A total of 600. And, only one month.

    So, FIRST, you have 5 programmers with 20 total dialogs going on, and it endures for five months. The alternative offered is 25 programmers with 600 paths of communication, and it all has to be done one month. When do you do YOUR thinking?

    If you can't see the fallacy in that comparison, you are a typical, incompetent "business manager" who's can't write the BASIC program to print "Hello, World".

    Fred's empirical observation still stands, to this day.

  63. Snake oil, unicorns and reality by Anonymous Coward · · Score: 0

    After decades of this we just never seem to learn. There is always some sort of magic snake oil that can be poured on the process to produce perpetual motion. Sigh... so many wonderful ideas. Bottom line, though, is that the more people involved the slower things go (the communications factor...a game of telephone) and add the 'I want the return code to be an ebcdic negative string' as opposed to what the function really returns... so this piece of the standard library needs to be redone. etc... The magic factor is not snake oil greasing those unicorn horns... it is the skill and experience of the folks doing the work. And no matter what the methodology, four dolts will not produce the work of one genius. And when management wants that baby in one month... they also reserve the right to change the specs without any impact on the delivery schedule. And what is worse... its not just coding that is subject to these silly yet fatal issues.

  64. It is wrong in many situations and correct in some by EmperorOfCanada · · Score: 1

    If the project is the equivalent of moving dirt from pile A to pile B then then many hands make light work until it gets to a point where people are just getting in each other's way. So 20 might be 4 times better than 5 but 1,000 is just a huge waste of resources as maybe 950 would be best kept out of the way.

    Then there is the statistical genius issue. If you have one good programmer trying to solve a horrific problem then two or so programmers might allow for some interesting insights that one might not have. But this sort of hits a rate of diminishing returns in that the average programmer isn't that much smarter than any other programmer. Thus 10 might not be much better than 2. Except that if you have 1,000 programmers the simple probability is that one of them is a genius and thus the program might be solved more than 1000 times faster than a single programmer or more realistically it may have never been solved by a handful of programmers, ever.

    Then there are the classic programs where people try to architect it into wonderfully separate abstract sections where individual programmers or small groups can work on each piece. This might sound good in reality but all projects have a certain amount of spaghetti to them and thus their reaches a point where each new programmer isn't able to hive off a part very easily without excessive communications with other programmers and thus not really help that much. This is a fairly typical corporate project flow and thus the Mythical Man month does apply to many projects, just not all projects.

  65. Re:When you do microservices, it isn't one project by mr_mischief · · Score: 1

    The thing is, many of these split points are becoming well-defined. Authentication? Just use OpenID Connect. Federated memory cache? Just use memcached. Need a database? Use an ORM that will speak to anything through JDBC, ODBC, PDO, or DBI and hides all the intricacies, then let your DevOps folks and DBAs handle those stock apps as infrastructure. Let the developers focus on the business value.

    This works quite well when you're developing yet another web app. It's not the same as developing a new mainframe and its OS that just happens to need to be backwards compatible with two previous generations of mainframes from an application level and offer new features like VMs, virtual I/O, etc. like the 360.

  66. Retired now but... by Maxo-Texas · · Score: 1

    The single best methodology I ever used was R.U.P. from IBM.

    It identified and placed high risk first.
    It had a set of shared documents which the team actually used since they made sense and were useful.
    It had time boxes and naturally supported controlling scope creep.

    We never had a late project. And we identified two projects as impossible in the 1st stage before a lot of work was done.
    It was a lovely and successful methodology to work with.

    On the article. BigO time for debugging is exponential. You really can't change that. If you do twice as much work in the same time period by whatever method, debugging will take 4 times as long.

    We had an agile group for a project. It was very expensive. It delivered a product that only functioned well in the development environment. This was partially political and a lot of arrogance. We TOLD them the customers wouldn't pay for that level of environment but they thought the customers would comply. It wasn't a horrible process and they kept their scrums to 15 minutes every morning. The entire project relied on a new, risky technology which was discontinued by the provider (Adobe) about 2 months after the 30 million dollar project was completed (so then they had to drop millions more redeveloping it in HTML5).

    From what I saw, agile did not protect from scope creep and it had problems with chunks that difficult to decompose enough to fit in one build cycle.
       

    --
    She was like chocolate when she drank... semi-sweet at first and then increasingly bitter.
  67. Re:When you do microservices, it isn't one project by PPH · · Score: 1

    This works quite well when you're developing yet another web app.

    Right. But that's a very small slice of the software development space. Lots of embedded applicatione don't even have the luxury of a real O/S. On the other hand, even with web apps (well designed ones) most of the interesting work is done by the time you get to where you can fling a few buzzwords at the APIs.

    --
    Have gnu, will travel.
  68. Re:When you do microservices, it isn't one project by Dastardly · · Score: 1

    All large projects should be modularized in general, if for no other reason than to maintain the sanity of people. Microservices are slapping a remote interface onto a module. In Java, a little clever use of interfaces and dependency injection, and a "microservice" can be remote or local with almost no change to client code (think proxy pattern). There is change to client configuration due to local needing data store connection information and remote needing remote discovery information.

    You could divide teams along these modules, but I find that causes a lot of coordination overhead. I like dividing teams along lines of delivering end user visible features and they work on whatever module is necessary. It helps to reduce the temptation to write the same thing 3 or 4 times in slightly different ways because no one wants to go through the effort required to convince some one else to put that in their module. I generally try to have teams work in the same area for a long period of time which means they usually don't have to be experts in every module, but instead a few that are core to their area, know a few that are peripheral, and have a passing understanding of the rest. It does require good test driven development, continuous integration, teams that will fix whatever regression they cause, and teams that respect other teams enough to "do unto others..." and write comprehensible and testable code.

    As for deciding what your modules are... That depends. It can evolve, but it requires some one to pay attention to what is being developed and realize when new responsibilities are showing up that belong in a new module. Hopefully, many team members learn to recognize and raise modularization opportunities. I like the Domain Driven Design approach as a starting point, but that it has quite a bit of overhead that would not be appropriate for some software.

  69. Re:When you do microservices, it isn't one project by Anonymous Coward · · Score: 0

    Sweet. So you still aren't trying to make a human baby every month, you're saying "a team of rats could do this software task just as well" and trying to make 9 rats instead of 1 baby. This obviously only applies to problems that can be solved with rats.

  70. Despite true Scotsman by superwiz · · Score: 1

    I know that this is a true-Scotsman type of argument, but this only proves does not necessarily disprove the hypothetical man-month argument is wrong. It proves that either hypothetical man-month argument is wrong or DevOps are not development projects (this is the more likely scenario). While it may seem like problems are fixed faster in DevOps vs SDLC, the reality is that it forces all users to be perpetual alpha testers (that's right... not beta testers... alpha). DevOps is why a cell phone bought 3 years ago cannot function anymore unless you upgrade it and slowly cede more and more control over your private info to be data mined. It makes devices less and less programmed and more and more terminals to data centers. And if the devices are not programmed, then the process which maintains them is not a development process. The most successful end-user operating system of all time is Windows XP. Except it's not. All XP machines are perpetually upgraded. It's why MS has decided that Win 10 will be last update of the operating system. After that there will only be upgrades... perpetual alpha. The truth is that it only worked because it had a solid foundation in the NT kernel. No amount of DevOps scale out could have created that.

    The mythical man month was a declaration that software which can continue to work without updates for 20 years cannot be made faster by throwing more people to plaster band-aids on it as it bleeds faster. DevOps, as a permanent fixture, is only a few years old and it only appeals to millennials who think that multitasking (as opposed to deep thinking) is a merit. The fundamental structural problems that find their way into the system and can one day bring it down will necessarily be missed. Band-aids only work for so long.

    --
    Any guest worker system is indistinguishable from indentured servitude.
  71. Re:"Agile" claims to be better than everything els by superwiz · · Score: 1

    Well, DevOps is the only way to make any use of millennials. It's geared towards people who cannot work on the same task for 3 days, let alone 3 months.

    --
    Any guest worker system is indistinguishable from indentured servitude.
  72. Re:A moment, Watson. Consider the following: by Anonymous Coward · · Score: 0

    Sweary Sherlock Holmes. If that's not a Viz character it should be.

  73. Re:When you do microservices, it isn't one project by mr_mischief · · Score: 1

    This is my point. It works very well for a well-defined, well-understood, practically standardized stack to be used to write a new application. That's not the same thing as breaking new ground on a project without all that supporting code and voluminous standards documents already helping you out. The Mythical Man Month hasn't been disproven at all. It's just that in some areas it's possible to change the scope of the project. Smaller projects don't take as long.

  74. Re:When you do microservices, it isn't one project by mr_mischief · · Score: 1

    You're very close to how I'd word it with babies. See, if you want one baby you wait 9 months. If you want 5 babies and you have one mother, you wait 55 or 60 months. If you want five babies in 9 months, you can totally have five mothers. You can't get one full-term baby any faster than 9 months by adding mothers. DevOps doesn't solve the one baby problem any faster nor the five babies by one mother problem any faster. It can solve the five babies problem if you're okay with the babies having different mothers (team leads or sub-project managers) and different DNA (team implementation styles). If the other parent (the overall project lead or the solution architect) is the same, the five babies may learn to live together as a family, although there's the possibility they won't.

  75. It's called something else by Anonymous Coward · · Score: 0

    Where I come from, we call that a "cluster f*ck". You know where 20 people are tying to work on the same industrial vehicle at once.. Versus when 3 guys do their part, then the hoses, then electricians, and so on. Each taking turns.