This semester I enrolled in LIS452, “Foundations of Information Processing.” I am learning Python. I’m learning how to code! This was not a skill I expected to pick up in library school. Nor was it something I thought I would enjoy, given my background in the humanities. However, this class has quickly become a cherished favorite. Learning Python as an aspiring librarian challenges my assumptions about what it takes to code and what it means to be a librarian. Before I was able to get to this point, I confronted several myths about coding. Library school was the right place for me to banish the following assumptions:
- Coding is a boy’s game
- Coding is hard.
- Coding and librarianship don’t mix.
Myth #1: Coding and librarianship don’t mix.
Before registering for LIS452, I had a difficult time justifying my choice. There are only so many classes I can take out of the dozens offered each semester and my comfort zone has always been in the humanities (more on that later). At face value, coding seems like it has nothing to do with librarianship. And yet, programming courses taught by LIS faculty at the LIS school (i.e. not outsourced to computer science departments) were prominently featured throughout the year.
Based on my previous work experience, I also knew there was something important going on at the intersection of the coding and librarianship. In my graduate assistantship last year, I had the pleasure of working on a mass digitization grant in which we digitized hundreds of thousands of newspaper pages. Coming into this position, I knew I needed to be comfortable with microfilm and historical newspapers. I didn’t realize that understanding a coding language, and more importantly, being able to communicate about the coding process would also be critical.
I remember one instance in which a patron brought to our attention an error in a newspaper we had recently digitized. In order for it to work, a specific line of text needed to be updated in about 300 different files. The Preservation Services unit had recently hired a programmer for exactly this sort of task, but because I lacked an understanding of how to talk about the digital file format, I struggled to explain the problem. As a result, our programmer (patiently) took time of out his day to meet with me and figure out exactly what the project needed. Once we were able to establish a solution, he wrote a script that fixed the problem in minutes, whereas the same process would have taken hours to correct by hand (and be infinitely more prone to error).
I’m positive this sort of miscommunication happens all the time. As libraries continue to increase their digital collections, the more critical it will be to employ librarians who are able to communicate with those who both use the collection and maintain it over time. So, despite my own assumptions about both library school and programming, I took a risk and enrolled. I’m so glad I did.
Myth #2: Coding is hard.
Coding isn’t hard. Coding is actually quite simple. Your script either works or it doesn’t. In the humanities, everything is subjective. The integrity of your work is often evaluated on how convincingly you argue your point, draw upon appropriate theories, cite the relevant sources, and eventually draw conclusions that are simultaneously novel and grounded. If anything, it’s my background in the humanities that makes coding such a charming and refreshing endeavor. Learning to code challenges me to think about problem solving in a new way.
At its core Python is a programming language. When you learn Python, it’s like learning any new language. Ultimately, you’re learning grammar and syntax. You will sharpen your ability to recognize patterns and discrete elements. And as with any new language, it requires a certain amount of faith. You must believe there is both creativity and logic behind that initially appears to be foreign. It requires critical thinking. And in my personal opinion, it requires a good teacher. This goes back to what I said earlier about being able to communicate. When I learned there was an opportunity to learn Python with a faculty known for their positive reputation among students, I jumped at the chance. With strong faculty and the right attitude, coding doesn’t feel hard at all. It’s exciting and new.
(sort of) Myth #3: Coding is a boy’s game.
There are countless studies telling us what we already know–women do not acquire programming skills at the same rate as men. This idea that “coding is for boys” is the most difficult myth for me to grapple with, because on some level it is still very true. Despite wanting to live in a post-gendered society, I still live in gendered society. Preconceived ideas about gender and work are still powerful forces that dictate professional choices about education and career, to some degree. And by the way, this works in both directions, shaping our beliefs about both women and men in the workplace.
So to acknowledge that computer programming is a gendered activity also means I need to come to terms with the fact that library school is a gendered space. As a cis-woman in library school, I get the privilege of being in the majority. Going into this class, I knew on some level I wouldn’t be the only woman in the room. I could take risks and I wouldn’t be representing my entire gender if I made a mistake. But here’s what I didn’t expect: my Python class is the most gender-equal class I’ve taken since starting library school. It’s the only class where women don’t outnumber men four-to-one.
So while the realm of coding may still be male-dominated, my Python course in library school is the closest I’ve seen to gender parity. This is not to say that gender in the classroom is invisible or without issue, but it does give pause to consider what possibilities lay before us when aspiring coders/librarians find themselves in the same room, typing away at shared command lines.
tl;dr Consider taking a more technical class in library school. You may surprise yourself.