Slashdot Mirror


Microsoft Lauds Scrum

under_score writes "According to eWeek.com Microsoft is adopting the agile methodology called Scrum to get software built faster. Is it working? They seem to be claiming that Scrum and Extreme Programming have helped them get recent releases such as SQLServer out the door faster with better quality. Many other large organizations are also adopting agile methods including Yahoo, and Google. Are agile methods the next big thing in software development?"

299 comments

  1. So let's get this straight by Anonymous Coward · · Score: 5, Funny

    Microsoft is lauding scrum for assisting them in delivering a product late and with a smaller featureset than originally planned? Ok, that's certainly an interesting approach. Now we can hear about how scrum is responsible for bringing Longhorn out earlier and with more features than ever expected.

    1. Re:So let's get this straight by Anonymous Coward · · Score: 0

      Just think how late it would have been if they hadn't switched!!

    2. Re:So let's get this straight by Anonymous Coward · · Score: 0

      BINGO! XP is a big, red, shiny rocking-horse, all glittery on the outside but rotten on the inside.

      The project that XP advocates always point to is the CCC Payroll Project at GM... software that was delivered late, required twice as many people as predicted, went over-budget by a factor of something like threefold, delivered only a subset of the original functionality and was eventually cancelled by GM. Rumour has it that it's a career-limiting move to mention XP methodology around GM execs.

      Now, granted, scrum is a little "less crap" than many other XP methodologies, but that's like saying it's good that I only broke one leg, not both.

    3. Re:So let's get this straight by DigiShaman · · Score: 2, Funny

      Hey...so Duke Nukem Forever will come out after all?!

      --
      Life is not for the lazy.
    4. Re:So let's get this straight by ergo98 · · Score: 5, Insightful

      Microsoft is lauding scrum for assisting them in delivering a product late and with a smaller featureset than originally planned? Ok, that's certainly an interesting approach.

      I've noticed a tremendous correlation between organizations, groups, and individuals in trouble (late projects, lack of talent and capability, a feeling of being overwhelmed by the capabilities of competing groups) and an acceptance and evangelizing of silver-bullet methodologies. It's like the long-time alcoholic giving speeches on how great it is to sober, or the homeless guy talking about the importance of going to school: It's the wrong person to be talking about it. Maybe serving as a ominous warning, but not as a credible source of advice about the right course of action.

      Personally I'd like to hear what "methodology" Apple uses - They seem to continually manage to release great software. They don't seem to be buzzword laden, or full of ridiculous concepts like pair programming, but seem to use "traditional" programming models on reasonable plans with involved, motivated employees.

    5. Re:So let's get this straight by An+Onerous+Coward · · Score: 2, Interesting

      But what is wrong with it?

      You've given us a rocking-horse analogy, and you've given us a purported example of a failed project that used it. But software projects go massively over budget all the time, and they get cancelled all the time. Given that people often learn the wrong lessons from failures, the negative opinions of the methodologies by GM executives may not be a compelling indictment of the methodologies themselves.

      Or, to put it in a more Slashdot-friendly way: Who cares what a bunch of incompetent blowhards in suits think?

      Seriously, though. What specific problems have you had using these methodologies?

      I've tried XP, though in an academic setting on a small project (about two months), and I thought it was the most fun I'd ever had programming.

      --

      You want the truthiness? You can't handle the truthiness!

    6. Re:So let's get this straight by Anonymous Coward · · Score: 2, Interesting

      Apple software has plenty of bugs too. The system update that would hose disk partitions if they were labeled with spaces in their names. Airport failures if you have > 1GB of RAM in the current series of PBs. iTunes5 trashing filelists. ibook logic board problems that killed their video.

    7. Re:So let's get this straight by QuietLagoon · · Score: 1
      Microsoft is saying they are using Scrum in order to get their competitors to start using Scrum. This is very much like Microsoft telling all the Windows business app developers to move their apps to OS/2, while Microsoft abandoned OS/2 and continued developing their business apps for Windows.

      "Don't do as we do, do as we say."

    8. Re:So let's get this straight by ergo98 · · Score: 1

      Apple software has plenty of bugs too. The system update that would hose disk partitions if they were labeled with spaces in their names.

      I don't think they make perfect code. In fact, I don't think any team makes perfect code without generally unreasonable costs (e.g. costs that only a space program can accept - though even they don't make perfect code). I don't think any scrum group, agile/XP group, or any other methodology makes perfect code.

    9. Re:So let's get this straight by Reality+Master+101 · · Score: 2, Interesting
      Apple's methodology is basically "fear of Steve". Jobs is notorious for berating employees and insisting on things being done the way he thinks they should be done. Now, personality-driven development can be relatively successful. Apple has some nice stuff, but other stuff that Steve doesn't care about are absolutely atrocious (perfect example: Quicktime for Windows).

      Also look at Apple's software before Steve came. MacOS was absolute crap. Copland, which was supposed to make MacOS a modern operating system, was a late, dismal failure that was eventually killed because Apple was too incompetent.

      Apple is not a good example of what to do. Not every company can be a personality cult.

      --
      Sometimes it's best to just let stupid people be stupid.
    10. Re:So let's get this straight by Anonymous Coward · · Score: 0

      Good to see that we have an expert informing us about GM's CCC project.

      Interestingly, one of those 'C's stood for 'Chrysler' I believe. Care to let us know how GM was involved in a Chrysler project?

      Oh. Talking out of your butt again? I see.

    11. Re:So let's get this straight by NetRAVEN5000 · · Score: 0, Troll
      Almost no software is bug-free. It's just that MS software has more bugs than most other software companies.

      And correct me if I'm wrong, but aren't the iBook's logic board problems more the fault of the company that actually made the logic board? Sure, Apple makes the iBook but they use other companies' parts - they'd have to be insane to build their own processors or GPUs when there are already plenty of great ones out on the market.

    12. Re:So let's get this straight by NetRAVEN5000 · · Score: 2, Insightful
      "Also look at Apple's software before Steve came."

      Might wanna check up on your historical facts - there was no Apple "before Steve came", Jobs was one of Apple's co-founders. If you're speaking of the time he took away from the company. . . well, what'd you expect - the company lost one of its best programmers. If you want a comparison, look at the time where Bill Gates was CEO and wasn't doing any programming - we had wonderful products such as Office 97 with its "features" and its virus named after a stripper, we had Windows 98 which even crashed at the demo and really wasn't much better as a completed product - and which was so crappy they had to make a "Second Edition" to fix all the bugs, and even SE wasn't that much better. . .

      Plus, there were plenty who liked Macs - they were well-known as being the best for video and graphics editing, and for being easy to learn to use.

      Also, from the Bill Gates bio I've been reading, it sounds like he also was fairly well-known around the office for insisting things be done his way and berating employees.

    13. Re:So let's get this straight by Anonymous Coward · · Score: 1, Insightful

      If the hard drives on a Dell laptop series had a problem, we would say that Dell has quality problems. Apple is no different.

      Furthermore, like Apple gets credit for the "just works" because they restrict the hardware that their software runs on. Similarly, it has to take at least some blame for the quality of the hardware they restrict us to run them on.

    14. Re:So let's get this straight by Jeremi · · Score: 1
      Personally I'd like to hear what "methodology" Apple uses - They seem to continually manage to release great software.


      Agreed -- but I don't think it's a matter of "methodology" so much as having a really good software environment to work in. You may recall that Apple had a hell of a time getting anything major done back in the bad old days -- what was it, 8 years wasted on two or three failed efforts to update "Classic" MacOS into something decent? But now that they've successfully transferred everything over to NextStep++, they have the basics nailed and are free to concentrate on the "cool" stuff. Having a great OS with world-class APIs to code for gives their developers two advantages: (a) the underlying APIs that their code calls "just work", meaning that their new code is simpler and therefore easier to get out the door quickly, and (b) having a great coding environment attracts the really great engineers, who in turn are proud of their product and thus motivated to go the extra mile to make it even better, creating a virtuous cycle.

      --


      I don't care if it's 90,000 hectares. That lake was not my doing.
    15. Re:So let's get this straight by Anonymous Coward · · Score: 0
      Might wanna check up on your historical facts - there was no Apple "before Steve came", Jobs was one of Apple's co-founders. If you're speaking of the time he took away from the company. . . well, what'd you expect - the company lost one of its best programmers.

      You're trolling, right?

    16. Re:So let's get this straight by angel'o'sphere · · Score: 1

      If you think pair programming is a ridiculous concept you are just on craftmans level in computer science/art/programming.

      Ever saw a surgery in a movie? And? Does the chief everythign alone? Ever saw a airplane crew? And? 2 ppl in cockpit, right? Ever saw the stearman of a big ship? He is completely alone in his cabin house, right?

      Lol ...

      Most teams that use Scrum successfully are about 5 to 10 times as productive than "traditional" teams. And scrum teams very often use XP as software development methodology.

      I think if you have not tried it, you should shut up. And if you have tried it but failed in being successfull, then you should start analying WHY you where not successfull. Or you should accept that you are still an amateur and not a pro in doing software projects. (Yes, that sounds nasty ... but most people bitching about XP and similar methods don't even do basic best practices: writing tests, using an issue tracker, using a configuration management tool, having nightly builds etc.)

      angel'o'sphere

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    17. Re:So let's get this straight by dmalloc · · Score: 1

      > and an acceptance and evangelizing of silver-bullet methodologies.

      Sometimes I really do not understand the modding. If you had read about 5 minutes into Scrum material you would have noticed that Ken Schwaber and every other coach _always_ explicitly mention that scrum is no silver bullet and will never be.

    18. Re:So let's get this straight by ergo98 · · Score: 1

      Sometimes I really do not understand the modding. If you had read about 5 minutes into Scrum material you would have noticed that Ken Schwaber and every other coach _always_ explicitly mention that scrum is no silver bullet and will never be.

      Right - everyone always thinks the modding should be different when they disagree with it. Tough nuts though.

      Anyways, way to miss the point. Have you read the Mythical Man Month? What is accepted and evangelized as a silver bullet doesn't necessarily have to be held up as a silver bullet by the creators and external advocates - It has to be proposed as a silver bullet on the waylaid team. You know - way over budget, cohesion is falling apart...desperate manager suddenly proposes the silver bullet that everyone should move to a scrum methodology (or they should switch over to J2EE, or RoR, or whatever is enough of a change that it could be temporarily perceived as a silver bullet) and everything will be fixed.

    19. Re:So let's get this straight by ergo98 · · Score: 1

      If you think pair programming is a ridiculous concept you are just on craftmans level in computer science/art/programming.

      Bwahahaha. I see you drank the kool-aid and swallowed the yellow pill. Great stuff.

      Ever saw a surgery in a movie? And? Does the chief everythign alone? Ever saw a airplane crew? And? 2 ppl in cockpit, right? Ever saw the stearman of a big ship? He is completely alone in his cabin house, right?

      These analogies are so terribly ridiculous that I'm not even going to bother with them. Strangely it's the standard sales pitch though - yes, developing an internal time tracking app is just like surgery. Geez. BTW: They have two-pilots in a plane primarily because human beings die. If said pilot dies, second in command takes over (you know - because otherwise people die. Unlike that time tracking app). The second in command otherwise keeps their mouth shut and basically abides by the dictatorship first office - Completely unlike pair programming.

      I think if you have not tried it, you should shut up. And if you have tried it but failed in being successfull, then you should start analying WHY you where not successfull. Or you should accept that you are still an amateur and not a pro in doing software projects.

      Wow, you've got all the bases covered - either I haven't tried it, or I did but I suck so I should just shut up anyways. Give me a break. You guys are unbelievable.

  2. Ob. The Office Quote by chman · · Score: 2, Funny

    "Whaddya say? Let's gangbang this thing and go home."

    --
    This comment was formatted for readability, but I forgot the line break tags
  3. A good example? by blowdart · · Score: 5, Informative
    So Scrum was used on SQL Server? The SQL Server product that's very late and has had to have features disabled. Or was it used on Visual Studio 2005 perhaps? The one where they've already announced a service pack before the official launch date because people are so unhappy?

    These are scrum successes? I'd hate to see the failures.

    1. Re:A good example? by Anonymous Coward · · Score: 0

      Microsoft didn't "announce" a service pack before official launch. If you read the article, it claims that Microsoft has stated it would release a service pack in the future.

      Of course it will... that's like saying that the linux kernel is bad, because they are going to release a 2.8 kernel in the future...

      Doesn't make any sense...

    2. Re:A good example? by zullnero · · Score: 3, Insightful

      Ahh, typical XP newbies. The problem with most companies new to XP is they still want to do things the traditional way, ie., do it before a specified cutoff date. However, XP requires continuous releases, and Scrum is all about timeboxing each release. Soo...they probably tried to get too much done in too little time, went over the limit, realized that what they had wasn't acceptable, broke the XP rules, made some hasty fixes, disabled some harder to fix features, and got it out the door late anyway. The only reason I know that is because I've been through that.

      XP isn't a magical cookie cutter solution you can just apply and expect instant $$, you pretty much have to build your team around it from the ground up, have experienced XP people around, etc. In fact, it really only works if the top level management really buys into it.

    3. Re:A good example? by WhiteWolf666 · · Score: 2, Informative

      Ummm... Actually, if you go read so MS employee blogs, or go read some VS2005 articles, you'll find that a great many customers are unhappy with the state of the product at lunch, and those "won't fix" bugs were the reason MS announced a service pack at the same time.

      Go take a look:
      http://minimsft.blogspot.com/

      http://blogs.msdn.com/scottwil/archive/2005/11/07/ 490007.aspx

      --
      WhiteWolf666 an exBush supporter. All you new-school,compassionate,save the children Republicans can rot in hell
    4. Re:A good example? by WindBourne · · Score: 1
      These are scrum successes? I'd hate to see the failures.

      Windows?

      --
      I prefer the "u" in honour as it seems to be missing these days.
    5. Re:A good example? by cskrat · · Score: 1

      *twitch*

      --
      My God! It's full of eval()'s.
    6. Re:A good example? by Skim123 · · Score: 2, Informative
      Or was it used on Visual Studio 2005 perhaps? The one where they've already announced a service pack before the official launch date because people are so unhappy?

      The sad thing is even with the moaning from some customers, they'll likely agree that VS2005 is still head and shoulders above VS.NET 2002/2003.

      --

      I could not justify my existence if I were a turkey farmer. Would I terminate myself? Undoubtably, yes.

    7. Re:A good example? by Steven+Reddie · · Score: 1

      Supporting my other response, the final paragraph of the article is: "What we did here [with SQL Server 2005 and Visual Studio 2005] is we said we're not going to deliver our next release until we've got a whole big bunch of stuff done, including the integration of the .Net runtime into SQL Server, which was a huge piece of work for both of those two teams. So you tie them both up."

      So it seems that they're turning to agile now, but hadn't used it for VS2005 or SQL2005.

    8. Re:A good example? by sonamchauhan · · Score: 1

      From the microsoft-watch.com article:

      " C# blogger Eric Maino , blogged that "the biggest lesson that we learned on this most recent version (Visual Studio 2005) was that we were not agile enough and we took too long to ship.""

  4. Doubtful about the speed by dnoyeb · · Score: 5, Insightful

    I find methodologies are like other tools. If they buy you time, and your dilligent, that time will be spent on quality. So its not likely to both buy you time & quality. If you seem to have more time its only because you have not spent it on quality.

    1. Re:Doubtful about the speed by aussie_a · · Score: 3, Interesting

      With Microsoft's virtual monopoly, they have a guranteed market for a program and would have to cock it up REALLY, REALLY bad for that market to shrink to a noteworthy degree. So they need to get programs out there to rake in the cash. Quality isn't really an issue for them.

      However hopefully if they continue to use this flawed business plan, they'll continue to slowly lose customers. Well, I can dream, can't I?

    2. Re:Doubtful about the speed by jcr · · Score: 1

      they have a guranteed market for a program and would have to cock it up REALLY, REALLY bad for that market to shrink to a noteworthy degre

      Well, they've certainly done so, for many years running now. Isn't the power of inertia amazing? It's keeping them up now, but once they hit the tipping point, there'll be no saving them.

      -jcr

      --
      The only title of honor that a tyrant can grant is "Enemy of the State."
    3. Re:Doubtful about the speed by rtb61 · · Score: 1
      No dream, it is already microsoft's nightmare. The inertia in change is all about existing investment in software, hardware, data and training, that change is occuring and is accelerating is a sure sign of major dissatisfaction with the existing system.

      Sure microsoft made a lot of money by using a lot of decietfull advertising, by manipulating the oem market and by abusing the trust of their customers. Well it has come home to roost, they are starting to loose and the process is accelerating.

      The end will be nasty for M$=B$, no maybes here folks, operating systems are the most cost effective for every one when they are an effective monopoly, interoperability is easy and efficeint, the only way to achieve this safely, cost effectively, securely and reliably for every one concerned is via an open source system, Linux took the lead in open source operating systems at the right time and it is the product that Microsoft and their customer abuse made.

      No amount of marketing drivel will stop the change. Not that it will stop microsoft from repeating the same marketing crap over and over again with just minor changes in the terminology.

      --
      Chaos - everything, everywhere, everywhen
    4. Re:Doubtful about the speed by dubl-u · · Score: 1
      If you seem to have more time its only because you have not spent it on quality.

      I disagree, for two reasons.

      1. Time saved can come through reduced waste. Short-cycle iterative methods like XP and Scrum help keep expectations in line with reality. This reduces last-minute panics where something 80% complete is removed to get the product out the door. Also, the availability of early releases lets people see earlier that particular features should be dropped or changed, reducing the amount of wasted effort.
      2. Improved quality saves time. I've done my last few products test-first, where I write test code before production code. This helps make my bug rates very low (well under one production bug per developer-month), meaning practially zero time spent in bug fixes. These days I average perhaps five minutes a day using the debugger.

      And really, this is something that's obvious in a lot of other professions. "Measure twice, cut once," is a long-established method for saving time through putting quality first. I'm glad that it's finally catching on in software.
    5. Re:Doubtful about the speed by cujo_1111 · · Score: 1

      That sounds about as truthful as an tele-evangelist...

      --
      If I point out that you are incorrect, making me a foe does not make you any more correct.
  5. Scrum defined by Anonymous Coward · · Score: 0

    Don't do meetings all day and get coding instead! D'uh!

  6. This is a new thing? by sparkhead · · Score: 3, Insightful
    From the article: So Scrum is one process--the idea that teams meet once a day for half an hour, figure out what they're going to do then go off and do their work very quickly.

    Well, yeah, we call that a daily team meeting. Been going on since, oh, forever.

    As far as XP goes, don't think that's going to be a hot methodology for too much longer.

    1. Re:This is a new thing? by jarich · · Score: 1
      Two things.

      First, Scrum is a lot more than daily meetings. That's one practice among half a dozen.

      Second, a Scrum daily meeting is 1 to 2 minutes per developer. If they're meeting for 30 minutes, the teams are too big.

    2. Re:This is a new thing? by Anonymous Coward · · Score: 0

      You clearly miss the point. You see - scrum is a new methodolgy for execs to leverage to their team-mates so as they can engineer new solutions for the problems faced by the modern day office cowboy.

    3. Re:This is a new thing? by leonmergen · · Score: 1

      Exactly. And another major advantage of SCRUM is that it enables companies to always have a product they can (theoretically) ship... that's very cool for the sales, marketing, etc people...

      --
      - Leon Mergen
      http://www.solatis.com
    4. Re:This is a new thing? by Spit · · Score: 5, Funny

      No, Scrum is different. Scrum is a daily meeting that is EXTREME TO THE MAXX!!

      --
      POKE 36879,8
    5. Re:This is a new thing? by bwy · · Score: 5, Informative

      Well, yeah, we call that a daily team meeting. Been going on since, oh, forever.

      The daily stand-up is only a small component of Scrum. And the purpose of the meeting is strictly related to which tasks from the sprint backlog you were working yesterday, which ones you'll be working today, and whether or not you have any impediments. Only pigs are allowed to speak in the daily stand-up. This means that chickens (product owners, business folks, etc.) are only observers and can't butt in and introduce scope creep. How many times in a traditional waterfall methodology have you had someone add to your scope in a daily meeting? Every day they want to change a page, add a column to the database, change the way something works, etc. This goes on to the point where the product never gets delivered. Under scrum you deliver something every 30 days and at that point the product owner can decide if he really wants to change something- and he does this by adding it to the product backlog- not by grabbing someone in the hallway.

    6. Re:This is a new thing? by sparkhead · · Score: 5, Insightful
      I checked out the Wikipedia entry on Scrum, and if you'd like to fill in the missing details, please do so. What it says is in bold, what I would call it is not:

      Characteristics of scrum

      * A living backlog of prioritised work to be done;
      An updated prioritized bug and feature list.
      * Completion of a largely fixed set of backlog items in a series of short iterations or sprints;
      Picking a set of items and fixing them quickly.
      A brief daily meeting or scrum, at which progress is explained, upcoming work is described and impediments are raised.
      Progress and issue review.
      A brief planning session in which the backlog items for the sprint will be defined.
      Planning.
      A brief heartbeat retrospective, at which all team members reflect about the past sprint.
      Post mortem review.

      What's truly new here? I'm not asking to be a wiseass, I genuinely would like to know what this is apart from relabelled standard practices.

      I went to the Control Chaos site on Scrum and the header states "It's about common sense". OK, so why give it a stupid label with overblown descriptions? The "what is scrum" section on that site reads like a Dilbert strip.

    7. Re:This is a new thing? by connah0047 · · Score: 1

      As far as XP goes, don't think that's going to be a hot methodology for too much longer.

      I'm interested in your opinion...why do you believe that to be true?

    8. Re:This is a new thing? by OneOfThree · · Score: 1

      The ideas aren't new. What is new is the way they are brought together and emphasised. So what's different is that there is higher concentration of best practices than in your typical development process.

    9. Re:This is a new thing? by Anonymous Coward · · Score: 5, Insightful

      The news is (or was when Agile first came about) was packaging these practices into a methodology. And giving it a name - a name, as we all know, is the most important part of a project.

      Ten years ago, and often still today, a mainstream software engineering textbook started with "design errors are expensive to fix while programming". Which is a slippery slope that inevitably leads to the Waterfall Model.

      So most companies (not all!) took the Waterfall Model as an unquestionable law of nature. Monolithic upfront requirements specifications carved to stone, etc.

      Agile methodologies _think_ about the "obvious to any hacker" process and _measure_ it. They take what looks like chaotic uncontrolled hacking and, by thoughtfully selecting the right parts of the chaos, make something that can be directed to achieve the desired result.

      Sure there have always been programmers who used bits and pieces of Agile tricks. But rarely in a controlled, designed, documented, measurable way. Not in a way that is taught to every new employee, which is what you'd do with a systematically applied methodology.

      If you have for decades systematically used a well-thought-out collection of Agile principles you should have written a well-argued book that proves how your methodology kicks Waterfall Model's butt. If you aren't a book-writing kind of guy you could have ghosted the book. It's too late now to say "I always used a provably better methodology than the Waterfall Model, I just never bothered to tell anyone" :-)

    10. Re:This is a new thing? by maharg · · Score: 1

      Hear hear. Where I work, we have been using scrum for a couple of years, it works very well for us. We have 2 week sprints for finer granularity of deliverable code, and use XPlanner (http://www.xplanner.org/) for tracking the product backlog and sprint stories / tasks - XPlanner displays sprint progress in the form of a burn-down graph, which is great as you can see at a glance how well the sprint is going. As pigs also positively encourage chickens to attend, and that's very useful for everyone.

      --

      $ strings FTP.EXE | grep Copyright
      @(#) Copyright (c) 1983 The Regents of the University of California.
    11. Re:This is a new thing? by ScrewMaster · · Score: 2, Insightful

      There is a fundamental flaw in any such methodology, though ... it's called "discipline." I've worked in too many places where there was always a reason why established procedure had to be bypassed. Oh sure, it was always a "good" reason, but nevertheless if management itself is unwilling to live by its own rules I can guarantee you the programming staff won't either. Generally speaking, things like Scrum will only work in larger organizations where a top-down policy can be enforced. At least initially: you have to work past the resistance that most teams have to changing the way they do things. Once they see the benefits to them (always assuming that there are any) then the new processes may become more self-maintaining. But that's not so easy to achieve, because there will be a period of reduced productivity while everyone is trying to get rid of the old and figure out the new. And, depending upon how it is handled, that can easily evolve into active resistance. That's the point where, I think, a lot of these schemes fail: "See? We tried it for a month and now look how screwed up everything is. Let's go back to the old way."

      --
      The higher the technology, the sharper that two-edged sword.
    12. Re:This is a new thing? by Zigurd · · Score: 4, Informative

      Scrum is the upshot of the fact that standard project tracking tools don't adapt well to software projects. You can't see the difference between 30% or 70% of the coding on a large task being complete, so Scrum tells you not to have tasks that large and to only count something complete when it is 100% complete. Even the XP rule of thumb that tasks should not take more than a week to complete is too coarse-grained.

      Scrum admonishes the manager to ask "What got completed today?" If the answer is "Nothing." then you don't really know if project completion is closer or not.

      That is common sense, but it is uncommon in projects that have misapplied project management tools.

    13. Re:This is a new thing? by vidarh · · Score: 1
      I can't speak for the poster you replied to, but I can give one good reason: Many developers refuse to do it. Personally, I'd quit within days if I was forced to do pair programming for instance - I can't work productively with some annoying backseat coder hanging over my shoulder and I would be bored to death watching someone else code. Yes, I've tried it. Hated it intensely.

      Off the bat I can't think of any other methodology I've looked at that have been capable of causing such intense hatred from people as XP.

      That does NOT mean that I will not sit down with someone while they try to solve specific problems or walk me through code if they ask me to, or have people do the same for me - it means I will only do it when there are specific problems that require an extra head or as part of training.

      But the fact remains that XP is a methodology that only works for some personality types, and when many of the people it fails for are highly productive when developing using other methodologies, forcing XP on people becomes a barrier to being competitive and also means that many companies simply will steer clear even though it may work well on a voluntary basis.

    14. Re:This is a new thing? by bwy · · Score: 1

      I think larger organizations are the ones that would have issues implementing scrum. They're typically in love with their monolithic waterfall methodologies just because that is how business has "always been done."

      On the other hand, I've worked for really small companies where it wouldn't work either. This is the kind of shop where people would piss on their desk if a client said so, because the finances are so bad. The "do anything for a buck" mentality. With scrum, if pissing on the desk isn't in the sprint backlog, you can't do it.

      I suppose I'm fortunate to work for a smaller company that is very successful. We have a very strong adoption of Scrum at all levels. I believe Ken Schwaber has even sat in on some of our ativities.

    15. Re:This is a new thing? by bwy · · Score: 1

      We use XPlanner as well. Seems to work pretty good except I think the burn downs are produced via a batch job every night? It would be slick to get real time burn down charts. I haven't looked into it enough to really understand what the limitation is. Do you have the same issue?

    16. Re:This is a new thing? by vidarh · · Score: 1
      In my "traditional" project management course syllabus, the issues of how much detail to break tasks down into and the various methods of tracking progress (such as by complete tasks, by estimated time remaining per task, by budgeted cost of work completed/scheduled or actual cost of work completed/scheduled and a large number of others) were covered in detail.

      There's nothing new here - most of the texts on project management we worked with were 10-20 years old, and all covered these issues and pros and cons for all of them.

      The problem isn't that traditional project management can't be easily applied to software, but that most "project managers" have no training beyond how to start up Microsoft Project and think that project management consists of moving the percent complete marker on a GANTT chart.

    17. Re:This is a new thing? by Scurrilous+Knave · · Score: 3, Insightful

      I've been in the software biz for a long time, and I've come to believe that the salient point is not what the "next big new thing" is in software development methodologies, but that there always is a next big new thing, every few years. To me, this means they haven't found one yet, at least one that works. Oh sure, most of them have contributed some new ideas and some benefits, but all fall short of the elusive goal, and more importantly, of their own promises.

      Here's the way I envisioned it: A software manager and a hardware manager are playing golf. The HW manager says, "Man, my shop just started using CAD/CAM/CAE, and our productivity went up by a factor of three, and our error rate went down by the same amount!" The SW manager says, "Man, I gotta get me some of that."

      The first time I heard about it, it was called CASE, for Computer-Aided Software Engineering. It had some interesting ideas, but wasn't the silver bullet for software development that CAD/CAM was for hardware.

      And with CASE, as with every other silver-bullet attempt they've made since then, a flock of entrepreneurs showed up with products to hawk, promising to fix all the software manager's woes. I can't remember all the products and methodologies that have been foisted onto me by eager but underinformed managers, but they have been legion. Logiscope, CMM, Six Sigma, XP ... I've tried to block them from my memory. This Scrum sounds interesting, though as you and others are pointing out, not shockingly novel. But by the time it gets filtered through my company's Bogosity Injector, it'll be an embarrassment.

      So why is that? Why haven't software developers gotten the same sort of help from automation and rigorous methodology that hardware designers have gotten? Here's where I lose my score: Because software is hard. It is, in many important ways, more difficult than hardware design. I believe that software design and development is the single most complex and difficult human endeavor ever undertaken. (Of course, as a programmer, I would think that, now wouldn't I?)

      Let the flames begin!

    18. Re:This is a new thing? by Anonymous Coward · · Score: 0

      I think people make the mistake of thinking of software as "engineering" when it's stage of evolution puts it in the "crafts" category.

      How to distinguish? Ask two engineers to do something, they'll use largely the same tools and methods to come up with the same answer. Ask two software developers to come up with a solution. They'll likely not even use the same language. At this point, the dynamics of the space is too much for engineering.

      The mainframe world back about 30 years was closer to engineering than the distributed computing world of today. It's to be expected, the topology has become complex. Eventually, things converge and engineering can start.

      Software *is* hard. Because of the state of flux, it takes a skilled craftsman to sculpt something nice from the chaos. Eventually, computer software will be easier (consequently, engineering-like) and the "craft" will move on to something else (probably back alley gene manipulation a-la Blade Runner). And it will be the computer software produced by engineers that will enable the next craft.

      Like the HW engineers are doing for the software craftsman now.

      Pretty much standard technological evolution.

    19. Re:This is a new thing? by bataras · · Score: 1

      I did all of those things on a very large team at a very large company for a very large project that was very late.

      Wasn't called "Scrum" back then. Was called "Crunch Time". And the reason you have it is you've mismanaged your very large project over the months and now there's a buttload of stuff to do (called a "backlog or prioritized work") that you promised your bosses and the outside world.

      Being in Crunch Time is a *bad thing*.

    20. Re:This is a new thing? by bad+jerkface · · Score: 1

      Scrum is brought to you by the new Gamestation 256: It's slightly faster... TO THE MAX!!

      --
      It's a hand twinkler, you dumbass! And I got a bag of whoopass for you!
    21. Re:This is a new thing? by sparkhead · · Score: 1
      What you're describing is an iterative design and implementation model. Again, this is not a new thing.

      All the aspects of scrum are already there. Getting people to follow the procedures in place is and has always been the problem.

      Yes, someone mentioned something about "the chickens can't talk, only listen, this prevents scope creep. Only the pigs can talk". Apart from sounding like a chapter out of Animal Farm, that's always been the case. We deal with planned functionality and only deviate if absolutely necessary.

      There's nothing new here. It really does sound like, to paraphrase another reply here, BEST PRACTICES, TO THE EXTREEEEEEEME .

      Seriously, look at this from the ControlChaos page:

      What is Scrum?

      Scrum is an iterative, incremental process for developing any product or managing any work. It produces a potentially shippable set of functionality at the end of every iteration. It's attributes are:

      * Scrum is an agile process to manage and control development work.
      * Scrum is a wrapper for existing engineering practices.
      * Scrum is a team-based approach to iteratively, incrementally develop systems and products when requirements are rapidly changing
      * Scrum is a process that controls the chaos of conflicting interests and needs.
      * Scrum is a way to improve communications and maximize co-operation.
      * Scrum is a way to detect and cause the removal of anything that gets in the way of developing and delivering products.
      * Scrum is a way to maximize productivity.
      * Scrum is scalable from single projects to entire organizations. Scrum has controlled and organized development and implementation for multiple interrelated products and projects with over a thousand developers and implementers.
      * Scrum is a way for everyone to feel good about their job, their contributions, and that they have done the very best they possibly could.
      That's the text I mentioned sounds like a clip from a Dilbert comic.

      It's the "I'm OK, you're OK" approach to development. Cutsey catch phrases and feel good statements might sell books and courses, but it's the same old stuff repackaged. And will have the same problems.

    22. Re:This is a new thing? by ABCC · · Score: 0

      I don't know much about scrum, but I'm not surprised to hear that it's easier to implement in a small team rather than a big org. As for Extreme Programming, if it's anything like Extreme Ironing then it's doomed to fail, although possibly a good definition of 'Waterfall Methodologies'!!

    23. Re:This is a new thing? by Arandir · · Score: 1

      The waterfall model works. The waterfall model gets you the highest quality code. It could be the perfect process... but for it's single sole disadvantage: it's slow. It's so slow that you need to combine it with an iterative process, otherwise you can't keep up with the customer and marketplace requrirements. And even then it's still too slow.

      So what do we do instead? We use processes which let us get two year products out the door in two months. All would be good, except that those two month products are now unusable. No only are they piles of bug infested shit, they STILL dont' meet the customer's requirements, because they were developed so fast there was never any time to get the customer's complete input.

      A waterfall model is nothing more than creating software step by step. All other engineering disciplines have been doing waterfall models since the dawn of time. Analyze, design, build, test, maintain. Every step is crucial, and every step must be done in order.

      --
      A Government Is a Body of People, Usually Notably Ungoverned
    24. Re:This is a new thing? by GeekyMike · · Score: 1

      Wasn't called "Scrum" back then. Was called "Crunch Time".

      When I was learning to play rugby with my university club I played in the prop position, which is on the front line that slams into the opposing team. I called scrum everything from "Crunch Time" to "Oh Shit". Nice to know sports analogies transfer properly to coding.

      --
      Beware the fury of a patient man
      - John Dryden
    25. Re:This is a new thing? by crazyphilman · · Score: 1

      What's new, I think, is the iterative aspect of Scrum and other agile methods. When you look at them in contrast to up-front methods like Waterfall, they look pretty good. But it's not all that new; RUP's been around for a while, and they use an iterative-incremental method.

      Anyway, it's just a word. It's shorthand for a whole set of characteristics, so we can blab about it around the watercooler without taking ten minutes to finish our sentences, you know? There are probably people who turn it into a fetish and write up huge lists of buzzwords, but the developers are probably interpereting "we'll use Scrum" as "Iterative/incremental, plus more meetings, and a shorter develop and test cycle".

      --
      Farewell! It's been a fine buncha years!
    26. Re:This is a new thing? by Anonymous Coward · · Score: 0

      The problem with the Waterfall model is that you can't go back to the previous step.

      So here we have at least three alternatives (unlike grandparent which falsely asserts that it is
      a duality, ie if you are against agile you must be for Waterfall):
      (1) Waterfall (widely loathed and despised)
      (2) Agile (widely loathed and despised)
      (3) Iterative

      What is the iterative approach? It is the best of both worlds (not all of waterfall is bad, not all of agile is bad).
      Unlike Agile, you have real documentation (as compared to oral documentation etc), but unlike the waterfall
      if there is something wrong with the documentation you can go back and change it.

      You can toss back the design, you can say that the Emperor has no clothes (or rather... the architect has no clue).

      You know, back in the 90s we had things like Rapid Application Development (RAD), and JAD.
      We even had Unit Testing way back then. Amazing eh?

      *The difference* now is that there are companies of consultants who make money from convincing managers
      that their existing processes are rubbish, and that they 'need' the Agile process. Oh, and who can provide that?
      Why, the consultants of course!

      Big firms like Anderson's were doing this for years, so that's nothing new either. The difference being that the
      Anderson's consultants were not as nasty about attacking 'the enemy' (ie everyone else) as Kent Beck's little
      gestapo that runs around spouting things like "if you don't like Agile you must be afraid of change".

      Why do they re-brand old ideas and present them as new things? (It's not just the Agile guys, the Iterative guys
      are effectively doing the same thing, just with a lot less name calling and ad hominem attacks).

      Because they make money off it.

      Another way of looking at it:
      Waterfall = Catholic church
      Iterative = Mormons
      Agile = Scientology

    27. Re:This is a new thing? by smithmc · · Score: 1

        What's truly new here? I'm not asking to be a wiseass, I genuinely would like to know what this is apart from relabelled standard practices.

      What would be truly new and effective would be for people to stop making up and relabelling software processes, and to start actually doing them Almost any process is better than no process.

      --
      Downmodding is the refuge of the weak. Don't downmod, make a better argument!
    28. Re:This is a new thing? by tmortn · · Score: 1

      SCRUM is a very large stinking steaming pile of bovine excrement. This is not to say that people using it can't accomplish good things. But I find it ridiculouse to atribute success or failure of projects to management buzz word models. Any successfull code project of any scale from the learning student project to a major microsoft effort has some things in common. Clearly defined and understood goals, focus on attaining them, and sufficient time to accomplish them. SCRUM will not get you these things. It is just a wrapped up ready made management model full of buzz words that proports it will deliver these things if you just follow these X number of easy steps... and buy the book in which they are lined out for you of course. At its heart it is an attempt to reign in management idiots by providing a buffer to their ignorance of how good software actually gets developed. So there is this honest effort at creating a way to tell management to take a flying leap once development starts in a way they won't get offended and hopefully still feel involved. The problem is that if management wants to interfere then adopting some set of buzz words and trying to redefine meeting scope so they can't interfere isn't going to work.

      If management cannot work in harmony with the development team (and vice versa) then it dosn't matter what alphabet soup methodology you subscribe to. Aint nuthing gonna get done good, right or fast. If they can work in harmony then it dosn't matter what you call your methodology. SCRUM and all other pre-packaged management processes are attempts to "bottle" success and sell it to suckers. Somebody created a focused team, fended off idiotic managment and then gave their meetings cute names and invented some cutsie stories with veiled insults and started marketing their solution to others. Then they started laughing all the way to the bank when people bought their 'book' trying to capture their success.

      You can certainly learn from others success but these buzz word deals are like clothing that comes in one size fits all... which we all know damn good and well means one size fits none. In an already functioning successfull development team scrum and its ilk are a solution in search of a problem. For non-succesfull teams they have issues that will be issues with or without scrum. The success of a scrum team does not come from calling your daily meeting a scrum and having tightly scoped development cycles called sprints. It comes from having a team which has meaningfull communication when needed and clearly defined goals that don't change unecesarrily. You can have these things with or without scrum terminology, and you can fail to have them with or without scrum terminology. In short the success or failure of a development team has fuck all to do with SCRUM implementation. The only differnce is in whether or not you spent 19.95 for the book that gave you the terminology to use. Frankly if you are in this business and you have to buy a Scrum book to understand that adding features mid development is a problem, that meetings should be focused and that you have to be adaptive to issues as they arise... well I doubt buying a book is going to help to much.

      --
      I don't ask you to be me. I only ask you not expect me to be you.
    29. Re:This is a new thing? by dubl-u · · Score: 1

      [...] if management itself is unwilling to live by its own rules I can guarantee you the programming staff won't either

      Strongly agreed!

      Generally speaking, things like Scrum will only work in larger organizations where a top-down policy can be enforced.

      My experience is just the opposite. I've had the most luck with XP in smaller companies. Why? Because XP provides a number of feedback mechanisms to get people to behave sensibly. In small companies, people can see it working. But in big companies the people with the power are often so far from any contact with business realities that theory, politics, and ignorance can override behaviors that are obviously sensible to the teams doing the work.

    30. Re:This is a new thing? by Anonymous Coward · · Score: 0


      I wish you hadn't posted anonymously. I want to know who is able to write so concisely and clearly and with such insight.

    31. Re:This is a new thing? by Cederic · · Score: 2, Interesting


      Waterfall make work in theory.

      In practice I've yet to work for a business willing to wait 2 years for their product. Where the business environment, aims, markets don't change for that period of time.

      Pragmatically Waterfall doesn't work. It often almost works, and most developments muddle through. But my customers want new functionality next week, not next year. They'll wait until next month, but any longer and they start complaining.

      Since I know of ways of successfully delivering next month, I'd be failing them to force them to wait until next year while I kick off a full waterfall process. Especially since they wouldn't give it the support it needs to work properly.

      I can deliver every 2 months. I can deliver approximately bug-free code in that timeframe. I can deliver genuine business advantage, meeting actual business need and keeping customers happy. And I can repeat it.

      Other engineers don't write software the way they build bridges, design power stations, construct roads. Oddly enough some of them have tried - and if they'd succeeded they'd be winning ALL the business. Different environment, different constraints, and therefore different approaches needed.

      Incidentally, "every step must be done in order" is very wrong. Test before you build - how else do you know you built the right thing. (And test again after.)

      You also forgot various steps, but that's a whole other discussion..

    32. Re:This is a new thing? by Arandir · · Score: 1

      You can't test before you build, because there isn't anything to test! You can of course design your tests before you build, but that's part of design.

      Otherwise I agree with you. If you had read my original post, you would have known that. The fatal flaw in the waterfall model is it's slowness. Period. Everything else about it works, and works well. If developers didn't cave in to customer demands and deliver shoddy products quickly, then maybe customers would start to realize that good software takes just as long to build as a good bridge.

      Using an iterative waterfall model is the best method, but it still won't get a two year project out in two weeks. Someday the customer base is going to stop accepting slapdash bugfest prototypes, and then the Agile/Scrum/SilverBullet hype will end.

      --
      A Government Is a Body of People, Usually Notably Ungoverned
    33. Re:This is a new thing? by maharg · · Score: 1

      Yep, they run once a day. Just in time for the scrum !

      --

      $ strings FTP.EXE | grep Copyright
      @(#) Copyright (c) 1983 The Regents of the University of California.
    34. Re:This is a new thing? by angel'o'sphere · · Score: 1

      What's truly new here?
      Nothing, except probably the combination in one mthod.

      I'm not asking to be a wiseass, I genuinely would like to know what this is apart from relabelled standard practices.
      New is, that no one really does this as standard practice :D

      Scrum as a marketing machine tries you to do standard practices and tailors some of them to a way that amke the whoel method scrumish

      E.g. most projects I'm on simply refusse to do this:

      A brief heartbeat retrospective, at which all team members reflect about the past sprint.
      Post mortem review.


      And most projects dont do sprints either, but are organized around milestons. Most projects don't use a prioritized feature least (aka backlog) but a hughe MS Word document as "kind of specification" and a MS Project plan as "design" (well, design coems from making tasks and assigning those tasks to people, no?).

      Oh, I forgott the countless projects where people just jump from a big Word document to coding ....

      angel'o'sphere

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    35. Re:This is a new thing? by angel'o'sphere · · Score: 1


      I can deliver every 2 months. I can deliver approximately bug-free code in that timeframe. I can deliver genuine business advantage, meeting actual business need and keeping customers happy. And I can repeat it.


      If you can do all that, it would be cool if you would explain us what you do :D
      E.G. If your code is nearly bug free, you have a way to avoid bugs, likely a way how to prevent bugs to creep into your old bug free code etc.

      I bet you do most of the stuff that either Scrum or XP call a best practice in their method. So you are doing a tailored Scrum or XP without pair programming to your one man team.

      angel'o'sphere

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    36. Re:This is a new thing? by Cederic · · Score: 1


      I do what the big boys in this industry do. I learn, try out, evaluate and apply techniques to improve what I do, and how I do it.

      TDD works fantastically well for me. Pair programming works superbly for me. Automated system testing is buggeringly hard to set up but really speeds things up. Sitting next to the customer provides an order of magnitude improvement in specification and delivery. Short delivery timescales with ruthless prioritisation keeps things focussed.

      It's hard to put all that together. Very hard. I'll admit the organisation I work for at the moment just isn't structured to support it. Worse, they've outsourced development so there are two continents between the customer and the developer. But I have done it in the past, and I know I can do it again.

      ~Stuart

  7. Deadlines by aussie_a · · Score: 4, Insightful

    Looks more like developers are being pressured to achieve ridiculous deadlines, with a fancy name tacked onto the pressure. I also wonder what sort of security is being done to programs developed via the scrum method. Is the scrum JUST for the programming (and/or the preceeding stages)? Or is it the whole thing, testing included, in this "quick, quick" method? If it's the latter, I can't see how testers are going to be able to truly secure the software, so we'll continue to get unsecure software from Microsoft. Thanks a lot, you just made my wish to migrate to Linux increase.

    1. Re:Deadlines by DaedalusHKX · · Score: 1

      If you want help migrating to linux, I'd be glad to help, lemme know what kind of machine you have (specific hardware, age of rig, etc, what you're running and what you want to run it for). I also want to know how tech savvy you are since that will play a big role in which linux distro I'd recommend. (if you say Doom3 and Quake4, I will only say "Gentoo Linux"). Those games have Linux clients, and if you prefer just using the windows installers you can always just use Cedega or Wine.

      ~D

      PS - I am extremely busy during the week, but I do get around to answering questions or helping people at night (on shorter days :) at least until I get my new wireless laptop, then I can help from wherever.)

      --
      " What luck for rulers that men do not think" - Adolf Hitler
    2. Re:Deadlines by aussie_a · · Score: 1

      Wow, thanks a lot for the offer. I've tried numerous times in the past (with and without help from nice people like you) and in the end there's always one necessary feature that doesn't work. So at the moment I'm not looking to migrate to Linux (especially with having a family who uses the same computer, having to reboot it whenever they wanted to hop on would become a pain. And they refuse to use Linux even if I -did- get it working). In a couple of years once I've got a place of my own I'll definitely be looking to move to Linux, and hopefully by then the few apps I've got that are Windows only will have been ported to Linux, or comparable alternatives would have been developed.

    3. Re:Deadlines by Cally · · Score: 1

      > Thanks a lot, you just made my wish to migrate to Linux increase.



      Come on in, the freedom's lovely :)
      --
      "None are more hopelessly enslaved than those who falsely believe they are free." -- Goethe
  8. But will our management buy it? by Elrac · · Score: 2, Interesting
    I'm happy to hear that XP practices are helping some high-profile companies. Alas,
    • I work for a company that adopts new trends at least 5 years late - that's about when they're being phased out elsewhere. For example, we're now deeply committed (or should I say sentenced?) to J2EE, RUP and outsourcing;
    • Our company works on a contract basis, with complete and "firm" specifications (BDUF, anybody?) going in and deliverables coming out, with no wiggle room, no negotiation (at least from our side), no onsite customer.
    Given such an environment, which I'm sure will sound familiar to others, do we stand a chance of ever being able to work this way too?
    --
    When one person suffers from a delusion, it is called insanity. When many people suffer from a delusion it is called Rel
  9. Thought this could help by exaviger · · Score: 2, Informative

    Had no idea what Scrum is so found this

    What is Scrum? Scrum is an iterative, incremental process for developing any product or managing any work. It produces a potentially shippable set of functionality at the end of every iteration. It's attributes are:
    * Scrum is an agile process to manage and control development work.
    * Scrum is a wrapper for existing engineering practices.
    * Scrum is a team-based approach to iteratively, incrementally develop systems and products when requirements are rapidly changing * Scrum is a process that controls the chaos of conflicting interests and needs.
    * Scrum is a way to improve communications and maximize co-operation.
    * Scrum is a way to detect and cause the removal of anything that gets in the way of developing and delivering products.
    * Scrum is a way to maximize productivity.
    * Scrum is scalable from single projects to entire organizations. Scrum has controlled and organized development and implementation for multiple interrelated products and projects with over a thousand developers and implementers.
    * Scrum is a way for everyone to feel good about their job, their contributions, and that they have done the very best they possibly could.


    Original article can be found: http://www.controlchaos.com/about/?SID=8ef7eb5b2a0 69a2710abef27d02c851f&SID=7da824062baf60b8e78ec5f9 9836f092

    1. Re:Thought this could help by Doppleganger · · Score: 1

      Sounds better than the list I got..

      scrum is in fact much more predictable and effective than manufacturing
      scrum is also awarded whenever a pass is made in which the ball goes forward
      scrum is an impossible dream
      scrum is to restart play quickly
      scrum is "back foot"
      scrum is forbidden
      scrum is awarded at the place of infringement
      scrum is very different to a gridiron scrimmage


      Rats, maybe Googlism wasn't the best place to look. Though, if it's anything like some of the other programming method buzzwords out there, the "impossible dream" one might be onto something...

    2. Re:Thought this could help by exaviger · · Score: 1

      heh
      Was waiting for that one.

  10. Agile can help by jarich · · Score: 0
    Agile methods, properly used, are the best way I know to improve product quality, keep a handle on what everyone's doing , and improve the developer's skills.

    It's not a silver bullet but a very useful tool. Even if you don't adopt them wholesale, you should take a "survey course" to see what it's all about. Pick a few of the practices and try them out. See what works for you.

    At the risk of sounding like a shill, check out my book (or one like it) to a quick intro some agile methods.

    http://www.pragmaticprogrammer.com/titles/prj/

    1. Re:Agile can help by Tim+Browse · · Score: 1
      At the certainty of sounding like a shill

      Fixed that up for ya.

    2. Re:Agile can help by Anonymous Coward · · Score: 0
      No, there is absolutely no proof correlating anything agile with quality or even project success.


      The only people experiencing substantial amounts of repeatable success with agile are agile coaches, consultants and authors of books on agile.

  11. Microsoft lauds Scum by Frankie70 · · Score: 3, Funny

    How many people are going to read this as Microsoft lauds Scum?

    1. Re:Microsoft lauds Scum by cciRRus · · Score: 1

      I happen to read this as "Microsoft loads scum". Yikes!

      --
      w00t
    2. Re:Microsoft lauds Scum by Phil246 · · Score: 1

      people++;
      :(

    3. Re:Microsoft lauds Scum by GuyWithLag · · Score: 1

      That's nothing - I first parsed the title as 'Microsoft lauds Scrotum' and went WTF??

    4. Re:Microsoft lauds Scum by Anonymous Coward · · Score: 0

      Argyle wearing scum. Or is it scum wearing argyle? More laudanum for the argyle wearing scum in marketing to give out? Could probably have fun with this all day.

      Anyone have a Microsoft rep in the office day? Check their socks, I dare you, keep a straight face and TRY not to be too obvious! This assignment could require some agility. Are they argyles? Report back here, we are waiting.

    5. Re:Microsoft lauds Scum by Anonymous Coward · · Score: 0

      I thought Lucasarts created Scum years ago.

    6. Re:Microsoft lauds Scum by Anonymous Coward · · Score: 0

      I did! Seriously. Not wearing my glasses.

      But since you're asking, can that be made the new poll? I'm so tired of that old Open WAP question already. Agility, people! Quick, quick, quick!

    7. Re:Microsoft lauds Scum by durandal61 · · Score: 1

      Me Too!

      --
      My motorbike travels in Chile.
    8. Re:Microsoft lauds Scum by Cro+Magnon · · Score: 1

      *cautiously raises hand*

      --
      Slow down, cowboy! It has been 4 hours since you last posted. You must wait another few hours.
  12. "Scrum", eh? by __aagctu1952 · · Score: 5, Funny

    So... does that make Microsoft a hive of scrum and villainy?

    1. Re:"Scrum", eh? by ketsugi · · Score: 1

      I'm not sure, but we must be cautious.

    2. Re:"Scrum", eh? by Anonymous Coward · · Score: 0

      Well according to Gates, this will make Microsoft scrumdiddlyupmtious.

    3. Re:"Scrum", eh? by sharkey · · Score: 1

      Yes. Yes it does. And they are VERY wretched.

      --

      --
      "Outlook not so good." That magic 8-ball knows everything! I'll ask about Exchange Server next.
    4. Re:"Scrum", eh? by chris_sawtell · · Score: 1
      So... does that make Microsoft a hive of scrum and villainy?
      No, it means they are preparing themselves for the inevitable trouncing by the All Blacks' Scrum
  13. Re:Of course... by Anonymous Coward · · Score: 0

    First to go is scoping (deliver less) then documentation and Testing,the success criteria. The patient has died, but the operation a success.

  14. New Big Thing by alnya · · Score: 2, Insightful

    This is something else to be looked at and might well be a good approach. Of course, in reality, the best thing to do is to cherry pick parts of methodologies you like and that work for you. We tend to use test-driven development in conjunction with agile techniques and that works for us - everyone is different. I've yet ot see a fully agile approach be successful however (in an "on time on budget fully featured sort os definition). Of course, YMMV.

  15. The next big thing... by Anonymous Coward · · Score: 0
    or the next buzzword for managers?

    For my part, I hate having someone sit at my desk and debug with me for 10 minutes; XP sounds like torture that would cancel out any advantages it might have.

    An awful lot of these things (from "methodologies" to the latest fads in "design patterns" and C++ template overusage) sound to me like coders who saw the writing on the wall when the first shop opened in Bangalore and started looking for something that would get them published / get them tenure / give them an "expert in" edge in the consulting market. I can't fault people for going into business for themselves (I have a family too) but it sure is annoying to deal with the consequences.

    1. Re:The next big thing... by Anonymous Coward · · Score: 0
      This one is also for management. Always ready to ship and quick cycle times are perfect for PHBs who have no idea of exactly what they want, want it yesterday, and arrive at product design by successive approximation, and wonder why their Achilles never catches the tortoise.

      Sure, SCRUM has all sorts of things to prevent that (don't they all?), but pick-and-choose buffet-style adoption of a methodology will short-curcuit that.

    2. Re:the next big thing... by Anonymous Coward · · Score: 0

      because they forgot that OS is not an app and should not be the part that dictate the hardware speed, memory and storage requirements.

  16. Combatting OSS by Kawahee · · Score: 2, Informative

    I think it's a new method to combat OSS. It's been long known that OSS is fairly slow to come around, and so far, Windows and that has taken a long time, too. But if Microsoft can push out the next version of Windows/Office/VS .NET faster and with a higher quality of code, potentially they can take on OSS faster and harder than ever before.

    And I'm not talking upgrading software, like VS .NET 2007 or Office 13 (lucky), but also new software, if not new software from codebases such as Microsoft Tool X or Tool Y, like the Speech SDK that they've got out there, - or any other Microsoft Research project.

    --
    I'll subscribe to Slashdot when I see a month without a dupe, a typo, or an article the "editors" didn't read.
    1. Re:Combatting OSS by free2 · · Score: 1

      I think it's a new method to combat OSS.
      Not really new. According to Wikipedia, Scrum was first used at Easel Corporation in 1993.

      As for "Schedule a demo of the software with the customer/client of the software for one month from now", OSS CVS snapshots are quite close to this.

      http://en.wikipedia.org/w/index.php?title=Scrum_(m anagement)&oldid=27780071

    2. Re:Combatting OSS by Anonymous Coward · · Score: 0
      if Microsoft can push out the next version of Windows/Office/VS .NET faster and with a higher quality of code, potentially they can take on OSS faster and harder than ever before.

      Hail, prince of the obvious.
  17. Could be.... by Steven+Reddie · · Score: 2, Insightful

    There isn't enough information to determine whether or not use of scrum was a success of failure. You're leaning toward failure, but it's just as possible that they switched methodologies toward the end in an attempt to get a late product out the door.

  18. big things by famebait · · Score: 3, Insightful

    Are agile methods the next big thing in software development?

    No, they are the current/i> big thing. No doubt the hype will pass, but I do hope and believe and they bring some things to the table that deserve to last.

    The focus on the way people actually work, on optimising that in a realistic way, on work satisfaction, on recognising and handling uncertainty in stead of ignoring it, and on pulling the curtain on a lot of practices that everyone knows don't really work but kept pretending anyway. All long overdue lessons for a methodology-field too long too dominated by good-on-paper theory and wishful thinking for managers rather than real experience with what works.

    --
    sudo ergo sum
    1. Re:big things by MasterDirk · · Score: 1
      Please!

      There is/i> a Preview/b> button.../p>

      --

      "Programming is like sex: one mistake and you have to support it for the rest of your life."

    2. Re:big things by marcosdumay · · Score: 2, Interesting

      My guess is that XP is working only because it banished the "good on paper" metodologies and because of the refactoring formalism. All the other points you cite are a description of "good management", and as so, don't change just because the company adopted another metodology. But getting ride of a lot of useless paper (by letting the programers decide what is usefull) is the way to go.

    3. Re:big things by Tim+Browse · · Score: 1

      Preview? Foolish child. You'll be expecting spelling and grammar next!

    4. Re:big things by famebait · · Score: 1

      All the other points you cite are a description of "good management", and as so, don't change just because the company adopted another metodology.

      Scrum is a (project-)management method. It can fit together with various development methods and practices (inluding XP) as long as they are suitably flexible, but doesn't really concern itself much with that side of things.

      --
      sudo ergo sum
  19. Debian? by Commander+Spock · · Score: 3, Funny

    Any word on whether Debian plans to adopt this development method?

  20. Agile methods are not the next big thing by Anonymous Coward · · Score: 0

    They are the last big thing. They were the next big thing five years ago. Under which rock did the article's author live?. They have gone the way of the hype. They are as much the next big thing as FORTRAN.

  21. Why XP works when it works. by ankarbass · · Score: 5, Insightful

    When XP works, at least in some cases, it works not because it's the best methodology. But because it is the one that people will do. It is "A" methodology where there either wasn't one, or there was something in name only which people paid lip-service too. For the programmer and manager alike, XP is easy to grasp and start implementing right away. Compared to more traditional methods, it's a simple method that eschews excess paperwork and you can explain the basic idea over lunch.

    I also think there is something to the transparancy of the work environment. It's a lot harder to read slashdot when you are "pair-programming" or all of your peers are sitting in the center of a large room. It might just be that you get more done because it is harder to slack.

    --
    Wanted: Clever sig, top $ paid, all offers considered.
    1. Re:Why XP works when it works. by ankarbass · · Score: 1

      Of course I meant:

      When XP works, at least in some cases, it works not because it's the best methodology, but because it is the one that people will do.

      and I even used preview, damn it!

      --
      Wanted: Clever sig, top $ paid, all offers considered.
    2. Re:Why XP works when it works. by AndroidCat · · Score: 3, Funny

      Have you considered adopting eXtreme Posting methodology? ;)

      --
      One line blog. I hear that they're called Twitters now.
  22. In certain languages, such as Romanian. by DaedalusHKX · · Score: 2, Funny

    "Scrum" means ASH... I guess... perhaps they refer to burning their products to the ground? Or what will be left of M$ once this latest FAD fails?

    Please God let it be so!!

    ~D

    PS - don't you love being well traveled, and multilingual? Makes the world shine in new colors. (Now I need to learn french since they have really hot women.)

    --
    " What luck for rulers that men do not think" - Adolf Hitler
  23. An XP Book Review... by mindpixel · · Score: 3, Informative

    This is a very timely posting for me...Monday I have a meeting to get the budget to make create an XP team to build Ajax internal systems. Good to see the large entities are thinking the same way.

    Here is my review of Ron Jeffries, Extreme Programming Installed from April 25, 2001:

    People are starting to take XP very seriously simply because it delivers quality code instead of just documents about code. The core philosophy can be summed up: "A feature does not exist unless there is a test for it." (P.83) This means that coders (pairs of programmers in XP) first construct unit tests of product features before the attempt to code the features. What this means in practice, is that the code that XP delivers (continuously in 3 week long iterations) can never be broken! I'll say that again just to make sure you read it: XP code can never be broken! I really think XP's adaptive, test-first philosophy is the best thing that has happened to software engineering since Dijkstra told us that the "Goto Statement is Considered Harmful" in 1968.

    This book is the best of the XP series if you've actually made the decision to use XP. If you're not sure about what XP is or what it's limitations are, go to google and do your homework. When you're ready to actually install an XP project, get this book.

  24. Re:Wrong question! by afd8856 · · Score: 1

    Short answer: Yes
    Long answer: Hell, yes.

    Start trying one of the recent linux distros, they're very good. I'm using Ubuntu, if that helps.

    --
    I'll do the stupid thing first and then you shy people follow...
  25. eXtremeProgramming.org last updt'd Feb 2004 by ivi · · Score: 1


      They must be doing something right - ie,
      if they can leave eXtremeProgramming.org
      untouched (& feel it's just fine) since
      early 2004, eh?

  26. Repeat One Million Times... by Detritus · · Score: 0, Redundant
    Repeat One Million Times...

    There is no silver bullet!

    If you still don't understand it, go to step one.

    --
    Mea navis aericumbens anguillis abundat
    1. Re:Repeat One Million Times... by Anonymous Coward · · Score: 0

      > There is no silver bullet!

      Correct. There are good tools though. It is useful to be able to recognize good tools when you see them, instead of going "hmm, this tool does is not a hammer AND a screwdriver, so I'll ignore it."

      Which do you find best: waterfall model, agile, or ______ (insert your methodology).

      I find agile a lot better than the waterfall model. And I'm not smart enough to invent, prove by repeatable measurable experiments, and document a better methodology from scratch. So I'll go with agile until someone comes up with something better.

    2. Re:Repeat One Million Times... by Anonymous Coward · · Score: 0

      If there are no silver bullets, why am I limping?

    3. Re:Repeat One Million Times... by AeiwiMaster · · Score: 1

      Wrong you can see them here http://www.bulletforge.com/lore.php

      That there is no silver bullets is just disinformation spreed by the vampires!

  27. So how do you write tests for .. by RedLaggedTeut · · Score: 2, Interesting

    So how do you write tests for ..

    - applications that are a constantly moving target "this would be cool to have"

    - applications where the moving-targetness lies in the presentation, while at the same time some customers bitch about any change in presentation

    - applications with changing data sets - you can run your tests fine on the standardized data set, but then when it hits the real-world data, all you can say is "Sorry my application is perfect, it just doesn't work with with that data.".

    --
    I'm still trying to figure out what people mean by 'social skills' here.
    1. Re:So how do you write tests for .. by sqlrob · · Score: 1

      -applications that are a constantly moving target "this would be cool to have"

      The tests are feature based. Write one for the new feature.

      - applications where the moving-targetness lies in the presentation, while at the same time some customers bitch about any change in presentation

      XP doesn't work here. The only thing that does is application of extreme violence to the customer.

      - applications with changing data sets - you can run your tests fine on the standardized data set, but then when it hits the real-world data, all you can say is "Sorry my application is perfect, it just doesn't work with with that data.".

      You file it as a bug, use the data that caused the failure in a new test.

    2. Re:So how do you write tests for .. by davecb · · Score: 1
      As to the changing data, take a pair of techniques from the database world. If
      - you can always add a column
      - you have a "nil" value to stand in place of any missing data, and
      - all your calculations know that nil + 1 = nil, then
      Your existing program can still do all the computations that are defined on whatever data they give you.

      Then report the data change as a bug and write code for it, too.

      --dave

      --
      davecb@spamcop.net
    3. Re:So how do you write tests for .. by the+eric+conspiracy · · Score: 1


      You file it as a bug, use the data that caused the failure in a new test.

      The problem we face is that the failure is in the arena of performance, and it occurs on a Sun E15K with a 20 TB database on an EMC box at a customers site. And we don't have anything remotely close to that level of hardware available internally, nor will we ever. And everytime we propose infrastructure improvements in the software they don't make the development schedule because they are bumped in favor of features that the sales force has already committed to delivering.

    4. Re:So how do you write tests for .. by matvei · · Score: 2, Insightful
      applications that are a constantly moving target "this would be cool to have"

      How can you write any code for an application if you don't know what it's supposed to do? When you have a functional specification, you can write tests that test the specified features. When the spec changes you change the tests accordingly to help you make sure that you don't introduce new bugs when changing your code.

      applications with changing data sets - you can run your tests fine on the standardized data set, but then when it hits the real-world data, all you can say is "Sorry my application is perfect, it just doesn't work with with that data."

      Are you suggesting that having no tests would make that particular application work with real-world data? The point of testing is not to prove the customer that your application is flawless (that's impossible) but to help the programmers catch errors like the one you describe.

      When you're writing a test, you are making sure that your application works in one particular case. If you don't know what the possible cases are, not only will that prevent you from writing tests - it will also prevent you from writing working code.

      "But you can't test everything!" is a dumb excuse for not testing at all. It's like refusing to wear a bullet proof vest because it's useless if you get shot in the head.

    5. Re:So how do you write tests for .. by Nicolay77 · · Score: 1

      I'm sorry for you, It seems you've worked with bitching annoying customers for so long, that you sound like one of them.

      If you want to add a feature, you write a test for that first. In the so called "bussiness layer". Prioritize the features you can do in some amount of time and do them. And that's all.

      If the dataset changes and the app fails, that's a serious bug and a new test should be written with that data so that never happens again. In fact that's the difference between a well though algorithm and a bunch of hacked code.

      If the changing requirements are in the presentation then you apply the number one rule of computer science, write an abstraction layer. Like the skins in Winamp. Make it easy to change the presentation, and make easy for different consumers to use different presentations.

      And the most important, all this takes some time, don't let yourself be bullied by those people.

      --
      We are Turing O-Machines. The Oracle is out there.
    6. Re:So how do you write tests for .. by ArsenneLupin · · Score: 1
      The point of testing is not to prove the customer that your application is flawless (that's impossible) but to help the programmers catch errors like the one you describe.

      ... and more importantly, to make sure that known bugs don't come back three versions later. With test driven development, you only need to fix each bug once, which is already quite a progress over the test-less situation!

    7. Re:So how do you write tests for .. by JimMcCusker · · Score: 1

      If you don't have an equivalant (i.e. works the same) test machine that can be used outside of production, then you're just using your test machine for production, which isn't a good position to be in no matter what development methodology you're using.

    8. Re:So how do you write tests for .. by dubl-u · · Score: 1

      applications that are a constantly moving target "this would be cool to have"

      XP's planning practices pull out the most important and most stable features and work on those first. Because XP only works on things an iteration at a time, most of that which is moving is not part of the target. The product managers get to go off and argue while the developers get on with this week's features.

      Also, by having a new version ready every week (if not more often) risky features can be tried out easily. A little real-world experience helps settle arguments and clear up confusion that is behind moving targets.

      Sometimes, though, the target does move. When that happens, you change the tests to the new target and then make them pass.

      applications where the moving-targetness lies in the presentation

      Well, most of your tests should be below the presentation layer, so it's not a huge deal. For some presentation layer changes, you just change the tests and make 'em pass. But if that happens a lot, then I like to go for some data-driven presentation system. E.g., a content management system or a skins system. Then you test that the tools work and that the copywriters and skin designers can't crash the app, but you don't test each little UI change anymore.

      some customers bitch about any change in presentation

      This is not a software development problem; it's a business problem. XP is just about software development.

      applications with changing data sets - you can run your tests fine on the standardized data set, but then when it hits the real-world data, all you can say is "Sorry my application is perfect, it just doesn't work with with that data.".

      This happens to me occasionally, but it's pretty rare. It's a sign that we missed a case in the unit tests. When that happens, we add the case and make things pass. Since the tests are run on every checkin, the case never is a problem again.

      Also, XP teams should take any real-world bug as a lesson in process improvement. One place where I had a problem with weird data we created a pruned copy of the messy production databases and ran our whole test suite against that nightly. Not only did that keep us from a lot of bugs in production, but it also showed us where the original team had been sloppy checking inputs, and so we added some tests to make sure garbage data from getting saved anymore.

    9. Re:So how do you write tests for .. by tshak · · Score: 1

      +1 Matvei. Very well written.

      There's no doubt that test-first is hard, especially with UI's and whatnot. But like any skill test-first takes time to master. At first it is a bit overwhelming, but the effort over the long term is definitely worth it.

      --

      There is no longer anything that can be done with computers that is nontrivial and clearly legal. -- Paul Phillips
  28. I'm using Gentoo :) by DaedalusHKX · · Score: 1

    And yes, VERY easy... and at least I didn't have to hunt for drivers to have my brand new, Athlon X2 board running on Linux... I spent a whole day troubleshooting the issue with my nvidia motherboard drivers in XP (the gaming side for this rig, I have a few games that DONT run in linux... and as I've said many times before, the only reason I keep XP on this rig is to game, Starcraft, all the Warcraft games, Doom 1 2 3, Quake 1 2 3 4, Unreal, UT, Half Life, Hexen 1 2, Heretic 1 2, all run in Linux without issues using Wine or native clients (Q4 and D3). I haven't checked Half life 2.

    Overall I'd say that since I do NOT trust Windows with my business and only do my banking and important email from my linux box.

    ~D

    --
    " What luck for rulers that men do not think" - Adolf Hitler
    1. Re:I'm using Gentoo :) by drpimp · · Score: 0

      Still off topic but,

      Funny thing is Gentoo is not the easiest Linux to install. Once you get it running yeah emerge is a great tool that clear dependencies, but Gentoo is definately not for the average computer user nor first time linux dweller. Ubuntu is my personal favorite for quick installs that work every time. Fedora is quite easy as well. And if you are not talking about a desktop Slackware is great for servers.

      --
      -- Brought to you by Carl's JR
  29. Re:Of course... by Anonymous Coward · · Score: 5, Insightful

    The problem is that most managers have absolutlely no clue how to program or organize code. They can't really do anything useful in the design process. Each time something is built the programmers design and build everything without much more than stupidity raining down from the management team. Since managers don't know anything about the craft they're "managing," they don't recognize who is actually writting good code or designing robust systems and they tend to rely too heavily on the people who do nothing more than sit in the bosses office brown-nosing. As a result, many projects fail miserably or are badly designed, bug-ridden crap when they fianaly get called a "final" release. Since these managers are always having their own performance reviews tied to a process that they totally do not understand, they invent new "management" schemes to make it appear they are adding something to the process in an attempt to make themselves seem different from their peers. Until managers understand the craft they pretend to manage, we will all be subjected to feeble management fads.

  30. But that's typical. by blowdart · · Score: 5, Interesting
    That's certainly true, but having read a lot about scrum et al you tend to find that most, if not all of the examples used to justify the selling of a new methodology don't have a lot of detail.

    Take a look at one of the Agile Poster Children and his proof that it works.

    Quote: "Because of the newness of agile methods there simply hasn't been sufficient time to prove that they work in a wide variety of situations."

    Thats a wonderful way to dismiss anyone saying bad things, and it's rubbish, because the burden of proof for any claim is independent of its age.

    Quote: "the question "where is the proof" is typically asked by organizations that fit the late majority or even laggard profiles ... Because agile techniques clearly aren't at that stage in their lifecycle yet I believe that this question simply isn't a fair one at this time."

    So the act of asking for proof these things work means you're not ready? Ad hominem alert.

    Quote: "Are they really interested in finding an effective process or are [they] merely looking for a reason to disparage an approach that they aren't comfortable with? Are they realistic enough to recognize that no software process is perfect, that there is no silver bullet to be found? Are they really interested in proof that something works, or simply an assurance of perceived safety?"

    Ad hominem again.

    Then you look at the project that started Agile, the Chrysler Comprehensive Compensation (C3) project. It was lauded as the first agile program and a success, however by February 2000 with the system was failing when paying 76,000 of the company's 86,000 employees. It was cancelled. Apparently this failure is now the new success.

    Every methodology has rapid followers who will hear not evil said of it, but when looking at these things you have to remember "He's NOT the Messiah ... he's just a very naughty boy."

    1. Re:But that's typical. by arivanov · · Score: 5, Interesting

      Well, it tends to work in the areas where UML (in any of its incarnations) and the Unified Process reigns supreme. Now, the important thing before putting any claims about UML, object oriented programming and Agile is to understand the background behind their origins.

      The Unified Process precursors were initially developed by consultants helping improve the code quality at Ericsson. The work was mostly in the area of voice switches and network management equipment. These consitute a specific field of software design which is quite different from the rest of the industry.

      The most important difference is that there is an existing specification to which the software must comply. The specification already defines what the software is supposed to do for each allowed input, what are the error conditions, how to handle errors and this is usually defined as a set of simple and very strict rules. This type of task can be very easily expressed as a flow chart. The data objects are mostly defined in the protocol spec so there is no data design work to wrestle with. The spec rules are trivial to map to elementary state machines and are usually very small and well defined. They can be easily written with test cases and unit tested. And most importantly there is plenty of system resource to implement them.

      While the methodology behind this type of work can be applicable to other fields there is no justification whatsoever to state that it is the only correct methodology.

      It is not applicable to systems whose behaviour is mostly determined by a resource constraint.

      In order to apply it to a system you have to define the specification first and express it in terms which are suspiciously similar to a Telecom switch spec - trivial actions with well defined input and output.

      It is not applicable to systems where the conditions determining the change of execution are complex and cannot be expressed in terms of simple rules. Best example is possibly heavy duty math. It is nearly invincible to UML, UP and Agile attacks.

      So on, so fourth.

      --
      Baker's Law: Misery no longer loves company. Nowadays it insists on it
      http://www.sigsegv.cx/
    2. Re:But that's typical. by Anonymous Coward · · Score: 0

      I have a degree in philosophy so I can understand how obfuscated arguments can be. How is this an ad hominem (argument)?

      A really simple definition: ad hominem means "to the person." So the argument is against the person making the argument and not against the argument itself.

      You use .NET so you wouldn't know anything about development processes anyway. Hell, you don't even have a degree. Why am I even wasting my time?

      Now THAT is ad hominem.

      On a more serious note. The "old way" of developing software could have a guaranteed failure rate. I don't see any harm in actively looking for alternatives. Many techniques recommended in various "Agile" methodologies are simply industry best practices. And I'm not going to ignore a best practice just because it's mentioned under some Agile method's bullet list.

    3. Re:But that's typical. by An+Onerous+Coward · · Score: 1

      The page you link to doesn't even mention the Chrystler project, so far as I can tell. What the linked page is talking about is ending a project relatively early in the planned development cycle, for one of various reasons.

      A few examples suggested: The prototype is good enough. The project doesn't seem to be headed anywhere. We've learned enough that a different approach seems more promising.

      In short, they're talking about knowing when you've reached the point where putting more resources into a project will be counterproductive. The White House aside, I can't think of any organization where this philosophy isn't considered a good idea.

      While your misreading of that page may or may not be intentional, it's clear you have strong biases against the entire family of "agile" practices. Why? Were you involved in a project where XP really was hyped as "the messiah?" Did you read an article about it and decide that there was no way you would have your code improved by having some n00b coder sitting next to you? Did Scrum beat you as a child? Dude, what happened?

      --

      You want the truthiness? You can't handle the truthiness!

    4. Re:But that's typical. by CyberGarp · · Score: 1

      Gradient descent searchs rarely find the minimum, expect in simple 1st or 2nd order curves. Analysis at a high level is *always* required for a project of any complexity. Extreme (or er. Agile for the PC) Programming neglects this basic fact.

      Several of the facets of XP do however lend themselves to utilizing traits of human nature. Our current project mixes the two (old waterfall + XP), an analyst/architect making sure the big picture is covered doing a waterfall approach. A team of programmers working on the details and applying some of XP tenets to each area identified by the architect. It's going quite well so far. Each team is set loose on a fairly small, linear in complexity, piece of the project. The big picture has at least 8 major dimensions of complexity, and the architect gets to pull his hair out looking for solutions that cover them all or find ways to decouple them as much as possible.

      --

      I used to wonder what was so holy about a silent night, now I have a child.
    5. Re:But that's typical. by waferhead · · Score: 1

      Then you look at the project that started Agile, the Chrysler Comprehensive Compensation (C3) project. It was lauded as the first agile program and a success, however by February 2000 with the system was failing when paying 76,000 of the company's 86,000 employees. It was cancelled. Apparently this failure is now the new success [c2.com].

      So then Microsoft has redefined "failure"=="success" ?;-)

    6. Re:But that's typical. by angel'o'sphere · · Score: 1

      Quote: "Because of the newness of agile methods there simply hasn't been sufficient time to prove that they work in a wide variety of situations."

      Thats a wonderful way to dismiss anyone saying bad things, and it's rubbish, because the burden of proof for any claim is independent of its age.


      This is bullshit.
      Because of the youth of agile methods we have probably 1% agile projects done now per year and the rest of the projects are done "traditionally".

      So: fact is:
      90% of the agile ran projects are a success.
      80% of the traditionla ran projects are either over time, over budget or both; or abandoned.

      So, the 20% successfull traditinal projects are still 20 times more successfull projects than agile projects. So people like you would just say: well, the number is to small to be PROOF!!!

      So what now? You accept that the success rate of Agile methods is FAR higher than traditional methods or do you accept it is to young to have a meaningfull amount of data to conclude that?

      Probably you should simply google more about Scrum or XP or other Agile methods to see the success stories :D

      You forget one majour thing: there is not much data published about software project success and failure. You only see Mac OS X more or less in time and Longhorn long delayed. There likely 1000 tiems more projects inside companies running their own business with their own software that either fail or don't and we never hear about.

      angel'o'sphere

      P.S. I do Scrum since 1999 ... and I'm a certified ScrumMaster since 2004 ... so at least regarding Scrum I know what I'm talking about.

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  31. Tell me what apps you are referring to by DaedalusHKX · · Score: 1

    And I might have either drop in alternatives or something that does the job... A lot of your apps will run absolutely fine in Wine. Even internet explorer runs in wine (it actually runs better because spyware you will invariably incur using that Piece of Crap (tm)(c)(R) will not bork up the entire system, just the fake windows install that your apps think they're using.

    ~D

    PS - "why" does your family refuse to use linux? It isn't as if the "my computer" button can't be created to point to /home/familymemberinquestion directory :) I'm not being mean here, I'm simply curious what makes for such vehement denial (my mom's not a geek but she prefers solaris at work, linux at home, and hates being stuck on "such a slow system" (her 2.2 ghz windows box, vs the Solaris Ultrasparcs she occasionally logs onto at work, if she can adapt, heh heh, my father made the excuse that he doesn't know anything except windows, but since all he does is surf the web and check email/orders he has little reason to complain once I put a firefox/evolution link on his desktop, I run a fully patched version of Xine with the matroska codec pack on his rig as well, he likes to rip movies to the file server and then watch them on his comp... all doable).

    --
    " What luck for rulers that men do not think" - Adolf Hitler
  32. duke4 by yaiba · · Score: 3, Funny

    rumor has it that the dev guys at 3drealms are also adopting scrum.

  33. I prefer this definition by ColourlessGreenIdeas · · Score: 5, Funny

    http://www.scrum.com/rugby_guide/scrums.asp

    Do that every time you need to make a decision. Clear all furniture out of the way first.

    --
    In soviet russia stale jokes recycle you!
    1. Re:I prefer this definition by middlemen · · Score: 0

      The dictionary.com definition says :


      scrum n.

            1. Sports.

                        a. A play in Rugby in which the two sets of forwards mass together around the ball and, with their heads down, struggle to gain possession of the ball.

                        b. The mass or formation of players during such a play.

            2. Chiefly British. A disordered or confused situation involving a number of people.

       


      Clearly Microsoft is going for the definition 2. above!! They are trying to use British words to fool the American management.:)

    2. Re:I prefer this definition by Anonymous Coward · · Score: 0

      > Clear all furniture out of the way first.

      That's already a standard practice at Microsoft now, I hear. At least in Ballamer's office... ;-)

  34. Always shippable is not new by scattol · · Score: 0

    Having a product that is always shippable is NOT new. In fact I've been doing this since the early 90's and I am sure that it's how it was done decades before that.

    I mean this is the core concept of source control. What you have under source control is shippable, and ideally QAed enough to know for sure that it hasn't been badly broken. If you can't acheive that, you have absolutely no control over your sources and I seriously doubt you have any idea about what your schedule will be 4 weeks down the road.

  35. I'm not asking you to migrate, I'm simply curious by DaedalusHKX · · Score: 1

    I just want to know why your family is so against migration, (and I'm still curious about the apps you can't get replaced in *nix, I know there's a couple that are hell to get working and some that don't exist, but the number is getting extremely small as of late).

    ~D

    --
    " What luck for rulers that men do not think" - Adolf Hitler
  36. Something else might be going on here by Anonymous Coward · · Score: 0

    This might be more than some pop superficial rehashing of programming methodology. This is an example of arbitrarily changing the rules to reduce competition. After all, they could have dragged out the old papers and books on formal programming process by Fred Brooks et all and used those. But by making up new rules (actually a subset of the old rules with new names) you can exclude competition from the programmers who know the old rules since they won't be familiar with the new names and will commit faux pas like asking for a formal specification or code reviews which aren't things in the current subset du jour.

  37. Developer's opinion of scrum by Anonymous Coward · · Score: 3, Interesting

    I'm a developer at a smallish company (~25 developers) which started using scrum in August. I was very skeptical at first but really like it now. The short version:
    Previously management just did whatever felt right.
    Sometimes this was very good, sometimes it was very bad. Sometimes it was just inconsistent.

    Now management has a defined methodology that they follow. There are some rules. The rules need not be particularly great ones (although I don't mean to suggest scrum isn't good), just so long as management is thinking about them and makes a concious decision to be consistent and let develoeprs know what to expect.

    Specifically, scrum has helped us overcome the "holy shit, its a big customer bug!" panic that happened occasionally. We still panic, but its not the entire organization jumping onto one bug, its just a single scrum team.

    Posting as AC, as my coworkers AND management read slashdot and will recognize me.

  38. Remote pair programming is the "next big thing" by Carl+Rosenberger · · Score: 3, Insightful

    Agile methods have been around for a long time, they are not new, it's only new that big companies like MS find out that they work indeed.

    In the meanwhile globalisation has advanced, there is a more efficient way to build software than to pile people up in cubicles. It's pretty much like an open source project:
    - Get the best experts from all over the world for the theme where they are good at.
    - Let them work from home.
    - Let the team work in remote pairs, using VNC and Skype and change pairs frequently.

    In this setup half-hour meetings every day do not work, because of the different timezones. A weekly meeting is good enough, Asterisk works fine for VoIP conferences, CVS email notifications about all checked-in work keeps everyone up-to-date.

    This is how our company works. We are very happy with the cost and the quality of the work we get and with the lifestyle to work at home when you want and how you want.

  39. scrum experience by AgentPhunk · · Score: 3, Interesting

    I used to work in a scrum-based web development shop.

    Meetings went something like this:
    Go around the room, and say #1 - what am i going to do today, #2 - whats in my way of getting #1 done. One two people were allowed to talk, the person who's turn it was, and the manager in charge of the meeting. If another person in the meeting was the cause of someone's #2, the manager would turn to them, give them (and only them) them the chance to respond. Lather rinse repeat.

    There was no "I did this yesterday" because a) we supposedly heard about that the day before, b) the assumption was that you got it done.

    Even with at least three different projects going on, and maybe 15-20 people in the room, we were out of there in 30-45 minutes. Any major issues were taken offline so that the rest of us could get back to work.

    We usually had only one meeting a day, sometimes two. I found it worked extremely well with a minimal amount of thrashing. We might have been using a modified version of scrum; can't remember - those were dotcom days, everything's still a blur.

    1. Re:scrum experience by AndroidCat · · Score: 1

      One or two 30-45 minute meetings per day...? Work out the average hourly rate x 15-20 people and that's quite an expensive overhead. Did the people from all the different projects have to be in the same room with each other?

      --
      One line blog. I hear that they're called Twitters now.
  40. Bah. That's nothing new by Anonymous Coward · · Score: 2, Funny

    Rugby's had scrum for years.

  41. Agile & Scrum work for us by ameline · · Score: 4, Interesting

    At Alias, we use Agile and Scrum very extensively. The Sketchbook team was among the first at Alias to adopt it at our company -- Jim Highsmith even gave us a little write up in one of his books.

    We don't, however, do that much pair programming. And the whole completely open office space works for some, and definitely not for others. For myself, I'm way too easily distracted -- so I need a nice quiet and private cubicle in order to achieve the state of "flow" where I can write code. In my experience, pair programming works for debugging and integrating code -- and not so well for creating it. YMMV.

    Sketchbook has come in on time and on budget, and with extremely high quality. Agile and Scrum had something to do with it. I think the fact that we had a clear vision, a small and very experienced team, a really good working relationship with our usability team and research team, great QA, and excellent management had at least as much to do with it.

    As a process, its the only one I've seen in 20 years of doing this that actually makes the life of a programmer better, not worse.

    --
    Ian Ameline
    1. Re:Agile & Scrum work for us by russh347 · · Score: 1

      In my experience, pair programming works for debugging and integrating code -- and not so well for creating it.


      How odd. In my experience pair programming works really well for writing code... and, together with TDD and other practices, dramatically reduces the need for debugging.
    2. Re:Agile & Scrum work for us by ScrewMaster · · Score: 3, Interesting

      I think the fact that we had a clear vision, a small and very experienced team, a really good working relationship with our usability team and research team, great QA, and excellent management had at least as much to do with it.

      No, I would submit that those qualities had everything to do with it, and probably a lot more than anything that implementing Scrum could ever do. Consider yourself very fortunate to work with such people, in such an environment. I know I do.

      Scrum and other such overarching methodologies are simply ways to enforce standardized positive behaviors upon otherwise mundane workers, or good workers lorded over by second-rate managers who themselves need some kind of framework to tell them how to handle their particular herd of cats. Managed-incompetence, you might say.

      On the other hand, compact, tight-knit development groups (like the one you mentioned) have usually already worked out highly efficient methods of getting their jobs done, methods that directly apply to the type of products under development. That happens almost naturally when you have intelligent, motivated people with good communication skills who truly want to cooperate with each other. The group I work in is one such: after working together for years we all know each others strengths and weaknesses, and when given a directive we automatically assign the best person to the job, and if it requires more than one of us, the person best suited to take the lead just assumes the role. And that happens because our manager trusts our judgment and doesn't treat us like children, as some do. Granted, most of my coworkers have at least twenty years in software development. A team composed of fresh-out-of-school programmers would be a different matter entirely.

      I guess what I'm saying is that if a company is fortunate enough to have a development group that is already fast, efficient, produces quality work and has that certain esprit de corps that is the hallmark of a good team, don't mess with it. That kind of team is a corporate Golden Goose, and it is surprisingly easy to kill. I'm not saying that there isn't always room for improvement ... there is. But it's wise to be careful about making sweeping changes if you already have something that is working well.

      We don't, however, do that much pair programming. And the whole completely open office space works for some, and definitely not for others. For myself, I'm way too easily distracted -- so I need a nice quiet and private cubicle in order to achieve the state of "flow" where I can write code. In my experience, pair programming works for debugging and integrating code -- and not so well for creating it. YMMV.

      If I had mod points I'd give you a +5 Right on the Money for that one. Actual programming is a solitary effort, and a work environment should reflect that.

      --
      The higher the technology, the sharper that two-edged sword.
    3. Re:Agile & Scrum work for us by Vladimus · · Score: 1
      Well, now I'm a convert. You've every right to be proud of SketchBook, it's the most impressive design app I've seen since Painter first came out. Anyone reading this who has a drawing tablet (yes, both of you) MUST get this program. In fact, anyone who wants a fantastic example of interface design MUST get this program.

      No, I don't have any affiliation with Alias.

      --

      A rolling stone is worth two in the bush!

    4. Re:Agile & Scrum work for us by angel'o'sphere · · Score: 1


      On the other hand, compact, tight-knit development groups (like the one you mentioned) have usually already worked out highly efficient methods of getting their jobs done, methods that directly apply to the type of products under development.

      Thats the main issue what Scrum is about. The core "best practices" of Scrum lead to a self organizing team -- as you describe below in your post -- (that hopefully does the core "best practices" of software development).

      Because your team is self organizing, you don't need a MS Project Plan containing all the tasks and schedules to be done the next 2 years. You simply do, what you need to do, to deleiver a new increment. Scrum says: do that every month or every 2 weeks, XP says do it every 3 to 6 weeks. If you are allready doing that you ARE ALLREADY AGILE. You just dont use Scrum or XP.

      Scrum and XP is for people/team/organizations that followed MS Project Plans, and even failed in following those (as the plans are hard to get accurate, they hardly can anticipate problems, they hardly can change/adapt to changes in business needs or to their own failure, like being over time etc.)

      angel'o'sphere

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  42. I don't see.. by OreoCookie · · Score: 1

    anywhere in the article where it says they used SCRUM or Agile Programming on SQL 2005. It says they are unhappy with the length of their release cycles and are going to try XP as a way of speeding them up.

  43. Re:Of course... by slideroll · · Score: 0

    Only trouble with scrum... it attracts sharks with friggin' lasers on their heads.

  44. Death by Buzzword by RAMMS+EIN · · Score: 4, Funny
    Ok, so what's this scrum thing? According to Control Chaos (the first related hit I got on Google):


    Scrum is an agile, lightweight process that can be used to manage and control software and product development using iterative, incremental practices. Wrapping existing engineering practices, including Extreme Programming and RUP, Scrum generates the benefits of agile development with the advantages of a simple implementation. Scrum significantly increases productivity and reduces time to benefits while facilitating adaptive, empirical systems development.


    Lots of buzzwords, little information. So let's Learn more:


    - Scrum is an agile process to manage and control development work.

      - Scrum is a wrapper for existing engineering practices.

      - Scrum is a team-based approach to iteratively, incrementally develop systems and products when requirements are rapidly changing

      - Scrum is a process that controls the chaos of conflicting interests and needs.
    Scrum is a way to improve communications and maximize co-operation.

      - Scrum is a way to detect and cause the removal of anything that gets in the way of developing and delivering products.

      - Scrum is a way to maximize productivity.

      - Scrum is scalable from single projects to entire organizations. Scrum has controlled and organized development and implementation for multiple interrelated products and projects with over a thousand developers and implementers.

      - Scrum is a way for everyone to feel good about their job, their contributions, and that they have done the very best they possibly could.


    At this point, my head exploded. This note is a post-mortem plea to press murder charges against the person who wrote that crap.
    --
    Please correct me if I got my facts wrong.
    1. Re:Death by Buzzword by AndroidCat · · Score: 1

      So you'd like a buzzmortem to synergize the discovery process and script the experience?

      --
      One line blog. I hear that they're called Twitters now.
    2. Re:Death by Buzzword by Anonymous Coward · · Score: 0

      "Death is too good for them..."

    3. Re:Death by Buzzword by Anonymous Coward · · Score: 0

      Boom.

    4. Re:Death by Buzzword by Anonymous Coward · · Score: 0

      I'm sensing that you're not a team player... maybe we should take this offline and discuss.

    5. Re:Death by Buzzword by Anonymous Coward · · Score: 2, Insightful

      Scrum is a way for making first level managers (aka team leads, section leaders) feel involved with the flow of what's happening in the group, even if they lack the skills to make a technical contribution themselves (which is, sadly, often the case).

      It's a way to highlight the contribution of the more talkative members of the group, who are often correspondingly week in hard technical skills, while slowing down the thoroughbreds who might otherwise put the organization at risk with some pie-in-the-sky, breakthrough innovation.

      It's an excellent source of book and consulting revenues for trainers, usually the same people who taught XP before that, RUP and/or formal code inspection methods before that, etc.

  45. vapor style by opencity · · Score: 3, Funny

    So Scrum is the idea that teams meet once a day for half an hour, figure out what they're going to do then go off and do their work very quickly.

    Wow, genius.

    (from what little I know) Extreme programming is testing constantly and having people work side by side? Well I Am Not A Professional but I figured this out after my first project got too big. Am I missing something here?

    I've got a new methodology: It's called: "Inning". Your programming team works for an 8 - 14 hour period and then takes a break when they sleep. I like to combine it with "Lunch" where the team, either together or seperately, eats food periodically during the day. My book is available to preorder.

    --
    Physics is like sex: sure, it may give some practical results, but that's not why we do it.
    1. Re:vapor style by russh347 · · Score: 1
      You've clearly never worked on an XP or Scrum project.


    2. Re:vapor style by dubl-u · · Score: 1
      I figured this out after my first project got too big. Am I missing something here?

      It endlessly amuses me that the two main first reactions to XP are

      1. That's completely impossible, unheard of, and unworkable. You people are frothing lunatics.
      2. That's completely obvious, reasonable, and effective. We were doing that thirty years ago. You people are scam artists for trying to pass it off as a new method.

      I don't know why groups never talk to one another, but I sure wish they would.
  46. It depends.. by d_jedi · · Score: 1

    On how it's implemented within the company. The daily meetings can become a huge waste of time if:
    a) There are unnecessary participants
    b) The (necessary) particpants don't listen to the progress of others and add their input where it would be useful

    In all, it's like pretty much any other methodology - it's only as useful as the particpants are able/willing to follow it. It is no silver bullet that will magically make your code better.

    --
    I am the maverick of Slashdot
  47. Isn't this just disempowerment by another name? by Anonymous Coward · · Score: 0

    "Treadwell said. "We have realized inside Microsoft over the years that software practices we used in the mid-90s don't scale to the size of problems that we're tackling today."

    You're tackling much smaller problems today than in the 80's and 90's. You already have all the base components, in the 90's all those had to be written. If you want to print things now, the OS handles it, no longer any need to write complete printer device drivers. Indexing algos? Already written, Sort? What type, all off the shelf. Need a lot of memory? No problem, no need to squeeze huge database access into 1Mb of ram these days, machines come with hundreds of MB, yet a sales order is still only 1k of data, the colour "red" is still 3 letters long.

    In reality it's a damn site easier to develop software today than it was in the 80's and 90's. The JOB GOT SMALLER!

    My view is these methodologies are just disempowerment. Before the team leader would call meetings when there was something to discuss, now with the methodologies he calls them based on some arbitrary rule, it disempowers him. They come with new naming conventions, because if you give a new name to an old concept you disempower the people who don't know the new name. They come with sparkly new procedures, before the team leader would choose an approach based on the problem, now he has to choose an approach according to the 'methodology' written without any knowledge of the problem he's tackling.

    As a result, a huge complex product that was delivered by 10 people in the 80's and 90's now takes 5 times longer and 20 times as many people, and ends up 10 times the size with hundreds of times more bugs.

  48. Shorter release cycle? by rayd75 · · Score: 2, Interesting

    "Steve Ballmer, chief executive of Microsoft acknowledged during his keynote address at the Microsoft launch event that the company needed to get more agile and to produce software faster, to the tune of delivering technology every 18 to 24 months."

      No. No one wants such a short release cycle but you and your shareholders. If I may borrow one of your favorite words, there is not enough "innovation" in most of the technologies you purvey to justify an 18 month release cycle. You managed to pull it off for Windows XP and did nothing but piss off those of us who bought your line about Windows 2000. To us, it was clear that XP was nothing more than the finished version of Windows 2000. We had just spent a fortune on upgrading to the future only to be told 18 months later that we weren't worthy of free utilities, functionality upgrades, or even comprehensive service packs since we weren't on the latest release. As far as I'm concerned, you can keep your interim versions to yourself. Anything shorter than 3-4 years for operating systems and server products is lunacy.

    1. Re:Shorter release cycle? by An+Onerous+Coward · · Score: 1

      That's brilliant.

      Now, I'm generally predisposed to like these agile practices (even though they can get buzzwordy at times). But what if the main selling point for Microsoft was, "Have a new product to ship every two years?" For them, a "new product" is "anything we can sell for money, instead of releasing as a service pack."

      It's friggin' brilliant!

      --

      You want the truthiness? You can't handle the truthiness!

  49. Insightful?! by RAMMS+EIN · · Score: 5, Insightful

    Sorry about whining about a post getting modded up, but what is this? Can't people calculate anymore? If Scrum buys you two months of time, and you spent half a month on improving quality, hasn't Scrum bought you both quality and time?

    The above is just a simple counting argument. But if you actually look into the nature of things, it's entirely likely that a better process can increase development speed and improve quality. For example, if you improve the specification process, you could end up with a clearer specification that wouldn't be adapted so often while implementation is already going on. This reduces the time it takes to implement the specification, and causes it to be implemented better.

    So, no, I don't think the parent is right that you can't have an improvement in both time and quality, or that if you've improved one, it's probably because you sacrificed the other. I do think that a lot of these methods are worse than worthless, but that's a completely different story.

    --
    Please correct me if I got my facts wrong.
  50. Easier actually to slack off by CarlBenda · · Score: 1

    I did pair programming in an XP environment at one company for six months before leaving. It's actually a hell of a lot easier to slack off. If a company hires good programmers the one doing the typing does almost all the work while the other person tries desperately to keep awake. After a while it's easier staying awake and waiting for a point to look over code by reading slashdot or whatever.

    1. Re:Easier actually to slack off by aricusmaximus · · Score: 1

      If a company hires good programmers the one doing the typing does almost all the work while the other person tries desperately to keep awake

      Wrong. If "the other person tries desperately to stay awake" then they're not doing their job. The keyboardist's goal is to make write the next method that will make the current test pass. Because of this narrow, simple focus, the person away from the keyboard is *not* a passive observer and in fact has several duties and responsibilities:

      1) Reviewing the code as the other person types - for typos, semantic defects, and possible improvements and alternatives.
      2) Reviewing the overall design of the class
      3) Considering the next unit test
      4) Managing the goal stack
      5) Asking questions when the intention of the code is not clear (to the non-keyboardist)

      If the non-keyboardist is getting bored, then she's not accepting co-responsibility for the code she and her partner are creating. This is not being a good programmer.

    2. Re:Easier actually to slack off by CarlBenda · · Score: 1

      Have you ever coded? 1) The person typing gets really irritated when you keep pointing out typos they are about to fix. Give them some time to code. I've seen two different styles. Some people basically think of the method in their head and type from top to bottom. Others are more experimental. They'll type a few lines at the beginning. Jump to the bottom of the method because they need to close something etc, go back to the top, and finish with stuff in the middle. Seems adhoc but that's how they write and if you give them time they've got the same thing you were thinking of. 2) If it's a relatively simple straightforward class what's there to review? You only code what you need to code. 3) There might be a point here. At the company I was at they were testing every single method. Since methods were being created while the coding was going on it's sort of tough to anticipate the next test. 4) I didn't see much of this. I guess the code we were writing, being scientific, tended to be top down without having much to remember. 5) See (1). You've got to wait. Give the person time to think. If you've got good programmers the intention tends to be pretty clear. If the other programmer is good there's not much for the other person to do. I program full time. I've worked at four small start ups. Some better than others. I'm now working at a very large software company. At two of the start ups I was a lead. I like helping other people with their software issues. I definitely like getting help. I love having QA beat on my code and am particularly proud of how little they find wrong. They sometimes allow a feature I wrote to get out early because they know I wrote it. This is a trust I do not want to lose. What do you do for a living? What practical experience brings you to the conclusions above because I haven't seen things that would make me suggest 1-5 as enough to keep someone busy. Your conclusion as to what a good programmer does seems devoid of diverse experience with various type of programmers.

  51. the next big thing... by SlashSquatch · · Score: 1
    ...is no doubt the next MS software release. Guaranteed to eat up all your processes and space. Why do I need a pentium four and 160 gig hard drive in a system that is designed for "Word processing, Internet, E-mail, Spreadsheets, Other basic daily tasks"* ???

    Oh yeah I forgot, I'm a screaming freaking retard.

    "see you in HELL, candy boys."

    *Dell.com

    --
    Autonomous Retard -- Is your camp safe? UnsafeCamp.com
  52. XP level of testing leads to brittle code by CarlBenda · · Score: 2, Insightful

    Have you done XP programming yourself? Evidently not. Did it for six months at one place. We had so many tests that whenever a refactoring was done it would break tons of tests. The tests would have to be redone thus decreasing their value. The tests weren't making sure new changes didn't break the code because whenever you added new code you changed the tests. Refactoring thus wasn't encouraged by all these tests and so eventually you have more and more spaghetti code. Our XP coach was telling us that every so often it's hard to move forward and someone has to go in and change things while others wait. Yeah we figured out what he meant. The code got so bad (even though all tests were passing) that someone had to go across the whole code base and spend a week fixing junk. This happened over and over.

    1. Re:XP level of testing leads to brittle code by mindpixel · · Score: 1

      I have certainly sdone it and had nothing like this experience.

    2. Re:XP level of testing leads to brittle code by aricusmaximus · · Score: 2, Interesting

      Considering you got fired after your XP experience you quitting the proejct, it's not suprising that you have a negative opinion.

      I'd also have to say that you (self-admittedly) sabotaged the unit testing process automatically diqualifies you from providing an objective opinion on unit testing.

    3. Re:XP level of testing leads to brittle code by CarlBenda · · Score: 1

      Your reply is the standard XP one. Right out of the book. If someone doesn't do things the way XP wants it fire them and ignore them. Want me to find the reference in Beck's book? All the criticism (positive and negative) is disqualified. That's how XP is so successful in one sense. No XP team has anyone who doesn't believe heart and soul in it. If they don't you're out. Our coach actually told us that of all the places he helped implement XP at it was never a decision of the programmers to change away from XP. I now realize what he meant. They got rid of all the programmers who complained. The XP guys only got kicked out at the company I was at when management saw that it was going nowhere. You may like to only read positive reviews about things. I like reading the negative ones because they point out weakness and such that have to be addressed etc. Positives are gravy. You didn't address any of my points in your reply. It's nice to just smear someone and then say everything is fine. Right now I'm at a company doing SCRUM. I would recommend it over XP because there are fewer weaknesses in it it appears. Oh that's right! I can't contrast them since I've done both of them and one place got fired at. I never sabotaged the unit testing. Nice try at a smear. By the way the company I got fired at folded about six months later. They fired the VP of engineering who brought in XP as being ineffective and were pissed at the four good engineers he got rid of over time (out of a staff of eight). The coach got fired a little later. The funding was pulled because they weren't getting things done. So put things in context. Address the issues.

    4. Re:XP level of testing leads to brittle code by aricusmaximus · · Score: 1
      Your reply is the standard XP one. Right out of the book. If someone doesn't do things the way XP wants it fire them and ignore them.
      That's your misinterpretation. I never said that anywhere in my posting. Please don't put words into my mouth.
      All the criticism (positive and negative) is disqualified.
      Disqualified may be overkill, but suspect certainly is not. But I stand by my point, which is that you

      1) were fired on a project using XP
      2) deliberately sabotages the project because it was using XP

      strongly suggests that you cannot provide an objective assessment of XP process. In fact, almost every posting I've seen so far indicates that (up until now) you had an axe to grind rather than useful information to share.
      Our coach actually told us...The XP guys only got kicked out...By the way the company I got fired at folded about six months later....
      Interesting information and context. It would have been nice if you had shared this sooner.

      Of course the information you provide neither validates nor condemns the XP process. You've given one (admittedly extremely bad) anecdote. XP certainly was involved -- but so were the coach and the VP. How can you be sure that XP was at fault? Perhaps the VP and the coach just did a bad job? Perhaps the outcome would have been the same using SCRUM?
      I never sabotaged the unit testing. Nice try at a smear.
      You smeared yourself Carl. As you said, and (again) I quote: "After a while I got off on telling this 'smart' guy we needed another test. He fell for it all the time and our productivity with it." How selfish and mean-spirited can you get?

      What really gets me is that, in the next post, you complain that the project had too many unit tests. I mean, WTF? Who do you think you are kidding? You admit that you "got off" on convincing another programmer to write useless unit tests. How could it possibly come as a suprise to you that your unit tests were unmaintainable?

      Oh that's right! I can't contrast them since I've done both of them and one place got fired at.
      Not because you got fired, but because you made a bad-faith effort. You can't say a process doesn't work when you never really tried it in the first place.

  53. Guru following by Anonymous Coward · · Score: 0

    "Previously management just did whatever felt right."

    You make it sound like they pulled decisions from their ass. They presumably had knowledge of the product and the market your product addresses, something the makers of the methodology don't have. At worst they were as ignorant of your products as the methodology makers are.

    Why would you choose a blind person with a good sales patter over someone with sight of the product and market? If methodologies are good, then why are there so many of them? Wouldn't we gradually refine to just one instead of inventing a new one every few months? Isn't this just Guru following, a new Guru comes along with new names and a new sales patter and managers with little confidence worried about their projects follow the Guru.

    "Posting as AC, as my coworkers AND management read slashdot and will recognize me."
    Or you're part of the sales patter, you've said nothing controversial that warrants an AC.

  54. why a new buzzword. by fermion · · Score: 1
    One of the biggest problems in coding is the exponential increase in relationships as one adds staff, as described in the grandaddy of of development management books The Mythical Man Month

    A second problem with code is avoiding the exponential growth of relatioships between data and the proliferation of rules that must be painstakingly reconciled. The is discussed in another grandaddy, Composite Structured Design

    During the 90's many people, including MS did much work and wrote many books to explore solutions to these problems. Models that seperated data, controllers, and views. Models that isolated functionality into descrete well known funcions. Assertions that made sure inputs and outputs were within specification. Hiding data structure. I have written a significant amount of code using these techniques, code that seems to work well. The basis seems to be lmit the relationships in the system, and as a consequence the proliferation of knowledge.

    I think that 40+ years of experience in computers has taught us this is the way to write good code. MS, Apple, IBM, all the big players work on this model to some degree. About the only new thing is tools to represent the entire system without intimate detail, and other tools to translate these representations into data types.

    So this is what troubles me. Writing code is only a small part of the process. Defining boundries and interconnects, and bebugging, tend to the larger part. Once I know what the window manager will act like, I don't need to know anything else. The higher level code I write, the less I need to know and should know about the subsystems.

    And I am not sure how XP fits into this. A group needs to meet to define functions and interconnects. Everything else should be handled through assertions and regression testing. We, as the engineers we want to emulate, need to code to the design. The problem seems to be that many are still living in a world where computer resources are limited, a world many never experienced. Or perhaps MS is just trying to keep an advantage by continuing to sacrifice speed over reliability. It might be useful to have meeting to gain authorization to link deeply into the subsystem, but hardly smart.

    --
    "She's a scientist and a lesbian. She's not going to let it slide." Orphan Black
    1. Re:why a new buzzword. by Anonymous Coward · · Score: 0

      So this is what troubles me. Writing code is only a small part of the process. Defining boundries and interconnects, and bebugging, tend to the larger part. Once I know what the window manager will act like, I don't need to know anything else. The higher level code I write, the less I need to know and should know about the subsystems.

      In theory. The inevitable number of small and big diversions from this ideal, you know, the things that are not supposed to happen but they do, these things generally cost us a good chunk of time. And they're the fortunate cases.

    2. Re:why a new buzzword. by StrongBow67 · · Score: 1

      Agreed. But as subsystems "evolve" over time to handle new features, you're forced to revisit past assumptions.

  55. We use scrum, and it's working for us by DeadVulcan · · Score: 2, Interesting

    But like any process, scrum won't work unless you have buy-in from every level. I think it took us almost a year before we really got into a groove with scrum and started getting really big benefits out of it.

    Developers now work without meddling from management for at least the duration of a sprint (a month). We can focus and get lots of work done.

    Transparency has built trust between the developers and the other stakeholders, like testers, usage experts, and management. There's far, far less tension between these groups. And whatever tension that does exist is kept off the shoulders of the developers.

    We were a small company, bought out by a very large one, and now our group and our process is starting to be viewed as a model for other groups in the company to emulate, because we're (apparently) far more efficient, and we're getting a lot more work done.

    We don't use XP (although we do have a lightweight code review process). The benefits of XP weren't quite as evident to us, so it's not something we mandate - developers can do it sometimes at their discretion.

    --
    Accountability on the heads of the powerful.
    Power in the hands of the accountable.
  56. Tenuous link to facilitate a dig at the Aussies... by Dan-DAFC · · Score: 1

    On yesterday's evidence, we should hope that Microsoft have been modelling themselves on an English scrum rather than an Australian one.

    --
    Suck figs.
  57. Lucky You by RAMMS+EIN · · Score: 5, Insightful

    I say you're lucky. I'd much rather work for a company that watched what $new_thing is doing to others before adopting it, than one that jumped on every overhyped new thing that hit the press.

    There is an unholy amount of crap being invented and hyped everywhere, and, in my experience, the things that are being hyped the most are never the best ones, or they aren't actually anything new.

    A few examples:

      - Java, when new, was being hyped up the wazoo. This was the herald of object oriented programming and write once, run everywhere. Never mind that object oriented programming languages had existed for a long time, as had write once, run everywhere, and that Java isn't actually a particularly nice programming language (I get modded down every time I say something negative about Java, but this time I assume at least you will read it). With the advent of Java 5.0, it got a lot better, with things like generics and "foreach loops"; the performance problems have mostly been worked out, and stable and mature frameworks have been developed. And now your company has adopted it. Makes sense to me.

      - Ajax is the new hype of the website scene. All it is about is making websites more like regular applications through the use of existing technologies. I was doing this stuff in 1997, possibly earlier. It's still majorly broken in the exact same ways (you need to use a full HTTP request to get new data, and the server can't push data to you, except on some implementations). Maybe in five years these things will have been fixed (perhaps with the advent of XAML?) and your company will adopt them?

      - RSS feeds are all the hype. Basically, you can get news headlines from sites you subscribe to. It works just like regular HTTP, except that people have standardized on a, no, two, no, four formats to distribute headlines in, so that they are sort of compatible between implementations. Maybe in five years, when your company adopts the technology, there will be a single standard format? And maybe they will have solved the problems caused by the fact that data is being pulled (by clients who don't know when updates are available), instead of pushed (by providers who do know when content is available)? We shall see.

    I could go on, but I think you get the idea.

    --
    Please correct me if I got my facts wrong.
    1. Re:Lucky You by Elrac · · Score: 1

      Got it, and thank you for your insightful comments.

      I think the truth is about halfway between our stances. As you point out, late adoptation is not necessarily a bad thing, but in my company late adoptation is not combined with seeing how it went for others. It's not "slow and cautious," learning from the experience of others, it's just slow. This partly has to do with the fact that my outfit is in Germany, and technological/business trends from the US come here with some delay, always, the good as well as the bad.

      As it is, if XP comes here it will be too late for me. Thanks to outsourcing, I'm now an analyst rather than a developer. Better than no job, I guess, but I happen to like developing, and it's what I got myself hired for.

      --
      When one person suffers from a delusion, it is called insanity. When many people suffer from a delusion it is called Rel
    2. Re:Lucky You by Cederic · · Score: 1


      So the people that successfully delivered a lot of very capable software written in Java between 1998 and 2005 were wrong?

      The people using agile methodologies since 1999 have been failing their customers?

      Forgive my precociousness but even working for a large business, I seek continual improvement. I look for better ways to do things. I implement new practices that add value.

      This means that in 1999 I started looking at some of the XP practices. In 2000 I adopted some full time. In 2001 I tried a full XP project. In 2002 I had most developments in the (multi-billion pound turnover) business following those practices that both worked for me, and fit into how the company worked.

      I was still looking at other approaches, techniques, tools to see how to improve everything else we did.

      I did recommend that we didn't take on vanilla XP. That's nothing to do with the methodology and everything to do with the organisation's ability to implement it. But we still learned from it.

      Right now we don't use AJAX. That's more because the nature of our business doesn't have a need for that level of functionality. However, we're monitoring it, we're keeping abreast of it and we do use some AJAX techniques in minor ways to help with our websites.

      Did I mention we're also maintaining and developing a 35 year old mainframe system? The developers of that system are still using assembler. They haven't picked up this new fangled object oriented programming thing. They love the internet but think it's horribly slow and unintuitive compared to their beloved green screen terminals. Oh, and it takes them several hundred days of development to make relatively simple changes underlying data storage due to the several thousand modules that all talk directly to it.

      Which team would you rather work with?

    3. Re:Lucky You by tshak · · Score: 1

      There's almost a decade of experience with different agile methods. There's decades of experience with many other methods failing by a long shot. The software industry is too new for anything to be "proven" yet, and therefore you have to try new things - not because they are "hot", but because they make sense. There is a lot about the different agile methodologies out there that make a lot of sense, and it's worth trying to implement them in a way that fits your team and project.

      --

      There is no longer anything that can be done with computers that is nontrivial and clearly legal. -- Paul Phillips
    4. Re:Lucky You by RAMMS+EIN · · Score: 1

      ``So the people that successfully delivered a lot of very capable software written in Java between 1998 and 2005 were wrong?''

      I never said Java wasn't the right choice for anyone. Java isn't a particularly impressive language, but I think you stand to gain something if you convert to it from C or C++. It also had abysmal performance in the beginning, but so do lots of languages, and it's not a problem for many applications. Write once, run everywhere still doesn't really hold - but nobody actually needs this to _really_ hold anyway. So, despite my criticism, it doesn't follow that Java would be the wrong choice, and I didn't say it was.

      ``The people using agile methodologies since 1999 have been failing their customers?''

      I don't think I said anything about that. I personally think many of the agile methodologies are great, but they are nothing more than good practice which is now being hyped. This can lead people to believe that they are some silver bullet, and apply them even in the wrong situations. Without the hype, they wouldn't probably be applied in the wrong situations as much, which is another way of saying that they wouldn't "succeed" without the hype, and the world would be better for it. I don't have any data to back this up, though; it's just my gut feeling.

      ``This means that in 1999 I started looking at some of the XP practices. In 2000 I adopted some full time. In 2001 I tried a full XP project. In 2002 I had most developments in the (multi-billion pound turnover) business following those practices that both worked for me, and fit into how the company worked.

      I did recommend that we didn't take on vanilla XP. That's nothing to do with the methodology and everything to do with the organisation's ability to implement it. But we still learned from it.''

      Well good job. You didn't just follow the hype, but actually analyzed the situation, and came up with good results. That's the way to go.

      ``Did I mention we're also maintaining and developing a 35 year old mainframe system? The developers of that system are still using assembler. They haven't picked up this new fangled object oriented programming thing. They love the internet but think it's horribly slow and unintuitive compared to their beloved green screen terminals. Oh, and it takes them several hundred days of development to make relatively simple changes underlying data storage due to the several thousand modules that all talk directly to it.

      Which team would you rather work with?''

      Actually, it's a tough choice for me. I love programming in assembly, and for these mainframes it might well make more sense than using whatever OO language du jour. I can do modern OO any old day, but jobs where you're actually expected to code in assembly are much harder to come by. Having said that; I think having to work with others' 35 year old assembly code might quickly take the fun out of it. Still, if it paid well...

      --
      Please correct me if I got my facts wrong.
    5. Re:Lucky You by Cally · · Score: 1
      ou need to use a full HTTP request to get new data,
      I thought that was the whole point of the 'asynchronous' - that HTTP request *only* fetches data, rather than a whole new HTML document. The UI and logic (HTML/CSS/DOM and Javascript respectively) don't get refetched and the browser doesn't have to freeze for a few moments whilst reflowing and repainting the entire document. (I've never used XMLRequest myself so... I could be wrong.)
      --
      "None are more hopelessly enslaved than those who falsely believe they are free." -- Goethe
  58. Why quantity will never beat quality by ardchoille · · Score: 1

    Well, maybe instead of rushing software out the door, they should be taking their time to ensure that their software passes higher quality control standards. One of the major reasons that the Microsoft Corporation is losing its users to other operating systems is that the quality of Microsoft products has greatly declined over the years. I have noticed more and more people and businesses switching from Microsoft Windows to Linux, which is a more stable and secure operating system, and that can only mean one thing: there are other operating systems out there which outperform Microsoft Windows operating systems. It's too bad that Microsoft seems to feel that quantity is more important than quality, I have a feeling that Microsoft is paying for it in the long run.

    --
    MacGregor Despite Them!
  59. Sounds like more religion by ChaoticCoyote · · Score: 1

    My major objection to these "methodologies" is that they tend to be applied like fundamentalist religion: Rigidly, absolutely, and with great fervor. Blindly following any ideology requires turning off one's brain — which seems a tad unproductive when doing something intellectual, like computer programming.

    Agile development presents some compelling ideas, but it needs to be applied judiciously and wisely.

  60. Re:Of course... by Anonymous Coward · · Score: 0

    Well done. You managed to get first post, and write two or three sentences just cynical and anti-corporate enough to paper over the fact that your post doesn't even demonstrate any understanding of what Scrum, Agile, or XP actually are.

    Seriously, read the summary, then read the post, and you'll notice that there isn't any specific information there that couldn't be gleaned from the summary.

    Well trolled, sir! Well trolled!

  61. Re:Of course... by msobkow · · Score: 1

    Personally I find it amusing that management places so much emphasis on buzzwords like RAD, Scrum, and Extreme Programming. All most of these methodologies really do is emphasize what was known back in the sixties: a few skilled developers can code rings around a large team bogged down by communications and paperwork.

    --
    I do not fail; I succeed at finding out what does not work.
  62. Re:I'm not asking you to migrate, I'm simply curio by aussie_a · · Score: 1

    They don't know it, and if something goes wrong with Windows they can get relatives to come in and fix it. If something goes wrong with Linux, they've got me. My fixing record isn't that crash hot (I haven't lost anything on the computer yet, although I have come close a few times). It's also inertia. They know how to use Windows and the apps it has, while there are comparable apps for Linux, they don't want to have to work at learning them. Hell, my family doesn't use Firefox (and I've offered a few times now).

    As for the apps, well the only one I can't find an alternative for is Flash. Everyone always says "Gimp" but ignoring it's difficult user interface (although I have heard this has improved) it isn't scalar. I love Flash's scalar environment. Know of any open source apps that are comparable to Flash (if I only use Flash for drawing pictures that is. I doubt anything but flash creates flash movies)?

  63. Schedule, Quality and Scope in Agile by under_score · · Score: 3, Informative

    The big difference between agile methods like scrum and extreme programming as compared to other methods like RUP or waterfall is how they treat the "iron triangle" of schedule, quality and scope. Agile methods specifically say: sacrifice scope in favor of super-high quality and fixed very short schedules. Scrum, for example, recommends that teams produce potentially shippable software every month. Potentially shippable doesn't mean every feature under the sun, but it does mean that it should be production-quality. As for large organizations adopting agile methods, there is definitely a transition period where the focus is on getting used to the monthly cycle and gradually increasing quality from the organization's norm to a much higher standard. Sometimes this can take a couple of years. This type of schedule does cause a huge amount of pressure... but every agile method that I know also encourages a sustainable pace including very little overtime work. I have worked on many agile projects over the last nine years and every time the benefits have been clear and compelling. Nevertheless, it is possible, like with anything else, to screw it up and have a bad experience with an agile method. Pair programming from Extreme Programming is a great example of this. It is a fabulous way to increase quality without sacrificing productivity. Yet it is also such a huge change for many developers that it needs to be adopted with great sensitivity. If it is imposed, then people will rebel against it and cause it to fail. Same with agile methods in general. I've seen them work too many times to not be a believer, but if one's first experience with an agile method is a disaster, it can be pretty hard to see how they might help: be more effective, more humane and more fun. I strongly recommend that people check out the agile manifesto and the agile work axioms to understand the underlying ideas behind the agile methods.

  64. Oh for pete's sake... by israfil_kamana · · Score: 2, Insightful

    ... Scrum/Agile isn't about "combatting OSS", it's about doing what any software dev shop, OR open source software project needs to do - improve team productivity, roll out features in a structured, efficient, and systematic way. More importantly, it's about not pretending that a large two-year effort can be completely understood in a three month requirements gathering phase. It's about admitting that the low-level tasks that some project manager assigns to a junior programmer 14 months before won't be valid when the rubber hits the road. It's about maximizing the capabilities of softawre teams, improving collaboration and effectiveness, clarifying priorities, eliminating waste.

    I'm no huge fan of microsoft, and all my servers run OpenBSD, but jeez, this is fanatical trolling. For the record, some open-source projects use agile methods.

    --
    i - This sig provided by /dev/random and an infinite number of monkeys at keyboards.
  65. That's what people sayd about O/O in the eighties. by israfil_kamana · · Score: 2, Insightful

    They're not the latest big thing - they are the software manifestation of the same practices/principles used to create the Toyota Production System - practices that then have been adopted across the whole car industry. Nay-say all you want, but if you haven't tried it, then you have nothing productive to say for or against. Talk talk talk.

    --
    i - This sig provided by /dev/random and an infinite number of monkeys at keyboards.
  66. Hawthorne Effect by Anonymous Coward · · Score: 0

    It's the Hawthorne Effect that is doing the heavy lifting here.

  67. So you've obviously tried it then... by israfil_kamana · · Score: 1

    ... or maybe not. Joke all you want, the description quoted above is about one small features. It's like joking about programming because "they use if's". If that was all there was to it, of course it'd be rediulous.
    .

    --
    i - This sig provided by /dev/random and an infinite number of monkeys at keyboards.
    1. Re:So you've obviously tried it then... by Anonymous Coward · · Score: 0

      It was diculous the first time ...

  68. Except that agile methods were developed... by israfil_kamana · · Score: 3, Insightful

    ... by developers, for the most part, based on what works, not on what management thought SHOULD work. It's not a management fad, it's a simple empirical process. The whole point of scrum is to get away from management-induced fantasy, and rather to go with plan-try-measure-reflect-try-measure. It applies the scientific method to software development control.

    Mostly what's pissing me off about this slashdot crap is that people who have never tried it are weighing in with opinions on how it can't possibly work, or how it's obviously just a fad. Sheesh.

    --
    i - This sig provided by /dev/random and an infinite number of monkeys at keyboards.
    1. Re:Except that agile methods were developed... by Null_Void · · Score: 1

      Reading through these, I started to wonder why the opinions expressed were all so different from my own experiences with agile methodologies. While I'm sure some people are indeed speaking without actually trying it first, they can't all be doing that. What then occurred to me is the idea that maybe the problem in these cases is organizational. In a typical business, decisions are not made at the scope that they affect; they are typically made at the top (or at least, higher than they need to be), and handed down. How can a process be truly agile when the decision making surrounding it isn't?

      I work at a company where each decision is made at the level at which it applies. If something is at a development level, the "General Company" has no reason to make a decision about it. If you're interested, the decision-making process we use is called Sociocracy (see http://en.wikipedia.org/wiki/Sociocracy if you're interested), and it has worked wonders so far. Developers don't have to get bogged down by approval layers, and more generalized workers aren't burdened with the need to make too many decisions. This works very well with agile methodologies, as decisions can be changed on the fly to suit the client's needs.

      Just a thought.

  69. How well does it really work? by platypus · · Score: 1

    Small release cycles and having a working software most of the time.
    Isn't there a huge loss in testing efforts to avoid regressions?
    Or is automated testing mandatory for this?

  70. The real question is... by plopez · · Score: 2, Interesting

    will MS really change their processes or will it become nothing more than mindless corporate a paper chase? Will they embrace the culture and beliefs of the new methodology, or will it become just another 'flavor of the month'?

    From my experience in corporate culture I suspect the latter. What often happens is a group with in a company adopts a methodology which works for them. They then become the poster children for 'organizational change'. The processes are then rammed down the throats of other departments who may be resistant to change, or for whom the processes are inappropriate.

    Managers will go to be trained in the new metods and learn the form but not the true spirit of the reform. 1/2 hour scrums will begin to creep up to 2-3 hour daily meetings. In order to take advantage of the accelerated release cycle, products will be scheduled for release sooner, and testing/QA will suffer. Quick fixes will be prefered over true fixes and, inevitably, release will slip. That is my prediction.

    Truly changing an organizaqtion takes years. Everyone originally working under the old system essentially has to be fired, quit, transferred, retire or die (one article I read, though I cannot find the reference, said it takes about 20 years for a large company to change).

    This might be interesting to watch, in a morbid sort of way. MS is looking for a magic bullet, and we all know how well that works.

    --
    putting the 'B' in LGBTQ+
  71. Extreme programming is not agile. by Some+Random+Username · · Score: 2, Insightful

    XP is designed to shift the blame off of the programmers and on to the customers. "You didn't properly define the spec". Of course, the customer never knows enough to be able to define a spec detailed enough, so it always results in the dev team making something the customer isn't happy with, the customer getting the blame for it, and then yet another iteration is done to "fix" it based on the new spec. Repeat this process until the customer gives up and accepts what they get, or they give up and go somewhere better.

    Agile development is about working with the customer, giving them something to see and test and provide feedback on as quickly as possible. Instead of giving them crap they don't want in a week like XP, give them a basic test in 2 days, and then refine it to be what they want over the rest of the week.

    1. Re:Extreme programming is not agile. by Anonymous Coward · · Score: 0

      Exactly. I did 6 months pair-programming, features-on-note cards, XP blah blah blah for a project that produced high-quality, bug-free code backed by dozens of working unit tests. At the end of 6 months the business user discovered that we had built something he didn't want. Big-design-up-front still has its place.

    2. Re:Extreme programming is not agile. by dubl-u · · Score: 1

      At the end of 6 months the business user discovered that we had built something he didn't want. Big-design-up-front still has its place.

      One of the XP practices is frequent releases. How many releases did you have?

      Another practice is the on-site product manager. Was the business user in the room with the developers?

      Assuming you were doing weekly iterations, your business use has 26 opportunities to see that the product wasn't the right one. How would more up-front design have helped them see that sooner?

    3. Re:Extreme programming is not agile. by dubl-u · · Score: 1

      Agile development is about working with the customer, giving them something to see and test and provide feedback on as quickly as possible. Instead of giving them crap they don't want in a week like XP, give them a basic test in 2 days, and then refine it to be what they want over the rest of the week.

      That's how my XP experiences go. Weekly iterations are there to force everybody to come together at least once a week. But the product manager is sitting with the developers, so on all the teams I've seen, they spend a lot more time talking. Typically my team will check in with the product manager after every few hours of work on a feature.

  72. We use the "scrotum" method. by Anonymous Coward · · Score: 0

    As a manager, my preference is the "scrotum" method. That is, each developer is assigned his work and a deadline, and anyone who doesn't deliver gets kicked in the balls.

    It works.

  73. depends..Kaiser dropped agile methods by Anonymous Coward · · Score: 0

    Agile methods are great, but as a contractor at Kaiser Permanente a couple years ago, I saw how it was tried for about 6 months, the managers freaked out because they were clearly made redundant, and old skool process binders and management were clamped on with the force of a grizzly bear trap. So agile methods are everything they are advertised to be, but if those in power are threatened, they won't be adopted. After all, the managers and executives have big mortgages to pay;)

  74. That would make too much sense... by DaedalusHKX · · Score: 2, Insightful

    its the same in every job field, when employees are only in it for the money and take no cares about their work, because the company they work for is run by a bunch of assholes that will shitcan them at the drop of a pin... the employees do not care, and to them it is just a job.

    You hit it on the head... "motivated and involved"... what buzzwords those would be.

    Corporations need to sell stock though, not produce quality goods, and we all know quality takes time, and stocks sell better if you sell on buzzwords, vaporware and crap items with quick time to market (of course in Microsoft terms, quick time to market means only 1 or 2 years of delay with significant reductions in feature set, security and quality, but hey, they're the epitome of the corporate american dream... sell shit, make moolah, repeat.)

    You're still living in the 20's when people actually WANTED to buy american cars, and respected americans a lot more than they do now because we had quality in our products, and we took pride in a job well done. Something most of us aren't ALLOWED anymore at work, especially in the high tech sector where everything is about "buy the cheapest shit you can, because it'll be outdated before the 1 month it takes to blow up, that high quality stuff won't offer us the *wasteful company tax cut* from the republicans". I've sold plenty of execs when I was a tech, on "new microsoft technologies" and they swallowed it up hook line and sinker.

    ~D

    --
    " What luck for rulers that men do not think" - Adolf Hitler
    1. Re:That would make too much sense... by zogger · · Score: 1

      "Corporations need to sell stock though,"...that's it in a nutshell. Most american companies now are in the stock shilling business. Anything else they do is tangential to that fact, and the main reason they don't care about outsourcing anything important, or cancelling R&D, etc. We no longer have a "made in America" mindset or direction, we have a "intangible IP is the only thing that matters and we will shill it and trade stocks at the casino to get rich" mindset. When stock price is more important than the goods and services is when a company is on the way down, and when an entire nation does it, well...it is going to suck hard. It used to be "blue chip" meant you were talking about a company that was an asset to the nation, produced valuable tangible goods or very needed and affordable services, and people bought and held their stock as a long term investment, and that stock was then valuable. Maybe it didn't appreciate that fast,but it did slowly and surely and inside the bounds of reasonableness, and it served as an indicator of generational long solid work/employment/benefits to society. Now it's just programmed economic pure voodoo wave trading and speculation, no better than throw the darts at a chart or astrology really, that has nothing to do with the actual products of a company. Combine clueless investors who let other people completely do their thinking for them in owning and selling, and C**s only insterested in how fast and how much they can suck out of one company before they go do it someplace else, and you have what you see now-the only thing keeping the US afloat is the printing press and foreign investors frantic to figure a credible way to bail out and perhaps recoup a dime on the dollar they have already wasted.

      An old adage with a twist that fits, the globalist corporatists have switched to selling the sizzle, when there are no more steaks left at all.

  75. agile isn't new anyway by idlake · · Score: 2, Insightful

    These assertions are also wrong because agile methods are not new; they've been around for half a century. The fact that people only now have found a name for them doesn't change that.

    Do they work? For the right team and project. But those teams and projects tend to discover agile methods for themselves anyway. If you organize your team around textbook methods, agile is probably not for you anyway.

  76. More links by dmalloc · · Score: 1

    And for those of you who choose to gather more information before they start judging something they obviously know nothing about, here are some links that might get you started into the right direction:

    www.controlchaos.com
    www.scrumalliance.com
    www.scrumeducation.com
    www.xprogramming.com
    www.extremeprogramming.org
    www.agilemanifesto.org

    I am sure a google search will also point you into the right direction. As someone who has been doing this Scrum thing for a while now, some of the comments I had to read here just make me cringe. They seem to be full of prejudice and plain nescience. Everything needs to be applied with wisodm and I think teh agile community has understood that. IN German there is a saying "Was der bauer ned kennt, des frißt a ned" Which means as much as: What the farmer does not know, he will not eat. Some of you that post your comments here, are a bit like that.

  77. This is just BS by Rodong · · Score: 1

    Putting a name onto the procedure half the world has been using already...tsk Besides, the problem isn't mostly not inefficiency in the programming, the problem is management that thinks they know how to code and are changing the recepie or demanding new "hot features" before having let the programmers ensure that the existing features work 100% If janitors worked the way programming teams work, there would be a manager that turns up every 10 minutes asking if it's gonna work out, putting people up for overtime for no reason, pointless brainwashing company events, mandatory changes in the cleaning procedure every 2 weeks. very little quality cleaning would be get done, but in a hip and buzzwordy manner.

  78. This will be useful... by merc · · Score: 2, Funny

    on talk like a pirate day...

    arrRRR. scrum.

    --
    It's true no man is an island, but if you take a bunch of dead guys and tie 'em together, they make a good raft.
  79. Apple? Let me tell you about Apple by Anonymous Coward · · Score: 0

    Apple's "methodology" seems to be "first make it work, then deal with the consequences. or not"

    The consequences being poorly optimized code, code that's hard to refactor, and plenty of bugs that the normal user will never encounter, but that I stumble over every day.

    Lately they've also become fans of unit testing, code profiling, and ignoring their own user interface guidelines.

  80. Quality is mandatory... by israfil_kamana · · Score: 2, Insightful

    ... and automated testing is, while not mandated by scrum, a software best practice that helps make it function.

    The thing about scrum is that scrum is the process control part. It shapes the team's interface with the customer, and with the workload. XP provides several practices that work well within the team itself. Things like test-driven-development and continuous integration and other such things are practices that can be used at the team's discretion to maximize their productivity. Scrum isolates the team from scope interference during the iteration.

    --
    i - This sig provided by /dev/random and an infinite number of monkeys at keyboards.
  81. Re:Of course... by toddbu · · Score: 1
    This is dead-on. The problem with most projects is that the scope is way too big. Then they get into trouble because they've bit off more than they can chew. And what's most interesting is that in most cases, the market doesn't even care about most of the stuff that they're delivering. Vista is the poster child for this kind of mentality.

    What I like about Linux and other F/OSS projects is that they deliver in what I'd call a "tactical" mode. Find the biggest annoyance and address that first. Deliver a good but not perfect feature. Then as you're starting work on new stuff, polish up the old. Deliver frequently, get the code in front of your customers, and let them tell you whether or not it works.

    In the old model of software delivery, if a feature didn't work then you had to market the crap out of it or risk losing your investment. That's why we have so much crappy code out there.

    --
    If you don't want crime to pay, let the government run it.
  82. that's the amazing thing about XP by Anonymous Coward · · Score: 2, Interesting

    almost all projects that use it are colossal failures by every reasonable metric including the famed Chrysler project that pioneered the whole process. XP projects are often late and full of bugs and defects. And then you have the maintenance problems from the lack of documentation created as well as unstructured and unmanaged architecture that emerges. There are a lot good individual practices in XP and Scrums, but the whole is much weaker than the sum of its parts.

    I think the lack of meaningful design and analysis is the real killer of XP. XP relies on a methodology called continuous integration to overcome this deficiency. Continuous integration is simply a way of saying continuously change the design of the architecture to meet the needs of the day. And so you end up continuously rewriting the same code to meet new usages. XP has another concept called test driving development which dictates unit tests are written before the actual functionality. So when you continuously integrate, not only do you have to continuously update objects that use your code that you're changing all the time, but you also have change and maintain the unit tests already created. This whole series of chasing your tail can be avoided with a little forethought (aka design and analysis) to what you're doing.

    XP can be a useful methodology in environments where the requirements are changing daily, there are a lot of unknowns and risks in the project such a dependency that doesn't exist yet or that is unstable and so changing a lot or projects whose future from a business perspective is questionable. But overall, XP is as big of a joke on the development community as scientology is to religion. Both are pushed by zealots detached from reality and neither has any evidence to back its dogma.

    Since I bashed XP above, I'll enumerate some of the good things about it.
    1. Continuous integration if done in a more sane manner like coming up with a design before hand, but not being afraid of changing it when needed and having tools to manage changes (like a continuous integration server)
    2. quicker release cycles
    3. continuous input from the project champion and business users.
    4. having unit tests
    5. daily meetings on the issues of the day
    6. making a business case for refactoring code instead of doing so because it's cool or technically correct.
    7. building only what you need and nothing more

    1. Re:that's the amazing thing about XP by chromatic · · Score: 2, Interesting
      Continuous integration is simply a way of saying continuously change the design of the architecture to meet the needs of the day.

      That's pretty much exactly not continuous integration. I have my doubts about your understanding of XP.

    2. Re:that's the amazing thing about XP by angel'o'sphere · · Score: 1

      This below is certainly not true and some stuff you got completely wrong:

      I think the lack of meaningful design and analysis is the real killer of XP.
      XP for one things tries to focus in Programming, not design, thats right. But it does not say, you should not or need not to design. XP is for experiance OOP programmers. A lot of stuff you probably would call design, is expected from them to be done in the programming phase. (E.G. to use factories and delegation where needed -> application of the correct design patterns).

      XP relies on a methodology called continuous integration to overcome this deficiency. No. It uses Continuous integration, but this is not related to your false asumption above and the following sentence is wrong also: Continuous integration is simply a way of saying continuously change the design of the architecture to meet the needs of the day. Wrong, that is called refactoring. Continuous integration means that people who are working seperated on seperated issues of the whole system have to integrate all their changes continiouslyvia a versioning system, and do builds AND tests of the whole system. Continiously means here 4 or 6 times a day.

      And so you end up continuously rewriting the same code to meet new usages. XP has another concept called test driving development which dictates unit tests are written before the actual functionality. So when you refactor- inserted by commenter/b>[continuously integrate], not only do you have to continuously update objects that use your code that you're changing all the time, but you also have change and maintain the unit tests already created.

      Thats wrong also. IFF you do test driven development, then you design your tests first. The highest level of tests you do are User Acceptance Tests, that are tests that try to test a User Story or Use Case just eblow the user interface level. IFF you write tests first, you are forced to design your system for testability. ( you see, there is design, but it is driven by tests) So if new functionallity is build into the system, your old tests should still work, unchanged!!! At lest on this level. The same is tru for lower level objects. If you have unit tests testing single classes, then new functionality should lead to new methods in that classes. So why should the old tests need changes? You only add new tests for the new code.


      This whole series of chasing your tail can be avoided with a little forethought (aka design and analysis) to what you're doing.


      If you do it right, there is no chasing the tail. As you only write solid code and tests for it. If you do majour refactorings, you have surely an inerface behind which your code is hidden and you test based on that interface, right? And as you do continious integration you see conflicts between your changes and yoour team mates changes pretty soon (4 or 5 times a day, rarely longer than 2 hours that it either compiles + runs all tests or does not!!)

      Sorry: but you have no clue about XP :D or you would not have got the core ideas completely wrong.

      angel'o'sphere

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
  83. agile? or fr-agile by Device666 · · Score: 1

    Why should be anyone be surprised Microsoft uses a SCUM methodology???

  84. You're not describing xp, you're describing... by israfil_kamana · · Score: 1

    ... religious fundamentalist XP. XP, applied sanely is a set of engineering practices that can highly charge a team's productivity. If the "xp" team is delivering crap every week, then it's not xp, it's bad customer relations wearing an XP skin. Typically, however, I see a scrum wrapper around an XP team, where scrum is the main s

    --
    i - This sig provided by /dev/random and an infinite number of monkeys at keyboards.
  85. [Corr] You're not describing xp, you're... by israfil_kamana · · Score: 1

    ... describing religious fundamentalist XP. XP, applied sanely is a set of engineering practices that can highly charge a team's productivity. If the "xp" team is delivering crap every week, then it's not xp, it's bad customer relations wearing an XP skin. Typically, however, I see a scrum wrapper around an XP team, where scrum is the main process control and xp activates the team itself.

    --
    i - This sig provided by /dev/random and an infinite number of monkeys at keyboards.
  86. Scrum worked well for us, but not a cure-all by BP9 · · Score: 3, Interesting
    We used scrum in our development for about a year. Our ~25 developers were already arranged into several groups, each one with a technical lead, we turned each of these teams into a scrum and did the daily meeting. At first the meeting ran long and everyone was frustrated, but eventually we got it down to a short meeting that accomplished the main goals of having everyone in the same room: 1) where are we, 2) where are we going in the next day, and 3) who needs something from someone else.

    For us the weakest part of the scrum process ended up being the time tracking (which is really cool in theory and draws pretty pictures for sr mgmt on progress). This isn't due to a fault in the concept, but the nature of our workload. Many of the groups were still heavily into the 'R' side of R&D at this stage, and its very hard to predict what you'll turn up and how much that will cost you when you're still in research and design work. From a mgmt point of view this looked like us slipping daily on the charts, which caused some bad feelings.

    Once things moved to implementation and testing in a given group the scrum stuff worked brilliantly. As one of the team leads I generally dislike excessive meeting time (preferring instead more informal 1:1 or 1:n in the hallway or on IRC), but these got short enough and had enough value they were worthwhile.

    It really does help to force everyone to think about what they've accomplished in the past day and 'promise' what they expect to accomplish in the next day to their team. We didn't have any real slackers, but just spending the couple of minutes planning out your day enough to tell everyone else what you'd be up to was very beneficial.

    Generally the 'what help do I need' part of the meeting was the least useful, as most people would IRC or email around directly (perhaps at the cost of some NMI style distraction) and not really ever come to a meeting needing anything. It was still IMO worthwhile.

    Scrum only worked when we could break down implementation into bite sized chunks (no more than 2 days I think is the guideline in the book); at the risk of repeating myself it really didn't work well going into a big problem and trying to work out a plan and design.

  87. Response to unreasonable client expectations by Archtech · · Score: 1

    A lot of very good programmers, some of them with vast experience, swear by (not at) Agile methods, XP, and techniques like Scrum. Myself, I was trained to use "waterfall" techniques, and still believe they have a lot to offer - there is much to be said for freezing requirements and specifications (at least while you deliver the current release - there is nothing to stop you working on two or more releases at the same time, as long as you use different teams for them).

    As many posters have pointed out, there are too many PHBs - especially on the client side - who refuse to learn the fundamental axioms of software engineering. E.g. they don't know Brooks' Law, and they think they can keep changing requirements as much as they like, right up to (and beyond) the delivery date. Consider this recent glaring example (the UK National Health Service's $10 billion patient booking system). According to today's Sunday Times, a senior civil servant called Richard Granger criticized a less senior official for delaying the project by continually piling on new requirements or change requests:

    "Granger censures Margaret Edwards, the department's director for access and patient choice, for adding numerous new specifications to the booking programme, known as Choose and Book.

    "Granger writes: "Choose and Book's £20m IT build contract is now in grave danger of derailing (not just destabilising) a £6.2 billion programme."

    "He concludes: "Unfortunately, your consistently late requests will not enable us to rescue the missed opportunities and targets." "
    http://www.timesonline.co.uk/newspaper/0,,176-1869 851_1,00.html

    As I see it, Agile techniques like Scrum are a response to the insistence by non-technical PHBs (who unfortunately hold the purse strings) that they be allowed to go on changing their minds right up to delivery date. They're not perfect, but under the circumstances it is amazing they work at all - which they do.

    --
    I am sure that there are many other solipsists out there.
  88. Re:Of course... by dbc · · Score: 1

    Unfortunately, only too true.

    Speaking as a manager, I think there are certain minimum things the manager must be able to do:

    1) Run the scripts that create the build environment on his workstation. S/He should wipe that workspace and rebuild it on a random basis, weekly or so. What??? You don't have hands-off scripts to create the build environment? -> good management question #1 has just been asked.

    2) the manager should be able to kick off a nightly in the build environment he created in step 1. Are those nightly build scripts up to date?

    3) The manager should be able to run the check-in requirements test script. You do have one, right?

    4) The manager should be able to create a test case and check it into the testing framework. S/he should do so on a random basis. A good manager probably brings more to the testing effort than to the coding effort.

    Note that none of the above require extensive up-to-date coding ability, or massive amounts of time. But they all directly get at good process and quality in a very hands-on way. It is much harder to sneak BS past any manager that can do the above 4 things.

  89. Shoot the messenger, not the message by Infonaut · · Score: 1
    Control Chaos obviously got caught up in an overabundance of hype-speak. But Scrum is just a process. The idea behind it is to shift the project structure so that managers work primarily to remove obstacles for developers, rather than creating additional reporting requirements that hinder them. Developers identify problems and make decisions about how to deal with them. Because managers are present for these discussions, they know what resources the developers need and how to keep the rest of the organization off their backs.

    It doesn't work in every situation or in any organization. You can't just plug it in anywhere, because it's very dependent on how managers perceive their role. It did work well when, at the suggestion of one of the developers, I used it with a small team in a small organization with a relatively trusting client. I have no idea how well it would work on a larger project for a more hierarchy-oriented organization.

    --
    Read the EFF's Fair Use FAQ
  90. Just another stimuli to induce transient overwork by monkeyGrease · · Score: 1

    First, software development, engineering, applied math, is basicly organized problem solving. The core primitive is the technical analysis and design (software implementation is just fine grained design). Any wrapper (organization/management) around these primitives is theoretically just glue to get the primitives to mesh and go in the 'right' direction. Necessary glue, but just glue.

    Development processes do not amplify the inherent problem solving capabilities of your workforce. They can just minimize organizational and communication overhead. You need training and education to raise the inherent problem solving capacity...or hire more smart people. The work environment itself can raise effiency some by reducing burnout and increasing motivation. This includes free lunch (google, dreamworks, etc), frequent (rare is just insulting) company sponsored activities (camping, skiing, etc), and good benefits.

    All of these processes, from old-school top-down waterfall, to spiral, to peer-oriented agile/XP, to bottom-up bazaar, impose overhead to the core problem-solving in order to achieve higher level objectives. Different processes are more efficient for particular types of objectives and different workforce cultures. Some scale better than others. Some are more nimble than others. However, a 'new' approach is rarely any better than its almost certainly pre-existing relatives.

    A 'new' approach often does carry one short term advantage though. It can create a temporary excitement that can result in extracting more productive problem-solving hours out of employees (like the cited Scrum-month, or a game company's 'crunch' with late night pizza, etc, etc). This wears thin and eventually reduces to just more hours without increased problem solving. New processes can't make people better problem solvers. Bad ones just suppress and oppress them.

  91. Re:Of course... by JulesLt · · Score: 1

    Because, of course, developers can't actually be responsible for any element of project failure - it has to be poor management. If they had good managers who were all developers, everything would be 100% OK.

    It may be worth asking yourself, next time you're set a ridiculous deadline for a fixed-cost project that was sold way under budget, that maybe rather than being actively evil, your sales people are acting under misinformation.

    I know from experience that many developers dislike any form of time management / booking systems, but are also largely incapable of saying how long something actually took to do, or might take to do - yet somehow expect that everyone else in the chain is going to get that right. So when the business loses the sale because they over-quoted - that's sales fault. When it goes bankrupt because the developers took twice as long as they said it would - it's managements fault.

    --
    'Capitalists of the world, unite! Oh ... you have' (League Against Tedium)
  92. scrumdiddlyumcious by Anonymous Coward · · Score: 0
    Treadwell said many teams within Microsoft rely on Scrum as a way to turn out quality software on time and in tune with user requirements.
    What?? Microsoft turns out Quality Software? on time?? and in tune with user requirements???? Did I wake up in bizarro world or something this morning?
  93. Re:Of course... by chris_mahan · · Score: 1

    Rule number one of business: It's Always Management's Fault.

    --

    "Piter, too, is dead."

  94. WTF? You're confused.. by Anonymous Coward · · Score: 0

    Agile development is about working with the customer, giving them something to see and test and provide feedback on as quickly as possible. Instead of giving them crap they don't want in a week like XP, give them a basic test in 2 days, and then refine it to be what they want over the rest of the week.

    Uhm, what are you saying? Agile development IS exactly what you say: work with the customer in a tight loop so you don't create something the customer doesn't want. XP is a type of Agile develpment method. They recommend X weeks in the XP books because that's a good balance for everybody. If you want to add the next feature in 2 days, go ahead (but you probably only have one customer, and an enthusiastic one). The point is to do it QUICKLY and don't let the project get off track.

  95. Where I work... by thesandtiger · · Score: 1

    ... we use a process called MTCOADBAFM.

    Measure Twice, Cut Once, And Don't Be A Fucking Moron.

    It works really well. Our stuff gets done on time, at budget, and passes all quality control checks.

    I know, I know - our process doesn't have a nice EXTREME TO THE MAX buzzword, but it works for us.

    --
    Since I can't tell them apart, I treat all ACs as the same person.
  96. My experiences with Agile by Arandir · · Score: 3, Insightful

    One of our divisions at work has been using Agile for a couple of years now. Recently I've had to be involved in their process.

    Aaargh!

    If they're using real Agile, and not just picking and choosing the parts they like, then I can only conclude that Agile sucks. For years I have been bitching about the stupid waterfall model I've had to use, but Agile seems to be the exact opposite, with opposite but just as existant disadvantages.

    First, where's the fricking specifications!?!? How the hell am I supposed to write code if I don't know what I am supposed to write? For a small team this informality may work, but for the fifty person team I'm on, it's maddening. "Just do it!" they tell me. So I do. And then throw it away because it isn't what they wanted.

    Second, it's claimed that there are specifications, only that they're called "user stories". That's all well and good if you're writing a user interface, but most software is not a user interface. As a systems software developer, "user stories" don't do me much good because the user doesn't interact with the software I write. Heck, according to the user stories, my code doesn't even exist!

    From what I can see of it, Agile is merely a reactionary response to old fashioned gated/waterfall processes. It's not better, it's not worse, it's just another damned unworkable process.

    --
    A Government Is a Body of People, Usually Notably Ungoverned
    1. Re:My experiences with Agile by Anonymous Coward · · Score: 0

      If your software has no effect, why ARE you writing it? You need to figure out who your customers are. Are they end-users or other members on the team? Where I work part of the way we define the story is by stating who the customer is. Many of our stories are for creating tools that only the internal developers use - they are never seen by the end-users of the software, but they need to be tracked and prioritized just like everything else.

      How are you supposed to know if your story is completed otherwise?

    2. Re:My experiences with Agile by Arandir · · Score: 1

      If your software has no effect, why ARE you writing it? You need to figure out who your customers are.

      Some of my software has actual human users (other engineers, customer support personnel, etc), but a lot of it simply doesn't. This isn't unusual for system software. Who the heck is a user for a device driver, for example, or a boot monitor?

      --
      A Government Is a Body of People, Usually Notably Ungoverned
    3. Re:My experiences with Agile by angel'o'sphere · · Score: 1

      First, where's the fricking specifications!?!? How the hell am I supposed to write code if I don't know what I am supposed to write? For a small team this informality may work, but for the fifty person team I'm on, it's maddening. "Just do it!" they tell me. So I do. And then throw it away because it isn't what they wanted.

      If you have no specification, you cant code. Period.

      Thats not a flaw of XP, Scrum, RUP water fall or what eer, but a flaw of your management.

      Also in Scrum you want a specification, of course! If your team does not know that, you need a better ScrumMaster. You have one, haven't you?

      How do you apply XP -> test first, if there is no specification?

      angel'o'sphere

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    4. Re:My experiences with Agile by HR · · Score: 1

      Who the heck is a user for a device driver, for example, or a boot monitor?

      The operating system or other user programs talking to the device drivers. That is the consumer of the services provided by your software.

    5. Re:My experiences with Agile by Anonymous Coward · · Score: 0

      I'm a customer for a device driver. How else can I use the device? The customer might write a story like:

      "The device uses less than 1% of the CPU for normal operation" (note that the story doesn't mention the driver, although that's where the work is)
      or
      "The device can be hot swapped at any time"

      Why are you writing a boot loader if you don't have a customer for it?

      "The boot loader can browse memory as hex numbers"
      "The boot loader can copy files"

  97. It's not "Microsoft is adopting" by melted · · Score: 1

    It's "one small team at Microsoft is adopting" SCRUM. There have been agile development crazy teams at Microsoft for quite a while. Guess what, they're no faster than the "regular" teams, and the quality of the output is no different in most cases. But folks in management feel good about themselves.

    1. Re:It's not "Microsoft is adopting" by managedcode · · Score: 1

      But folks in management feel good about themselves
      He has to get a good review and get a raise for himself. MS is no longer a tech company filled with passionates. Its all about BSers who just want to get credit for some BS process and want to make money. Courtesy: Steve Baldy
      Their are serious problems in middle management. Don't be surprised if the company collapses in the next decade. One of my friends who works in the IT group has a boss from Ford Motor Company who doesn't understand anything in Software Development. He badly screwed my friend in the review because this guy is an absolute geek. Life goes on.....

  98. Read a little by sozinsky · · Score: 2, Interesting

    First, the scrum book, by its co-creator ken schwaber http://www.amazon.com/exec/obidos/tg/detail/-/0735 61993X/ref=pd_sim_b_4/103-6526029-2864653?_encodin g=UTF8&v=glance interestingly enough, its published by MS Press Second: what people seem to be missing in this thread is that scrum is essentially a anarchist/communist/utopian project management technique. there are no bosses telling you what to do. teams are self-organizing and autonomous. this is a _radically_ different project management technique -- no folks, its not about the daily meetings. it's about being bossless. A buddy of mine went through scrum training with schwaber, and he had them do an interesting exercise. teams of two were instructed to walk exactly 300 paces in exactly 2 minutes. each team was composed of a boss and a walker. the walker was told by the boss to take a step, slow down, or go faster. _none_ of the teams successfully walked the 300 paces in the time period. so they were broken up such that each person had no boss, and simply had to walk the 300 paces. _every_ person completed the task. lesson: micro-managing bosses just slow you down. third: a very interesting practical example of this sort of project management technique is the GE jet engine plant in durham, NC. http://www.fastcompany.com/online/28/ge.html This shop is organized around a bossless culture. They are the most successful and productive jet engine manufacturer in the world. A great example of how this sort of technique isn't just for pot smoking hippies. Finally: the essential thing that binds all of these agile/xp/scrum-ish like techniques together is TESTING. No code can be written without unit tests. All requirements have a direct mapping to a suite of acceptance tests (written, say, using fitnesse -- www.fitnesse.org). There are three types of developers in this world: those that test first (the ones I want to work with), those that have never tested at all, and don't want to (stay away from these ones), and those that have read/heard about test first and want to try it out (these can be saved). --sozin

  99. Using scrum to build scum by DeadDecoy · · Score: 1

    Couldn't it be true for them to deliver fewer features than originaly planned AND more features than ever expected? It's a perfect tautology.

  100. No, you are confused. by Some+Random+Username · · Score: 1

    XP is exactly what I described. Agile development whores have tried to adopt XP and pretend its an agile methodology since PHBs have heard of XP. Agile development means working with the customer. XP means making the customer come up with a spec that they can't possibly create, doing it, and then blaming the customer for it being wrong. XP is where you create stories for each iteration. Agile development doesn't do iterations, the project is always evolving as the customer is involved and providing feedback.

  101. XP is religious fundamentalism. by Some+Random+Username · · Score: 1

    There is no kinda doing XP, the creators of XP have always been very clear that you either blindly follow all their arbitrary rules, or you are not doing XP, and your bad results are your own fault for not doing XP. Again, its all about laying blame, that's what they created it for, shifting the blame off of themselves as programmers, and onto their percieved enemies (customers).

    1. Re:XP is religious fundamentalism. by dubl-u · · Score: 1

      There is no kinda doing XP, the creators of XP have always been very clear that you either blindly follow all their arbitrary rules, or you are not doing XP, and your bad results are your own fault for not doing XP.

      That's patently false. I don't deny that there are some people who are fundies, but you get that with anything. The second edition of Extreme Programming Explained moved even farther from particular rules in the direction of broad principles, and on the Extreme Programming mailing lists you regularly see people like Ron Jeffries saying that the original 12 practices are where they'd like to see people start, but that local adaptation is an important part of it. When Kent Beck pops in, it's generally to argue against firm rules in general.

  102. Suprised at all the nay sayers by chrisdrop · · Score: 1

    I am not always surprised when I see the trolls out on slashdot (it is one of my fav sites - not a total bash). In this case - I am somewhat surprised to see how many nay sayers are posting. I have been an agile advocate and user for some time now. I can say that while it is 'nothing new' - neither is anything entirely new. Putting together old ideas into a newer unification is what is usually happening with most things. In any case - the end of the story is - "DO WHAT WORKS FOR YOUR BUSINESS". I believe - as do many other practicioners that Scrum specifically has enabled me and my groups to stay closer to the business needs and to meet what the business needs more adeptly. This is really the crux of the matter. So - I would also gather that all the nay-sayers are waterfallers for the last N years. All I can say is - nay say what you know - be skeptical, but do not show yourself until you have some real experience in something. So - DO a Scrum based project for a few sprints - then come back and post about how useless it is.

    --
    " I have no tag line. "
  103. Re:Of course... by jeffsutherland · · Score: 1

    This is exactly what Scrum does which is why it is used on some open source projects. "What I like about Linux and other F/OSS projects is that they deliver in what I'd call a "tactical" mode. Find the biggest annoyance and address that first. Deliver a good but not perfect feature. Then as you're starting work on new stuff, polish up the old. Deliver frequently, get the code in front of your customers, and let them tell you whether or not it works."

  104. Microsoft lauds scrotum by ichigo+2.0 · · Score: 1

    That's what I thought it said at first. :P

  105. Inkscape is quite feature-full image editor by Anonymous Coward · · Score: 0

    It is also a vector one, like flash. (I believe you meant to say 'vector')
    Runs under windows, linux; opensource, mature, and easy to use..
    http://www.inkscape.org/

  106. MOD PARENT UP ! by pardonne · · Score: 0, Troll

    Mod it up.

  107. Scrummy Software by asink · · Score: 1

    I always felt that Miscrosoft released Scrummy software.

    --
    "Hex, Bugs, and Rockn'Roll"
  108. agile doesn't do iterations? by Stu+Charlton · · Score: 1

    Come again? Isn't an iteration a set time where a project "evolves"? Every Agile project I've been involved, even back when they were called "Iterative & Incremental" or "Evoluationary" methods, had ... iterations.

    "Agile" is an umbrella term. XP fits within it. It means working with a customer just as much as scrum or DSDM or "create your own agile method"... though with different priorities, focus & responsibilities than other methods.

    Beck's main book (Embrace change) and the Beck/Fowler book (Planning) both make this clear. As do the C2 archives from circa 1998-1999 when XP was first created. Perhaps you've spoken to people that have gone way too far down a path (customer is responsible for specs "period") without being reasonable (customers are responsible but need collaboration & guidance).

    --
    -Stu
    1. Re:agile doesn't do iterations? by Some+Random+Username · · Score: 2, Insightful

      No, an iteration is where you leave the customer out of things, and develop. The stories do not change during the iteration, you come back to the customer after the iteration to have them redo their specs now that they can see how you did things (not the way they wanted). With a real agile development methodology, there is no iteration where you set requirements in stone and then go meet them. You do the least possible to show the customer, and then show them, and you keep working with them constantly. You could pretend that XP would qualify if you had 1 day or less long iterations I guess, but that's not how XP was designed.

      Yes, the XP douches certainly do pretend that XP is agile. I am not saying they don't. I am saying they (Beck) are wrong. Calling something agile doesn't make it so. Agile means able to easily adapt to change, not able to blame the customer for changing the spec. XP is all about arbitrary rules, which you must follow even if they make no sense in your situation. The methodology itself isn't even flexible, nevermind using it.

  109. Scrum isn't new... by Stu+Charlton · · Score: 1

    Three popular posts are emerging:

    1. what's new IN scrum?
    2. why is there "yet another buzzword" with Scrum?
    3. methodologies don't matter, people do
    4. I hate XP

    Well the answer is, there's nothing new, and it's not a new buzzword. It's been around since at least 1996-1997. And it contains a lot of "common sense" to certain classes of hackers, which is far from "common sense" to managers used to treating software development like a manufacturing process.

    As for methodologies mattering, the real problem is that many times you'll have talented developers and talented business people, but they don't speak the same language. So there is misunderstanding. And management also has its own language and techniques. Smart people will work through these problems, though it certainly can be nerve wracking and inconsistent. A method really is a way of codifying behaviours and interactions that have worked well for others. It should be tailored to your situation with care, and shouldn't be swallowed as a statement of religion.

    Finally, XP is a way of looking at things from a particular vantage point. That's a strength and a weakness. It ignores larger concerns in favour of smaller concerns. Having said that, most of Its practises are spot on, even though they're very "programming in the small" practices. Pair programming is an acquired taste, of course, but it is very effective with certain team dynamics and individuals.

    --
    -Stu
    1. Re:Scrum isn't new... by Mark1977 · · Score: 1
      To most businesses writing software, XP is new. Of the 6 software teams I've worked with in my career:
      • None have had a suite of automatic test cases
      • None have had an end-user working regularly within 20 feet of me
      • None have had programmers writing code in pairs
      • None have had regular release periods anywhere near 3 weeks
      • None have had a problem asking me to put in overtime for two consecutive weeks

      I've always felt my productivity ranged from average to downright non-existant. By a not-so-strange coincidence, that's also been the range of my enthusiasm and enjoyment at work. (Perhaps I'm a slow learner, but next time I get a job I will not simply offer myself to the highest bidder).

      XP is not for everyone - some people simply hate pair-programming and think unit tests are a waste of time. But I suspect that for developers who enjoy explaining and understanding code and requirements face-to-face, it is the most efficient and enjoyable way to work.

  110. well.. by Stu+Charlton · · Score: 1

    I meant "four" popular posts... alas.

    --
    -Stu
  111. But what about the programming languages? by master_p · · Score: 1

    No matter how great Scrum/agile methodologies are, the problem is in the programming languages used. Fix the programming languages, and most of the problems will go away. We should have been programming requirements by now and not implementations.

  112. So five years ago. by Anonymous Coward · · Score: 0

    Most major companies, and open source projects use some agile methods already.

  113. Its the people, stupid... by javabandit · · Score: 1

    I've been leading programming teams for quite awhile now. I've used several different development methodologies, and had them all fail and succeed at some point. Every success or failure came down to one thing... PEOPLE. If you have a good team, that team can accomplish anything using pretty much any development methodology. Crappy teams will yield crappy results. Good teams will yield good results.

    Good people know how to make a process work for them, whether its XP, Scrum, Waterfall, or RUP. Bad people become a slave to the process and end up failing. I'm not saying process isn't important. I think process is very important. But process will never replace good people and good synergy.

  114. They saw the rugby? by karearea · · Score: 1

    I first saw the title and thought well, it's good to see Microsoft agree that the All Blacks' scrums were pretty bloody good in the spanking they gave the Irish over the weekend.

    Then I thought - What!?! has /. branched out into sports now?

  115. Re:That's what people sayd about O/O in the eighti by Peter+La+Casse · · Score: 3, Insightful
    Nay-say all you want, but if you haven't tried it, then you have nothing productive to say for or against.

    Pardon the slight topic drift, but this is crap. Having tried something improves somebody's credibility, but insightful analysis of an activity is possible without engaging in that activity. A criticism of, say, XP doesn't become invalid because the person making it hasn't tried XP. If it's valid, it's valid on its own merit.

    In other words, when evaluating ideas, don't weight the speaker too much. Don't weight them too little either, but there's little danger of that, while there's lots of danger of only weighting the speaker and not at all weighting what they're actually saying (which can lead to a "cult of personality".)

  116. The Funny Thing by miyako · · Score: 1

    I always find it a bit funny every time I read an article promoting the programming paradigm d'jour. The reason is that nearly every programming paradigm that I've run across seems to take some fundamentally good idea that I and most of the programmers I know use regularly anyway, and try to create a complete programming methodology around it. A lot of the concepts in agile programming and eXtreme programming are things that I think most developers realize very early on.
    OO always seemed like the best example of this to me. Before I'd really learned much about OO proper I used a lot of the ideas behind it when developing software. Of course the problem is that people seem to have a tendancy to take these concepts and run too far with them. A couple of semesters ago I was helping to tutor a student in his first Object Oriented Development class. The program the student has been asigned was supposed to allow the user to enter a series of names and birthdates and then print the list back onto the screen. The program wasn't working so I asked him to give me a printout of the source code. He had used 11 classes to write the program.
    Anyway, I know berating OOP is a little off topic, but my point is that I really have a hard time understanding companies deciding to implement a specific programming paradigm when doing so in general seems to often lead to absurdist levels of whatever the particular paradim espouses, and when it would often be much more efficient to simply allow teams to program in a way that feels most natural to them.
    This can be particularly important it seems the more people that you have working on a project, simply because different developers are comfortable using different styles of programming. A friend and ex-coworker of mine and I for example found ourselves much more productive when using a variant of the buddy method of programming. This seemed to be largely because we both are about the same skill level but have different background when it comes to coding (his first lanuage was Java and he works mainly with Java and PHP, whereas I started with C and work mainly with C++) so we tend to counter-balance eachother well (he tends to be better at noticing when the general design of the program is going astray, whereas I tend to be better with catching more local problems like buffer overflows. He also has a good eye for catching random syntax errors that I often overlook, while I tend to be better at knowing various CS algorithms off hand- or at least knowing of them and knowing when they'd be useful to look up. He tends to have a good mind for what constitutes readable code, whereas I tend to be good at knowing good shortcuts and optimizations to save memory or cycles (we were both CIS majors at the same school incidentally, but while he really got into the CIS side of things I tend to spend a lot of my time reading about pure computer science and doing things to learn more about CS via MITs Open Courseware, having realized too late into my education that CS was really what I wanted to do,as opposed to CIS)). Other developers at the place I used to work however hated having anyone else around while they worked. Similarly, some developers were very much into doing all of the design work, then writing all the code, then doing all the testing. I on the other hand always found myself more efficient when I could work on a small chunk of the program, test it well, and then move onto the next one.
    Granted, I never worked on a project team larger than a half-dozen developers, so my experience may be skewed. I realize that it can be difficult if a group of programmers is working together and half want to develop the program in small chunks, while others want to do all the design, then all of the coding, etc. I think that there is still room for individual preference and compromize from within the group, rather than a mandate for a specific development method coming down from management who rarely understand the methods they are implementing, and even more rarely the code they are mandating the method be used on (not that this is necessarily bad, managers need to be good managers, not necessarily good developers).

    --
    Famous Last Words: "hmm...wikipedia says it's edible"
  117. Fear of Steve? by Slur · · Score: 3, Informative

    Yeah, I saw that movie too. So is that how you imagine Steve still behaves? And do you really think that's what makes Apple successful? I think you're projecting your imagined view of Apple onto the real thing. If you have a look at their current roster, and their programming methodologies, I think you'll get a much more realistic picture of what makes Apple successful.

    For one thing, they hire really talented people, and quite a lot of PhDs. And they use a far superior development environment than Visual Studio. and really well-designed APIs based on objective-c for most of their applications. Third, they build on top of a Unix-like kernel, and make excellent use of open source when they recognize something worthwhile (KHTML being a prime example).

    You see, Steve's second coming brought all those brilliant folks over from NeXT, and it brought NextStep, Interface builder, and a huge mass of portable objective-c code along. And it brought Apple many years of lessons learned. Things like making sure you have a solid foundation before you start building on top of it. Steve and his NeXT entourage understood that you can often get a lot further by rebuilding the whole foundation from the ground up. The reason Copland failed was that frankly, it wasn't ambitious or courageous enough to start from scratch. They didn't have the experience and insight of NeXT. It was very smart of them to admit failure and get a hold of what NeXT had... (Apple's acquisition of NeXT is an event quite comparable to Apple's visit to Xerox PARC, and literally connected to that visit. Because what NeXT leveraged best was OOP, something Steve only after leaving Apple chose to revisit.

    Microsoft has had many opportunities to go back to the foundation and start over, and to some degree NT was such an endeavor. But like Copland they didn't go far enough. Had Microsoft decided - as Apple did 7 years ago - to create a completely new Unix-based OS that would use the same interface paradigms, but run old applications in a sandbox, they might not have the mess of exploitable code that is Windows today.

    Honestly, the difference between programming Apple's APIs versus Microsoft's is striking. And it's the same with the development tools. Apple's libraries are so much more elegantly designed than Microsoft's. And XCode blows away Visual Studio. If you ask me, I think the reason Apple's development goes so much more smoothly is that the programmers are just a lot happier, and waste a lot less time fighting with crappy technology.

    To blithely label Apple as a big personality cult is kind of silly and outdated. The people who work at Apple are quite simply brilliant engineers who for the most part enjoy working with and building well-designed systems. They are not little children playing in Steve's pond just for the delight of being at Steve's feet. If that's what you believe, I think you've watched "Pirates of Silicon Valley" a few too many times, and forgotten that it refers to pretty ancient history at this point.

    --
    -- thinkyhead software and media
    1. Re:Fear of Steve? by Reality+Master+101 · · Score: 1
      Yeah, I saw that movie too. So is that how you imagine Steve still behaves?

      I didn't see the movie, but I have read a lot of first-hand accounts. I have no doubt that's how Jobs behaves, same as I have little doubt how Larry Ellison behaves. Or do you think he's just misunderstood as well? (Not that I equate Jobs with Ellison... both are jerks, but I think Jobs has a good heart, while Ellison does not).

      For one thing, they hire really talented people, and quite a lot of PhDs. And they use a far superior development environment than Visual Studio. and really well-designed APIs based on objective-c for most of their applications.

      Microsoft hires a lot of PhDs, too, and arguabl. And if you think what IDE or language you use makes a difference, then I have a special package of "silver bullets" you may be interested in buying.

      Sorry, but I have little doubt that if Steve left Apple right now, they would again sink into mediocrity. And that's OK -- lots of companies are like that. You need strong leadership at the top to keep things moving in the right direction. But don't kid yourself that Apple is some self-running machine. If any company qualifies as a personality cult, it's Apple. It seethes in their arrogant corporate culture.

      --
      Sometimes it's best to just let stupid people be stupid.
    2. Re:Fear of Steve? by tshak · · Score: 1

      And XCode blows away Visual Studio

      I admit that it's been a while since I've used XCode, but I can't imagine that in 18 months it blows away VS 2005 (even with Apple's ability to rapidly improve products). I agree with most of what you said about Apple, but this statement honestly made me laugh.

      --

      There is no longer anything that can be done with computers that is nontrivial and clearly legal. -- Paul Phillips
    3. Re:Fear of Steve? by angel'o'sphere · · Score: 1


      Microsoft hires a lot of PhDs, too, and arguabl. And if you think what IDE or language you use makes a difference, then I have a special package of "silver bullets" you may be interested in buying.


      The IDE you use makes a hughe difference.

      Some ppl only use vi and makefiles (and program in C). Using a modern IDE, regardless which, is far more productive. If you use Java you will see that IDEs like Eclipse, CodeGuide or IDEAs IntellyJ have huge diffeences versus each other and make certain taks very easy or very difficult repectvely. E.G. setting up a new project in Ecplipse is a pain in the ass, where it is in CodeGuide just one or two clicks.

      Next thing is refactoring. Microsoft Visual Studio has none, so neiher has XCode. I don't think that XCode blows MS VS out of the water, as one of the parents think. For that it is far to "special to handle". I'm as a Mac user and long time programmer simply don't understand the philosophy of XCode (e.g. its document centric instead of having a workbench like most IDEs, its way how it switches to debugging and back is strange). MS VS .NET is in my eyes far better, but both stink versus Eclipse or the other Java IDEs.

      It seethes in their arrogant corporate culture. So you work for Apple? Or why do youthink you can comment on their corporate culture?

      angel'o'sphere

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    4. Re:Fear of Steve? by Kosgrove · · Score: 1

      Microsoft's old API (Win32) is so hideous because they believed (correctly from an economic point of view) that backwards compatibility for users was more important than making an API that developers liked. Raymond Chen, one of the head guys involved with designing Win32, basically went with the idea that if any application that worked in Win 3.11/DOS did not work in Win32, then they would not upgrade.

      However, their current API is .NET, which I think most would agree is quite elegantly designed, regardless of your political feelings towards the company that designed it. Win32 is pretty much dead as far as MSFT putting any more effort into it.

      Longhorn's API, WinFX, encapsulates the .NET Framework and is likewise (at first glace, anyway) fairly elegantly designed.

  118. Quicktime for Windows by SgtChaireBourne · · Score: 2, Informative
    Apple has some nice stuff, but other stuff that Steve doesn't care about are absolutely atrocious (perfect example: Quicktime for Windows). ... Not every company can be a personality cult.
    Bad example. Development for MS platforms is highly dependent on cooperation and support from MS. In the case of Apple, MS has been more obstreperous than usual. In the case of Quicktime for MS Windows in particular, MS has tried repeatedly to kill it off even as far back as 1997 and 1998 (warning: PDF). See page 52.

    Sure Steve may be a problem, but the particulars around that specific example tend to indicate that the problem may be elsewhere...

    And speaking of personality cult, or just plain cult, when's ol' Chairman Gates there going to drop the fascade of having anything to do with IT?

    --
    Beta is broken and the link to classic doesn't work. Stop wasting our time or there won't be anybody left here.
  119. Ehrm by Stu+Charlton · · Score: 1

    Determining whether something is "Agile" depends on the etymology of the term. In a general sense, anyone can come up with their own fitting description, though the colloquial use of the term refers to any method that adheres to the direction in the Agile Manifesto, and follows the principles behind the manifesto, all of which was crafted by the Agile Alliance (of which Beck is a founding member).

    You'll note one of the principles is "At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly." It doesn't really matter if those intervals are "every day" or "every 2 weeks", so long as there is some kind of rhythm. You say XP was not designed in this way, and I strongly disagree. Kent had 3 day iterations on one of his Swiss projects circa 1999-2000, and was working on moving it to 1 day iterations. There is nothing inherent in XP to mandate a period for iterations, other than there must be a period. If you do it "whenever there's stuff to show the customer", you lose rigor in your ability to measure and control the process. The latter could work, of course, but it's just less repeatable.

    And as for whether something is "Agile" or not, the person I usually turn to is Alistair Cockburn, probably the most experienced software project anthropologist out there. While he's critical of XP, it certainly is considered agile. So I must disagree on your point. Judging by the vehemenance of your claims, I doubt I'll be able to argue further, thus we'll have to leave it at that.

    --
    -Stu
    1. Re:Ehrm by Some+Random+Username · · Score: 1

      You are arguing that you can do agile development using XP. I never said otherwise. That doesn't mean XP is agile. Just because you can make very short iterations to mimic agile development, doesn't mean XP is suddenly agile. If it was, it would require very short iterations so you stay agile.

      And try using XP with short iterations (1day). You spend more time in iteration meetings than coding and you end up with horrible productivity.

    2. Re:Ehrm by Stu+Charlton · · Score: 1
      And try using XP with short iterations (1day). You spend more time in iteration meetings than coding and you end up with horrible productivity.

      Huh? Just a few posts back you said....

      With a real agile development methodology, there is no iteration where you set requirements in stone and then go meet them. You do the least possible to show the customer, and then show them, and you keep working with them constantly.


      And now you're saying it's bad to spend too much time in meetings and not coding!

      This certainly has been an interesting conversation, but I've come to the conlusion your view of XP is very different than my experience with it in various settings, and indicative of malpractice rather than using it properly.
      --
      -Stu
    3. Re:Ehrm by Some+Random+Username · · Score: 1

      You have come to that conclusion because you want to. I never said XP is bad, I said its not agile. And agile development is not about meetings, that's my point. XP is meet then code then meet then code. Agile development is code with the customer there participating.

  120. Microsoft increases Agility... by HTH+NE1 · · Score: 1

    ...because their Charisma sucks.

    --
    Oh, say does that Star-Spangled Banner entwine / The myrtle of Venus with Bacchus's vine?
  121. Scrum in English by SeanDuggan · · Score: 1
    I hear "scrum" and I think of a rugby scrum. Which, honestly, kind of fits for XP. You throw a bunch of guys at it and after a lot of pain, fuss, and broken bones, it works its way to some edge of the field, although you're never entirely sure which.

    *shrug* We tried XP here. We're on a modified variant currently. Interesting idea but I agree with the guy who said that XP is like sticking your hands in a box of poisonous snakes and hoping that they're all too busy biting each other to pay attention to you.

    --
    This sig has absolutely no significance and serves only to take up screen space and waste the time of the reader.
    1. Re:Scrum in English by angel'o'sphere · · Score: 1

      The term SCRUM is comming from the rugby term scrum.

      Its not an acronyme, though. Its just the adoption of "scrum" from rugby over to project management, especially in software projects.

      Scrum is pretty easy, like XP, too. About 10 to 12 core practices. See http://www.scrumalliance.org./

      angel'o'sphere

      --
      Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
    2. Re:Scrum in English by Anonymous Coward · · Score: 0

      There is an interesting introduction to scrum on http://www.methodsandtools.com/archive/archive.php ?id=18

  122. Scrum is like communism by MrApathyCream · · Score: 1

    Scrum is like communism, with all the benefits and curses of it. It encourages contributions from all, but also limits the authority of those who are good. Problem with communism, is mostly tho, that strong personalities can abuse the system and take power, without checks and balances. You end up with a system dominated by those who are the loudest, and not necessarily the best. Clean architecture is secondary to temporary velocity. And where multiple scrum teams exists, parallel silos are common.

  123. Scrum works. Get a coach. by Anonymous Coward · · Score: 0

    When I learned to row at college, we were fortunate to have eight big blokes all show up for try-outs. After a few weeks, we were doing well, but our coach felt we needed some expert tuition. A professional trainer spent a day with us and taught us how to alter our strokes to be more efficient. At the end of the day, we still put as much effort in, but we went twice as fast.

    Ah, but I'm not a novice! I've been doing this for years! Well, the blue boat (which is usually full of olympic athletes doing, er, agriculture degrees) still requires a coach because putting a group of brilliant, experienced athletes together requires that they form a team that works together.

    There is no question in my mind that Scrum is extremely effective. It is also quite a different mind-set. If you are interested in it, I suggest getting a coach. You will learn to move twice as fast for the same effort. I am speaking as someone who has been doing Scrum for 18 months now with a combined team of over 60. I have been programming professionally for 17 years.

  124. Scrum/XP by mario+contestabile · · Score: 1

    We've used XP-like techniques for some time. We don't call it XP any longer, but we continue to enforce two of the cornerstones;

    - Unit tests. Preferably even before the feature exists. It forces the developer to see how his object/feature may be used by others. It gives us a good smoke test evaluation of functionality, incredibly useful in such cases as switching compilers, supporting a new os.

    - Code reviews. We don't do Pair Programming, but code reviews are required for checkins. We use codestriker for that.

    Called by any name, these are good guiding principles.

    --
    http://superconfigure-supergroove.appspot.com/
  125. I went to training on this by Zepalesque · · Score: 1

    I was fortunate to attend a two day seminar on this methodology. Overall, I found it very interesting and it demonstrated an alternative to the traditional waterfall approach. We've managed to use concepts from this methodology on the team, but it is very hard to follow all the principals when there isn't complete buy in from everyone. The best parts I am able to take into the real world with me are:

    Daily stand up meetings. These are usually no longer than 15 minutes and very rapidly give a view of the current project status.

    A living backlog. The backlog of tasks with estimates to complete each task is updated every day and is a fantastic tool to allow the developers to select what they will work on next rather than relying on someone else to plot out what a developer will be doing in several months.

    Burndown chart. The burndown is derrived straight from the backlog and shows very clearly how closely on track the project is within a given sprint.

    That all being said - the one thing was not able to figure out is how to judge how clost the entire project is to being on track with its deadlines. As far as I can tell, the project is only planned as far ahead as a given sprint (roughly a month).