Making Sense of 100 Years of NYC Opera with Python

10:30 AM - 10:55 AM on July 17, 2016, Room CR6

Suby Raman

Audience level:
novice

Description

In late 2014, I discovered that the Metropolitan Opera of New York was maintaining a database of their performances, stretching back over a hundred years. As a classical composer and Python fanatic, I immediately sensed that there were potentially amazing stories hidden in this data. Using asyncio, SQLAlchemy, and BeautifulSoup, I got to work making sense of the database, and eventually posted some surprising findings. The article caught fire in the classical music world, receiving mentions in mainstream outlets like the Washington Post and New Yorker. In this talk I will discuss my technical approach to handling the data. I will also discuss the social importance of Python as a basic research tool, and I’ll make the case for teaching Pythonesque programming to artists like myself.

Abstract

In late 2014, I discovered that the Metropolitan Opera of New York was maintaining a database of their performances, stretching back over a hundred years. As a classical composer and Python fanatic, I immediately sensed that there were potentially amazing stories hidden in this data. Using Python I immediately got to work making sense of the database, and eventually posted some surprising findings. The article caught fire in the classical music world, receiving mentions in mainstream outlets like the Washington Post and New Yorker. In this talk I will discuss my technical approach to handling the data. I will also discuss the social importance of Python as a basic research too.

The talk will be structured for all levels of experience. I will start with some background about the Metropolitan Opera database, and why it provided such major insights into American art culture. I’ll then give an overview of the Python tools I used, like asyncio, SQLAlchemy, and BeautifulSoup. I’ll discuss the challenges I faced when attempting to parse and make sense of the database. I will give code examples of how to potentially speed up your own efforts in web scraping and data analysis. I’ll conclude with the reaction I received from fellow classical musicians and the national media, and present a case for teaching Python to arts students like myself.