Saturday 17 November 2018

Devoxx Belgium and Two Talks


I was at Devoxx Belgium last week. Great conference.

I was lucky enough to do 2 talks:

What Drives Your Development? - a lightning talk not intended to be taken 100% seriously.

Agile is a Dirty Word - a much more serious, full length, offering about tackling the problem of Agile having become toxified through misapplication and misunderstanding.

The conference

I've been to a few Devoxx conferences now and they are always fantastic. The organisation of the conference itself is typically superb, the audiences are knowledgable and polite and I've always been looked after really well as a speaker.

Devoxx Belgium was bigger than I expected it to be. The venue was Kinepolis to the north of the centre of Antwerp. As with many conferences, the venue is a multiplex cinema. This particular multiplex cinema had 8 theatres of varying sizes (from big to absolutely massive). For most of the sessions all 8 were in use simultaneously which should give an idea of the scale of the conference. There was also a very large exhibition space on a lower floor containing more than the usual number of corporate sponsors including some very big names (AWS, Google Cloud, Oracle were all there).

The Youtube Channel

Devoxx has its own Youtube channel and it is very good at posting the very professional looking videos to it soon after the talks are done. In the case of Devoxx Belgium it excelled itself. Many of the theatres were live streamed, including my Agile is a Dirty Word.

The Talks

As usual at Devoxx, the quality of the speakers is good. I've now spoken at a few Devoxx conferences this year so I am seeing some of the same people delivering the same, or similar, talks to those they have delivered at other Devoxx events. I think I am in danger of fitting into this repeat offender space! I also had very limited time at the conference itself. The first day I was there I spent most of my time finding the venue (I couldn't find a taxi and had to walk for an hour to get there), then talking to the organisers, then doing my final preparation for my two talks for Thursday.

On Thursday I saw two great talks. I saw other talks which were also good and I didn't see anything that I thought was poor in any way. It is well worth trawling through the Devoxx channel to see some of these talks.

Rethinking Software Systems: A friendly introduction to Behavioral Programming by Michael Bar Sinai

This was something completely different from what I expected. I didn't really read the title properly and I didn't read the blurb. I really went along to it because all the other talks were somehow JVM specific (Devoxx was originally a Java specific conference) or were being given by sponsors. I tend to think twice before attending a talk from a sponsor, I like new information, not a sales pitch. I have been to some excellent vendor / sponsor talks in the past, notably from Google about Kubernetes, but the good ones are rare in my experience.

This introduction to behavioural programming was extremely informative and had a great demo of a virtual robot. I tried to imagine as I was watching the demo how I could have written the same program using techniques that I'm most familiar with. Which probably means some kind of C#, OOP based, implementation. Whichever way I thought about it, I couldn't imagine a more succinct, elegant version than that which was demonstrated. As ever with succinct code I do wonder how easy it would be to read by others without the (excellent) explanation of what was going on. My doubts in this area, of course, could just be down to my total lack of familiarity with this type of programming.

Overall a brilliant talk, very well delivered, and I definitely learned something new.

Untangling the mysteries of qubits by Roy van Rijn

I will always attend a talk about quantum computing at any conference. I was inspired to start learning about quantum in the first place by watching a talk by Alasdair Collinson at Devoxx Vienna back in the spring. I have since then attempted my own version of "Quantum for Beginners" at a couple of conferences. It went OK at Devoxx Poland and a couple of small UK conferences but not so well at DevConf Poland in Krakow in September (too basic apparently). I am talking about quantum again next week in the Ukraine.

The room was packed for Roy and I had to climb all the way to the back, and over a few people in the back row, to get to an empty seat. There were people sitting and standing in the aisles as well.

This talk by Roy van Rijn started with the basics, had an interesting way of explaining the Bloch sphere and went as far as describing Shor's algorithm with an explanation of how the Quantum Fourier Transform works. I felt that there was just enough information for the beginner to get a feel for how quantum computers can be powerful and I applaud that Roy talked in some detail about Shor's algorithm.

Roy's delivery was excellent. The quality of his slides was great and the information passed over was very good (although I am no longer a beginner in this space so I'm not sure how it landed with the real novices). I gave it 5 stars in the app. I would have loved to have talked to Roy afterwards but unfortunately I was on next, I wanted to get some fresh air before my talk and there was a gaggle of people surrounding him. I guess that last point, together with the attendance, give a good indication of how well it was received.

My Talks

The CFP, to which I applied back in the summer, allowed the submission of up to 5 talks. I proposed 3 talks that I have previously presented a couple of times each this year, including at Devoxx events. So maybe I shouldn't have been surprised that they accepted the two talks that were new. I didn't realise it was a thing to get more than one talk accepted at the same conference but I put that down to one of them being a lightning talk, so I was only doing one full length talk.

What Drives Your Development?

This was my lightning talk and is a talk based on my blog post from back in May called * Driven Development. This was intended to be quite light hearted, as the original blog post had been, but with a serious message at the end. As far as preparing for this one went, it was pretty easy to do. I had the blog post to work off and it was a case of just working out the timings to get it all done in 15 minutes. 

The Message

I have got increasingly frustrated in my later years with the amount of time and effort that people think it is necessary to put into prioritisation and estimation. I'm still not convinced that the ability to accurately predict how long stuff will take is all that useful. This is derived from my twin observations that deadlines are generally set artificially and imposed on the people that actually do the work and when these deadlines are (usually) missed, nothing particularly bad happens. So how would the situation be drastically worse if instead of all the pseudo science and wrangling we just trusted a product owner to call out, at the necessary point, what the most important thing is to do next and then do that?

So when I analysed the A to Z we had made back in May, I decided to split them all up according to a few binary metrics. I used real things v made up stuff, good ideas v bad ideas and stuff that tells us how to build things v stuff that tells us what to build. Lo and behold, these three things were strongly correlated. That is to say, real things, good ideas, and ways of building stuff overlapped massively as did made up things, bad ideas and methods of deciding what to build.

The Talk

The theatre I had for this talk was one of the smaller ones and it wasn't very full. Devoxx does its lightning talks during the lunch break and there was a bit of a trek from the lunch distribution to the theatres. So I'm not surprised that not many bothered! I had a reasonable turn out though under the circumstances. I took this selfie toward the end of the talk while I was still talking.

It seemed to go pretty well. I got the timing of the 15 minutes pretty much spot on and they laughed at most of the bits that were supposed to be funny. I should probably stop making the Martin Fowler (Eastenders) joke outside of the UK however. I averaged 4.47 out of 5 stars with 17 voters for this talk. So I was pretty happy with that feedback. A frankly baffling comment, "Not enough demos / samples" from one reviewer made me (and Alasdair Collinson) laugh given that there was absolutely nothing to suggest that would be forthcoming (or even possible) in a light hearted 15 minute summary of a full A to Z. Oh well, no pleasing some people! :)

Agile is a Dirty Word

Where "What Drives Your Development" was a good fun evening at home playing with pictures and stuff, "Agile is a Dirty Word" was a whole different beast. I got the idea for the title through noticing how much skepticism there is about Agile. There is, however, in my experience, a strong correlation between skepticism for Agile and organisations who aren't generally doing a great job of things. 

All of the things that work against organisational agility (and there are many) work against technology teams, or any kind of teams, implementing any kind of Agile process effectively or getting anything out of that process. Inevitably under those circumstances, Agile projects or Agile initiatives fail. But it isn't Agile that is failing, it is the organisation that is failing. However, "doing Agile" was the thing that that changed in the last few years, so Agile doesn't work, right? Agile is toxified in the eyes of many at these organisations. Hence, Agile is a Dirty Word.

Constructing the Talk

So I set about making a presentation for this talk. I had no problem pulling together slides to illustrate the title of the talk. I had material from all of my engagements for ThoughtWorks as well as my first ever conference talk, Agile in a StraightJacket, to give inspiration. The trouble with all of this material is that all it gave me was a massive rant about how bad things are. No solutions. As my colleague Mark Coster taught me a while ago, "Birnie, if all you do is point out the problem and don't offer any solutions, then you are part of the problem." So if I start with "Agile is a Dirty Word" then I have to give some kind of story and some kind of solution about cleaning it up.

Some Prior Help

On one of my previous engagements, I gave a talk (thanks Taheera Atchia) called "Kanban, Flow Control and the Theory of Constraints". The intention was to teach Agile values and principles to a group of people who already thought they were "doing Agile" (they weren't).

More recently I gave an updated version of that talk, "TPS, Value Stream Mapping and the Theory of Constraints" to a company who thought they were "doing Agile" and where "Kanban doesn't work".

In both cases my goal was to teach Agile values and principles without using the word "Agile".

Preparing the Talk

So these two experiences gave me the beginnings of my message. In both cases I avoided the dirty word. So I had the first two sections of my talk and a load of other slides illustrating how we managed to get various clients to a better place.

So a couple of weeks before the talk, I shared all my material with my colleague, Julian Holmes, who definitely knows a bit about Agile transformations. As well as some invaluable feedback about some of the material he suggested a flow for the presentation which helped me to arrive at some sensible section headings that gave the whole thing a coherent story. Without Julian's help I have no doubt the talk would have been far less successful.

The Talk

I was in the largest of the 8 theatres. The conference app allowed people to Like talks before they saw them. I had over 500 Likes in the early afternoon (I was due on at 4:30PM) and the next most for talks on at the same time was around 160. It was suggested to me that my talk may have been moved to the largest room because the conference organisers apparently were changing the location of talks based on Likes. I'm not sure if this is true or not, I didn't get the chance to check.

Whatever the reason, the theatre was HUGE and it was full. I was pretty nervous.

It seemed to be going pretty well when I was doing it. The audience laughed at the bits that were intended to be funny and I saw a lot of nodding of heads at the bits where I was describing the things that are the signs of Agile being a dirty word. The applause at the end was warm.

The Feedback

When I finished there was a crowd of 20 or so people wanting to talk to me and I was happy to talk to them and would really have liked to continue the conversations for much longer but unfortunately had to rush to Antwerp Central Station to get a train back to Brussels to get a train to London. When I was on the train to Brussels I managed to log on to the Devoxx app to look at the audience feedback. I was amazed by the score (4.57 out of 5, 209 votes) and by some of the comments. 

As with most feedback, I'd really love to get feedback from the two people who only gave me 2 stars. There was one negative looking comment lower down the list which was "bit much text on the slides". I think that's fair. As ever, with a bit more time and on another showing, I hope it will be better next time. I really hope there is a next time for this one, I'm waiting to hear from a couple of conferences and I've updated those applications with a link to this talk (and shared the feedback!)

And that was Devoxx Belgium! A great conference, I'd love to be lucky enough to come again.