The adventures of teaching computing science to university students

Post navigation

We had hoped to be launching the CityLab course in September. We didn’t quite manage to do that in the end. This was disappointing, but useful in the end as it offered more time to pull things together for the coming term in January. It also still means that we can run a pilot in order to see where and how we might be able to scale this up to larger numbers of students, while also having a more realistic idea of the time and effort involved in delivering the class.

A key change in the idea is that now students from both the University of Aberdeen and the Robert Gordon University will be collaborating together in teams on projects with Aberdeen City Council. We still need to iron out the basics of this as UoA starts two weeks ahead of RGU, but I’m sure that we will find a solution for the start and end of the term and projects.

While combining both RGU and UoA students together does mean that each institution can only offer this to ten students apiece each term, it does offer more opportunities for students to share their learning experiences in the course. Now they see how other students learn, while also learning how much they also know from their disciplines, and how combining inter-disciplinary teams works well when looking for creative solutions to problems.

One hold up was getting permission from UoA to run this as a new course. While RGU has ‘independent study’ course options for students to use with this course, we don’t have that option at UoA. This means we need to propose a new course and fill in the usual forms that accompany this too. However, we were ahead of the usual cycle for this, so needed to find out about running a pilot. Happily we’ve now addressed the quality assurance concerns of the appropriate committee heads and should now be able to proceed apace with a course code and finding the students to take the course.

In order to make this work across the institutions we have set up a WordPress site to hold our materials and lay out the common syllabus and week planner for students. You can find this at https://citylababz.wordpress.com/, which will hold resources and materials about the course as well as updates about what projects are being worked on each term.

This has taken longer than expected, but is still just as exciting as we’ll be charting new areas for both institutions and leaving lasting results. All the while we’ll also be bringing design ideas to the people who need them in our institutions, as well as also spreading design ideas to students, who didn’t realise they needed them to help them develop better careers for themselves too.

I’ve been using variations of a StrategicPlay taster session using Lego Serious Play for a while. Last year I devised an open ideation game,which became our CodeTheCity Ideation Toolkit. Last Friday (6 November 2015) as part of the Open Data Scotland event we ran the ideation session in the morning and a StrategicPlay session near the end of the day using Lego Serious Play. We had most of the same people at both sessions. Both sessions were done in the same space, which wasn’t ideal as it was too loud for people to hear each other well when talking to the whole group.

The ideation session went fine. However, because of the room acoustics we didn’t time box the parts as well as we normally do in the workshop. This meant that we had some teams spending more time discussing options than others, who progressed well. We might’ve left teams drift for too long in deciding what they were doing, which might’ve worked better with more rigorous time boxing. The room acoustics made this workshop harder to run than normal. As facilitators we found ourselves regularly roaming between tables to check on their progress as it was the only way to ensure they heard the instructions for each stage. The poor acoustics also meant it was harder for teams to feed back to the whole group, and we only ended up with one iteration instead of several, which is the ideal process for this workshop.

The StrategicPlay session with Lego Serious Play ran smoothly with the challenge statements being focused on what open data challenges people faced at work, identifying the key issue in the challenge and what the simplest thing to try as a step towards a solution might be. This session worked well, although people were getting tired, which slowed down the building as participants talked more. Given that part of the session goals was the sharing of stories, this was perfectly fine.

Near the end of the session someone, who’d been to both sessions suggested that in the future we should combine the two sessions together. She found the use of Lego Serious Play helped team bonding as people relaxed with one another as theyshared stories. This, she thought, was missing from the ideation session, which meant it was harder for the team to form ideas. It occurred to me later too, that every other time we’ve used the toolkit, we have probably done so in groups where most participants already know one another.

A combined session would be more useful for a number of reasons. While a combined session might take longer, which isn’t always an option, we can embed a short StrategicPlay intro to the ideation session so that people are sharing stories, which helps them orientate themselves more easily. The goal would be a session where strangers quickly relax into the safe space that play opens up, so that they can explore the open data themes and ideas in the session together.

This sounds like a good idea that should be trialled next time we run a CodeTheCity Ideation session. Time to think of another workshop I think.

I am presenting a talk on how to use ‘becoming comfortable with uncomfortableness’ as a growth strategy at Lean Agile Scotland 2015 in Edinburgh. I’ll add more to this for later, but this will work for now.

This is where you can find edited the slides, from the presentation – now without the errors of the event 🙂 Those really were an accident, but did work well for the session as they were my own failures in the heat of the session.

These are the sources I used while developing the ideas over the years:

Scott Adams, How to Fail at Almost Everything and Still Win Big

Jules Evans, Philosophy for Life and other Dangerous Situations

Andy Hunt, Pragmatic Thinking and Learning

Daniel Kahneman, Thinking Fast and Slow

Kelly McGonigal, Maximum Willpower: How to Master the New Science of Self-Control

Steven Pressfield, Do the Work!

David Rock, Your Brain at Work

JulienSmith, The Flinch

Mark Williams and Danny Penman, Mindfulness: A practical guide to finding peace in a frantic world

I was able to use my CoCreAct training in a workshop I facilitated yesterday for SoapBox Collective for their World Changers Innovation Challenge. The event had started on the Saturday, but my part was on the Wednesday when the students would be ideating and then prototyping their challenges. The focus on the event was to explore how they could help reduce the 1million lives lost each year through infection at childbirth by focusing on getting people to wash their hands more, or the help improve the maternity units for childbirth in Sub-Sahara Africa.

Using the CoCreAct process helped me set up a very exciting and useful day for the students, the others helping me with the teams, and the business mentors and judges who came along later. The steps you learn in the process isolate what you’re trying to achieve at each stage and ensure through useful suggestions how you can do that.

I established the challenge statements with the organiser, and then worked my way through the steps to craft a good event with suitable ‘bursts’ during the brainstorming process to help get more ideas out of the students. It was a pleasure to see the effect each of the ‘extras’ had on the participants. Role storming was great and the volunteers had fun, while the forced connections with cards was also very good at eliciting more ideas too.

It was a great day. It took longer than expected, but that was ok too. I can work on the timings and keeping people moving forward with more practice. The organiser was happy, the participants were happy too and I was happy with the result too. Tired, but happy.

In the spring Jo Holtan and I got talking about http://citystudiovancouver.com over lunch at the beach in Aberdeen. Matt Lowell had told her about this idea as part of their CycleHack adventure since he’d moved to Vancouver. We thought this would be a good thing to do for our respective institutions: University of Aberdeen and the University of Edinburgh. Some discussion got going in Edinburgh, and I ran with the idea in Aberdeen.

For my part I sounded other people out about the idea to see what they thought of this notion. The idea in a nutshell is this: students work with a team from the local city council to develop sustainable projects, which can be either continued by the city, or which are developed with support and help from a city partner, who then takes over the project. The goal is to have students develop their entrepreneurial and soft-skills in multidisciplinary teams over the academic term.

Everyone I spoke to at the university liked the idea. The next step was to sound out people I knew at the council to see what they thought about it. They also liked it, so I moved onto the next phase of gathering the academics together to see what we could do next. Everyone met each other and we found that we had someone from each college. Wow. That was impressive, and we decided to move forward and to quietly pilot this in the next academic year, and that I should continue discussions with Aberdeen City Council to see what we’d need to do to put it into place.

Over the summer I met with various ACC people and it was run up the rungs to see who could approve this. it got to the Transformation team and stopped. They said “yes, let’s do this.” We met them at the right time as they were looking to bring in university students to help with innovation in the council. Their legal team also saw no problems with the idea either.

Discussions with potential students also went well and thought this would be a good optional course. They could get experience while also developing further skills in team work in a live client situation. Their main concerns were about teamwork, assessments and similar issues.

Our plan to bring this in under the radar haven proven elusive as we couldn’t find a way to do that using any of the current courses on offer a the university. This means we need to start this year with a voluntary scheme, which takes some of the pressure off to have everything ‘just right’, which is part of the reason we wanted to pilot the idea in the first place: so we could learn by doing to uncover the hidden issues of delivering the course.

Further discussions with others experienced in working with councils and governments told me this was also a good idea, which should be pursued too. They also said that we should not look for big, bold ideas either. Within councils things move slowly, so any change for the good, no matter how small is seen as a success. “Judge things by their standards, not by what you would hope to achieve” they said. From within the council they are starting from a different point, than you. I must remember this.

To that end we’ll hopefully be launching this new idea as ‘CityLab!’ in September with a group of volunteer students. To guide the students through the creative process we’ll introduce them to service design and human centered design approaches. And, ‘hey presto’ we’re back in the territory of Snook and Sarah Drummond’s ‘do tank‘ of delivering ideas back upstream to government. 🙂

I’m really excited about this and look forward to see where it goes. There is so much potential here.

Since leaving Hamburg the last time in 2012 after my StrategicPlay training as a Lego Serious Play facilitator I have been meeting Katrin Elster each year at Play4Agile and always been impressed by her sessions, and the ideas we’ve talked about at meals and in the bar. For a while she’s talked about a ‘new’ training workshop, and I’ve always asked ‘when?’. Finally… finally, this year she agreed to set a date for me and a colleague, who I brought with to #p4a15 to come to this new ‘CoCreACT’ training workshop. Woohoo! This was exciting stuff. Katrin was going to be leading a small group of trainees through their paces in learning how to best facilitate creative problem solving sessions.

The programme for the three days didn’t say much, and if you didn’t know Katrin, you might think ‘meh, I know this stuff’. There’s expected topics on creative problem solving, and even the four d’s of design: discover, design, develop and deploy along with the double-diamond. You can find all of this in books, and probably on YouTube too, if that works better for you. You’d be wrong thinking that was all there was to one of Katrin’s training workshops.

As with my StrategicPlay training with Katrin I had read any and everything I could find about the process, and I had run a few LSP sessions too. Similarly, I’ve been using various creative problem solving approaches, organising and facilitating co-design sessions and Global Service Jam events alongside running sessions with students. All of this was familiar territory. I’d done my homework and the extra credit stuff on Simplex creative problem solving process too.

Despite this, I was willing to put my money down for training. I also and had faith that my colleague would be satisfied with the training too. She’d only met Katrin at #p4a15 and had participated in a few LSP sessions that I’d run. My faith in signing up for this workshop was based on this: I came away from the LSP training going WOW! She had put all of the bits I knew into perspective, and added more on top of this. Katrin is a master trainer, and knows how to make a training session feel like you’re effortlessly learning while working.

I trusted that this new ‘CoCreACT’ training would be of the same standard: that at the end of each day my head would hurt from all the new things I’d learned I’d done. I knew I’d be using a ‘learning by doing approach’ in a small, safe environment where I’d be challenged in a fun, supporting manner. Yes, I’d have to work, but I’d also have fun while working. I wasn’t disappointed.

The first day you learn the process and apply it to a problem of your own. You also explore your own preferences for how to solve problems so that you’re aware of blindspots you may have in the process, and thus don’t overlook them. the second day you work as a team on a few problems and see how this all works in a larger group. The last day participants are leading sections of the process. So you go from walking through the materials to running with them
by the end of your three days.

All of this training is done in a highly tactile, collaborative and supportive environment, which aids the learning process. There are worksheets to write on, Lego bricks scattered around for you to finger with while you’re listening; but you’re never sitting for too long in any case as you work through energisers and brainstorm ideas writing on hundreds of Post It notes while on your feet. Then there is all of the wonderful food and drink, cake and endless coffee or tea too. All of this combines to make for a stimulating learning experience where you comfortably grow into the role you wanted for yourself by the end of the workshop. You came to gain more facilitation experience, and that is what you’re practicing by the end.

During the training you’ve made more friends with your fellow participants too. There were six of us in this workshop. All but one had previously done the StrategicPlay LSP training with Katrin. My colleague, hadn’t done this. It didn’t slow her down or hinder her and she grew in confidence with the training too. By the end we six had spent days together and
shared many a coffee, croissants, lunch and drinks, and blended into a nice team. This is the same thing that happened the LSP training too. There, as here, I knew some participants, but we all got on well together and were friends by the end. The mix of the food, drink and the training plus Katrin’s coordination and training magic make it all happen.

So, go take part in Katrin’s CoCreACT training workshops. You will learn lots, even if you think you might know some of the materials. By attending you’ll gain the insights of someone who has worked out a process that blends many of the ideas and steps together into a well-structured whole so that you too can use this process later as second nature, and always wonder why you didn’t notice these little things that help make it all come together so much
easier and better than before.

And my colleague, was she happy with the time and money spent on this training? Did she still trust my judgement on these things? Prior to coming to Hamburg, at the end of Play4Agile she
said we must go to Play4Agile North America as that would be useful and help her development as a facilitator. Now she says that can wait. She wants to return to Hamburg for three days of StrategicPlay Lego Serious Play facilitation training. As I thought, she did enjoy the training and found it useful for her work.

I participated in Volume 10 Pecha Kucha Night Aberdeen and talked about engineering collisions for student experience. While the topic came to me easily, it was surprisingly harder than I thought it would be to craft ‘the story’ that held the slides together in a way that didn’t feel like a lecture. The titles for slides came fast enough too, and so did the images from @gapingvoid, which have always appealed to me and lent themselves well to the topic and the occasion.

Just start speaking about your next slide; it will likely appear midway through your first sentence. This makes for a more polished presentation rather than pausing for a few seconds to wait for the next slide to appear.

This helped the format make sense and I then understood why the stories I’d seen at other PK events worked so well. From here I could use the usual ‘Make it Stick’ plus ‘Beyond Bullet Points’ approach that I use for presentations and pull it all together and then practice, practice, practice so that I could deliver it without notes.

My goal was to set up a workshop so that people could ‘work the materials’ and leave with some useful skills to start them on their way. While I wanted to use this with my computing students so that they could deal with team members better, I also knew that I’d have good audience at Play4Agile 2015, so tried my prototype workshop there.

The workshop went ok. People liked the idea, and offered very useful feedback. This is beauty of unconferences: you can present your ideas, and know that you’ll get feedback you can use.

So, after modifying the materials, and the approach of the workshop, I tried it again today with students. I created a deck of cards with the ‘rules’ and ‘tools’ from Crucial Conversations and had a handout for them to take away too.

I started with letting each table look over a deck of five cards, and discuss them in general for a bit. This meant they could talk in safety of their group. Then after five mintutes or so, I opened it up to the group for people to say which cards resonated with them the most, or other comments about the cards.

This was followed by trios of students with one using a card to guide their discussion with someone in a difficult scenario, while the third person observed the situation. After 5 minutes they can stop and discuss how it went with the observer, offering their view too. We did this with four chosen scenarios and it all went well. I will definately try this again, and will also see about getting some better designed cards done too.

The card templates can be printed and glued to playing cards or similar, and the handout offers the background and scenarios you can work through too. If you use them, then please let me know how they work for you.

I’ve been working on a live project recently and found it necessary to see what was happening on the Heroku version as it was running differently from my development machine. Saying ‘it works on my machine’ doesn’t help the people trying to use the site, so I had to delve deeper and work out a routine to ensure I was both finding the problem, and also fixing it correctly.

Oh, it goes without saying, try to get Postgresql running on your dev machine.

The short answer is to use something like the following steps when developing sites to run on Heroku:

a) get code with tests working – be sure to use capybara as this will save you hours of time as you repeatedly run the tests. For this project I was spending about 30 seconds running through a number of tests on the site to see that pages loaded correctly, and forms did what they should do too. Running them by hand would’ve taken at least 15 minutes or longer each time, and I would be so board too.

b) pull down heroku db and add to postgres using pg:pull commandhttps://devcenter.heroku.com/articles/heroku-postgresql#pg-pull which means you can pull down the postgresql database and install it into your locally running one and then swap out your ‘dev’ database to use this one and see what’s missing, or whatever.

c) add anything new there to file that loads your test, and/or live data into the database.

d) check all runs ok on dev with db from heroku

e) when ok, then load your data into test database

f) upload to heroku – including db data if necessary checking with heroku logs command as needed. This lets you see what fell over and wasn’t running as expected.

In March 2014 I ran a workshop on developing student-run software houses for the HEA at London Metropolitan University in London. The day was broken into two halves with the morning devoted to short case studies with plenty of time for questions, and an afternoon of hands-on workshop starting with Strategic Play session using Lego Serious Play to let people think about their own situation followed by a wider focused World Cafe style approach to our main questions. This worked well for our twenty-five or so participants.

The seven short case studies meant we had at least one look at each of the four ‘live client interaction models’ I’ve identified at different universities. The ones in bold presented for us.

Model one focuses on the degree with a core live client module for all students (Durham, Lancaster, Sheffield Hallam and Aston)

Model two starts small when someone offers services to community supplied by students across discipline or university (Aberdeen, Greenwich, Worcester, Plymouth and Chester)

Model three is an umbrella where a commercial and entrepreneurial unit organises activities (Edge Hill, Hull, and Napier)

Model four is a commercial unit where a manager liaises with live clients and organises students as staff, or as freelance developers (London Met, Southampton Solent, Kent and Sheffield)

The afternoon sessions started with the warm up using StrategicPlay approaches using Lego Serious Play with each participant reflecting on their own situation by building models to share with others at their table reflecting these questions:

what is your biggest challenge to the next step of starting, or developing further, a student-run software house

add how will you have overcome this challenge in the next six months?

The goal was to have people reflect on their situation and take in what they’d learned from the morning case studies and general discussion over lunch. The next step was to widen out the discussion using a World Cafe approach that addressed these four questions:

What might the ‘next level’ look like at your institutions?

What don’t you know that you wished you did know?

What is holding you back?

Where do we want to go?

We gathered the results on sticky notes on flip charts which have now been collated here.

What might the next level look like for our institution?

Sticky notes say:
HR/finance/IT/legal departments informed and engaged
IP and contracts
IT support?!
senior management support
investent in future
long-term planning, sustainability
visibility internally and externally
Plan B
more staff involved
greater engagement of staff
incentives for staff to engage
train students to do some work for staff autonomy

enhance first year lead in
opportunities to engage at every level capture results
opportunities both inside and outside curriculum
separate or linked?
graduate/industry mentors
external clients
curriculum keeping pace with industry
guessing the next gen.
maintenance/support ‘surviving the summer’
working around inertia

How might we achieve this?

Sticky notes say:
motivate by linking to drivers – employability, income, student satisfaction
reward staff appropriately
enthusiastic staff members setup team – perhaps as their own loss of time initially
less talk, more action
academics working in collaboration with software specialists
find large org’s in local area that would support idea and business costs
get external partners
focus on lean and agile – reduces risk
specialised contracts
research orientated software solutions
marketing
transubstantiation
make initiatives self-financing
institutional mandate to support this including legal, finance, etc
departments recognise value of this and willingly invest money
skip the university – set it up externally!
seek approval/support from relevant departments. exchange knowledge with similar schemes
students develop own ideas initially!

What’s holding us back?

Sticky notes say:
support from university service teams, e.g finance, legal, etc
buy-in by key people
lack of sustained support from senior decision makers
sustainable future and proof planning
visibility for the university’s programmes
increased pressure on staff time. Limited staff resources
incentive misalignment (workload reluctance)
the contractual process ->timeliness
equipment
space: labs, group working areas
IT services
structure for this new initiative
industrial involvement (of the right type!)
mindset
assessment strategy
good infrastructure needed
VLEs
(small?) numbers (of students), lack of vitality, feedback (about how we are doing), atmosphere
quality assurance
managing TA support
can we deliver what client’s want? within budget, timeline, etc?
module descriptor and latency issues
getting the right type of students and staff on board
varying skill base of students
how to get the first project out?
visibility for students (student motivation)
management: unreasonable expectations and promises

What don’t we know that we wish we knew?

Sticky notes say:
how to engage less-able students safely in outreach-like activity
how do we group students?
engaging with mid-range students
is here an unaddressed market for ‘safe’ student activity? (i.e. not addressed by existing business)how to identify bad projects (and clients)how to identify good projectshow to combine live projects with rigorous assessment efficientlyuse cv* to filter the type of students and not necessary be a cvstudents do not get paid in many successful caseshow much trouble will I get into if i short-circuit university procedures?things that active software developers knowfuture skills to demandwhat barriers to entry prevent students joining software development teamsbetter lead and networkingcosting and planninga fair commercial contracts that is business, not ‘academic’when IP is given away. Should source code be accessible by client, or just the final product?

Where do we wish to go?

Sticky notes say:
Happy students (NSS)
flexible and adaptable studentsdevelop confidence in students by giving them positive opportunitiesgenerating good quality professional [students?]generating successful studentsgood score DCHE (festinate of leavers in higher education)enable students to develop skills that industry want
internshipsmaintain links with former studentscraftmanshipcatching the next wave (wearables)happy, satisfied customersmaintain connections with industry (be in their little black book)will develop good reputation with industrya successful cooperation with industryassist local companies
able to adapt quickly to changes (in IT industry, HE, accreditation, etc)grow talent pool in the UKcross department linksease of implementation of programmesease of assessmenthave funutopiaefficient resourcingshowcase researchgenerate incomeimprove overall reputationspin-outsfeedback in connection with modules and programmesmanage numbers realisticallydepends upon obstacles in your way?

Pulling some of the thoughts together across these boards we see recurring themes:

Support from higher levels of the university, and coordination with other important departments like finance, legal and human resources as well as IT. In order to make this work smoothly each of these aspects needs to be addressed.

Support and recognition for the time and effort in managing these projects with students, and possibly some sort of incentive beyond this to encourage more staff to participate in these programmes too.

The difficulty in finding good students to participate, and levelling up those who are willing but lacking some skills to work on these types of projects.

So there is still more work to be done here, but we’ve made a start. There is also intention from the workshop participants to move ahead with this work. To start with the JISC mail list STUDENT-LIVE-CLIENT-WORK has now been created for those interested in talking about this more and keeping in touch. We look forward to hearing from you.