Phillip Brooker is a Senior Lecturer in Sociology at the University of Liverpool, with interdisciplinary interests in and around ethnomethodology and conversation analysis, science and technology studies, computer-supported cooperative work, and human-computer interaction. On the platform of a record of research in the emerging field of digital methods and social media analytics (having contributed to the development of a Twitter data collection and visual analysis package called Chorus (, Phillip’s current research interests lie in exploring the potential for computer programming to feature in core social science research methods training, and in creative applications of computer programming as social science research. Phillip also convenes the Programming-as-Social-Science (PaSS) network (

This course aims to teach social science students skills with computer programming in Python, via: taught sessions on the role of programming in social scientific work applicable to both quantitative and qualitative perspectives; technical sessions on core Python concepts (e.g. variables, flow control/logical statements, structuring objects together, functions, loops); guided group exercises deploying these skills in small-scale projects; a larger-scale independent activity to be carried out in groups organised around applying the core Python concepts in one of a selection of genuinely relevant research-related activities (e.g. web-scraping, data mining from social media, visualising data), and; discussion sessions to pace progress and explore potential domains and uses to which these skills can be applied.

Participants in this course will gain skills with the use of Python programming and experience applying these skills to specifically social-scientific concerns relevant to their own interests. As part of this learning, participants will also be positioning themselves to begin to explore and engage with a range of innovative fields and disciplines at the forefront of social science and related areas (Big Data, computational social science, data science, etc). Additionally, the discussions built into the course will help students explore creative ways to apply a programming mindset to research in the social sciences beyond the more immediate applications such as grabbing and visualising digital datasets (e.g. building social bots, games as research tools). The teaching and learning in this course provides researchers with a background in Python programming as a digital method/methodology, which may then go on to inform future independent research projects (dissertations, theses, publications, etc).

Participants do not need any prior knowledge of computer programming before starting this course. However, participants will need to come to the course having reflected on what they hope to get out of learning to program in Python as a social scientist, including thinking about potential projects they might ultimately wish to undertake. Participants are also required to come to the first session having already installed the latest version of Python 3 on a device on which they have full administrative rights (i.e. can install their own software). Guidance will be provided on the installation process, though participants will need to have Python installed and working prior to the first session as the tight schedules means it will not be possible to address technical issues on installation once the course begins.