Last December, while doing some last minute Christmas shopping at the Santana Row mall in San Jose, I came upon a young woman playing the piano and singing. She had set up her equipment in a corner across from a coffee shop. I liked the music, and stopped to listen. I felt a bit uncomfortable standing there in front of her, though, because I was the only one. For the most part, everyone else was walking by ignoring her. I listened for a while, but I had presents to buy and the stores would soon close, so before long I too walked on.
A few weeks later on a Sunday morning in mid-January, I heard Liane Hansen interview a new female singer named Vienna Teng on NPR Weekend Edition. The music sounded nice over the radio, so I looked the name up on the web. To my surprise, there was that same face I'd seen at Santana Row. The web site said she'd be playing at Border's Books in Milpitas that weekend, so I went to see her. About 60 people gathered at Borders, and they weren't walking by ignoring her. They were listening intently.
At Border's I learned that Vienna Teng had attended Stanford, initially in pre-med, but ultimately with a major in computer science. I learned that after Stanford, she had been a programmer at Cisco for two years before quitting her day job the previous May. And I learned that two days after that performance at Border's, she was scheduled to perform on Late Night with David Letterman.
How did she do it? In this first Artima.com interview with a former programmer, I ask Vienna Teng how she became interested in music, why she chose computer science over medicine, and how she not only chased after her dream but managed to catch it at such an early age. Along the way, she compares song writing with software design.
Bill Venners: How did you get started with music when you were young?
Vienna Teng: It started apparently before I really made any conscious decision. My parents said I'd always been attracted to music from an early age. The classic story is I started singing before I talked. My Mom would play me tapes, and I'd be able to sing them back perfectly. She said my pitch was dead on, but I'd fill in nonsense syllables for all the rest of it. The words would be all garbled, because I didn't know how to talk yet.
So I always liked to sing, and apparently when I was about four or five I also started to be attracted to pianos and musical instruments. Whenever we went to a friend's house, I vaguely recall climbing up on the piano, plunking on it, and trying to figure it out. So my parents figured I was interested and asked me if I wanted to take piano lessons. I said sure.
Vienna Teng: That was shortly before I turned five.
Bill Venners: You started piano before you were five? That's very early.
Vienna Teng: Yeah. It started out really simply. My teacher, who was great, sat me down at the piano and said, "This thing is called middle C." Find another one that looks just like it. It was almost like a kids game for a long time.
So I started on the piano before I turned five and, basically, just kept taking piano lessons. From early on my strengths were learning by ear, making stuff up, and trying to figure out music just by listening to it. I wasn't so patient at being able to read notes off a page, and to this day I'm pretty bad at it. I was always more interested in taking what I was learning and trying to synthesize it into something new.
Bill Venners: In your first two years at Stanford, before you switched to computer science, you majored in biology with the intention of eventually going to medical school. How did you first realize you wanted to be a doctor?
Vienna Teng: Childhood is filled with many different inputs. You have certain experiences and you believe you want to go into that direction. I was the classic kid in that if my class visited the fire department, I came back wanting to be a fireman. But I loved our family doctor, our pediatrician, who was just wonderful. Not only was he really good with kids, he also told us what was going on whenever he was examining us. It made me really curious about human physiology, and also about taking care of people. I was interested in making sick people feel comfortable and in being able to problem solve, to "trouble shoot," the human body. I also got some encouragement from my doctor. I told him I was interested in biology, and he actually found an old microscope in his lab and gave it to me.
So I got a lot of encouragement to go in the medicine direction. And when I was entering college, being a doctor seemed to me a far more practical way of life than being a musician. I always thought being a musician would be a lot of fun, but I already knew that there was a lot of the entertainment industry and business involved. Being a doctor just seemed more glamorous, ironically. I wanted to be Doctor Somebody.
When I went to Stanford I had this plan that I would major in biology and minor in music. So that defined right there that I was going to become a doctor, and pursue music pretty seriously, but as a hobby. That was my plan at the time.
Bill Venners: What caused you to change majors from pre-med to computer science?
Vienna Teng: That was probably the big turning point of my life. I had been pretty sure I wanted to go into medicine. I loved the science of it. Medicine seemed like a career that was not only intellectually stimulating, but also really had an impact on people.
But in the course of taking pre-med classes, I began to get the sense I was going to burn out before I was done. I was never a competitive person. I found myself steeped in this competitive environment where people were always comparing each other's grades. People would not want to work together necessarily because that might "raise the curve." It got to be a culture that I didn't want to be a part of.
At the same time I was taking computer science classes. Computer science was still competitive, but in a different way. Everyone in computer science seemed fascinated with it, wanted to make a game out of it, and was just having fun building things. I was also taking history classes where people seemed just more intent on finding out the stories of what had happened. It felt more like a learning environment than the pre-med environment.
I had also spent some time shadowing doctors. I went to Stanford Hospital and followed doctors around on their shifts. For the most part, their work consisted of a lot of bureaucracy. The everyday life consisted of filling out forms, and then filling out other forms, and then dictating forms to other people. I know that everybody probably gets disillusioned with their career at some point, but I got disillusioned with mine before it even started.
At that point, I was also starting to play my songs in the dorm lounge, and whenever I would play people would gather around and listen. They would request songs that I had written, and I would say, "Wow, you remember that song?" They would say, "Yeah, we remember when you played it last time. It was really good." They started asking, "When are you going to record a CD? When are you going to perform shows?"
All this collected during the middle of my sophomore year. I realized I couldn't go down the pre-med path anymore. I was going to have to leave that behind. I wasn't sure exactly what I wanted to do instead, but computers were becoming interesting to me. And then I thought, a career in programming or computer design would still leave open the option to do music.
Vienna Teng: They were very demanding schedules. In school, whenever we could steal time to do music, we did. I've never thought of myself as a very disciplined worker, because I tend to work on what I want to be working on, regardless of whether it's a good idea. So I tended to write songs whenever I had other things to do. That's always the way it happened. I tended to want to record songs when I had other deadlines. It all worked out, but it was very stressful. In retrospect, I probably tried to do too much when I was in college.
But when it came to work, actually, it was easier to spend time on music. When I was interviewing for jobs I consciously thought, I need to take a job that will leave time for music. I did get a couple of offers from startup companies, which by definition consume your life while you're working for them. I decided that wasn't really something I could commit to.
When I interviewed at Cisco, I went through all the technical interviews. During the second round of interviews, the hiring manager sat me down and was trying to convince me that this was the job I wanted to take. And I actually asked him about it. I said, "I have some outside pursuits that I'm very passionate about, music in particular. I would like to be able to leave work behind when I go home and basically focus on some of my other interests. And I'm wondering if I'll be able to do that." It was really great. He actually told me, "I know that work is not everything to a lot of people, and we'll make sure that you have time to pursue other things."
Bill Venners: You asked him that in the interview?
Vienna Teng: Right.
Bill Venners: That was risky.
Vienna Teng: I mentioned that once I knew they wanted me, but not before. So while I was working, it actually wasn't that hard to find time for music. There was a lot of leaving at 6:30 and racing to the coffee shop to play, and things like that, but it really wasn't that bad.
Bill Venners: What languages did you use at Cisco?
Vienna Teng: I primarily used Java, actually.
Bill Venners: What did you like about programming?
Vienna Teng: I was thinking about this recently, because we were going to do this interview. When I was working on writing a song the other day, I thought, when it gets down to the actual act of piecing lyrics and chord structures and songs together, it's really not that different from software design.
I remember brainstorming how we will create this structure, the fundamental patterns for this program we're making. And there are certain modules that take care of certain aspects, and they plug into other modules. Songs are like that to an extent. You have to take certain things that logically lead into other things, but they have to be able to connect back to something else. It is definitely a stretch to call song writing very similar to programming, but I would say that the same neurons get used in your thought process.
Bill Venners: They're both creative processes, in some sense.
Vienna Teng: Yeah, I think so. Basically what I'm trying to say is that when you get down to the nitty gritty of song writing, it is very logical to a certain degree. It requires a bit of intuition as to how things can fit together elegantly.
Bill Venners: How is song writing logical?
Vienna Teng: There are certain chords that sound harmonious with other chords when played in progression. You learn over time a sense of which chords lead well to which others.
Bill Venners: So you're not just pulling everything out of thin air when you write a song. There are techniques that you draw on.
Vienna Teng: Exactly. So I might think, maybe for the chorus of this song, I can move it higher because that moves the energy of the song a little higher. So the melody maybe needs to go higher than the verses. Or maybe to give it a new sense of energy I could also change the key, so it sounds like something different. But if I change it to a certain key, I have to make sure that it works its way back to the original key. What chords can I use as stepping stones to get back there? That's the kind of thing you have to work out when you're writing.
Vienna Teng: Yeah, debugging was probably my favorite part of programming.
Bill Venners: Is that intellectual challenge still there in creating songs, or is it something you kind of miss?
Vienna Teng: It is something that I miss, because song writing is a lot slower for me. Everything is very painstaking. Each lyric comes one line at a time, and sometimes I go backwards. Sometimes I finish and realize this song is no good.
In programming, I felt like there was much more an inexorable progression forward a lot of the time. You define the problem. You define what the product is supposed to do. You define roughly what directions you think it could grow and expand later, and you leave room for that. You figure out what base classes you want to have to inherit from, and so on. And you build it. There's a time when you just write the code, and that's relatively straightforward. Then there's the debugging, and trying to figure out what's wrong with it. And then you get to test the thing, and then you ship it.
With songs, it feels more like at any point you could realize this whole thing is just wrong and you have to start over again. It's not like you can define a problem ahead of time. It's not, this song is designed to solve this problem. It's more, I don't know what direction this song is going in, but I'll follow it and see what happens. In that sense it is a lot fuzzier and more uncertain.
Bill Venners: I'd like to talk about how you ultimately escaped the cubicle to chase your dream. And I mean "escape the cubicle" metaphorically, because for a lot of people that cubicle is their dream—to have a good job with good pay in a nice cubicle. The cubicle is a promised land for a lot of people. So what I really want to get at is: whatever someone's dream is, how do they make it happen?
You already mentioned that you went into computer science because it would leave you time to pursue your passion in music. But what were the mechanics involved of actually going from typing
public static void main in a cubicle at Cisco to performing your music on Dave Letterman?
Vienna Teng: It did help when I started my job, I wanted to pursue music to see what would happen there. So I did have a bit of a game plan. I wanted to finish and release the CD on my own. That way I would have a product to sell. And I wanted to try and play shows in the Bay Area. I didn't know how to start, initially, but I figured I would work my way up from coffee houses to bigger coffee houses to maybe a club or two—in general to just try to get noticed. I also wanted to see whether I had an audience, or to put it in business terms, to see if there was a market for this product. So during the two years I spent at Cisco, I was not only working the day job, I was also testing the waters to see whether I had what it took, and whether I wanted to do this.
February to May 2002 was when things really started to happen. That was when I started to sell out the little venues I was playing in. That was also when Virt Records, my record label, approached me and asked for my CD, and we started talking about the possibility of working together.
After a while, it started to be a problem of having so many opportunities in the music career coming my way that I was neglecting work, because a lot had to be done during business hours. I would get into work, and somebody would call me and I'd have to answer that, or I would have to get back to somebody. And pretty soon I was taking many hours of my workday out to spend on music. Then I would have to leave to play a show. It got to the point where I wasn't being fair to my actual employer because I was working more on this nascent music career than I was on my real career. So it was probably time to go. In terms of how I escaped the cubicle, I was just waiting for a time when it no longer made sense to have a day job anymore.
Bill Venners: One thing I sense is that you had a clear mission. You knew what you wanted. I know a lot of people who to some extent still don't know what they want at an advanced age. Also, while reading your weblog, I sensed a clear focus. Maybe that's mostly because it is your music weblog, but you seemed focused on this one thing.
Vienna Teng: Yeah, that's probably partly because the weblog was on my music site, so I didn't post about programming so much. But it's true. I actually have talked to a lot of my friends in my age group about this. It's a prevalent problem of people in their mid 20s to figure out what they want to be doing and where they want to go. I find that my friends who have many talents in different areas are usually most troubled by it, because they say, "I could be really good here, and I could be really good there. But if I throw myself into A, then I'll be neglecting B. And will I always wonder if I should have been doing B instead."
I guess I don't really have any inspirational story to give because I'm the rare case in that I knew what I wanted, and for better or worse, I stuck to it. And it so happened that I also had a couple of lucky breaks, and I may be able to actually pursue music for a living now.
I guess there was a period of time my sophomore year in college when I thought, OK, there's medicine, there's software engineering, and there's music. I can't do all three, obviously. And medicine, if I go that way, it's a lifestyle. It will determine the way I live my life. It will consume the way I live my life. And I was torn for quite some time trying to decide how I was going to do this. I also questioned whether I was good enough in any of the three. So that's probably the point where I had to make the call and then basically stick to it. But that's more my personality than anything. Once I decide something I stick to it.
Come back Monday, June 16 for Part II of a conversation with Elliotte Rusty Harold. I am now staggering the publication of several interviews at once, to give the reader variety. The next installment of this interview with Vienna Teng will appear in the near future. If you'd like to receive a brief weekly email announcing new articles at Artima.com, please subscribe to the Artima Newsletter.
Vienna Teng's website:
Liane Hansen's NPR interview with Vienna Teng:
Vienna Teng's biography at Virt Records:
Latest News at Vienna Teng's website:
Bill Venners is president of Artima Software, Inc. and editor-in-chief of Artima.com. He is author of the book, Inside the Java Virtual Machine, a programmer-oriented survey of the Java platform's architecture and internals. His popular columns in JavaWorld magazine covered Java internals, object-oriented design, and Jini. Bill has been active in the Jini Community since its inception. He led the Jini Community's ServiceUI project that produced the ServiceUI API. The ServiceUI became the de facto standard way to associate user interfaces to Jini services, and was the first Jini community standard approved via the Jini Decision Process. Bill also serves as an elected member of the Jini Community's initial Technical Oversight Committee (TOC), and in this role helped to define the governance process for the community. He currently devotes most of his energy to building Artima.com into an ever more useful resource for developers.