Malloc Visualizer

CS Education, Front-end Dev (Svelte, TypeScript, Vite)

Malloc Typography
Malloc Colors
Malloc Site Structure

Using Adobe After Effects, I created animations to illustrate specific concepts.

Visualizing two data structures:

When I did the lab for the first time, I had a difficult time grasping the concept that heap and the explicit free list are two separate data structures and that the blocks in the free list may be out of address order. I wanted to clearly establish that concept when describing the difference between the implicit and explicit list. Hence, the explicit list has lines that point blocks in the heap to their corresponding location in the free list.

Explicit Slide

Closing Thoughts:

My goal was to communicate the concepts I struggled on with as few words as possible, relying on pictures and animations to do the heavy lifting. Not only did I strengthen my understanding of the material, but I also saw so much growth in my abilities to communicate complex ideas through images. It was definitely an interesting challenge to find ways to create a consistent visual language to visually represent different data structures at play. However, I also had a lot of fun making use of my knowledge of animation to portray abstract concepts in an engaging way. My favorite part was when I used sinusoidal motion and a speed ramp to give the explicit list a more organic feel.

15-213 was one of the most challenging yet rewarding classes I have taken at CMU. I not only learned about the intricacies of how computers work, but also saw so much growth in my abilities to design, write, and debug code. When I first started the lab, I felt overwhelmed by how many small details I needed to keep track of to make the library work. My hope with this project is to help future students appreciate how beautiful and rewarding this lab can be.

Malloc Code