Ashley Blewer is an archivist, moving image specialist and developer who works at the New York Public Library. In her spare time she helps develop open source AV file conformance and QC software as well as standards such as Matroska and FFV1. She’s a three time Association of American Moving Image Archivists’ AV Hack Day hackathon winner and a prolific blogger and presenter who is committed to demystifying tech and empowering her peers in the library profession.
Describe what you do as an applications developer at the New York Public Library.
We have a lot of different applications here but I work specifically on the repository team and our priority right now is digital preservation and automated media ingest. So my day to day involves working on several different applications. We run different applications that run into each other — sets of microservice suites. I’m the monitor of these pipelines, getting images that have been digitized or video that has been digitized through to long-term digital preservation as well as enabling access on our various endpoints such as digitalcollections.nypl.org and archives.nypl.org. This involves communicating with other stakeholders, communicating with developers on my team and writing code for each of those applications, doing code review and pushing that live to the different applications… It’s very much a full stack position.
The job is more unique on my team because we work on such a broad array of applications. What I find exciting about this job is that I get to touch a lot of different types of code in my day job and I’m not just working on one application. Right now I’m working on dealing with a couple bugs related to associating URIs to subject headings in our metadata management system. Sometimes the application doesn’t work as it should so I do bug fixes in that regard. Some things that I will be working on this week are integrating a connection between our archives portal displaying video live within it rather than linking out to a different website, automating audio transcoding from preservation assets, and contributing some core functionality upgrades to our Digital Collections site. Recently something that I did that was more access-based was we migrated our display of video assets from a proprietary closed-source system to an open-source rendering system.
We follow loosely an agile planning system. Right now we meet weekly because our priorities are very vast and they’re changing pretty quickly, so every Monday we meet with stakeholders and we talk about all the things we need to tackle over the week and what needs to be done and then we get to work. There’s around 16 total developers at NYPL but my team has three.
I was playing with some of the apps you’ve made, and I’m fascinated with the Barthes Tarot and the Portable Auroratone. Could you walk me through your creative process for these?
These are good examples because they’re different in the sense that with the Barthes Tarot I was reading Barthes’ A Lover’s Discourse and thinking about how I could potentially use that in a randomized way to do fortune telling for myself. This is almost embarrassing, right, but maybe someone [would want to use it] to try to solve a romance-based problem, like getting their fortune told. I originally wanted to map it to I Ching, which was something that Barthes and other philosophers were interested in, but it ended up being too technically difficult, so I got lazy and downgraded it to tarot. And then I knew I could put this together by doing a random draw of the data and just pull that out. Technically it ended up not being too difficult of a problem to solve because I made it easier.
The Portable Auroratone is the opposite in that I found a [software] library that automatically generated really interesting colors and I wondered how I could use it in some sort of way. I thought about the Auroratone I had seen at some symposium [ Orphan Film Symposium 8, 2013 ] six years ago and I thought “Oh, ok, it kind of looked like that,” and I turned it into that. So one of these apps was me having a philosophical dilemma and the other one was me having a technical library that I wanted to integrate into something and I had to mesh an idea with that.
I get a lot of compliments on Twitter bots like @nypl_cats and @nypl_dogs which I also just made very quickly as a one off. I did that while I was finalizing my paperwork to work here, actually. I thought if I’m going to get this job I might as well learn how to use their API. The API is something else that I work on now so I was familiarizing myself with this tool that I will eventually push code to support.
You constantly share what you’re learning and advocate for continued learning in our profession through your blog, presentations, etc. How do you find the time to share so prolifically and why do you think it’s important to do so?
Yeah, I just came back from AMIA and I do really remember when at conferences why I do these things. As far as the first part of where I find the time, I don’t know, but I have been reflecting on how I’m maybe naturally introverted and this is something that I do to ramp up my own energy again, by working on something productive. Where other people might need to be out drinking with friends in order to chill, I need to be alone to chill, so it gives me more time to spend building different applications.
How do I summarize why I think this is important? I think about the positions I’ve been at and how I’ve thought about how I get to where I want to be and if those resources don’t exist then someone needs to build them. It’s so crucial to have a mentor figure in place to help you get to where you want to be and allowing people to discover that, especially related to technical issues. People just assume that the work I do in my day job now is much harder than it actually is, so if I can lower that barrier we can have more people learning to do it and more people can be more efficient in their jobs. Overall I think educating and empowering people helps the field much more substantially than if people are doing it alone in silos.
Can you talk about your career path to becoming a web applications developer?
I went to undergrad not really knowing what I wanted to do. I went to a state school because it was almost free and graphic design was the most practical of the art degrees you could get, and in a lot of ways librarianship is a practical advanced degree that people get as well. Coming to the point that I am now which is in a very technical role at a library I sort of see what I was doing as a response to the gendered feedback that I’d grown up with. I wrote an article about this before – where I didn’t necessarily feel comfortable studying something like computer science but then graphic design was still very computer- focused, technically-focused that was maybe more “appropriate” for me to do. I was encouraged to do that as opposed to being discouraged from doing something that I was already good at, which would have been something like computer science.
What skills do digital librarians and archivists need? Is learning to code necessary?
A lot of people are getting on board with learning to code and how everybody has to do that and I don’t necessarily feel that’s true, that’s not everyone’s interest and skill set, but I do think having an understanding of how systems work and what is possible is one hundred percent required. Light skills in that regard help people go a long way. I think that – and this is echoed by people similar to me – once you realize how powerful writing a script can be and automating dull aspects of your job, the more that you’re inclined to want to do it. And like what I said earlier – the more efficient we can be the better we are as archivists.
You do so much to contribute to the profession outside of your work at NYPL as well- contributing to open source formats and workflows, sharing resources, building apps. How do you find time for it all and what else do you want to do?
I feel like I waste a lot of time in my down time. I feel that I’m not doing enough and people are like “How do you do so much?” But there’s so much work to be done! As far as what I want to do, I don’t know, everything I’m doing right now. Maybe I’m like a child that’s still feasting on an endless amount of candy. Now I have these opportunities that I’ve wanted to have and I’m taking them all and saying yes to everything.
A lot of what I do may be considered homework. As a developer, the way to get better at developing is purely just to solve more development problems. Making small applications is the only way to boost your own skills. It’s not necessarily like reading OAIS and understanding it in the same way you might if you were an archivist doing archivist homework. [Referencing graphic design background] The first design you do is not going to be good so you just do it again and you do it again and it’s the same thing with programming. One of the things I try to articulate to archivists is that programming kind of hurts all the time. It takes a really long time to overcome, because yeah, in school, you read a book or you write a paper and you’re expected to produce this result that has to be an A. With programming you try something and that doesn’t work and you try it again and you try it again and you think “Oh I’m so stupid I don’t know what I’m doing,” and that’s normal. I know this about myself and I think that’s the hardest thing to overcome when you are trying to learn these skills. It’s refreshing that even the smartest senior developers that I work with who are just incredible at their jobs all the time, still will pound the desk and be like “I’m so stupid, I don’t get this!” Knowing that’s a normal part of how things get done is the hardest thing to learn.
I’m happy to constantly be failing because I feel like I’m always fumbling towards something. I do think librarians and archivists tend to be people that had very good grades without too much effort, moving forward in life and so as soon as they hit a wall in which they aren’t necessarily inherently good at something that’s when the learning cuts off and that’s when I try to scoop people up and say “Here’s a resource where it’s ok to be dumb.” Because you’re not dumb, you just don’t have as much knowledge as someone else.
What do you want to do next?
Closed captioning is one of the big problems I’m excited about solving next within NYPL or outside of NYPL, whichever. If you don’t have it and you have 200,000 video items and they all need closed captioning to be accessible how do you deal with that problem?
What are five sources of inspiration for you right now?
Recompiler: Especially the podcast since I listen to it on my commute, it’s such a warm introduction to technical topics.
Halt & Catch Fire: Trying to find another thing to watch when I am sleepy but I really just only want to watch this show. The emphasis on women’s complex narratives and struggles/growth within this show is unlike any other show I’ve ever watched.
Shishito Peppers: Dude, one in every ten are hot! I thought this was a menu trying to trick me but turns out its true! I like the surprise element of snacking on these.
Godel, Escher, Bach: I feel like this is the programmer’s equivalent of Infinite Jest. Everyone says they’ll read it one day but never get around to it. It’s such a sprawling, complex book that ties together patterns in the humanities and technology. Anyway, I am trudging through it.
AA NDSR Blog: So inspiring to read about the work of emerging professionals in the field of a/v digital preservation!