Main content
Computer programming
Course: Computer programming > Unit 8
Lesson 1: Meet the professional- Welcome to "Meet the professional"!
- Maya Bello, Software engineer and YouTuber
- Sarah Northway, Game Maker and Nomad
- Brenda Jin, Mobile Prototyper and DJ
- Tom Heinan, Mobile Developer, Pilot, and Zombie
- Amy Quispe, Data Liberator and Developer Relater
- Bill Mills, Physicist and Interdisciplinary Programmer
- Carrie Cai, Researcher and Dancer
- Lauren Haynes, Product Manager and Lindy Hopper
- Marcos Ojeda, Designer, DJ, and Dog Owner
- Allyson Lubimir, Support Engineer and Cat Lover
© 2023 Khan AcademyTerms of usePrivacy PolicyCookie Notice
Carrie Cai, Researcher and Dancer
Hi, I'm Carrie Cai!
What do you work on?
I am a computer science graduate student at MIT specializing in human-computer interfaces for language education and online learning. Depending on where I am in the research cycle, I am usually coding interactive systems and prototypes, brainstorming how to help people learn languages, or gathering and analyzing data.
Last year, I augmented Tetris with speech recognition so that learners can practice speaking foreign language vocabulary while they play Tetris. In order to rotate the block, the player has to first speak the correct word for the picture on the block. You can read more here and see a video demo below!
I am now exploring new ways to help people learn informally by making use of wait-time during a person’s otherwise busy day, such as at a bus stop, during commercial breaks, in the midst of stalled conversations, or during less interesting parts of a football game. The hope is that, by giving people bite-sized items to learn during time that they would ordinarily spend waiting anyway, learning can feel less time-consuming and more integrated into the rhythm of daily life.
How did you learn to program?
I didn’t learn to code until age 23, well after college. I had no interest in computers, and had always been interested in human behavior, so in college I majored in an interdisciplinary mix of psychology, linguistics, and education. In my first job out of college working in sales and HR, I became motivated to learn programming when I found myself frequently coming up with ideas, but often dependent on engineers or other teams to implement features or fix bugs for me. I eventually went back to school and spent a year or so taking foundational computer science courses alongside college undergrads. Within the first few weeks, I got hooked learning about recursion, and was surprised to discover how similar programming was to solving mini-brain teasers. Even though I wasn’t enrolled in a degree program, it turns out that simply being on a university campus can open many doors! Not only did I join a research project on dialogue systems for childhood language learning, but I also got to teach programming to other students. I eventually applied to PhD programs in computer science and was thrilled to be admitted given my limited background.
Looking back on my first day of CS courses at age 23, I remember sitting in a room full of college freshmen and feeling completely daunted by the sight of a Unix terminal. I sometimes questioned whether I was in over my head for switching into CS. Fortunately, I had the support from peers who hacked through projects and problem sets with me, mentors who took a risk on me with timely opportunities, and family who believed I could succeed even when I changed my career direction mid-flight.
What’s most gratifying about learning to program is that I can still renew my earlier interests in psychology and education, but now I can also enact these ideas through code, evaluate how they impact human behavior, and share them with others!
What do you do when you're not programming?
I love dancing of all forms, especially in fusion. I also enjoy playing piano improvisation for fun. As the Arts Chair in my graduate dorm this year, I’ve organized a number of events for students to learn different forms of art informally, from theatrical improvisation to swing dance and painting. When I’m not programming or working on research, I’m usually dancing or taking a musical improv break.
What’s your one piece of advice for new programmers?
It’s never too late to learn to code! But know that coding is not necessarily the end goal, but rather the means.
Want to join the conversation?
- what was it like in M.I.T ? I'm thinking of going but I want to know how it feels to be in there.(27 votes)
- MIT's great! It's fun being surrounded by bright people who are excited about technology and innovation, and Boston in general is a beautiful city to live in -- besides having lots of history and art, Boston is also home to many other universities so the city is filled with college students everywhere.(57 votes)
- hi im Olivia I love proggraming and I wanna be a programmer when I grow up. I have made a couple spinoffs but they're not that good. could u give me some advice. thank you(8 votes)
- start small. when you make spin-offs, try altering the program the person they already made.
youll change the size and shape of shapes and ull familiarize yourself with programming(9 votes)
- What is does CS and HR stand for ?(4 votes)
- CS is Computer Science and HR is Human Resources(3 votes)
- Wow! Looks so cool! What program did you use to make the Tetris game? I want to incorporate audio into my programs but I don't know how yet.(3 votes)
- If you're looking to incorporate audio into your programs, I encourage you to explore the Spin-offs and discussion underneath this program, as well as the program itself:
https://www.khanacademy.org/computer-programming/playsoundsound/6655307787534336
Make sure to also review Khan Academy's guidelines on sound -- there are a couple restrictions specific to sound that you can find in the "Guidelines" area under any processing.js editor.(3 votes)
- Is there a way for me to be able to use the different sensors on a computer in my programs on Khan Academy? Like how that game used voice sensor?(3 votes)
- A google search on "JavaScript voice recognition" found me this: https://www.talater.com/annyang/
There are probably others out there. Worth to take a look.(3 votes)
- What is the website to find tetrilingo? I would like to try the game myself!!(3 votes)
- I don't get what was in the video(2 votes)
- It was one of the games that she made, a version of Tetris where you had to speak a word in a foreign language in order to be able to rotate the block.(2 votes)
- Human-computer interfacing and language learning is exactly what I'd like to get into in the future. Unfortunately I didn't get accepted to the school with the linguistics program I had been so looking forward to attending. Now I'm thinking I'll have to just major in Computer Science at a different university. Do you think it would still be possible for me to somehow get into that field without a linguistics degree?(2 votes)
- Yes. You have a lifetime of education in front of you once you get out of school. So major in CS. Most departments now have compiler and formal languages courses.(2 votes)
- Did you have to adjust for Covid-19 isolation when it comes to dancing or sharing your ideas with peers or executing set goals? What is the greatest positive thing that you are able to get from this change?(2 votes)
- If you are working on the computer, you shouldn't have any setbacks.(2 votes)
- Where would I go to find a game like the one in the demo that was shown?(2 votes)
- On the main page at https://www.khanacademy.org/computing/computer-programming you can click "Browse Creations".(2 votes)