Binary Trees // Sororitree Rush // Data Structures and Algorithms // Mimi Chenyao // Asian Barbie
Get Swifty // The Swift 4 Programming Language // Mimi Chenyao // Asian Barbie
Data Structures and Algorithms - Asian Barbie - Mimi Chenyao
URBN Intern-Views // #myURBNSummer // Mimi Chenyao // Asian Barbie
Taylor Swift Reputation Lookbook // Mimi Chenyao // Asian Barbie

Announcing Asian Barbie Version 3.0

Mimi Chenyao // Asian Barbie // Version 3.0

When I first started studying computer science, everything felt like an uphill climb.

Conceptual terms were confusing, my code didn’t compile half the time, and it seemed like I was in my advisor’s office every other week. I had never programmed before in my life; it took hours to complete assignments because I would have to Google and wade my way through pages and pages of condescending Stack Overflow threads to find the answer to a single one of my questions.

I had many questions.

Every time I finally understood what I was doing, I felt an overwhelming sense of triumph that made all the hours of struggle worth it. I wished that there were resources that explained things to me in a simple manner — to a beginner, language documentation is tricky and intimidating, and half the answers on the Internet don’t help, either.

My lucky break came the first semester of third year, when one of my professors took the time to teach me the Java programming language one-on-one every Monday, Wednesday, and Friday. Within three months, I went from a struggling, frustrated student to a competent programmer who could help debug others’ code. Suddenly, class assignments that asked me to implement things in code were a lot more fun. I became more involved outside the classroom, too, and was a lot more comfortable challenging myself. If not for that professor (and the endless encouragement of my advisor), I would have left the computer science area of concentration — who knows what my life would be like now.

I know that there are many students who have a hard time making sense of convoluted explanations offered by textbooks. I’ve spent the last four years of college poring over every resource I could find and simplifying it for myself so that I could understand it. It’s time to share that knowledge and pay it forward. I’m thrilled to announce that, in addition to my current series on Data Structures and Algorithms, I’ll be creating a few more tutorial series on various topics in computer science over the next week or so. Stay tuned!

With new additions come new changes. Here are some of the other things coming to the site:

A completely updated site design, ft. simplified navigation

Before, this site featured newest posts first. It was cool to visit and see constantly updated content, but older posts that were still relevant would get buried fairly quickly. The new site design is a compromise: You’ll still be able to see newest content first, but things will be a lot easier to find, thanks to the grid view at the top.

Series-based approach

Rather than creating random posts, Asian Barbie will take a series-based approach to content. This way, things will be more organized, and you won’t have to sift through pages and pages of irrelevant posts to find the one you want.


I’ve always loved to draw, and realized that drawings would be a cool way to accentuate my posts and explain otherwise dry concepts.

Mimi Chenyao // Asian Barbie // Merge SortHere’s to these changes and all the cool stuff coming up! I hope you enjoy them as much as I’ve enjoyed putting everything together.

Mimi Chenyao // Asian Barbie

Up All Night to Get Lucky

Maneki Neko Lucky Cat Halloween Costume // Mimi Chenyao // Asian Barbie

Maneki Neko Lucky Cat Halloween Costume // Mimi Chenyao // Asian Barbie

Happy Halloween!

This year I decided to dress up as the Maneki Neko, or the Lucky Cat. These creatures actually come in many different colors; white represents happiness, purity, and positivity. It was a lot of fun to DIY my costume (and weird out my sister, who shares my Amazon Prime account, by buying a large bell and cat ears many weeks before Halloween).



Trees // Data Structures and Algorithms // Mimi Chenyao // Asian Barbie

Trees — they’re all around us in real life, providing us with fresh oxygen, giving us comfortable places to sit under and read, and acting as cool backgrounds to pose by.

(Okay, maybe that last one’s a me thing.)

As it turns out, trees are also all around us in the digital world. They’re the underlying data structures behind most file systems, library catalogs, 3D video games, network routers, music compression algorithms, and more. We just can’t see them, so we often don’t know that they’re there.


An Interview with Sam, UO Music Intern

Urban Outfitters Music Intern Interview // Mimi Chenyao // Asian Barbie

Although (usually) subtle, in-store music helps to set the tone of your shopping experience.

Sam is the Music Intern for Urban Outfitters. He helps curate the songs you hear in store (I totally don’t have a playlist consisting of remixes and covers of this UO song or anything…). We talked about personal tastes in music and aesthetic, and how a prospective UO intern can stand out.


Announcing: URBN Intern-Views Blog Series

URBN Intern-Views // #myURBNSummer // Mimi Chenyao // Asian Barbie

It’s that time of year again — a time when college students eagerly send in their resumes, cover letters, and application materials to companies of their choice in order to land a coveted summer internship.

A lot of people have messaged me since I started posting interviews with the URBN Class of 2017 interns, asking me for more tips, tricks, and experiences I had while I was with the company.

I’m really nostalgic for my time there. It’s where I met my best friend, and turned twenty-one, and learned how to be a halfway-decent software engineer. I had such a good time that I spent the entire first week back at school incredibly homesick. Even now, the Navy Yard, University City, SEPTA, Old City, and Fishtown have a special place in my cold, dead heart.

I was looking through my stuff from the summer earlier and realized that I hadn’t posted all of the interviews I’d held. I’m going to publish them — along with the interviews that are already on here — as the URBN Class of 2017 Intern-Views (yes, pun intended) blog series. As you’ll see, URBN is such a big place that literally every single intern experience is different, and that’s what makes it so much fun! I was an engineering intern with the IT department, but learned a lot from other interns who were doing completely separate things.

Through this series, you’ll get a better idea of what it’s like to work there (and get some tips and tricks for the application process, too!). #MyURBNSummer was the coming-of-age story I didn’t know I needed — hopefully you’ll have a similar experience.

As usual, feel free to reach out with any questions, comments, or concerns. Enjoy!

Insertion Sort

Insertion Sort - Data Structures and Algorithms - Asian Barbie

When was the last time that you sorted something?

Maybe you accidentally dropped your freshly printed Parisian Art History final paper all over the floor and had to put it back in order according to the page numbers on the upper right-hand corners. Maybe you were making door signs for all the members of your sorority, and decided to put them in alphabetical order. The last time I sorted something by hand, I was organizing all of the dresses in my closet by color.

Take a step back and recall your last sorting memory. How would you explain your process to an intelligent alien? (“Umm, I just started picking things up and putting them in order” won’t cut it, sorry not sorry).

When you really take the time to think about it, sorting becomes pretty complex and hard to put into words. And there are so many ways to do it.

Welcome to the world of sorting algorithms.


How I Study Data Structures and Algorithms

How I Study Data Structures and Algorithms - Asian Barbie - Mimi Chenyao

When I first started studying algorithms, I had an incredibly hard time because of two things.

One, I didn’t have a very strong mathematical foundation, and would struggle to understand the reasoning behind certain algorithms. Two, I was just plain bored. “Implement insertion sort and time your algorithm input on arrays of size 10,000…” Ugh! I approached my assignments with the same sort of dread that one normally reserved for seeing disagreeable relatives during the holidays: Yeah, sure, I’ll bang out this code as quickly as possible and retreat to my room to watch Rick and Morty the first chance I get.

Because I had such an approach, it was painful to study algorithms. Even worse, the knowledge didn’t stick. I couldn’t remember a damn thing after I’d handed in an assignment. Insertion sort? How was that different from Merge Sort, or Selection Sort, or, God forbid, BogoSort?


Big-O Time Complexity

Big O Time Complexity - Asian Barbie

I know what you’re thinking –“Big-O Time Complexity” sounds like the punchline of some nerdy that’s-what-she-said joke.

(I’m That Kid who snickered loudly at the term “Big-O notation” when it was first introduced sophomore year, so I won’t judge if you do the same.)

Big-O is actually one way to measure the amount of resources needed for an algorithm to run (also known as an algorithm’s complexity). “Resources” usually refers to time or space in memory. For simplicity’s sake, I’m going to be writing about time complexity only, so for the duration of this post, you can think of Big-O as a way to measure the amount of time an algorithm needs to run, depending on the size of its input.

If this all sounds hella confusing but also slightly interesting, good! Keep reading. Information sticks way better when you’re curious.  


Announcing: Data Structures and Algorithms Blog Series

Data Structures and Algorithms - Asian Barbie

When I walked into Algorithms class earlier this semester, my first thought was “Oh God.”

I had not been a fan of Discrete Mathematics, the precursor to the course, and the thought of having to learn these data structures and algorithms — and implement them programmatically — made me want to hide under a large rock and never come back out again.

Then I dove into the class, and realized that algorithms are really cool, and understood everything right away, and got a great job in Silicon Valley, and saved up money over the years and bought a nice house on the water where I lived happily ever after with my 50 cats.