Loading ...
Sorry, an error occurred while loading the content.

Re: [XP] Spontaneous Inspiration

Expand Messages
  • Ian Collins
    ... This is a very good point. Some of the most innovative features in our current product started out as developer what ifs . I do my best to encourage
    Message 1 of 203 , Oct 1, 2002
      Bryan Dollery wrote:
      > Hi Alex,
      > Hope you find this in all the noise. I was last reading this list 12 hours
      > ago, since then there have been nearly 400 messages - and most of them are
      > totally pointless!
      > Anyway, trying to restore some sanity...
      > > How does XP make room for this sort of spontaneous inspiration?
      > >
      > > Our answer was twofold.
      > >
      > > (a) any developer can write a story and add it to the pile, but the
      > > customer still gets to prioritize it (or deprioritize it)
      > >
      > > (b) any developer can fork the codebase, implement what they want, and
      > > then present it to the customer as a prototype; if they like it then
      > > it will be added to the story pile, and reimplemented test-first, in
      > > pairs, etc.
      > In XP we use sound engineering principles to ensure that our code is very
      > high quality with all of its attendant benefits.
      > We explicitly go through a creative step in XP - DTSTTCPW. We write a
      > unit-test that defines what it is we're trying to achieve - it provides
      > focus - then we create.
      > Creativity is something that we don't understand. However, Prof. Mihaly
      > Csikszentmihalyi of Chicago University does understand something about it.
      > Search for him on Google, he's very bright.
      > I wrote something about the psychology of programming, flow, and creativity
      > (they're all connected) back in August:
      > www.chaosengineers.co.nz/papers/the%20psychology%20of%20programming.html
      > What you're discussing is the need programmers have to be creative, and how
      > allowing unconstrained creativity can benefit a customer. I believe that
      > this is vital for innovation, and if that is a requirement then we should
      > have specific practices in place to encourage it.
      This is a very good point. Some of the most innovative features in our
      current product started out as developer "what ifs". I do my best to
      encourage this, we have a product specification, but it, like the code,
      is owned by the team and can be undated by them to include new ideas.
      These modifications require a consensus within the team (which include
      our 'customer').

      One thing that is very interesting to watch is pair spec writing. Two
      engineers working on a document. The results have been most impressive,
      sections have been refactored to read better ad we end up with a leaner,
      cleaner document.

      > John Brewer adds the concept of 'institutionalised playtime', and I think
      > that this is it - but we need a name for it that the customer will buy -
      > calling it playtime will get us nowhere. Call it a research period, and
      > encourage people to research things that may have some benefit to the
      > project, but don't make that a hard-rule.
      When I introduced this to my department, we called the "research
      period". Every one else in company called it "Engineering play time".
      Once a few good idea appeared, the criticism stopped (well almost).

      It was surprisingly difficult to get engineers to back away form their
      project work for a few hours a week, but once they got going (like pair
      programming) they enjoyed it.

      > I recently advised a client to give his senior architect a full day every
      > week to research the open-source community. The difficult thing for them is
      > enforcing this time - this is the senior architect of a large team, in a
      > large company - there aren't enough hours in the day for him to do his
      > normal job, let alone surf the web. Of course, they need more senior
      > architects, but that isn't going to happen until the economy recovers -
      > which according to Gartner isn't going to happen any time soon.
      > I am concerned with the customer having to pay for non-productive time. So,
      > you could simply not charge the customer for that time, but charge them for
      > any innovations they benefit from. If one of your people finds something
      > promising, try to get a story for it - if it works out then it'll provide
      > benefit. Or, you could treat it as training.
      > If you're in an in-house team surely there is a training budget? Even if
      > there is no money because of the recession, you could petition for time.
      > Use this time for creativity and research. If something comes out of it,
      > it's good for you, and for your company.
      > I'm sure that there are other ways to justify this time, but I'm just as
      > sure that it's necessary.
      I justified it by adding a section to the engineer's duties that they
      had to spend 4 hours a week keeping up to date with new technologies.
      THis gave them the freedom to read journals or play.


      Ian Collins
      Masuma Ltd,
      New Zealand.
    • Laurent Bossavit
      Alex: Perhaps the following paper from the people at Connextra might help answer your concern and query : Innovation and Sustainability with Gold Cards
      Message 203 of 203 , Oct 7, 2002

        Perhaps the following paper from the people at Connextra might help
        answer your concern and query :

        "Innovation and Sustainability with Gold Cards"


        Daddy? What's this little red button for?
      Your message has been successfully submitted and would be delivered to recipients shortly.