Functional Workplaces: University of Cambridge’s Winton Centre - Using Clojure to Find Better Ways of Communicating Numbers
In our Functional Workplaces series, we’re usually interviewing companies that use functional programming languages commercially. This time we spoke with a team that uses Clojure for a more altruistic purpose.
To make good decisions, we all need good evidence which is clearly communicated. At the Winton Centre from the University of Cambridge, they work with institutions and individuals to improve the way that important evidence is presented to all of us. And they are using Clojure to help with that.
We recently chatted with Alex Freeman, the Executive Director at the Winton Centre and Mike Pearson, who is the Technical Lead, about the captivating work they do.
Tell us more about the work you do at the Winton Centre for Risk and Evidence Communication.
Alex Freeman (Executive Director): As a Centre, we were set up towards the end of 2016 due to the generosity of a philanthropist, David Harding. He had a mathematical background and had long been frustrated in the way that numbers were misunderstood and miscommunicated in so many important fields. So he funded this new Centre at the University of Cambridge to research the best ways to communicate numbers, and help professionals do it.
Our focus is on communication ‘to inform and not persuade’ - so, how to help people understand evidence and not ‘spin it’ for them to try to get them to believe a certain thing or behave a certain way. When I came to the Centre as Executive Director, my background was as a professional communicator, and it was a surprisingly different way of thinking: gone is ‘the take-home message’ and ‘how many people did x as a result?’ - we measure our success in how much people feel we’ve helped them make a decision, whilst we don’t care what decision they’ve actually made in the end.
A lot of our work is in healthcare - helping patients make decisions about treatment options (with proper informed consent), but we also work to help journalists understand and report numbers well, with experts in legal setting presenting forensic evidence fairly, and in other fields as well.
There are currently around 13 of us in the team - a mixture of psychologists, professional communicators, statisticians and software engineers.
Mike Pearson (Technical Lead): Technically we support the centre by providing its web site, but perhaps more importantly, we develop a number of risk communication apps by collaborating with the psychologists and researchers in the team performing user centred design. This is very much an iterative process.
What projects are you currently working on and what are you trying to achieve as a result of your work?
Alex: Across the team we’ve got a lot of projects on. During the pandemic we’ve done quite a lot of COVID-specific work, supporting institutions who have data that they need to communicate to decision-makers (both policy-makers and the public). For example, we made visualisations to help people see both the potential harms and benefits of the Astra-Zeneca vaccine when the issue of specific blood clots related to vaccination arose. In our healthcare work we’re working on a number of risk communication tools for use by patients and clinicians, and also on better reporting of test results, especially in genetic and genomic testing. Outside of healthcare, we’re in the midst of a big project to help communicate the risk of earthquakes in a range of European countries. Across all of our work we also have an emphasis on improving the communication of uncertainties, including about the quality of the scientific evidence underlying numbers. With all our work we aim to provide trustworthy and useful information to anyone who has an important decision to make.
Mike: In the technical team at the moment we’re continuing to make improvements to our Predict: breast cancer (breast.predict.nhs.uk) and prostate cancer prostate.predict.nhs.uk tools, which are currently used over 35,000 times per month all over the world. These include many small text clarifications and additional caveats so patients do not use the tools when they shouldn’t. We’re also making the code data-driven so we and others can generate new risk tools using this same code base.
We have supported some statistical visualisations of Covid by provisioning R servers, and we also provide an app (realrisk.wintoncentre.uk) that helps journalists understand scientific press releases so they can write about risk without falling into the common miscommunication traps.
Why have you decided to use Clojure?
Alex: Definitely a question for Mike! Whenever I talk about Clojure I mostly have to spend time spelling it for those not familiar with the term….
How has this impacted the work you’re doing? Any advantages or trade offs as a result of using Clojure?
Mike: The main problem with Clojure is that it is still a niche language and hiring is therefore hard. Other than that, it’s all positive - especially now that we can extend the same language to system management through scripting with babashka. It covers all the bases.
As a developer, there is a lot of financial incentive to join commercial businesses, how would you incentivise people to join this team as a career path?
Alex: There’s a point in everyone’s life when they need to focus on their earnings, but I think for a lot of people there is sometimes also a time to prioritise other aspects of one’s work. What I find so gratifying about what we do is the direct impact it can have on people’s lives - particularly at difficult times. We are providing tools to help people make life-changing decisions, and they as the users are the only driver of what we do. We have no commercial interests at all. I love being able to focus on that one thing - no competing priorities of time, money or company profile. And because we all have the one focus within the team, I think it makes us a cohesive unit - everyone’s working towards the same end.
The most rewarding thing for me is to look at the analytics pages and see our tools being used in clinics all around the world, and know that each of those dots on the map is someone getting the best, most up-to-date data possible to help make their decisions, wherever they are in the world and whatever their resources. Then, quite often, we get lovely notes from patients: handwritten letters from cancer patients tell us what a difference it made to them, at the worst point of their life, to have clear and trustworthy information about their options. Just one of those makes all the work worthwhile.
We also have weekly team meetings where everyone shares what they’ve been up to - whether that’s teaching 400 hundred public health professionals in Latin America, having meetings with the UK government, or getting some results in an experiment to see how people understand error bars on a graph - you get to learn fascinating things that you’d probably never have thought you’d hear about.
On top of that, if you come to work in the city of Cambridge, it’s a beautiful place to be!
Mike: I should add that clojure and clojurescript engineers are in high demand. Because of the shortage, many companies will offer on-the-job training. I’m not sure I entirely believe the frequent surveys that put clojure programmers amongst the highest paid - I suspect that is weighted by a small sample size, and the fact that financial institutions are leading the pack of hirers. But the surveys are there, so make up your own mind!
Is there any way people can contribute/get involved in the work you’re doing?
Alex: We’re just finishing hiring for the technical team for the moment, but everything we do is Open Source, and we have public GitHub repositories. If you’re really interested in our work, in any capacity, then do get in touch with us. We may not have jobs available, but we’re always here for a chat (Mike may not like me saying that….!)
Mike: We do find it difficult to find the right people. Think differently. Don’t follow every developer fad. Think things through and find your own way. If people did that more I suspect we would have a bigger developer base to hire from.
Mike: No - I’m fine with chatting, Alex! I’m often looking in on Clojurians Slack and the London Clojure meetups so you can reach out there.
Thank you Alex and Mike for giving us a glimpse into the exciting work you’re doing, I’m sure you inspired many people to get involved!
Sign up now and apply for roles at companies that interest you.
Engineers who find a new job through Functional Works average a 15% increase in salary.Start with GitHubStart with TwitterStart with Stack OverflowStart with Email