Category Archives: Working World

An Agile Reading List

These agile books and websites cover the process and the reasoning behind the process of agile software development. They are based on books and sites that I regularly use and mention in class. If a favourite of your’s isn’t here, it just means that I’ve probably not read it yet. The books can be divided into practices and them move into more specialised topics, which move further from the software management side and towards the organisational side of the challenge.

The basics are these

We don’t know as much about this thing we’re building as we think we might so we need to validate assumptions.

Build short incremental slices so that you can start using it sooner rather than later.

Treat people as you’d like to be treated.

This makes it sound simple, but it’s actually hard to do all of these.

We’ll start with the basic agile concepts and practices used in the software development process.

The basic practices and concepts

Go read the agile manifesto and its twelve principles

Go download the Scrum Guide and read it yourself

Use Jame Shore’s The Art of Agile Development for exploring how to apply these concepts with agile related approaches. The full text is available online, or you can buy the book (very cheap second hand editions available) if you prefer. It covers everything that you need to know to get started and mixes theory with practical examples too.

Read any of the books by Tom Gilb. You’ll find them listed at

Mike Cohn stuff and the edited series from Addison-Wesley Professional

The original XP series of books on Extreme Programming

Agile concepts

Henrik Kniberg on different ways of building software

Peter Hundermark – Do better scrum – infoq

Esther Derby and Diane Larsen –

Gil Broza – The Agile Mind-Set –

Tobias Meyer essays: The People’s Scrum: Agile Ideas for Revolutionary Transformation

Clarke Ching has a number of books explaining agile and Theory of Constraints concepts as they apply to software development. Go read them all.

Coaches help teams become better at what they do

Rachel Davies plus Liz Sedley and their Agile Coaching book

Agile coach toolkit

Portia Tung and dream team nightmare

Deciding what to do next and discovering the context

impact mapping builds on work of Gilb and requirements by specification from Gojko Adzic

Go read about ‘real options’ as well from Chriss Matts to understand why you want to delay decisions.

Liz Keogh – Behaviour Driven Development – – more than just a way to test – how to capture ideas from business people and understand the context you find yourself in – intro to real options and Cynefin too

Greg Brougham – Cynefin mini-book

Vasco Duerte  #noestimates  book

Juergen Appelo – good at bringing together ideas from across areas and applying them to software development

Kanban, flow and managing the work of organisations

Donald Reinertsen – managing the design factory and product development flow

David J Anderson Kanban book

John Seddon’s work on benefit of systems thinking and flow

Bjarte Bogsnes and Beyond Budgeting ideas

W. Edwards Deming Out of the Crisis and others who explores systems

Other things

Richard Sheridan – joy inc and Menlo innovation with pairing every role and rotating weekly, as well as bringing pets and babies to work too. This is where the human side of agile practices comes into play. Watch the video, read the book.

Everyone Can Learn to be More Creative

We are all creative, but our culture seems to drum creativity out of us during school. The ‘arty’ ones go one way, the ‘science’ ones another, and the remainder end up distributed across all the subjects. This is brought up again, and again in articles. A key proponent of the notion that ‘school removes our creativity’ is Sir Ken Robinson, who discussed the topic in his TED Talk in 2006. Bookmark it now and watch it later to be inspired.

We can change our ‘creativity level’ through practice. Our brains are always ready to learn new things as long as we offer them the time and opportunity. We need to broaden our knowledge, change our behaviour, and change our lifestyle to be our most creative according to WikiHow, and FastCo. To this I would add that we mainly need to do the following:

First, adjust our mindset. Tell ourselves that “we need more practice being creative” instead of saying that “we’re not creative.” Tell children this too, by the way. This will help us with the next step.

Second, create opportunities to practice being creative. This can range from doodling more often, to joining a reading group, cooking more, or taking painting classes. You choose, and be flexible by trying a variety of options such as those suggested by Michael Michalko, or HuffPost.

Third, walk more, and exercise more. Both of these offer space to think, and to pull us out of our regular thought patterns, which creates a space when innovation can happen.

These changes will affect you quietly, but you should notice with time that you pick different types of solutions than you would’ve in the past. You might also find that you’re more innovative in general too.

The last step in all of this is to always be looking for more options when exploring challenges and identifying solutions, as I’ve explained previously.

While all of this sounds like something we each do individually, you can also bring people along with you too, by taking part in games such as the cards from the Try or Die game shown above, which Janny and I ran for the Aberdeen Science Centre last June.

Diverging and Converging Through the Creative Process with #Ideas2Action

We all make decisions at basic and more advanced levels every day. At the basic level it will be about where to eat when meeting friends, while at the more advanced might be about where to go on holiday. On beyond that it could be about which career path to take, or whether that business idea is worth pursuing, and if so, then how to do that.

At the basic level we probably work through our steps subconsciously without much thought. As we move up the levels of complexity we will start to pause and consider what we’re doing at each step.

The Creative Process uses Diverging and Converging

The creative process includes four stages of discovery, design, develop and deliver. In discovery we explore what is the issue to be resolved. Design sets the parameters of the solution. We prototype a solution in develop, which we then use in the deliver stage. During each of these stages we should be looking for diverse options (diverging) before we apply a set of criteria to select an appropriate solution (converging) to apply.

If we walk through the simple process of deciding where to go for dinner with friends you can see how this works, and why we often go through steps unconsciously. We’ll also contrast this with a startup scenario to see how as the stakes go up the conscious steps come into view.

Discovery is about context

We start with the idea that it would be good to meet for dinner. We check with friends to see if they agree, or if lunch would be better depending upon the occasion, and if anything specific is to be talked about. Here we’re framing the challenge to come.

In the business scenario the discovery phase is about determining who your customers might be, and how much demand there is for the service you envisage. You would also consider any competitors, and where you would position yourself in the market. This is setting the background and context of the service you want to offer.

Design clarifies the boundaries of your options

For our meal with friends we need to now agree upon date and time, as well as who should be included in the outing. We can diverge on the options of when as well as who should come, and then select the final options based upon who can make it for the meal on which date.

The business will need to explore what might be possible with the business given what it knows about its potential market and customers. Here it can be wild in its options, and then select the one that is the most promising, exciting, or novel.

Develop is where we create the prototype solution

Now we get to the part where we decide to go for the meal. We have many options in principle, but in reality are constrained by budget, availability of seating, or reservations, as well as likes/dislikes of food by our friends, and the time available for the meal according to the type of place we choose for the meal. We can float these options to our friends until we find one that everyone agrees on for the meal. We probably rule out, based on past experience, a number of these questions as we already know the answer.

In the business we’re selecting and arranging the components of the service in different configurations to find the one that meets customer expectations best. Our constraints might be tied to a range of options such as ‘which one is most adaptable in the long term’, or ‘which one offers the most return soonest’, or ‘which one offers a long, steady increase in development because it also opens the doors for more options in the future.

Deliver is for confirming our assumptions

This is when we meet our friends and have that meal. We talk, eat, drink and find out that ‘yes, we did pick the right place’, or ‘bother, the service here is horrible. We should’ve gone to the other place’. Now we know for next time. Because, there is always ‘a next time’.

For the business, this is where the item is produced, packaged and sold. Or, the service is deployed and we’re working with our customers. Now we discover that everything is as expected, or is better/worse, than we planned. We also now find new issues, challenges and possibly opportunities, which we hadn’t thought about. This is all information, which we can use and develop for our next round of changes to our business.

We can now start the process over too. For this is never a linear process, but more like a wheel that goes round and round with multiple iterations. We learn more each time around for a specific project, but also learn more about the process too and how to better develop options for diverging to gain more options, as well as how to choose how we should converge on few, and then on one option to move forward.

Diverging and Converging with the Business Model Canvas

You might be thinking, I don’t need this, I have the Business Model Canvas to guide me. Yes, it will help you determine a good mix of components for your business model. But… it doesn’t help you work out a good way to diverge and generate more options. Nor does it help you determine the type of converging that you need at each stage.

In addition, the business model canvas doesn’t help you validate the assumptions behind your ideas. This process could be used to help you prioritise the components of your business model. Which ones should be focused on first to confirm that your business model is worthy of your time and energy. This process will help you validate your ideas with prototypes so that you ‘know’ you’re going in the right direction with your idea.

Attend an Ideas2Action workshop to apply this process to your challenges

Janny and I can teach you how to use this process in our workshop. You come with a challenge and we help you work through it during the session. We provide you with space, time and support to diverge on options, select the right criteria for converging on the one to carry forward. You leave with your action plan and know what to do next to make your dream happen.

You can use this process to determine where to go for dinner, or you could also use it to help you

  • explore career/retirement options
  • choose which of those business startup ideas you should pursue
  • decide upon your special holiday destination/activity
  • choose which option you should develop next at work

Whatever you do at whichever stage of life you’re at, we can help you uncover more options than you think you have, so that you pick the one that will leave you more satisfied than you thought you would be.

Go sign up for our #ideas2action workshop on 2 December 2017 on Eventbrite. Attend before the holidays so that you can plan your new ideas further for the new year.

The Silence Experiment at #Agile2017

While at #Agile2017 in Orlanda I was able to participate in ‘The Silent Experiment’ being run by Sal Freudenberg, Katherine Kirk , and Chris Corriere, as part of the Audacious Salon. I’d missed this in Edinburgh during it’s unveiling at Lean Agile Scotland, and had read about it in Sal’s ‘Inclusive Collaboration Experiments‘ book, where it’s described as a way to let people better understand the diversity of their colleagues as part of their neurodiversity work. The experiment ran as follows: enter the room and sit quietly at a table so that you form a team of three. Sal set the context for the session and told us when we could open the package and instruction booklet to begin. We had 40 minutes to complete the assembly of the prosthetic hand, decorate the container and take a photo to include in the parcel for the person, who’s to receive the hand. I formed a team with Pia and Lisa Crispin. I found the session exciting and intriguing because we were doing meaningful work. This is something Sal mentioned, that was an integral factor in her early versions of the workshop, whih used Lego. Participants found it less engaging when the work was ‘build a model’, and that the session went better when she switched to hands. I also found it frustrating when I wanted to share ideas, but couldn’t because of the silence. Katherine, happily, kept walking around with a post it that said something like “write down your thoughts and feelings as they occur” so that we didn’t forget them for the debrief later. The frustration was as much about good thoughts as much as about ‘oops, I think I did it wrong’ ones and wasn’t sure how to explain my concern. We did get there in the end, and Lisa kept us going well by pointing out that all pins should be not flush, but recessed into the hand. I found the silence revealing for a number of reasons. First, there wasn’t pressure to keep talking, and we could focus more clearly on the work without the noise from other tables to distract us. Second, we could consider our repsonses to issues as they arose more carefully, and respond differently than we might have otherwise done if we’d all been talking through the building of the hand. Third, while it was hard to share confusion about something, or to ask if others are also confused, it was comforting to trust your partners too as we all eventually worked our way through the produres. When someone had problems, then we’d offer via gestures, another team member a chance to try the step.

The experiment revealed too, that doing meaningful work is an important part of this experiment. For me and others, knowing that the hand we were assembling would change someone’s life meant a lot to what we were doing. That offered a huge amount of empathy and love for the activity. Building a model with Lego just isn’t the same. However, I’ll probably try it this next term using some of the Lego Serious Play sets as my own experiment. This ‘meaningfulness’ then becomes a debrief point.

All of this is by way of showing how we need to have more diversity in our workplaces, and be inclusive so that end the usual monoculture. Come join the crowd at and do what you can to help spread the word.

As Katherine’s poster noted: “insight does not arrive from objects – it comes from ‘insight containers’ called HUMANS” Humans are imperfect, and no one human can know everything, so  we need collaboration in order to gain effective insight. And the best collaboration is that which fosters inclusive diversity.   Save Save Save

Games 4 Learning


I delivered a workshop on ‘Games 4 Learning‘ at the UK Horizons STEM conference in June 2017. This went well, and much talking and actions ensued from the participants about how they might use games in their teaching. At the end a question of resources came up, and I realised that I didn’t have a list of them on a slide. This short post replaces the ‘missing slide’.

The games mentioned in the session were:

Lego Serious Play (See other blog posts on this)
Happy Salmon
Kanban Pizza Game
Various Lego Scrum Simulation games
Scrum Card Game
Penny Game (dice variation)
Lean Workflow Design Game
Marshmallow Challenge
Ball Point Game
Ninja Bear Granny (rock paper scissors) with team/group variations
Investigative Rehearsal (role play), and Theatre of Oppressed/Forum Theatre

TastyCupCakes is a wonderful site to find games for a variety of purposes, although many are aimed at software development.

The Encyclopaedia of Improv Games offers a useful list of games used in improv training. These can be simple and easy to use and adapt to your needs.

The Thing Group offer many types of games for training. I know some people use these, but I haven’t had an opportunity to explore them more fully. I put it here as an option.

For each of these look at what might work, and think of how you might introduce them in your sessions. If in doubt, talk about it with a colleague, or try it and explain that it’s ‘an experiment’ and you’d like some feedback.

Do feel free to get in touch and let me know how you get on with these.

Academic and tech conference issues

I regularly attend a number of tech conferences each year and a smaller number of academic ones. This works well for me as I am always seeking better ways to educate my students about professional practices.

Last week I was guiding visitors around the campus as part of a site visit for an academic conference, which we’d like to host at the University of Aberdeen. Most of this went well and we identified all of the rooms that we could use for talks and breakout sessions as well as locations for the conference dinner and coffee breaks. We also had good conversations during the day in between walks around the campus to see different locations, as well as over dinner across a range of issues.

During these talks I became more aware of differences in academic and tech conferences. Some of the ideas from tech conferences can be easily brought into play for academic ones.This is important because conferences should be a time for the spreading of good ideas from one place to another.

Dinner with a stranger

For the conference evenings without ‘the dinner’ we can use the ‘Dinner with a stranger‘ model that I’ve now experienced a number of times including the one written about by Corinna. This lets people pick where to go and gives them the option of bringing a friend for company, as well as an opportunity to mingle with others. It helps keep people at the bigger event connected during the smaller events. As suggested via Twitter, this could also be called ‘dinner with a new friend’.


We all need to speak in public as academics. It goes with the territory.  What we don’t always provide are pathways for ‘new’ speakers to get more comfortable with public speaking by being able to ‘experience the stage’ without being the centre of attention. Lauren Currie started #upfront as a way to make that step easier for those who want to enter public speaking. I organised the Northern Lights Conference to use this approach in 2016, and it meant that a number of people were able to experience the stage without having to talk. Next year, hopefully, when they are speakers, they’ll already know what to expect.

#upfront at Nothern Lights

We should use this type of approach, as shown above with two siting on the stage next to the speaker, at academic conferences too so that academics gain expeience before they speak. They can be that bit closer to the talking and we gain more diversity in speakers too. This would be a simple exercise to try.

Coffee breaks

You’d think that we’d all agree on something as simple as coffee breaks. However, you’d be wrong. At academic conferences the goal is to have people in the talks. This isn’t supported by those who skip talks to have another coffee and catch up with a friend to discuss a new collaboration. That conversation should happen at lunch, or at night over dinner or in the bar it seems. At academic conferences the breaks need to be fixed and shorter rather than longer so as to maximise the sessions.

At tech conferences, which I go to there are always beverages available during the day for people to grab as needed to fuel a conversation. One year there were fixed coffee times, but that changed and it also didn’t stop people skipping sessions to talk about ideas and collaborations. That’s why we’re at these coferences after all. By the way, these are regular conferences and not open space or unconference events. At those, I’d expect there to be food and drink all day to help keep conversations going.

I like the ‘come and drink and eat when you’re ready’ approach of tech conferences. I like knowing that I can grab the slide deck, if I miss a session, because my priority right now is to speak to person x, who is only here for a few days. I think there should be space for both attendng sessions and for also enabling the freedom of ‘coffee’s here, keep talking’.

And, when I think about it. At the regular events i attend, then i a crowd of 80 there are maybe 7-8 people not in one session or another, while an event with 250-300 sees maybe 10-12 in the coffee lounge during sessions. These are not large numbers. These are where people deepen friendships and work gets done.

Codes of Conduct

We added a code of conduct for the Northern Lights Conference last year. Friends told me that this was needed now, and that some people wouldn’t attend if we didn’t have one. After a bit of searching around and finding that all of the conferences that I go to had them, apart from an open space one, which deals with this in a different manner, then I decided we too should have one. We based ours on the one used by ScotlandJS. I also had a long talk with the organiser about how they curate the talks and engage people to put themselves forward as speakers, as this is often part of the issue too. People had to agree to the code when they purchased tickets, or agreed to be sponsors. If you need a brief guide on the bad things that happen at conferences then this timeline shows you what’s been reported on in the past.

I looked around to see if any academic tech conferences have codes of conduct. I didn’t find any. I did find documents like the ACM Code of Ethics and Professional Conduct.  This is mostly about the software being developed, and actions of an individual in other scenarios might be interpretted as applying to conferences too, but that is also possible too generous an interpretation. The IEEE Code of Conduct comes closer to what’s needed and does talk about the issues in a more general manner which does cover conferences too.

I found one call for an academic conference code of conduct. This, as you can see, raises all of the issues that we see in the Times Higher Education, and in other places too. It also carries on in the comments of the post. I also found that the IASSIST conference has a code of conduct, which will cover the issues too.

Ultimately, it all comes down to this: do we need a code of conduct? Shouldn’t participants be expected to be good to one another? Maybe they will, but some of them won’t be. Listen carefully to conversations around you and you’ll find that things do happen, which shouldn’t at conferences. Ask the organisers too if you’re in doubt. The Code of Conduct 101 covers most of the reasons, why you want one, and answers you’re ‘yes, but…’ items too.

A conference should be a joyous occasion where people meet for the first time, or the upteenth time to hang out and discuss life, work, and what comes next. We should also know that if something untoward does happen, that it will be dealt with appropriately and that participants know who to speak to if they need to report something. We should set an example.

While computing in academia and the tech industry might be considered similar, there are still differences and some of the trends we see in industry should move into academia. We are here to help mould the ones who work in industry, so we should teach them well and provide good examples.




Humble Enquiry Workshop at Lean Agile Scotland

Ellen Grove Twitter LinkedIn and I ran a 90 minute workshop based on the work of Edgar Schein and his book Humble Enquiry at the Lean Agile Scotland conference in October 2016.  The goal was to highlight that people should (need to) take the time to build relationships between each other in order to have teams and groups of people work better when difficult occassions arise.

Humble Enquiry starts from the position that it’s better to ask questions, than to tell people what to do. Similarly, it is about being vulnerable to asking questions and being curious in order to know how you might help each other. We focused on four stages:

  • why use Humble enquiry?
  • what is humility?
  • asking good questions
  • why humble enquiry is hard

by the end people should be able to practice humble enquiry on their own because we told them about it and offered chances for them to ask appropriate questions in a humble manner.

It was well received according to the feedback cards of participants.

Culture Coding Concept

The last session I went to at #p4a16 was ‘Culture Coding’ from Ari-Pekka Lappi was great. He explored how you can use the notion of ‘coding’ with its ‘function’ concepts to build design routines into your practices. In the same way that a kid could use Scratch with its drag-n-drop code snippets to form loops and such, you can do the same when trying to generate new ideas, or to build upon other ones that you already have. This was something I’d not thought about before and was just ‘so cool’ that I’ll need to use it with CityLab students this week and see how it works in practice.

The basic idea goes from the observations noted in the Tweet from @cuxdu during the session:

With ‘code’ snippets on Stattys we can easily move the concepts around to try different ideas. The concepts came in different formats. There were ‘functions’ like ‘define main function(s)’, ‘contrast’, ‘polarise’, ‘overlap’, ‘oscillate’, ‘compose music/make a constallation’ and others likes ‘loop’, ‘repeat 3 times’, ‘combine’ and similar. There was also a notion of conceptual layers like ‘family’, ‘criminal mind’, ‘work’, ‘business’, and others which you could pull in as context as needed. Another group was around objects with concepts like ‘pick an object’, ‘pick another object’, ‘define main function(s)’, ‘eliminate the main function’, ‘think of the use of the product’, ‘why would anyone want it’, ‘how it feels’, ‘swap the core essences’, ‘substitute the main function of one with the main function of another’, ‘add something to the object to make it impossible (surrealise)’

The best(?) bit was using examples like this ‘pick an object’, and ‘pick another object’ whereby you’d pick someting in the room and take something away so that it doesn’t work. For example, take a chair and remove a leg and while it maintains the shape, it won’t work the same way anymore.

This was real cool as with this process you should be able to take a group of people and have them run through a few of these exercises and generate a number of possible product or service ideas without too much trouble. With a bit of practice delivering this as a workshop one should be able to guide them to useful ideas.

It will be interesting to do this with a group of students on Wednesday for the Aberdeen CityLab project and see how they are able to apply this to their current ideas.

UPDATE 5 November 2016: I used this in a workshop at #creakix 2016 which went well, and helped me as this  ‘culture_coding‘ workshop .