Minimum Viable Station Documentation

Hello, internet of people!

Something I’ve been thinking about for a long time and have started working on is the creation of documentation for people who want to set up their own analog audiovisual media digitization stations (called elsewhere as memory labs, personal archiving labs, transfer stations, et al). Aside: I’m also super influenced by my goal of supporting an in-the-works Southeast U.S. Transfer Station by any (remote) means possible. 2017 goals!

I’m specifically interested in this documentation’s ability to facilitate realistic fiscal expectations so budgets can be adequately prepared for before getting started (or for the purposes of asking for funding from an organization or using crowdsourcing methods).

Here’s the thing, though… I need your help and expertise. I am not an expert in this, I do not do this full-time (or even significantly part-time). And even if I were an expert – it’s bullshit for any person to think that they know more than many people working together. So, I ask you.

Here is the document.

This is the goal: Provide what the options are, then give a recommendation. If possible, give a tiered recommendation like “$$$ / $$ / $” for “if ya got a bit of cash” to “if you need a bare-bones minimal setup.” Note that a minimal setup does not correlate with “archival quality” standard but rather a “getting this stuff off of an obsolete format before it is no longer possible to realistically or inexpensively to do so.” We don’t have time for that shit.

Here is the document again!

P.S., N.B.: Don’t let best practices block progress.


Note well: I wrote this over a year ago and forgot to post it. Here it is, right in time for it to not be near graduation-time whatsoever. But also here it is, a preparing-you-for-your-job-hunt pep talk on the internet for whenever you need it.


This is a much-fuller version of professional talk that I didn’t give in anticipation of the slightly nauseated-anticipation-feeling I know is felt deep within people exiting their final semester and entering the world again.

Some guidelines for prospering. 🖖

1 Pretend to be Beyonce!

This is also known as “fake it ’til you make it.” Confidence is important to have, though. Not arrogance — but a clear understanding that you are a smart and capable person. Know yourself (and know your limits). It’s hard to see how far you’ve come when you are still in the middle of it.

2 Trust your mentors!

Part 2 – in case the first part is too hard right now because you are wallowing in job application rejection emails (or, even worse, the silence).

First, mentorship is incredibly important. I am forever grateful to Dave Rice, Heather Heckman, Mark Cooper, and my Flatiron School peers for pushing me forward and helping me get where I want to be. I couldn’t have done it without them. But getting a good mentor is primarily luck-based. You happen to be working with or meet a kind and good person that sees potential in you that you don’t yet see for yourself. You can push your luck a little bit though, so I want to talk about what you can do to help facilitate these kinds of relationships and the things I encourage my own mentees to do.

2.5 Just say yes!

If you have a good mentor and you also work with them, they are your boss or whatever, and they want you to do something but you are scared and unsure that you even know what they are talking about, that you are even capable of understanding what they are talking about — just say yes. Just say yes. I mean, if they are your boss but they are also a jerk, don’t say yes, but I am talking about people you love and respect. Just say yes. This usually goes unstated but it was told to me once and you can repeat it in your head until it sticks: If your boss asks you to do something and you totally mess it up and can’t do it and everything is terrible — it’s not YOUR fault. It’s THEIR fault. It’s on them. They are your manager and its their responsibility to ensure you perform optimally. That’s why they are there, not to make you suffer and laugh at you when you Hypothetically or Maybe Literally Ruin Everything. So if they are giving you an opportunity to do something, it’s because they have faith in you and know you can succeed in doing it. I cannot stress this enough. And you really need to have the same confidence in yourself. We frequently don’t. Rise to the occasion. That’s the only way you get better.

3 Keep learning!

Don’t stop! I spend a lot of time feeling like an idiot, but feeling like an idiot is how you know you are learning.

Here is my guide/hierarchy of learning when you are on your own:

  1. I wanna learn this. Good, that’s some good motivation there, it’s good you want to learn something and are excited about something. But sometimes just wanting to do something isn’t enough. Especially when there are SO many cute cats on the internet.

  2. I thought of a project and I’m gonna learn this. This helps me a lot, it helps that I can find a concrete project and fulfill it and I will feel like I have definitely learned That Thing.

  3. I told someone about this project so now I have to learn this (y’know then it’s a little embarrassing when someone asks you and you are like “oh yeah it’s going, um, I spent 17 hours on Facebook this week). Embarrassment.

  4. I am doing this project for someone so I have to learn this. Now someone else is involved to really hold you accountable, because it’s a thing that they want. Your friend, your mom, a colleague, whatever. You have something to deliver to them and that really helps motivation. Guilt.

  5. I am getting paid to do this so I have to do this. Especially if they give you deadlines. Deadlines are so great. Me giving away this secret is a little embarrassing especially if anyone who has ever paid me to do anything is currently reading this and I know that they are ugh agh ack– but in the end it doesn’t really matter because I’ve always been able to deliver the results they are looking for, right? How I got so brash, I don’t know. But, yeah: Have faith in yourself, quit saying no out of fear, learn a lot.

We can transcend all of this and move into Top Level Learning: LEARN WITH OTHER PEOPLE. If you are in a group of people learning one thing and you are the asshole dragging behind or not showing up, you are not gonna feel great and that feeling (wanting to avoid that feeling) will motivate you to move forward.

Caveat: There are good reasons to say “no” to something. Most of these reasons have to do with time/effort/energy. If you’re already busy, don’t agree to things that are going to take up too much time for you to tackle successfully.

Caveat 2: The thing about agreeing to do something you don’t really know how to do is that you might spend 4 hours figuring out what the hell you are doing and then 4 hours actually doing the thing. So keep that in mind when you are budgeting your time. Working all the time isn’t fun and it’ll make you sad. So know what your thresholds are and expect to work double-hard at something if you are learning first, because it means you have to invest in yourself first. But in the end it’s totally worth it because you are investing that time in yourself, and when the project is done, you’ll be much better the next time.

I spend a lot of my time like 🙀 cat-screaming-in-fear-emoji 🙀, but it’s because I’m constantly pushing myself to learn, and learning is actually hard and scary and it hurts a lot. I encourage you to embrace the cat screaming in fear part of yourself and not be afraid to say yes to opportunities, because that’s the best way to become a better version of yourself.

4 Collaboration not competition!

Seriously so tired of this bullshit that I don’t even want to go into it. Just don’t fucking do it, just be fucking nice. There is nothing more boring than people who are still worried about other people. What a waste of time. It will bring you down. Cling to your peers because you are all in this together, now and far into the future. Especially if you are part of a cohort, it can be hard to deal with other people getting jobs before you get a job: your self-esteem drops and you worry about getting left behind. But be happy when they get jobs and know that yours is coming next.

5 Don’t give up!

This is an undervalued, underpaid field and there are more people that want to be in it than are in it. The job hunt takes time. You probably won’t land your dream job right away. You might have to take two part-time jobs. You might have to take a job that isn’t in the field. If you are in-field, you’ll probably be an underfunded, grant-funded employee. Stick with it and you’ll get there. I’m not saying “everything is going to be okay.” I’m saying “you have to keep working your ass off if you want to get what you want.”

I applied for at least 60 jobs when I graduated with an MLIS and heard nothing and spent a lot of time feeling so sad. You should pretend to be Beyonce during this nightmare moment but know that in order to truly become Queen Bae, you have to work your ass off for years and years. But remember Queen Bae’s words of wisdom: “You can do everything right and still lose.” Just get up and try again. Be scrappy, fight hard (but not with your peers).

Bonus 1. Stop acting like a student.

Take this as a polite nudging. The sooner you quit acting like a student, the better. I mean, okay, you are a student, but you don’t need to introduce yourself with these “Well, I am only a student…” vibes. Soon you won’t be a student. You’ll just be you. Wait, who are you again? Oh, that’s right, you are Beyonce.

Bonus 2: Write code (maybe)

If you are still getting super nervous, learn how to write some code and jobs slowly but surely start falling out of the sky. Also don’t be upset if writing code just isn’t something you are into, because that’s fine. But at least consider learning as much as you can about some technical concepts. All archivists are digital archivists. If you truly want to live in the dark ages, take a sword-fighting class before you graduate because you will have to murder a tenured academic librarian to claim your spot in the illuminated manuscripts Illuminati. For the rest of us, y’know, there’s database structures and data transformation scripts.

Parsing XML into a CSV with Ruby

So a short while ago, my friend Lorena posed this question…

And thought “ya, I know how to do that and I also have a secret agenda to get all archivists to learn Ruby.” I sent her some pseudo-code but it’s better to follow up in a blog post that actually explains how things work (also, that pseudo-code would not have run).

If you want to play along at home, here is the small ruby script:

And here is the sample xml:

I’ll walk through the lines and explain them accordingly.

First we have to set some things up.

require 'csv'
require 'nokogiri'

Ruby has extra libraries and we will need two of them. One is the CSV library, which comes with Ruby. The other is the Nokogiri library, which can be hard to install but it lets you manipulate XML easily (including HTML). This is telling the script to grab things we need so we can do it the easy way.

A lot of computers already have Ruby installed. Nokogiri takes extra steps (and sometimes will blow up in your face). So this script won’t work until you install Nokogiri. This might be a total nightmare but it also might be totally fine. If you send me error messages, I can send you my secret girlscout techniques to fix it.

To run a Ruby script, you can type ruby /path/to/script.rb in your command line interface of choice.

Next, we need to get our XML and get it in shape.

xml ='hello.xml')
doc = Nokogiri::XML(xml)

I am running this script in my root directory (cd ~ gets you there on a Mac) and the XML file is also saved there. If I downloaded this .rb file and hello.xml and they saved to my Downloads directory, I could still run this script from my root directory, but run it by changing the to‘Downloads/hello.xml’).

So we read the document but then we have to turn it into a special Nokogiri document so we can easily grab what we need. That’s what the second line is doing, and later we can work on grabbing info out of the variable we just named “doc”.

all_the_things = []

Scoping is important in programming languages, including Ruby. This makes a variable in advance, and the brackets mean it is an empty array. When we fill up this all_the_things later, it will be ready to go.

doc.xpath('//file').each do |file|
  title          = file.xpath("./title").first.text
  filename       = file.xpath("./name").first.text
  identifier     = file.xpath("./identifier/*[contains(text(), 'My display ID')]").text
  secret         = file.xpath("./identifier/secret").attr('secret').text
  all_the_things << [title, filename, identifier, secret]

This chunky bit of code is where we go through our first loop using the Nokogiri library…

We have our doc and we know that it is a <document> full of many <file>s, so this first part – doc.xpath('//file').each do |file| is where we start off our loop and grab (using xpath) every XML node that is a <file>. Then we start grabbing the things that we need. We can grab a bunch of stuff, like the title, the file name, and some identifiers. Nokogiri builds on Xpath statements which are good for all archivists to know, since archivists are obsessed with XML. These are saying “give me the first <title>”, “give me the first <name>”, “give me the identifiers that has the phrase My display ID in it” (this is an example of having to grab data out of poorly-formed XML – who would do this?!), and “give me the secret attribute within the secret identifier”. You can see how this is all arranged in the sample XML.'new_file.csv', 'wb' ) do |row|
  row << ['title', 'filename', 'identifier', 'secret']
  all_the_things.each do |data|
    row << data

This will save in the directory you ran the script in. Which, like I mentioned earlier, will only work if you are in the same directory as the hello.xml, unless you change the above file path.

The 'wb' flag is added to let Ruby know that we are going to be writing to the file, not just opening it, and that we want to make sure it opens in binary mode (although running it without the b flag is probably fine).

So this is our second loop and it has another loop inside of it. It’s OK to feel dizzy. When you open a CSV, it’s ready to work row by row until you’ve had enough and tell it to stop. First I ask it to make a row with column titles, which is what row << ['title', 'filename', 'identifier', 'secret'] is all about. The << is “shoveling” these strings of text into the first row. I kinda think of it as having a Mary Poppins bag that looks like this [] and then you can just << to add things in there but it pretty much stays the same size because it’s whatever you named it. Ours is named all_the_things.

So I take our all_the_things and I know all of our XML data has been living there for a minute, floating around in magical Mary Poppins Computer Bagspace, so I tell it to take every array inside the array and make one row for every array. Sorry – Nested arrays are confusing so that might need to sink in for a minute. The array looks like this: [["The first file", "one.mkv", "My display ID: 1", "sesame"], ["The second file", "two.mkv", "My display ID: 3", "benne"], ["The third file", "three.mkv", "My display ID: 3", "goma"]]. Everything is lined up perfectly and ready to become CSV rows.

Anyway, we close up our two loops and that’s…

The end! That is it! Assuming you didn’t give up while your computer objected to installing the Nokogiri gem, you should have a beautiful little CSV (if CSVs can ever be considered beautiful – archivists are out of control).


Here are some bonus resources!

Aspect Ratios in LEMONADE, Pt. 2

Hello! I’m wrapping up this (very) brief LEMONADE series by talking about home movies! This is a little bit about aspect ratios but maybe a little bit more about preservation issues with home movies. If you haven’t, its worth catching up in Pt. 1 right here, because this picks up where that aspect ratio context left off.

The first time we see the 4:3 ratio appear, it’s a cropped image during “Don’t Hurt Yourself,” sized down from a wider shot. But shortly after, we also get these close shots of women’s faces during the Malcolm X quote. Bonus facts: this footage was also filmed in 4:3, but on film, and this clip was converted to a magnetic tape format (see the head clog squiggles at the bottom?) and then digitized  –  an example of three format errors all in one!

So all three of these are the same aspect ratio, but why do we feel differently about them? There’s some added “film grain” in these shots to intentionally give them a home-movies look, unlike the high-contrast black-and-white images of women dancing in a parking garage, which look clean, and constrained only in the context of being interspersed among the similar imagery at a wider ratio. The grain and warmed tones give it an intentional “old artifact” look (think “Instagram filter”). This filtered look comes up again during “All Night.”

But some of the clips of couples during “All Night” have an aspect ratio of 1.77:1, which fills the entire screen.

It’s likely these were shot with the same camera using the same aspect ratio, but with effects and filters added later, as well as the cropping down to 4:3. (Cropping issues aside, I’m not entirely convinced that this isn’t originally filmed on film. The soft darkened edges and occasional errors look pretty legit to me.)

“Daddy Lessons” includes footage of horse-riding and New Orleans family life, given a similar “home movie feel” treatment. Pretty much all of the footage during this song, excluding footage of Beyoncé, are set in this 4:3 format.

But as a bonus within this song, there’s a real home movie of lil Bey, probably recorded on good old-fashioned VHS! Some notes of aging include image ghosting, head clog, contrast too high, and dropout – many outlined in a previous blog post about Formation specifically. But this is a good example of the real concerns for the fragility of magnetic media.

Following Beyoncé’s home movie (Beyoncé and dad) is a clip from Blue Ivy’s home movies (Beyoncé and grandpa), which moves from mid-1980s Standard Definition (and 4:3) to mid-2010s High Definition (and 16:9).

We also get to see some pre-Blue home movies from Beyoncé’s extensive archive during “All Night.”

This is a clip from a video of Beyoncé and Jay-Z celebrating wedding vows with IV tattoos. Blurry, low resolution, standard 4:3. No shade, this was probably either filmed with a MiniDV camera or using a cameraphone (my bet is on cameraphone, Peter thinks MiniDV). Just like many of the following home movies, which are fragile in their own way. Let’s talk about how!

This above clip has overly blown-out white levels. Similar to the problems with VHS (and other forms of magnetic media), it’s hard to get the contrast right. What do you expect, though? It’s not professional-grade – these are images from a consumer-grade camera. That doesn’t matter when you are looking back through your files and trying to find some lemonade-making videos to play at Grandma Hattie’s 90th birthday.

Shout out to Grandma Hattie, though, who seems to be pretty chill with having a cameo on an album that strongly features her grandson Jay-Z being called out as cheating garbage monster. This was probably filmed in an HD aspect ratio (based on other clips from the same event in LEMONADE and lack of other errors more likely to be found in other formats) but cut to 4:3 to again have a “home movies feel.”

While talking home movies, what is with this error? No, seriously, what is this?

This is footage of Tina Knowles and her husband Richard Lawson, taken on their wedding day. Very sweet. But what is this white flash across the screen trying to ruin a happy moment? I have no idea.

In between being pregnant and Blue Ivy being born, the aspect ratio (at least from what they’ve included in LEMONADE) changes from the boxier standard-definition size to something wider and larger: 1.77:1 aspect ratio and HD.  

Phone-based cameras comply with commonly-used video aspect ratios but also common still-photography aspect ratios because the camera exists as a multi-tasker, even if the ratio settings change depending on the chosen camera setting.

The above home-movie ratio is the same as the professional-grade video taken below.

This is a high-quality, HD camera shooting at a 1.77:1 aspect ratio. Your home movies probably aren’t gonna look as good as this.

But home movies aren’t always looking good, even if you are a celebrity. What’s going on with Blue Ivy here? Everything is so blocky, the lines aren’t smooth, and the color is off. Blue Ivy was born into the world of lossy compression in digital video.

So baby Beyoncé videos worry about magnetic-media-problems and baby Blue Ivy videos have to deal with digital-compression-consumer-camera-problems. Blue Ivy videos probably go straight into the archive for safe-keeping, which saves them from the turmoil of having to be recovered from outdated devices using outdated software, or other obstacles dealing with obsoleted-but-still-proprietary software, like ancient versions of iTunes. If you created a tiny version of yourself and you are capturing all those tiny-you moments with your phone, this should scare you!

It’s important to think about these problems in relation to our own home movies and our personal digital archives. Beyoncé has more than one full time archivist and supplemental archival help to do this work so her home movies are the highest quality and are given the best care imaginable, right? But they still suffer from errors due to the fragility of all audiovisual media. From the very beginning, at the point of capture, the images are imperfect, landing themselves onto fallible magnetic tape or into proprietary, binary black boxes.

As always, direct corrections to the Issues page or to me!

{Lets get digital}, talking about NDSR NY Symposium

Last Thursday, I attended {Let’s Get Digital}, a symposium hosted by the National Digital Stewardship Residence program (New York) for Preservation Week. (And thanks, also, to Brooklyn Historical Society for hosting and Archives Round Table of Metropolitan New York (A.R.T.) for sponsoring!

The symposium opened with an overview of the NDSR program by 2014-15 resident, Vicky Steeves (resident at American Museum of National History, now working at NYU Libraries). It was great to hear how not only are the residents getting an incredible amount of experience and opportunities to grow within the organization and within the field (and given support to attend/speak at conferences, integral to the success of an emerging professional) but ALSO how much the digital preservation field is benefiting from the work being done by the residents (again, within the organization but also reaching far beyond just their individual organizations, an overall positive ripple effect throughout the whole field). Thanks, Vicky!

Carmel Curtis, resident at Brooklyn Academy of Music, discussed her learnings during her residency. Her residency’s primary project involved setting up a digital preservation policy for record retention. How long do you keep things? What do you keep? When can you throw something out? This is easier to comprehend when dealing with physical materials, but digital materials need a structure in place, too.

She had ten tips (and ten Clueless gifs):

  1. Work with IT
  2. Talk to as many staff as possible.
  3. Don’t shame people while investigating how they work
  4. Plan how you will record/transcribe (or if you will)
  5. Pick a format
  6. Base policies and standards off of the language of the staff
  7. Determine time
  8. Get legal advice (if you can)
  9. Limit who can transfer data to the archive per department (or however)
  10. Make note of the information stored in the databases or in other systems.

Genevieve Havemeyer-King also spoke on her experience as NDSR at Wildlife Conservation Society and setting up a digital preservation policy for the institution. She mapped the NDSA level of preservation to their functional requirements and developed a checklist. Matching all of the requirements together helped them come up with an ideal system for managing their assets now and into the future. Different organizations will have different needs, which is why doing this work is so important (and taking the care to do it right).

Rachel Mattson, Manager of Special Projects at La MaMa Archives, and Poorna Swami, Development Associate at La MaMa, held a workshop-discussion to talk about diverse ways of getting funding for your organization. Especially helpful was revealing what parts of their grant proposals received criticism from the grant reviewers — being vulnerable and open about successes and failures can help the field overall. I think a lot of times it depends on the batch of grant-reviewers you receive. Rachel said they were rejected for not paying a high enough wage, but I’ve also seen grants get rejected for having too-high salaries (when they were not very high at all). This is me speaking, not a recap of the talk, but more transparency would go a long way in helping grant authors know their audience and know what kind of projects to pitch. Something frustrating about grants is that they all have different rules/policies/reviewers and it’s unclear, even if you know what has been funded in the past, to know if your project is a good match.

One of Rachel’s points was to take a holistic approach to funding — there are grants, but there are also individual donors (small and large) that can help fund projects. Find people who care about the work of the organization (and have money to donate) and grow a donor base through them. Having also worked (for a little while) in development (the money kind), I thought about the importance of “friend raising” — start the conversation early on with philanthropists, ask to be introduced to their friends, hold events that really show off the importance of the work being done by your organization so they will want to support it.

A major resource pointed out by Poorna was Foundation Center, which lists people who have funded specific organizations. It is a paid platform, but access is free at their office or any of NYPL’s research or branch libraries.

There was some good discussion and a question about dealing with accounting, which I think brings up another important part of writing to win grants — what happens if you do win the grant? It’s important when writing and when thinking ahead to your organization’s annual budget that there is a lot of work that goes into dealing with having the grant that may not be written into the grant, even if your grant is a cost-share with your organization. In my experience, there are a lot of reports. There’s a lot of weird things that happen that were not planned. And sometimes people leave or other issues come up that complicate the original plan, so it’s important to know how to be agile and work around issues that will come up during the funding time.

Mary Kidd, NDSR for New York Public Radio, gave a talk on working with one of my most nostalgia-inducing formats, the MiniDisc. The talk was about how they are a preservation nightmare, but they are a warning to whats coming with regards to the kind of proprietary software we deal with now (like smartphones) and how access to data can be made difficult through “software firewalls” in addition to the technical, hardware problems that already come up. Mary was only able to access data on NYPR’s MiniDiscs because open source software built to solve the problem had been developed in the early 2000s.

This software was made because Linux users wanted to be able to access their MiniDiscs, which were only compatible with Windows machines. I think it’s important to think about how this open source software was made not with preservation in mind, but because of the problem with access when the software was still actively being developed and purposefully being restricted to one operating system instead of using open protocols.

After this talk, Carnegie Hall’s Kathryn Gronsbell (with support from Genevieve Havemeyer-King) held a workshop on using BagIt. First she talked about what this tool did and then explained why it’s useful to use this tool even though the tool’s actions are overall very simple (creates a folder, creates checksums). One major point was “Why would you do it yourself when you can automate it?” BagIt can fit into automated workflows so institutions don’t have to spend people-hours manually creating these organized structures before putting them into long-term preservation storage. I didn’t personally make a bag during the workshop (been there, done that) but it was still fun watching Kathryn make bags and sprinkle in some command-line tips on the fly when files weren’t opening.

So many great talks! But onward…

Next was a panel all about web archiving. I was getting a little fatigued during this marathon of information at this time, but was cool to hear about Archive-It and WebRecorder, think about how they are similar/different and can be used in different ways, NYARC documentation on web archiving, and Rebecca Guenther speak on how standards for web archiving were developed. WebRecorder is a real game-changer for the field and look forward to seeing its continued development (and very happy about their recent grant for a couple more years of development). Thanks Morgan McKeehan (NDSR at Rhizome) for giving a WebRecorder demo and linking us to some great web-archiving tools

The final talk of the day and most anticipated talk (for me, not just because it was the last talk) was Dinah Handel talking about open source software for audiovisual preservation! My favorite thing, as obvious by my resume and how I spend my free time. Dinah is an NDSR at CUNY TV, a broadcast production archive. Dinah truly had to speed-read through her talk and it was difficult at times for even me to keep up, someone who already knows about this stuff. But she provided a link to a transcription of her talk text so we can all review it later. Yay!

What I find so great about Dinah’s talk is that she makes it clear that she didn’t have experience in this at the beginning of her residency, and that any person with the will to do so can also learn how to do the things that she is doing — things that seem “too hard” or “too complicated” or “too technical.” Having similar experience, I feel similarly and fight really hard to break down these stereotypes but they linger on.

Her first tip was that she started to learn how to write scripts by reading scripts written by others. This is a great way to learn how to do things! Just try it out until it works. I’ve heard a friend of mine say “Lines of code are free.” Compiling is also free. It doesn’t cost you anything to just keep trying.

Dinah also went through a script she (presumably?) wrote one line at a time. This is my favorite way to learn new things and similar to Saron Yitbarek’s “Code Club” strategy. Trying to explain the complexities of audiovisual files and issues with archiving is such a challenge, and hard to do with limited time, but so glad it can be done in such a kind and friendly way.

And that was the event! I enjoyed hearing about the work and progress from each NDSR, a sort of mini-thesis-defense for the program, as they are all wrapping up their fellowships next month. I hope this program continues to receive funding and support, and I hope the future batches consider doing symposiums as well!

Resource for the talks are available on Github: