Agile++: When Agile Goes Well

If you see anything about LMAX - the Disruptor, Continuous Delivery, or even the selection criteria for hiring developers, you’ll see that LMAX is pretty keen on Agile.  However, no-one’s documented the Agile process there, as far as I know.  Although I personally had it on my todo list, I never had the motivation, the hook to do it.  And I realised eventually that’s because I’m not sure it’s a process that would work very well for another team, in another company, working in another business.

The agile process followed at LMAX is one that works for the individuals and the organisation there.  And that’s because they do one thing very well - they regularly examine the issues faced and adapt the process to try and combat them.  It’s an agile process that’s, well, very agile - it’s constantly changing.  Documenting it would only represent a single snapshot in time that would be out of date almost as soon as the next retrospective comes along.

Any process can inspire Cargo Cultism, and the last thing I want to do is give people a process to without the tools to know whether it’s the right thing for them or not.  It’s more important to understand your goals, check progress and improve.

I was talking this through with a colleague, Israel, and he rightly pointed out the tool that LMAX can share with everyone else - thinking.  Examining the problems, visualising them, and trying out different ways to fix them.

So at Devoxx Israel and I presented a session on “Agile++”, using LMAX as a use case of when agile methods work.  The session examines four specific issues encountered at LMAX and the steps taken to solve them, and it’s available on Parleys.  Enjoy.

Summary of Devoxx 2012

Devoxx topped off a crazy two months of conferences. I've heard people talk about the conference season in the past, and been slightly (OK, very) jealous of all that jet-setting.  I'll admit, however, to a slight feeling of relief that my focus until Christmas is pretty much going to be coding.  I hope.

Neal Ford's When Geek Leaks

So, how was Devoxx?  Well for starters, the calibre of the speakers and talks was excellent.  I learnt things in every one I went to - either something I could put into practice at work, or something I could do to improve my own presentations.  My favourite was Neal Ford's When Geek Leaks - Neal is a great speaker, and this talk was entertaining and informative. I'm also currently reading his Presentation Patterns book, which is extremely useful.  Although obviously I give a bunch of presentations and have found some very handy tips in here, it's dead handy for everyone, even if you're just presenting to your boss or team at work.

The great thing about Devoxx is being able to meet all the European-based people in the Java space. People fight to get to JavaOne, but Devoxx is a lot easier if you're based over this side of the pond. It's also easy to run into people in either the exhibition area (where lunch is served, so everyone ends up there at some point), or the central corridor between the rooms (which everyone has to go through at some point).  It was really awesome to have so many people grab me either at the MongoDB booth or when I was sat at the desks in the corridor.  I really like that venue for a conference, the only downside is the seats are so comfortable, people fall asleep in the talks.  Even in our presentation (how rude).

I have a lot of personal highlights from Devoxx now I'm finally free to think about it:

  • Another re-run of The Problem With Women.  If anything, this went even better than when I ran it at JavaOne. What I really loved about the session is the sheer number of men who turned up.  it's tempting to assume they're there to heckle, but in fact their active participation in the subject proves to me that the men in this industry are very much on board with trying to address the gender balance.  As always, I have so much more to say on this subject, so I'll make a note to write a separate blog post.  In summary, although there are differences in the contributions from the audience in these sessions, there are common themes and a willingness to get involved and Do Something.
Agile++ with Israel Boza Rodriguez
  • The exclusive premier of the new Agile++ talk, co-presented with a colleague of mine from LMAX.  The aim of this presentation was to talk about where you go when your organisation starts with a great agile grounding - what problems might you face and how do you tackle them.  Bit confusing for me giving this talk since I was still in LMAX-mode, and I'm very grateful to 10gen for not only allowing me to present this, but actually promoting it for us as well. I'd love to do this session again, I'd like to work out how to without having a split personality as an LMAX person and a MongoDB person.
Not everything can go swimmingly, so I should probably make an apology for giving the Shortest Talk Ever on Wednesday.  It was supposed to be a 20 minute talk about the benefits of open sourcing your software, but it ended up being more like a lightning talk.  Lessons learned: 1) no matter how much you think you have to say about a subject, having the speaker notes is still very important (to me) and 2) a bit more preparation, updating the talk given my new role, would have been extremely beneficial - as it was, I cut a lot of the content on the fly and had nothing to replace it with.  Oh well, you live and learn.
I also had a new experience on Tuesday, being on the MongoDB booth in the exhibition space.  This was really educational too:
  • I'm glad I had a week of intensive MongoDB training the week before, I could actually answer all the technical questions thrown at me - yay me!  It's true that educating people is a really good way to learn stuff.
  • People are really interested in MongoDB. Many are using it already, but even more are wanting to learn about NoSQL in general, and Mongo specifically.  It was really awesome that Stephan gave a massive boost to Mongo's reputation, describing how the central data store for the conference technology was MongoDB running on a Raspberry Pi.  You don't get cooler than that.  Numerous other speakers gave very positive stories of using MongoDB too, so we had a lot of people stop by the stand to ask us what it was all about.
  • Although I was nervous of being on the stand after Ceri's experiences, I didn't notice anyone doubting my ability as a technical person despite being of the female persuasion   I only had one conversation where the (male) developer I was speaking to kept addressing his questions to the (non-technical) (male) sales person instead of me.  But that's fine, I just kept answering the questions, and maybe I've made a slight dent on his (clearly subconscious) assumption that women aren't techies.  I still think the best way to address problems like this is to keep persevering, keep being visible, and to not let your assumptions about what other people are thinking override your own confidence in your abilities.
And finally...
Robots seem to be cool again, and I, for one, welcome our new automated masters.  I was totally blown away by the choreographed dancing robotos on stage as a lead up to the keynote.  
I think the only way to top that for Devoxx UK is Robot Dancing Tyrannosaurus Rexes.  On caffeine.  Destroying Lego cities.

Why We Shouldn't Target Women

I’m back from Devoxx, having had lots of food for thought.  In particular, my panel on Why We Shouldn’t Target Women generated a lot of discussion and I’m still trying to process it all.

Martijn Verburg; Regina ten Bruggencate; Trisha Gee; Antonio Goncalves; Claude Falguière; Kim Ross 

The panel went really well, we got decent interaction from the audience, and of course my fellow panel members were awesome.  I managed to restrain myself from using the opportunity as my own personal soap box and allowed other people to speak occasionally.  Sadly the only male on the panel stole the show somewhat, so Antonio won’t be invited in future… Actually in seriousness, it was great to have a guy on the panel to present his point of view.  It was interesting that he’s a father, highlighting that parenting issues are not the same as women’s issues, and conflating those two concerns hurts both genders. But Antonio’s hair is far too shiny and pretty and he’s funnier than I am, so I’m not standing next to him again.

I’d love to make a note of all the issues discussed during the hour, but I’ll be honest, I was too busy trying not to fall over in my girly six-inch stiletto boots to remember anything that happened.  The video will hopefully be available on Parleys some time in the future, so I will link to it when it’s there if it’s not too horribly embarrassing.

Someone let me have the microphone again…

One question that came up more than once throughout the week was: IT/programming is not the only industry with a lack of women, why should we care?  Maybe it’s just natural?

I think we need to be very careful before writing off such an imbalance as “natural”.  We need to make sure first that we aren’t discriminating against groups, consciously or through some unnoticed system bias.    And for me, the thing is that we notice that women aren’t well represented in technical roles, but we don’t necessarily notice the other groups of people who might be being put off for similar (or maybe totally different) reasons.  We can’t so easily tell if gays, jews, parents, shy people, folks from poor backgrounds or any other less distinguishable sets of people are finding it hard to make it as a programmer.

We can see the figures for females.  In the UK in 2008:

  • 44.7% of people taking ICT (Information and Communications Technology) at GCSE (age 14-16) are girls.  As in many other subjects these days, the girls get better results than the boys.
  • 38.6% of kids taking ICT at A Level (16-18) are girls.  Only 9.6% of Computing students are girls. Again, girls outperform the boys in both subjects.
  • 19.4% of those studying Computer Science at university are women.  This is down from 24% in 2003.
  • Through a not-very-scientific poll of the members of the London Java Community, it looks like approximately 15% of techies in industry are women.  Interestingly, some companies have a much higher proportion than others, but I think that’s something to explore another time.
The thing that worries me about these figures are a) the “pipeline” hints at a drop-off in interest in the subject, not a lack of ability, since the girls are doing well tech subjects but choose not to pursue them and b) the numbers are declining in some areas, specifically university applications.  I’ve read studies that show the percentage of those in technical jobs who are women has been steadily declining since the 80s, but it’s difficult to get specific figures, especially as I’m particularly interested in programming / technical roles rather than just the percentage of women “in IT”.
If the numbers are declining, that seems like a smell to me.  Not only do we have some sort of image problem which puts people like those who have two X chromosomes off from entering our industry, we’re driving them away when they get here.  And I don’t believe that’s because women find they’re not good at it.
Other industries have been successful at attracting a higher proportion of women - for example, in 1950, only 15% of accountants were women.  By 1985 half of all accounting majors were women, and by 1990 the majority of the workforce was female.  It would be nice to think we could learn something from our friends in the Maths world.  After all, the skills are not dissimilar.  But they have a slight advantage over us - in many countries all children are required to study maths until age 16.  However, there are very few 16-year-olds who have any programming experience at all.  Either we need to accept that we’re going to have to hire kids with other degrees and train them to be programmers, or we’re going to have to do some serious outreach to interest kids in programming and technology long before they start to make their exam choices.  In the UK, they need to choose their GCSE subjects at 14, which means we probably need to be targeting kids as young as 10 or 11.  That’s not inconceivable, when you think about it - how many of us were programming in BASIC aged eight or nine?  Could we not teach kids to write an iPhone app or a Facebook app instead?  I was very pleased to hear someone in our audience was teaching their daughter to program.  At an even younger age, the least you can do is buy your kids Lego - I’m sure that exercises the right parts of the brain.
The point is, that I don’t think we can conclude that it’s “natural” for girls to not be interested in programming.  The first programmer was a woman, and during the war and even into the ’60s many programmers were women.  I think that if we can work with schools to provide some tutoring in computing at a younger age we might be able to attract kids who wouldn’t have thought about programming as a career choice before.  Some of these may be women, some will not.  That’s fine, diversity is our ultimate goal.
Which leads me onto another point - special treatment of women.  I’ve said it before I’m sure - I think singling out women to attempt to increase their numbers does more harm than good, for a number of reasons: 
  1. It makes women think that there must be something wrong in our industry if women need to be treated differently, or mentored differently, or need additional training to get by. Or it makes us think that we really aren’t as good as our male counterparts because we’re being given special treatment.
  2. It builds up resentment amongst our male colleagues, so they soon begin to wonder if we’re doing our job because we’re good at it, or if we got there because we got lots more help, or because we’re there to tick some sort of box
  3. It’s not solving the problem of lack of overall diversity - where are the programs for people who went to the wrong schools, for those who didn’t think about programming as a career, for a million other special interest groups that exist out there?
Some of the ideas that imply special treatment are things like: all women events (you should know by now how I feel about those
So, what can we do?
  • Reach out to those you want speaking at your conferences.  This might include women, it might include people from other “minorities”, or it might just be awesome people that you want there making your conference look good.  
  • Use these people for marketing and role models - it is indeed possible that if you have some female faces on your conference site and posters, you might attract more women attendees.  Actually, if you have more women role models you might attract more men, but hey, it’s all about diversity.
  • Buy your kids Lego and teach them programming.
  • Treat women in your company like people the same as anyone else.  We were asked about how to deal with a younger female boss.  Kim’s answer was perfect: “Like an older, male boss”.
  • Get involved in mentoring programmes, not just for women but for people of all ages - kids at school, undergraduates, or people who are already in the industry and want to take that next step, for example to speaking at conferences or writing or leading teams or becoming CTO.
Since the panel I’ve been pointed, numerous times, to this excellent article which talks about racism, sexism, and meritocracies.  I particularly like the line “Explicit diversity programs have the solution exactly backwards”.  Well worth a read.

Devoxx: The story so far

Stephan wearing the Brazilian flag at the opening keynote
  • European conferences are different (and cool) because you get to hear even more languages spoken than you usually do in London (apparently the most diverse city in the world for spoken languages).  I think the idea of a Paris Devoxx with 75% of the talks in French is brilliant - I'm always banging on about diversity, we shouldn't expect developers to learn in English only.
  • Really great to meet up with some of the people I met at Java One and am starting to feel more a part of the global community.
  • Seems to me there are slightly more women here than at the other conferences I've been to, and not just because Regina and I pulled together four women for a panel on women technologists.  And once again, a lot of guys asking why this is, because they want things to change.
  • A highlight was seeing my namesake, AutoTrish, up on a cinema-sized screen in front of hundreds of people at Dave Farley's Continuous Delivery presentation.
  • Building on from my twitter revelation at JAX London, I've found twitter very useful here for messaging people I want to meet up with, but also for chatting to new people and making new friends.  It's not quite as intimate as JAX London though because there are billions more people here, so the chances of actually bumping into the twitter friends is much lower.
  • Have had lots of interesting conversations with people about the Open JDK, which I guess is the logical extension of the interesting conversations I had about the JCP In San Francisco.
  • A community event like this is different to an event like Java One, because a single organisation isn't calling the shots.  It's interesting (and great) that Oracle and Google can both be here talking about the cool stuff they're up to.
The Diabolical Developer

Conferences are clearly something that appeal to me - I love meeting people and chatting about interesting and (sometimes) intelligent things; I love learning stuff and indexing it away, possibly for future references; I love hanging out with people like the LJC guys (Ben, Martijn and John); I love kicking around ideas of what more we can do at LMAX with our lot (Mike, Dave, Dali).

Dave's Continuous Delivery

I'm really looking forward to my panel this afternoon, I'm going to be ranting about how we target women for tech jobs.  Should be fun.

Nice 'tash!

Shameless plug: Mike and Dali are raising money for men's health with their rather awesome 'tashes.  It took guts to stand up on stage and present with that handlebar, please give a penny or two: