Week 6 at Recurse Center: Halfway point!

“Stay true to your course, despite the visible obstacles ahead.” Started this week struggling to understand where I belong, in physical space and in my personal and professional lives (which, as every practicing archivist knows, are often very closely intertwined in a way that isn’t healthy). I feel like I fit into this space that I’m in now, which is rare, but where do I fit, long-term, after this? I’m at a juncture where I...
Read more

Mapping the planets with Rust+WebAssembly+JavaScript+Canvas

I wanted to think of a small-ish project I could work on that uses Rust, WebAssembly, and JavaScript. One of the projects I thought would be fun to make while here at RC is something that gives the ability for people to map out where all the planets were in relation to Our Spaceship Earth on the day they were born. (This is like, an astrology thing, which I don’t really throw down with, but...
Read more

Week 5 at Recurse Center

Started off this week feeling not-so-good about myself, like I was just running waist-deep in mud, just trying to move forward but feeling so stuck. On Tuesday I made the very-good decision to break from my overarching goal (which had led me into video decoders and web assembly) and make a PBCore2.1 validator, which took only a small amount of time to produce good and useful results. I moved on from there into doing a...
Read more

The Story of Goldilocks and the Three WebAssembly Libraries

💁 🐻 🍨 🐻 🍨 🐻 🍨 🙆 I’ve had some starts-and-stops trying to learn Rust and also learn WebAssembly and work with chaos-language JavaScript. Everything’s quite new, so I have been trying to find something that is not out of date, but also not too new that the features aren’t quite where I need them to be yet, which is stable enough to perform basic operations and be sure that the problem is not...
Read more

Week 4 of 12 at Recurse Center

Feelings! Feelings! Feelings! Now that I’m (woefully) 1/3th of my way through this experience, I am trying to reflect on the choices that I make each day and how they contribute (or don’t contribute) to my overall goals as a person. I don’t want to spend all my time thinking “Does this help me?” but I am trying to choose tutorials or projects that will help benefit me long-term. This is useful all the time,...
Read more

Rust Study Group Notes

Editors note: Something I love so much about Recurse Center is the amazing, interesting, knowledgeable people in this space. I initiated a study group to learn more about Rust and here are the notes from the first gathering. Meta-note, this is more for our benefit than for yours, the general public, but I hope it may be useful for casual browsers, potentially, so I am posting a modified version here instead of purely in a...
Read more

What does audiovisual compression look like?

This week, I’m thinking about this question: What does audiovisual compression look like? Can it be visualized? Turns out the answer is (update: meehhhhh?), and it’s pretty easy to do, and it’s actually not all that interesting. Y’know, “It is different now exactly in places you expect.” But I wanted to stick with it and try to make it interesting anyway, so here is what I did. TOP POST: I stick this down at the...
Read more

Uncompressed versus uncompressed packed video

I’m thinking more (previous post) about uncompressed encoding options and the information they convey and how they convey it. For something else I’m working on (update, here), I am trying to get an extremely neutral original format that I’ll be encoding, so I wanted to understand better these flavors of uncompressed that I have to choose from: V..X.. avui Avid Meridien Uncompressed V..... ayuv Uncompressed packed MS 4:4:4:4 V..... r210 Uncompressed RGB 10-bit V..... v210...
Read more

What is a Minimum Viable Codec?

It’s my third week at the Recurse Center and this question has been on my mind. What is a minimum viable codec? (And what is the least amount of work I could do to successfully create a codec?) Well, what is a codec, exactly? To be totally obvious and unpack the portmanteau, it’s a coder/decoder. Coder: encodes a data stream or a signal for transmission and storage Decoder: reverses the encoding for playback or editing...
Read more

Week 3 at Recurse Center: Feelings Check-in

This week, I did a one-day round-trip to DC to teach a workshop on digital video, and the next day I came back and paired (although that term is very generous, essentially I was tutored-on-this, and I’m very grateful) on making a square wave audio tone in Rust, which also included having to think about how soundwaves are created and digital audio can be produced, at that level. Which I think I understood in theory...
Read more

Stealing snax using semicolons in Rust

Friends, colleagues, and enemies all know this about me: I love stealing snax. Stealing food from other people brings me such a true joy, which is also why if I were a Pokemon I would definitely be Munchlax, the high-energy garbage-living pre-evolved form of Snorlax and also classified as a “Big Eater” pokemon. I am pretty sure the reason why my body can’t digest gluten anymore is because a curse was put on me in...
Read more

Second week at Recurse Center

While I’m settling into the new exciting pace of being at the Recurse Center, a lot of my feelings this week have been around trying to juggle all the other things in my life outside of RC and finding a way to feel at peace with those things. Working as a freelancer means that there are always things to follow up on and continue to mentally juggle even when work is not happening (which is...
Read more

Error handling in Rust

I’ve been working my way through rustlings, which is a great great resource and I highly recommend it for getting started with Rust. I especially like it because it forces me to read chapters of the excellent Rust Programming Language book piece-by-piece and then put the chapters into practice with tiny exercises in the sandbox. This is great for me because I am very impatient, especially with myself and my own learning (seriously I listen...
Read more

Considering Rust ...for Video

This is a follow up on my last post. After playing with Rust for the first time last Saturday (thanks Casey), I did a whole bundle of reading about it the next day, Sunday. I also got some tips from Kieran O’Leary on some work that had been done in the open source media space with Rust and that sent me into a spiral and flooded my RC syllabus with links. I had originally intended...
Read more

Considering Rust

I am now in an informal Iron Blogging challenge with Janice and Marianne in my Recurse Center batch, so I must talk about technical things and personal things and opinionated things, and NOT BE AFRAID!! This is a blog post ramping up to something more technical and more opinionated. Last Saturday, I paired with Casey, who helped me build something in Rust, a language that I’ve admired from afar (and wow, I saw a talk...
Read more