Andrew Huang

Andrew Huang Photo

Where did you grow up? What was your path to Cal?

I was born in Fuzhou, China, but immigrated to the United States with my family when I was 5. As such, I understand Mandarin and can speak it poorly. We first lived in Texas, but moved to Florida where I did 3rd grade through high school.

In our high school, I was in the International Baccalaureate Program, which meant taking honor, AP, and IB courses. This is also when I dabbled in assembling computers, building websites, and playing with Linux. Because of that, I applied to a bunch of Computer Science programs at various colleges.

I consider myself incredibly fortunate to have been admitted to UC Berkeley. While at Cal, I went through the Electrical Engineering and Computer Science (EECS) program, all the while learning, making mistakes, and discovering friends. One of the latter was Rohin Shah.

I have officially TA'd CS 61A for four semesters and tutored for 61A in two other semesters. There hasn't been a semester where I haven't lab assisted for CS 61A and CS 61AS. I was the CS 61A TA for the first two cohorts of the CS Scholars Program.

Outside of CS 61A, I have TA'd CS 375, a pedagogy course for first-time CS TAs, and have also created CS 370 (Teaching Computer Science), a class for aspiring Computer Science educators. In my fourth year as an undergrad, I received the Outstanding Graduate Student Instructor Award.

I have personally worked with Brian Harvey, Paul Hilfinger, and John DeNero, the Professors and designers of CS 61A.

At some point early on, Rohin and I made a pact that we would teach CS 61A. Here we are.

How much programming have you done (and what languages)?

I didn't really learn how to program until I took CS 61A Fall 2010 and learned how to progam in Scheme (the primary language of 61A at the time.)

After a few semesters at Berkeley and internships in the summers, I had learned Java, JavaScript, C, MIPS, Python2, and Python3. I've interned at a2z (Amazon Music), Google, and Pandora. If you have any questions about getting internships, feel free to drop in during my office hours and ask.

They say that after CS 61A, you can learn any programming language in a week. I have found this to be (mostly) true, though it helps to have a project to work on at the time.

What are your hobbies? What are some of your talents and skills?

I spend a lot of time playing Chess, rock climbing, and playing multiplayer Tetris. I learned chess when I was young, but I'm not particuarly good at it and mostly play for fun. Rock climbing I picked up freshman year and have been slowly getting better at. I am of above average talent at Tetris.

Another hobby is finding good music to listen to. My tastes range from Debussy to Pink Floyd to Ok Go. For something completely different, try Moby, Shugo Tokumaru, and Gonzalo Bergara Quartet.

I am trying to read more books and watch less TV.

Q: Have you done anything remarkable? Has anything memorable happened to you?

Remarkable? Yeah. This. Lecturing CS 61A. Is it weird that I find this awesome?

Memorable? I was once locked out of my apartment building. My apartment is situated on the second floor (the one right above ground floor.) The building door opens to a hallway and stairs that lead to my apartment. In an attempt to get in, I climbed in through a second story window into the hallway only to find my front door was locked.

What commitments will you be busy with this summer?

Sometimes I catch myself daydreaming, imagining that I have a life outside of CS 61A this summer. Then I snap out of it and go back to writing lecture slides.

Joking aside, I'll be spending my off hours learning guitar, hanging out with friends, and rock climbing.

How would you describe your teaching style?

Hectic. And fun.