Kurt's Blog

November 19, 2010

JAOO (now GOTO) 2010

Filed under: conferences — Tags: — Kurt Häusler @ 9:00 am

Before I went, I had two main sessions in mind that I knew I wanted to attend. Mary Poppendieck’s and Don Reinertsen’s. Aside from that I was actually planning on attending mostly technical, programming related sessions, just to restore a bit of balance from all the attention I had been giving management topics lately. I guess some of the craftsmen that I had been conversing on twitter helped encourage me not to forget that none of this would matter without coding. However as it turned out I stayed the whole time in the “orange” track, which consisted of things like agile practices, lean management, and management in agile settings. I had a look at some of the other technical sessions and they seemed to be into two categories, an introduction to some shiny new language or library, or a more advanced look at some technology ideal for people already working with it. A lot of them were very interesting. There was a lot of NoSQL stuff there for example, which is something I have been interested in for a while now, having covered it in a presentation I gave on domain driven design at work a year ago for example. Unfortunately I am coming to realise that conferences don’t really fit into the way I discover and learn new technologies. Up until recently I was bombarded every day from blogs and twitter with introductions to new technologies, and links to tutorials. About a tenth of those I absolutely must follow up, so I used to write them down in a backlog, and a tenth of those I would actually find the time to do. I could see how in the past, and even today for many developers, conferences like JAOO are the main way that people get introduced to new technologies.

forside1

The more advanced ones would have been great, but unless there were any sessions on MFC or SQL stored procedures, I just don’t have the day to day experience to really get the most out of it. Don’t get me wrong, we have a real need at work for things like NoSQL, but the people who make the decisions to do that aren’t aware of that, so there isn’t much chance of coming to work and working on the event sourcing part of our app with mongo or couch db (what version of visual studio are they in? I don’t see them in the data explorer). But the management topics I felt, offered tips and insight that I really felt I could use at work, to address our particular pain points which are managerial rather than technical.

It reminded me of the recent debate about the lack of technical topics at Agile 2010. I am pretty convinced that, apart from some important exceptions which I will mention, conferences are not as useful for covering technical topics as they are for more abstract, theoretical, insightful topics. For example Kevlin Henney’s Craftsmanship talk wasn’t exactly a management topic, but it wasn’t exactly technical either. Going to a conference to watch a technical session where someone builds up a small app in an IDE on the big screen seems like a waste of conference session to me. I watch a screencast, or learn more by doing it myself with a tutorial. For me discovering and learning a technology goes something like this:

  1. Discover new technology: Don’t need a conference for that, a quick glance at the twitter or blog reader firehose presents me with far more technologies, tools and tutorials than I need.
  2. Learn the basics: I am probably not the only one that learns better doing it myself than watching someone else do it.
  3. Get good at something: For me this means getting a solid eight hours a day experience with something for a few weeks at least, which implies using it at work. Now it is possible to do this at home, but I am still working on being able to exhibit the focus required to do this effectively. Currently I tend to spread myself far too thin, and end up repeating steps 1 and 2, leading to a broad, but shallow knowledge of many things, none of which I am particularly good at.

Another thing I noticed was that technical conference sessions tend to be about things I have been exposed to in the blogosphere for a few months already, while management sessions tend to be new, and the topic gets blogged about later. I suspect this is due to the fact that highly technical people prefer expressing themselves better in blogs, then the professional conference speakers pick that up and present it at conferences, while the management “gurus” ARE professional authors and speakers, and present their material at conferences first, and their followers pick it up later and blog about it.

However there is one exception. Hands-on conferences. I fully intend to restore some balance in 2011, and focus on “coding” as much as I have focussed on management this year. I will take my laptop, and collaborate with others in developing some sample app, solving a kata, taking part in a dojo. The craftsmanship conferences place a strong emphasis on this, so I really hope to attend the UK craftsmanship conference in 2011. I even heard rumours that there will be one here in Germany so I will hopefully attend that one too.

Anyway, there is not much need for me to give a blow by blow detailed account of everything I saw. Most of the slides are available to download.

The best session for me was Don Reinertsen’s and the second best was Mary Poppendieck’s where I got Mary and Tom to sign my copy of Leading Lean Software Development.

Some key points:

  • The software craftsmanship manifesto is a pretty weak uninspiring piece of fluff.
  • No one really knows what software craftsmanship is.
  • We need a feedback cycle at work that allows the POs to learn to write much better acceptance criteria based on the bugs we fix, and their solutions.
  • Management is becoming a marketing job, they have to sell their vision to recruit followers rather than just directing them.
  • Lean product development is a lot different to lean manufacturing due to non-repetitive tasks, high variability, and non-homogenous flows.
  • Even 80% utilization (like in lean manufacturing) is too much for product development, considering the higher variability.
  • You don’t really have static bottle necks (due to say under-capacity) in product development, the effect is more like a elephant moving through a snake. This implies ideas like Kanban are better then TOC when it comes to product development.
  • Batch size can be optimized by finding the minimum sum of transaction and holding costs.
  • Expediting should not pre-empt (too expensive), it should only give head-of-line privilege.
  • CFDs represent a lot more information than I thought, and I absolutely need to learn more about them. e.g. the slope tells the capacity of the system.
  • Queue size can be a better metric than cycle time, as cycle time is lagging.
  • Eliminating variability is bad – variability is where we can make profits.
  • I have to read more about asymmetric payoffs and option pricing.
  • I need to read more about queuing disciplines.
  • Analysis beats intuition.
  • I should read Managing the Design Factory before I read The Principles of Product Development Flow
  • Queue Size vs. Capacity Utilization graphs sound interesting.
  • WIP limits can have units (such as story points) rather than being a simple count.
  • Teams should only be maximum half a step ahead of management or management starts to slow things down.
  • Technical debt is a business problem rather than a technical problem.
  • Managers have to drive continuous improvement.

One session I wished I attended, because everyone raved about it was the Real Options one. Hopefully I can see it on video at some point.

Advertisements

1 Comment »

  1. In general, I agree with you that some technical sessions are a waste of time. There are some really good exceptions though. From the top of my mind I recall Jon Skeet on NodaTime and Scott Bellware on Ruby both from NDC2010. But it greatly depends on the speaker I think.

    Comment by Sergey Shishkin — November 30, 2010 @ 9:33 pm


RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Create a free website or blog at WordPress.com.

%d bloggers like this: