Python Bootcamp: Coding For, and As, Social Science
In the last few years, there has been a decline in the hype which once surrounded ‘big data.’ This could easily lead one to conclude that a fad has passed, but the reality is that we have entered a stage where we are grappling with its practical implications, rather than breathlessly greeting its arrival; a kind of Kuhnian move from a period of “paradigm shift” to the mundane business of “normal (data?) science.” The ubiquity of digital systems means that increasingly large swathes of human activity generate transactional data facilitating powerful and innovative ways to describe, analyse and explain social life. Even if much of this data remains locked behind commercial confidentiality, it is no longer tenable to imagine that the social sciences can remain the same. However, engagement with these opportunities has been uneven across the social sciences.
There is however enormously rich and creative research being conducted within these various disciplines, often illuminating the limitations inherent in the account of digitalized social life, which the empiricism of data science and formalism of computational social science tends to generate. But their development has been inflected by the availability of technical expertise, with coding skills – the means by which different types of engagement with digital social life might be made – being more likely to be found amongst those at the leading edge of applied statistics, than social scientists working in qualitative or theoretical ways.
It is simplistic and dangerous to frame programming as a panacea for the social sciences. But, outside of the field constructing tools with computer code is already a vital tool for responding to emerging concerns. Taking Twitter bots as one example, we might point towards the @BotRevoke Twitter bot which provided live updates on the number of signatures of an anti-Brexit petition, so as to avoid unnecessary traffic to the petition website that might crash its server, or the @WhitehallEdits account which tweets notifications whenever a Wikipedia page is edited from an IP address within the British government computer network as a means of highlighting otherwise invisible shifts in public discourse. As such, incorporating programming skills into the core research methods of the social sciences has the potential to be transformative in how we understand and intervene in the world in all sorts of ways, far beyond just the deployment of social bots. For instance, deriving and working with new forms of data, designing new methods of investigation, building critical data visualizations, finding new ways to speak with ‘research participants’ and so on.
A cursory search suggests there have never been more companies and organizations promising to help you learn coding skills. App stores are full of attractively designed tablet and phone apps which claim to be able to teach you coding skills. Web based training services like Code Academy offer more intensive lessons. YouTube is also filled with instructional videos and edifying discussions about the challenges involved in learning to code. Even Universities have latched onto this, by investing in 'open educational resources' and 'massively open online courses.' However these training platforms can be tiring to negotiate on your own; it is hard to stay engaged when you have no real way to evaluate your progress, or apply the skills you have learned in work that is relevant to you. Coding skills camps present another alternative. However, they can be prohibitively expensive, particularly when participation is a supplement to existing work.
What is perhaps more significant than any of these issues however, is that neither route offers specific support for social researchers. Even content aimed at academics is usually orientated towards the general learner, because it has been produced with a view to making academic knowledge available online, as opposed to helping academics learn skills which they need to thrive as researchers in a changing environment. Life within an accelerating academy also militates against learning new skills. Training provision within universities is often sporadic and general; outside of universities it is often specialised and expensive. In sum, there is an increasing demand and role for computer programming skills in the social sciences, which is not met adequately by existing structures.
To this end, alongside the National Centre for Research Methods we have organised a “Programming with Python for Social Science Bootcamp” in October 2019. Details of the bootcamp and the application form can be found in the link below. The bootcamp is a four-day residential course, aimed at academics and postgraduate researchers across the social sciences, who wish to develop skills with computer programming as a research method. The event will provide participants with not only programming skills (i.e. the “how” of programming), but also explore Python as a tool that can be creatively applied to problems in the social world (i.e. the “why” of programming as a social researcher).
The bootcamp is designed to take participants from absolute beginners to being able to use Python as a tool in their own research activities, in a collaborative and friendly environment. The bootcamp also aims to kickstart collaborations and projects that will foster an emerging network of social science programmers and provide opportunities for them to continue developing their skills beyond the event. Even though learning Python will be at the heart of the summer school, our focus will be on programming as social science more generally. Programming offers a multipurpose toolkit and its application is a much a methodological matter as how to use the familiar methods which predominate within the social sciences.
The generous support of the National Centre for Research Methods means the event is free, including accommodation for those outside of the Manchester area. We are already significantly oversubscribed for the bootcamp and therefore we are keen to hear from applicants about their plans, projects, requirements and concerns; in short, how they think programming will fit into their current and future research activity. If we can make the acquisition and application of Python (as a new skill that complements our existing approaches to research) a collective process, confronted creatively by a whole range of social scientists, it becomes much easier to integrate this skill into our work and disciplines, and help nurture it going forward.
Readers interested in applying for a place in the bootcamp can find further details on the event itself and the application process at: https://www.ncrm.ac.uk/training/show.php?article=9852.