Posts Tagged ‘agile xp 2008 2009 conferences’

Tweets from Agile 2008

Monday, April 13, 2009

For what is worth, I’ve decided to publish my live tweets from Agile 2008.
Bear in mind, it’s twitter, so it’s meant to be volatile, imprecise, etc. I’ve just posted it to give you an idea.

  • very nice keynote from James Surowiecki, author of “Wisdom of crowds” =>
    10:05 AM Aug 5th, 2008
  • Compared to other previous European and American editions, the conference is massive!
    10:38 AM Aug 5th, 2008
  • Is following “Test-Driven AJAX” ==> (interesting so far, basic but interesting)
    11:05 AM Aug 5th, 2008
  • Speaker has released his own Mock framework for javascript code =>
    11:07 AM Aug 5th, 2008
  • The presentation was good, actually better than my expectation => check it out at
    12:09 PM Aug 5th, 2008
  • “Programming with stars” is a great and funny idea, but execution is really poor. Maybe they’ll get better in the next days
    12:58 PM Aug 5th, 2008
  • Actually the pair doing javascript with continuous testing (Lasse Koskela’s pair) was quite good, even uncle Bob was nice with them… 🙂
    1:21 PM Aug 5th, 2008
  • Has attended “ET by example”: interesting, but I’ll pass for now =>
    3:41 PM Aug 5th, 2008
  • Attending 2 experience reports about releasing and deployment (from salesforce and yahoo)
    4:08 PM Aug 5th, 2008
  • Impressive numbers from
    4:20 PM Aug 5th, 2008
  • 40+ scrum teams, 1.1 M users, 3 releases x year, 1 codeline for all
    4:20 PM Aug 5th, 2008
  • The release manager is the scrum master of the release sprint, in a high collaboration env with the teams
    4:31 PM Aug 5th, 2008
  • over 26,000 automated tests that run on every build
    4:32 PM Aug 5th, 2008
  • on top of that there are selenium tests as well
    4:37 PM Aug 5th, 2008
  • imagine breaking the build with 40+ teams involved!
    4:37 PM Aug 5th, 2008
  • Yahoo can do dynamic, automated, realtime re-deployment based on peak observation (neat!)
    5:10 PM Aug 5th, 2008
  • It’s all about heavy automation, speed, dashboards to manage everything and don’t let bad things slip through
    5:31 PM Aug 5th, 2008
  • 4-6 months to transition from a chaotic, uncontrolled env to a fully automated one? don’t buy it, too good to be true
    5:33 PM Aug 5th, 2008
  • Attending “Coaching agile teams” =>
    8:35 AM Aug 6th, 2008
  • The exercise was nice: a laptop screen decorator. Roles: 2 players, 1 coach (only asking questions), 1 observer
    9:16 AM Aug 6th, 2008
  • Nice: the coach brings the outside world to the team and reminds about that
    9:48 AM Aug 6th, 2008
  • The outcome of the workshop will be available at the conference website
    10:01 AM Aug 6th, 2008
  • Attending “Tools, Frameworks and Libraries: the Devil’s work or Manna from Heaven?” (another workshop)
    10:35 AM Aug 6th, 2008
  • Done, not particularly impressed. Just 2 decent recommendations out of it: Hudson & TeamCity
    12:02 PM Aug 6th, 2008
  • 4 pairs left at “programming with the stars”
    12:48 PM Aug 6th, 2008
  • Continuous testing seems the flavour of this year…
    12:53 PM Aug 6th, 2008
  • Belshee & Chen refactored some Fit.Net code (continuously testing). Vote: 26
    12:58 PM Aug 6th, 2008
  • I liked Mike Hill rant about copy&paste: please don’t always start coding with C&P existing code, because that may lead to deep legacy code
    12:59 PM Aug 6th, 2008
  • Koskela & Jacobson have been awesome again. They have changed jsunit own tests, cont. testing at the bottom. Vote: 25, even uncle Bob gave
    81:08 PM Aug 6th, 2008
  • Rainsberger & Brackley did TDD from 0, focused on Eclipse tricks for novices. Vote: 23 (but it was good in terms of showing how to teach)
    1:26 PM Aug 6th, 2008
  • Feathers & Bache refactored some C++ code. Better than yesterday, but still… Vote: 2
    41:31 PM Aug 6th, 2008
  • Bache and Feathers were saved by the crowd… don’t really agree about it, but who cares!
    1:33 PM Aug 6th, 2008
  • Attending Clean code session (uncle Bob book just came out)
    2:05 PM Aug 6th, 2008
  • Clean code: separate construction from use
    2:05 PM Aug 6th, 2008
  • I like it: lazy initialization is bad (for testing, because it messes construction & use, breaks SRP…)
    2:09 PM Aug 6th, 2008
  • Scale up systems on demand: keep it malleable, avoid rigidity (like EJB 1 & 2)
    2:21 PM Aug 6th, 2008
  • It’s so relieving to hear somebody intelligent talking about EJBs in terms of crap (even though EJB 3 is ok and it’s known stuff now)
    2:24 PM Aug 6th, 2008
  • The issue of mixing clean domain code with security, transactions and persistence, but aspects can help (AspectJ or Spring/JBoss AOP)
    2:32 PM Aug 6th, 2008
  • 2 cool citations: BDUF doesn’t give you feedback, you are thinking in a vacuum; hard to throw away when you have invested so much into it
    2:45 PM Aug 6th, 2008
  • Grow the system in response to test pressure
    2:46 PM Aug 6th, 2008
  • Optimize decision making: at the last responsible moment, when the most recent info is available
    2:55 PM Aug 6th, 2008
  • Does the std meet the needs? Use standards wisely, when they add demonstrable value
    3:07 PM Aug 6th, 2008
  • Minimize the mental gap between requirements and code
    3:07 PM Aug 6th, 2008
  • Does the code read like the problem domain? ==> DSLs!
    3:13 PM Aug 6th, 2008
  • Having clean code. well modularized, is an enabler in making a decision at the least possible moment
    3:16 PM Aug 6th, 2008
  • Overall a great implementation. Last version of the slides available at
    3:17 PM Aug 6th, 2008
  • Attending “Executable User Stories with RSpec and BDD”
    4:06 PM Aug 6th, 2008
  • From CHAOS report: 56% of errors are introduced with requirements gathering, elicitation & specification
    4:07 PM Aug 6th, 2008
  • I don’t like it: BDD starts with a functional test, from the very outside in. This means that BDD resolves to STDD. Bleah…
    4:30 PM Aug 6th, 2008
  • Nice: getters are like horseshit. In a matter of few days a lot of classes will be attracted to it, like flies to horseshit
    4:32 PM Aug 6th, 2008
  • I was hoping to focus more on RSpec Spec, rather than Story. Not much interested in cucumber, a reimpl of Story made by the presenter
    4:57 PM Aug 6th, 2008
  • You can use RSpec::Story or Cucumber to drive Watir => or Celerity =>
    5:09 PM Aug 6th, 2008
  • Testing java code in RSpec (or Cucumber) by using JRuby is kind of neat
    5:11 PM Aug 6th, 2008
  • Memo for the presenter: close all porn images when you plug your laptop to the projector! 🙂 🙂
    5:25 PM Aug 6th, 2008
  • Overall I’m quite disappointed, but maybe my expectations were too high (and the abstract kind of mislead me)
    5:31 PM Aug 6th, 2008
  • Attending “Agile Architecture IS Possible – You First Have to Believe!” =>
    8:31 AM Aug 7th, 2008
  • Whackamole bug: you fix something here and suddenly something else breaks in a totally different place
    8:42 AM Aug 7th, 2008
  • Rule: No tasks longer than 2 days
    8:45 AM Aug 7th, 2008
  • Offline rollout can be an effective way to gradually migrate a 24/7 live service without disruptions
    8:56 AM Aug 7th, 2008
  • @bbossola maybe: presenter was implying a temporal discontinuity between one fix and a totally unrelated bug… fragility in the large? 🙂
    8:59 AM Aug 7th, 2008
  • Great session, maybe too short (30′ because it’s an experience report)
    9:07 AM Aug 7th, 2008
  • Attending “Technical Debt – How not to ignore it” now =>
    9:07 AM Aug 7th, 2008
  • The presenter is the guy who wrote the excellent “Scrum and XP from the Trenches” =>
    9:11 AM Aug 7th, 2008
  • tech debt detection: gut feeling (customers & developers), metrics (code, velocity)
    9:17 AM Aug 7th, 2008
  • Why? 1) short-term thinking (“we’ll fix it later”), 2) pressure (lack of slack & sustainable pace), 3) not talking about it (denial)
    9:18 AM Aug 7th, 2008
  • 4) lack of dev skills, 5) broken window syndrome
    9:19 AM Aug 7th, 2008
  • Prj Management practices like Parkinson’s Law are major causes for tech debt (this is me saying it, not the presenter… 🙂 )
    9:20 AM Aug 7th, 2008
  • Ah nice, another attendee mentions the Parkinson’s Law 🙂
    9:21 AM Aug 7th, 2008
  • The maximum theoretical velocity is diminishing over time
    9:23 AM Aug 7th, 2008
  • To avoid it (or mitigate it): 1) talk about it (with PO too), 2) pull scheduling (taking for granted if you do XP & Scrum right)
    9:27 AM Aug 7th, 2008
  • 3) TDD, 4) put no increased tech debt with the definition of done (me: why not automatic measures on McCabe => build fails if it incr …
    9:29 AM Aug 7th, 2008
  • Another attendee was talking about failing the build if code coverage diminishes => nice!
    9:30 AM Aug 7th, 2008
  • Preferred approach to fix it is incremental improvements => slow down and stop accumulating debt
    9:35 AM Aug 7th, 2008
  • You can’t have a PO working against fixing the tech debt. Major crashes & disasters typically help the biz understanding! 🙂
    9:39 AM Aug 7th, 2008
  • Me: 20% of resources allocated to fixing tech debt. It took months of problems to convince management it was a good idea
    9:40 AM Aug 7th, 2008
  • In order to fix the process retrospectives are the key: root cause analysis, 5 whys, etc.
    9:40 AM Aug 7th, 2008
  • test automation backlog: what tests we are missing and we want to do? prioritize them and maintain in a backlog
    9:43 AM Aug 7th, 2008
  • It’s a nice technique once you have tech debt, but at the same time it institutionalize one aspect of the debt => you need to get out …
    9:54 AM Aug 7th, 2008
  • all in all: tech debt is a powerful metaphor to use with non tech people, stop accumulating it no matter what, fix it incrementally…
    9:56 AM Aug 7th, 2008
  • …with a viable pace (avoid big bang approaches), fix the process (not only the product)
    9:57 AM Aug 7th, 2008
  • Very nice session in the end
    10:01 AM Aug 7th, 2008
  • Attending “A Hundred Days of Continuous Integration” =>
    10:27 AM Aug 7th, 2008
  • It’s on the proceedings at page 289
    10:31 AM Aug 7th, 2008
  • it’s from M$, amazing! 😉
    10:32 AM Aug 7th, 2008
  • it’s the Service Factory: Modeling edition, a team of ~15 people between Redmond, Holland, Argentina, India…
    10:34 AM Aug 7th, 2008
  • Nice: a distributed env that spans across 18 hours TZs invalidates the concept of nightly build => you are left with continuous integ …
    10:37 AM Aug 7th, 2008
  • But some specific tasks can be executed at specific times (eg: static analysis with NDepend => plug here your java tool if you want)
    10:38 AM Aug 7th, 2008
  • 100 days, 4000 hours of dev time, 551 check ins, 515 builds, 69 build breaks
    10:39 AM Aug 7th, 2008
  • distribution of breaks: 18 compile errors, 19 unit tests, 4 server issues, 27 fxcop (static analysis issues)
    10:43 AM Aug 7th, 2008
  • Worst breaks to fix (up to 9 hours to fix) were related to server issues & unit tests failures (but small time during working hours)
    10:44 AM Aug 7th, 2008
  • on avg 45′ to fix the build
    10:45 AM Aug 7th, 2008
  • Model shows an est. saving of 40% using CI against ideal teams that don’t use CI but never break the build too (using more time to checkin)
    10:50 AM Aug 7th, 2008
  • I like the idea of additional builds for time zone issues (with distributed teams)
    10:51 AM Aug 7th, 2008
  • Lessons: 1) overspec your CI srv. 2) additional builds for TZs, 3) capture all the data, 4) real time analyssi, 5) warnings ARE errors
    10:52 AM Aug 7th, 2008
  • (one warning is a broken window) 🙂
    10:52 AM Aug 7th, 2008
  • 5) don’t check in and go home (especially on a distributed team), 6) you break it so you fix it
    10:53 AM Aug 7th, 2008
  • they weren’t doing any rollback on checkin, because it was hard (heavily dependent on chosen SCM of course, pre commit hooks are the key)
    10:57 AM Aug 7th, 2008
  • ~70% coverage combining UTs and ATs
    10:59 AM Aug 7th, 2008
  • nice session, now “Team pace – Keeping build times down” from TW! => (page 294 on proc)
    11:01 AM Aug 7th, 2008
  • 2 teams working in java, bubble & squeak – bubble was ~10 people, 4w iterations, build dealing with out & in-container testing + fitnesse
    11:04 AM Aug 7th, 2008
  • team squeak had 2′ build, 12 devs, 16 people, 1w iteration, colocated, customer frequently on site, smaller build with jar,war, set db, ut
    11:06 AM Aug 7th, 2008
  • (team bubble part of a bigger distributed team, ~100)
    11:06 AM Aug 7th, 2008
  • team bubble checked in much less, much slower build time
    11:07 AM Aug 7th, 2008
  • between 760 and 10 checkins per day!! over 9 months (team squeak, while bubble a few per day only)
    11:09 AM Aug 7th, 2008
  • checkin every 15-20 seconds is nuts!!! 🙂 interesting though, I got to give it a try, but my current CVS srv would die miserably 🙂
    11:10 AM Aug 7th, 2008
  • team bubble had a huge resistance to refactor, once they had 6 weeks with no good build!! very unstable builds
    11:11 AM Aug 7th, 2008
  • of course team squeak had a great willingness to refactor
    11:12 AM Aug 7th, 2008
  • team bubble couldn’t cope dealing with the build, so they have created a cross-functional team to deal with it
    11:13 AM Aug 7th, 2008
  • bubble tried parallel test running, websphere was a major problem (5-10′ just to rebuild the profile), a lot of infr problems
    11:14 AM Aug 7th, 2008
  • squeak rarely had build issues, and those that happened were typically fixed in 20-30′
    11:15 AM Aug 7th, 2008
  • typically the build weren’t fixed for both teams the first time => a new failure gives you more info to actually fix it
    11:16 AM Aug 7th, 2008
  • because of the broken builds pairs started sequential checkins
    11:17 AM Aug 7th, 2008
  • broken builds for bubble prevented to get into the “flow”, it was a source for distractions and inefficiencies
    11:19 AM Aug 7th, 2008
  • team squeak did some manual tests for javascript & browser related issues
    11:20 AM Aug 7th, 2008
  • bubble worked on the order of tests to anticipate likely failures, segmented tests, added tests not dependent on DB
    11:21 AM Aug 7th, 2008
  • squeak worked with a in-mem db that didn’t help much, using the db itself was almost quite the same, all tests in junit
    11:21 AM Aug 7th, 2008
  • squeak really relied on out of container tests, with extremely light servlets and all biz logic in POJOs
    11:22 AM Aug 7th, 2008
  • make the build a priority for every member of the team, small improvements for every iteration
    11:23 AM Aug 7th, 2008
  • keep the build simple, ideally a single build file for all environments
    11:24 AM Aug 7th, 2008
  • keep the number of tech as low as possible, focus on small technologies
    11:24 AM Aug 7th, 2008
  • build once, reuse the built artifact as many times as possible
    11:25 AM Aug 7th, 2008
  • minimise runtime dependencies, run the application standalone and use stub/mocks as much as possible
    11:25 AM Aug 7th, 2008
  • keep test & data in the code together => it helps refactoring! (nice)
    11:26 AM Aug 7th, 2008
  • Not too bad, now attending “Effective and pragmatic Test Driven Development” =>
    11:31 AM Aug 7th, 2008
  • Exp report from Valtech about applying TDD to a project in T-Mobile
    11:31 AM Aug 7th, 2008
  • Decision to use TDD came after project inception (with management awareness, agile-savvy and willingness to try new things)
    11:35 AM Aug 7th, 2008
  • Risks of using TDD was shared with the whole team and interactive sessions / presentations were held
    11:36 AM Aug 7th, 2008
  • MVC app, this team responsible for backend, very well defined integration point (contract) with frontend team
    11:37 AM Aug 7th, 2008
  • top down dev, starting from AT (bleah), deriving major services, implementations, their UTs and DAOs (and their UTs) from it
    11:40 AM Aug 7th, 2008
  • In retrospect they thought they have left too much freedom to less experienced developers
    11:41 AM Aug 7th, 2008
  • Some negative feedback not related to TDD, but to the fact that devs were more involved (and being accountable) with estimates, meetings,etc
    11:51 AM Aug 7th, 2008
  • But TDD helped in getting things better in terms of improved efficiency
    11:51 AM Aug 7th, 2008
  • Too much focus on TDD “dogmas” and TDD application, too much time spent on enhancing tests
    11:51 AM Aug 7th, 2008
  • Benefits: better code, more cohesive, top down approach with mocks helped with SRP (but yet, bleah), YAGNI (discourage speculation)
    11:51 AM Aug 7th, 2008
  • Stakeholders involvement payed back with increased confidence and a favourable comparison with previous experience (better defect rate)
    11:51 AM Aug 7th, 2008
  • This in turn caused support for refactoring, which brought code cut faster, shorted feedback cycle, and more confidence (etc)
    11:51 AM Aug 7th, 2008
  • conclusions: TDD is good, can be difficult to introduce, not much experience around, devs who embrace it got rewarded
    11:56 AM Aug 7th, 2008
  • made real differences in delivery
    11:57 AM Aug 7th, 2008
  • all in all, I’d yeeeesh, not a fantastic session 🙂
    12:01 PM Aug 7th, 2008
  • at programming with the stars the 3 remaining pairs will do the same, STDD something (eh eh, Joshua… 🙂 )
    12:47 PM Aug 7th, 2008
  • pairs: Lasse & Noah, Michael & Emily, Arlo & Andrew
    12:48 PM Aug 7th, 2008
  • for once, the judges have been judged and scored a remarkable total of 6!! (they were doing uncle Bob’s prime factors kata)
    1:01 PM Aug 7th, 2008
  • lasse & noah are using RSpec Story with a well defined scenario ready to go
    1:03 PM Aug 7th, 2008
  • they are working on a rails app, in the end
    1:04 PM Aug 7th, 2008
  • Using Rspec Story to drive Watir
    1:05 PM Aug 7th, 2008
  • jumped on javascript code (with continuous testing) to implement the missing function, but didn’t have time to complete it
    1:09 PM Aug 7th, 2008
  • uncle Bob didn’t like the test through the gui (because it was slow and he was kind of right) ==> 2
    11:11 PM Aug 7th, 2008
  • Michael & Emily are using a swing app, with junit UTs and AT with a recorder that drives the app and manages the text through text output
    1:15 PM Aug 7th, 2008
  • the app is TextTest =>
    1:16 PM Aug 7th, 2008
  • they have involved the “customer” => nice!
    1:16 PM Aug 7th, 2008
  • much better this time: they have scored 26 (uncle Bob biased towards Michael Feathers?)
    1:20 PM Aug 7th, 2008
  • Arlo & Andrew pulled out a board with planned cards, a PO, a kind of lavalamp for build status, rspec Spec, cruisecontrol.rb
    1:23 PM Aug 7th, 2008
  • they are really driving the lamp in the story
    1:23 PM Aug 7th, 2008
  • kind of eating your own dog food
    1:24 PM Aug 7th, 2008
  • nice idea, but confused execution
    1:27 PM Aug 7th, 2008
  • total score: 1
    81:29 PM Aug 7th, 2008
  • finale: Michael & Emily vs Lasse & Noah (Arlo & Andrew are gone)
    1:31 PM Aug 7th, 2008
  • Attending “The Economics of Agile: The competitive advantage of developing commercial software with Agile methods”
    2:02 PM Aug 7th, 2008
  • Remarkably empty room (a big one too), I guess that an IBM VP doesn’t attract a lot of geeks, but the topic is interesting
    2:03 PM Aug 7th, 2008
    2:04 PM Aug 7th, 2008
  • Each table can hold 10 people and there are 36 tables, but only ~35 people in the room (vs a capacity of 360!!)
    2:05 PM Aug 7th, 2008
  • IBM started a transformation in 2005 in order to control quality better, manage stakeholders satisfaction, and anticipate return/profit
    2:09 PM Aug 7th, 2008
  • from waterfall (still used for mainframe dev), through iterative (lacking discipline), to agility (with discipline, adaptability)
    2:12 PM Aug 7th, 2008
  • extremely distributed teams, compliancies, heterogeneous environment => the Poppoendiecks helped them
    2:14 PM Aug 7th, 2008
  • Nice: a project dashboard with “corporate revenue”!! 🙂
    2:15 PM Aug 7th, 2008
  • 1100 people in agile@IBM, 5000 trained, 220 projects, 78% of teams are using some elements of agile
    2:16 PM Aug 7th, 2008
  • schedules are more predictable and early (18 -> 12 months, some other teams 12 months to 9 months)
    2:17 PM Aug 7th, 2008
  • IBM’s customers seem to like it, especially in terms of increased confidence of what is delivered (they are involved early and often)
    2:18 PM Aug 7th, 2008
  • Metrics: B/C R = Benefit/Cost Ratio, ROI
    2:19 PM Aug 7th, 2008
  • E^2 value framework: efficiency + effectiveness
    2:20 PM Aug 7th, 2008
  • headcount is used primarily as a source of cost, which is scary, but at the same time they say that people are reused elsewhere
    2:22 PM Aug 7th, 2008
  • revenue generated per head I like it better
    2:23 PM Aug 7th, 2008
  • Ted Rivera is focusing on DB2 (600 people) => 60 M$ in terms of investment (rough figure, but it scares!)
    2:25 PM Aug 7th, 2008
  • In the past it was impossible for IBM to make changes in terms of plans until it was too late, but now it’s different
    2:28 PM Aug 7th, 2008
  • the assessment is a total of ~90.6M savings up to date because of agile adoption (prod gain at startup & tasks implementations, …
    2:31 PM Aug 7th, 2008
  • cost & waste avoidance too)
    2:31 PM Aug 7th, 2008
  • it’s all about defect reduction & time saved in terms of quality injection after the fact (IBM has tons of historical data to qualify that)
    2:33 PM Aug 7th, 2008
  • expected: 168 field tickets, 1056 trouble tickets – actual: 32 field tickets, 57 trouble tickets (with more customers)
    2:35 PM Aug 7th, 2008
  • what does that mean? roughly 2.576M$ in savings and much more customer loyalty
    2:36 PM Aug 7th, 2008
  • it’s nice to see an IBM tech guy with a huge impact in the org to talk intelligently about XP practices and Lean principles, like TDD
    2:41 PM Aug 7th, 2008
  • An internal agile survey showed an improvement in every area of agile adoption (testing, CI, scrums, etc.)
    2:50 PM Aug 7th, 2008
  • IBM’s commitment to agile is remarkable. Practices are treated in guidelines and the situation is constantly evolving
    3:01 PM Aug 7th, 2008
  • Nice (from the crowd): IBM tools are notoriously heavy and difficult to work with for agile teams (eg: websphere in CI), so?!?
    3:03 PM Aug 7th, 2008
  • Basically: what are you going to do about it?
    3:03 PM Aug 7th, 2008
  • The answer is not that satisfactory, just a generic promise of making it simpler and having more internal people validating products
    3:04 PM Aug 7th, 2008
  • Question about pair programming adoption. Answer: we treat practices as a menu. PairProg is used to one degree or another.
    3:07 PM Aug 7th, 2008
  • But not broadly: if PairProg is not used some other practices related to code reviews should kick in
    3:08 PM Aug 7th, 2008
  • Reuse is a key aspect of savings, but it’s not clear the connection with agile adoption
    3:09 PM Aug 7th, 2008
  • I don’t know, I suppose that given the context it was an interesting session, but I didn’t hear much new and I was hoping for more meat
    3:26 PM Aug 7th, 2008
  • Attending “Workshop on build/test grids and selective testing tools” =>
    4:02 PM Aug 7th, 2008
  • 5 attendees, too bad
    4:05 PM Aug 7th, 2008
  • VersionOne lead tester looking for breaking the tests and distribute them (+3hours now)
    4:06 PM Aug 7th, 2008
  • One more attendee (a good one: Rick Mugridge? )
    4:07 PM Aug 7th, 2008
  • selective testing: a tool that can dynamically figure out which tests to run, a dynamically built suite, based on modified code
    4:07 PM Aug 7th, 2008
  • Presenter: the team was large, many many thousands of developers. WOW! I wonder what it is.
    4:18 PM Aug 7th, 2008
  • Breaking the build was quite an issue. Done some prioritization of tests in python, not satisfactory enough. Dependencies were big and messy
    4:20 PM Aug 7th, 2008
  • TW lead tech guy talks about Cruise, evolution of cruise control that will take into account also distr test, selective test, etc
    4:24 PM Aug 7th, 2008
  • googletester is a selective tester tool
    4:25 PM Aug 7th, 2008
  • sorry, google-testar =>
    74:27 PM Aug 7th, 2008
  • the sourceforge page is even better =>
    4:30 PM Aug 7th, 2008
  • Mugridge: the complexity is finding the right dependencies in order to run only certain tests
    4:35 PM Aug 7th, 2008
  • Instrumentation seems the key and it’s not that difficult if you use a system like Spring on top of your classes
    4:35 PM Aug 7th, 2008
  • 12′ for the whole build cycle, not bad but he’d like faster
    4:40 PM Aug 7th, 2008
  • TW was working on VM cloning, tests split and collection of results
    4:45 PM Aug 7th, 2008
  • Build cycle based on stages (packaging, UTs, FTs, PerfTs, UATs depl stage, Prod depl) where every stage can be broken and distributed
    4:51 PM Aug 7th, 2008
  • Using VMs gives the advantage & flexibility of deciding how to distribute it: all the VMs can run in 1 box in reality
    4:52 PM Aug 7th, 2008
  • 2 stages of the same pipeline cannot start concurrently, but Pkg can start when FTs are running because of a new commit
    4:53 PM Aug 7th, 2008
  • Robert Norton is the TW guy
    4:54 PM Aug 7th, 2008
  • 10′ build time for mingle
    4:58 PM Aug 7th, 2008
  • Selective testing tools are good but very context dependent (and even the same project may change in its lifetime)
    5:27 PM Aug 7th, 2008
  • Careful with getting false confidence with selective testing (all the attendees agreed on it)
    5:28 PM Aug 7th, 2008
  • The concept of smoke tests is to provide early feedback (some end-to-end tests) and they be considered an appendix to UTs
    5:29 PM Aug 7th, 2008
  • workshop report to be submitted at
    5:38 PM Aug 7th, 2008
  • Nice session, in the end, mostly because of the experiences and thoughts from various participants
    5:45 PM Aug 7th, 2008
  • Just had a demo of mingle => => it rocks!!!
    6:49 PM Aug 7th, 2008
  • mingle is a fantastic product, but a few things are missing to make it really irresistible: snapshot, better and more integration, eg: build
    6:51 PM Aug 7th, 2008
  • and a 1 click gantt generator for those customers that demands it (for reporting purposes)
    6:51 PM Aug 7th, 2008
  • Attending “Starting a Kanban System for Software Engineering with Value Stream Maps and Theory of Constraints”
    8:34 AM Aug 8th, 2008
    8:35 AM Aug 8th, 2008
  • Kanban systems & agile =>
    58:41 AM Aug 8th, 2008
  • Assigning tasks early creates and artificial critical path => that’s why on task allocation too we want to use the last possible moment
    9:24 AM Aug 8th, 2008
  • Limit multitasking (or avoid it, if possible)
    9:24 AM Aug 8th, 2008
  • I don’t agree that reprioritizing the sprint backlog continuously is waste => it looks like an opportunity to create biz value to me
    9:31 AM Aug 8th, 2008
  • @pierg Sorry, I haven’t detailed the context: when a person is available to pick a new task => reprioritize (if needed) seems good to me
    9:52 AM Aug 8th, 2008
  • @pierg Worth to mention that the presenter was proposing to have a READY state between TODO and IN PROCESS
    9:53 AM Aug 8th, 2008
  • Of course, low availability resources decrease productivity => you need to add buffering in order to cope with that and keep high thr …
    9:55 AM Aug 8th, 2008
  • pull model, not push; global optimization, not local
    9:56 AM Aug 8th, 2008
  • the workflow should reflect the relative skills and strengths of actual team members
    9:57 AM Aug 8th, 2008
  • check presenter’s blog at
    9:58 AM Aug 8th, 2008
  • and participate to (low volume)
    9:59 AM Aug 8th, 2008
  • I’m not sure I’ve enjoyed much this presentation, kind of messy and conceptually unfocused (but the subject is very interesting!)
    10:00 AM Aug 8th, 2008
  • In 30′ it’s time for the last keynote, from Alan Cooper (aka mr. VB) 🙂
    10:00 AM Aug 8th, 2008
  • Alan Cooper is reading, I don’t particularly like that
    10:37 AM Aug 8th, 2008
  • BUM: programmers are the smartest people in the human race! 🙂
    10:38 AM Aug 8th, 2008
  • Watching a programmer works is as revealing as watching oysters grow
    10:39 AM Aug 8th, 2008
  • Once again, programming is craft and all software is bespoke, custom
    10:40 AM Aug 8th, 2008
  • programming is not art => YEAH! FINALLY!!! Programs are practical, art is not, even though some code is beautiful
    10:41 AM Aug 8th, 2008
  • programming is extremely creative and design is every day job
    10:42 AM Aug 8th, 2008
  • Interfaces are the most critical part of sw. They are the place in between (sw and humans, sw and sw => API)
    10:44 AM Aug 8th, 2008
  • Mmm: too much emphasis on using existing libraries, etc. => even though after that he recognize you don’t want to choose the wrong tool
    10:46 AM Aug 8th, 2008
  • there is no silver bullet, but agile is different => it’s about process and people rather than tools and it’s inclusive of other people
    10:48 AM Aug 8th, 2008
  • sw is a multistage process, but waterfall is an obsolete one => waterfall doesn’t work, it produces improper crap rejected by users/c …
    10:50 AM Aug 8th, 2008
  • waterfall introduces mistrust, opacity, isolation, delay, failure of design
    10:51 AM Aug 8th, 2008
  • the boundaries of stages are fuzzy and overlap and recur continuously
    10:52 AM Aug 8th, 2008
  • a reaction to waterfall failure was a reduction to just coding (construction), but that fails too
    10:53 AM Aug 8th, 2008
  • four stages: 1) big idea, 2) design (meaning product use), 3) Engineering (about how we build), 4) construction, that is let’s build it
    10:54 AM Aug 8th, 2008
  • Disagree: programming time requires solitude
    10:59 AM Aug 8th, 2008
  • agile is a powerful tool for coping with incompetence
    11:01 AM Aug 8th, 2008
  • agile is a tool for coping with BDUF, unreasonable customers (confront with the options), incompetent designers, foolish managers
    11:03 AM Aug 8th, 2008
  • the big sin of dealing sw production as a manifacturing line, cmd & control, but programming is post-industrial
    11:04 AM Aug 8th, 2008
  • dealing with a knowledge worker is completely different and it’s based on competence, respect, education, quality of work
    11:05 AM Aug 8th, 2008
  • efficiency (reducing prices) vs effectiveness (increasing quality)
    11:06 AM Aug 8th, 2008
  • going fast in the wrong direction is worse than going slow in the right direction => no real advantage in reducing costs
    11:07 AM Aug 8th, 2008
  • because of the lack of understanding of sw, pressure is applied to reduce time, quality is neglected
    11:09 AM Aug 8th, 2008
  • no competent business person would choose speed over correctness if they have confidence in the outcome
    11:09 AM Aug 8th, 2008
  • challenge stupid deadlines, demand quality lines
    11:11 AM Aug 8th, 2008
  • agile brings design, engineering and construction together in an iterative fashion
    11:14 AM Aug 8th, 2008
  • agile brings the desire to create better product to the programmers, which is exactly what the interaction designers want too
    11:16 AM Aug 8th, 2008
  • why they are not in love with each other? interaction designers love to do those things that the programmers typically don’t like
    11:17 AM Aug 8th, 2008
  • creating user stories is the programmers weakest skill, but it’s the interaction designers strongest one
    11:19 AM Aug 8th, 2008
  • interaction designers can be very effective and helpful at dealing with distortions, cognitive illusions and communication issues with users
    11:25 AM Aug 8th, 2008
  • requirements are not design, requirements cannot be gathered like colored eggs on Easter’s morning 🙂
    11:27 AM Aug 8th, 2008
  • the first work product of interaction designers is a narrative restatement of the problem => this triggers validation, feedback, corr …
    11:29 AM Aug 8th, 2008
  • the interaction designers when coding starts is related to reconcile all the ideas that pop up with the interaction with customers/prgmers
    11:32 AM Aug 8th, 2008
  • some misconceptions about planning and change in requirements => we do plan and we do design, we just do it continuously
    11:34 AM Aug 8th, 2008
  • Brooks: Plan to throw one away
    11:37 AM Aug 8th, 2008
  • Cooper suggests to REALLY plan to throw the first time away ==> prototyping?
    11:37 AM Aug 8th, 2008
  • The way he intends it is a big bang prototype that solves all the problems and build all the necessary knowledge, so that production is easy
    11:39 AM Aug 8th, 2008
  • agile methods are the first to make room for interaction designers, whose purpose is to make software better for the user
    11:40 AM Aug 8th, 2008
  • seems like a happy marriage, a win-win (in Cooper’s mind)
    11:41 AM Aug 8th, 2008
  • slides and notes available at
    11:42 AM Aug 8th, 2008
  • question: what about biz analyst? is it the same; answer: BA are about biz processes, but interaction designers are about human behaviour
    11:46 AM Aug 8th, 2008
  • a question challenges the approach of doing it first in an agile way, throw it away and doing it again in a non agile away
    11:49 AM Aug 8th, 2008
  • but he doesn’t clarify the second time how it should be built
    11:50 AM Aug 8th, 2008
  • Mike Hill (the brit one) and Steve Freeman are going to demonstrate a bit of TDD as stars… 🙂
    1:05 PM Aug 8th, 2008
  • of course they are all messed up, one doesn’t listen to the other, one talks at the phone, one holds onto the keyboard, both complains cont.
    1:08 PM Aug 8th, 2008
  • test name: RobotLightbulbManagerServiceTest 🙂 😀
    1:09 PM Aug 8th, 2008
  • joshua killed them and asked them to go away! 🙂
    1:10 PM Aug 8th, 2008
  • now it’s Michael Feathers and Emily Bache (for real)
    1:11 PM Aug 8th, 2008
  • argh, python code
    1:11 PM Aug 8th, 2008
  • refactoring a poker engine written in python
    1:12 PM Aug 8th, 2008
  • got themselves a bit into trouble, the rhythm is slow, wrote some code, being bashed by the audience on YAGNI, still haven’t executed tests
    1:18 PM Aug 8th, 2008
  • still red bar
    1:18 PM Aug 8th, 2008
  • nope, time is up, no green bar, amazingly bad
    1:20 PM Aug 8th, 2008
  • judges: 5+5+6=16
    1:23 PM Aug 8th, 2008
  • a “Deloitte & Touche” consultant is going to collect audience scores 😀
    1:25 PM Aug 8th, 2008
  • Lasse and Noah now, refactoring slow tests, because of a movie file being read
    1:25 PM Aug 8th, 2008
  • actually is slow code and they want to decouple sync logic from file reading logic
    1:26 PM Aug 8th, 2008
  • using a stub for testing the sync reader
    1:27 PM Aug 8th, 2008
  • red bar, green bar
    1:27 PM Aug 8th, 2008
  • introducing a virtual clock to simulate lagging, nice
    1:28 PM Aug 8th, 2008
  • mixing a mock object for the TimeSource and the stub for file processing
    1:29 PM Aug 8th, 2008
  • I mean, they are going fast, but they are not refactoring any test code (and it would need it)
    1:32 PM Aug 8th, 2008
  • they have played the movie missing frames in the end, nice
    1:34 PM Aug 8th, 2008
  • uncle Bob gave a 9! total: 2
    11:36 PM Aug 8th, 2008
  • now the pairs have to type 2 sentences at the keyboard
    1:38 PM Aug 8th, 2008
  • unfortunately it’s an inverted one 🙂
    1:39 PM Aug 8th, 2008
  • -10 points because of overrun and errors for Lasse and Noah
    1:43 PM Aug 8th, 2008
  • Michael and Emily got a +12
    1:46 PM Aug 8th, 2008
  • the consultant is calculating the score for both pairs
    1:47 PM Aug 8th, 2008
  • 38 grand total for lasse & noah
    1:47 PM Aug 8th, 2008
  • 35 grand total for Michael and Emilty
    1:48 PM Aug 8th, 2008
  • hence, Lasse and Noah won!
    1:48 PM Aug 8th, 2008
  • prizes: beer, cutting plate, 2 books WOW!
    1:50 PM Aug 8th, 2008

Unfortunately this year I can’t attend Agile 2009 in Chicago, but if you have an opportunity to go there I can only recommend it. Please let me know if you are going to tweet live from it.