> I'm sorry I wasn't able to write article, so I can write down the article when I interviewed about three years ago. > Interview that I fixed to you three years ago, so it was very difficult to explain to many people. > Technical, so very very difficult. > I'd like to hear about you, your background. > What did you learn, what kind of educational background? > Do you have any questions? No questions. > Your childhood? How do you think about childhood? > Please tell him about your parents. I was born in New Jersey. My parents are both Iranian. They grew up in Iran, and then came to the US to study. > When did they come to US? 1968 They went back to Iran to teach at university, and after the revolution came back to US. > Revolution was 1979. They came back just before or just around... They decided to stay. My father has... He went to school in Imperial College in London, and then came to the United States and got a PhD in Physics from University of Pennsylvania. My mom majored in mathematics at University of Pennsylvania and then got her PhD at UPenn in Computer Science in 1983. I was born in 1984. I didn't understand what my parents did when I was little. [laughs] I just knew they went to they went to the office, and then they came back. I grew up bilingual. My parents spoke both English and Farsi when I was growing up. When I started to go to school, my English became better and better, and I learned to read and write. My Farsi... I stopped learning Farsi, so I never learned to read and write. Except I learned the alphabet. > What language do you speak in your family? English and Farsi > Two languages Yeah. I went to private pre-school, and then I went to public school for elementary school, middle school, high school. My mom did not want me to go into computers. [laughs] So she didn't encourage me at all. But she didn't discourage me, either. She was just neutral. > What did you like in your childhood? I liked baking. I liked going outside, camping, hiking. I liked to make things. I learned how to knit, how to sew. And I liked to read. > Read books. What kind of books? I read mostly fantasy books. Starting in 3rd grade, I read more and more. In middle school, I read books all the time. I read maybe 300-page book every two days. > That's very fast! Beause I didn't do anything else except read. Even in class, the teacher is teaching, and I'm reading my book. I got yelled at: “Stop reading your book!” My parents said, “Elika, stop reading so much and pay attention to the people around you.” So, in 9th grade I started to read a little bit less. And in high school I was very busy with schoolwork and marching band, so I didn't read very many books except for school. In 1998 (8th grade) I learned HTML and CSS. I was really bored one day, and my mom had a book “Teach Yourself HTML4 in 24 hours” > 14yrs old? Yeah, I guess. > Did you make homepages? I wanted to make a Web page, but I didn't know what topic to make a Web page about. So I decided to make a Web page about HTML. > Please tell us how did you attracted about HTML and CSS? I learned it because I was really bored, and this book was lying around, so I opened the book and I read the introduction. And the introduction was funny. So I kept reading. And then, after several chapters, I was like, “Hey, I can make a Web page!”. > Aha, already? So I made a Web page, and I put it on a floppy disk, and I gave it to my friend. She was also learning HTML and CSS. She said, “Oh, this is a nice Web page. You should put it online.” So in 1999, in January I think... I kept giving her floppy disks, and then finally she said, “You have to put this online, so other people can see it.” So in 1999 I signed up for Tripod, which was a free Web hosting service. At that time it was one of the best. > After that time, you kept interest in HTML? After I put my web page up... My Web page was about HTML. So I wanted to learn more about HTML. There were references in the back of the book to the specs [specifications]. So I read some of those, learned about some of the new features that were not yet in the Web browser or not yet in the books. Murakami> The name fantasai was used...? Tripod. That was my username. I wanted “fantasia”, but it was taken. So I switched the last two letters. Because other people add numbers to their screen name, and I thought this was very silly so I didn't want to do that. Murakami> You because famous as expert of HTML from this? No, I was not famous! [laughs] I started to make a Web page about HTML here. At this time, HTML4 was new. Netscape 4 was the most popular browser. And Internet Explorer was starting to take over. So, while I was making my Web page about HTML, I found a bug in Netscape 4's CSS support. I wanted to report the bug to Netscape, so I sent the feedback form on Netscape's homepage. But no response. > How old were you? 15 years old. But when I was waiting for my sister to take her piano lesson, the teacher had a copy of “PC Magazine”, and there was an article about Mozilla and how Netscape opened the source code for its browser and created the Mozilla Project. Murakami-san> Open source Mozilla began? In 1998. So I went to Mozilla's website and I downloaded a “milestone build” binary. This is like, pre-, pre-, pre-, pre-alpha. Very buggy. Murakami-san> Very early stage, and very buggy. So, the bug I found in Netscape 4 was [already] fixed. This is because they replaced the layout engine with Gecko. Murakami> The bug you found in Netscape 4 was fixed? In Mozilla. Which was supposed to become Netscape 5. Murakami> The new Mozilla had that bug? No. Murakami> Already fixed in Mozilla. But, because this test build supported many new features, I kept it, and used it to try things. And then I found another bug. I reported this bug in Bugzilla, and that's how I began in Mozilla. I wrote tests. I reported bugs. I took bug reports that were poorly-explained and figured out what exactly was wrong and wrote a better testcase and a better explanation, and helped the developers to understand the bug. So I did bug testing, bug reporting, and bug triage for Mozilla. Murakami> Bug fixing? Later, maybe 1 or 2 years later. Murakami> Developers in Mozilla were fixing the bugs you found? Yes. One of the things I did was, somebody would report a bug that was very vague, very unclear. Like, “This web page doesn't work in Mozilla”, which is not very specific. I would take this bug report. I would find the part of the Web page that's broken, tear out all the parts that were working, and just have a simplified testcase. I'd figure out what feature was broken, and I would explain to the developer, “This is what's broken. Here is the testcase. Here is what we currently do. Here is what we're supposed to do. And here is where the spec says what we're supposed to do.” And I would look up in the spec at W3C the correct behavior and put a link. Murakami> You tried to simplify? The broken Web page. To make a test case with only the broken piece. Web pages are very complicated. Lots and lots of code. If something is wrong here, most of the code is correct. Most of it is OK. But we're not interested in the part that's OK. We're only interested in the part that's broken. So we delete all of the parts that work. Delete as much as you can until there's only the part that's broken. Then you can see what is broken, which features are used and don't work. Murakami> So you found broken page, and found the problem in the page. Other people found the broken page. Murakami> I am doing the same thing for my Antenna House formatter! I did this because I thought it was fun! Eventually, I started to find places where the spec didn't make sense or said two different things that conflicted, or was ambiguous--it didn't say what was the correct behavior. These were problems in the spec. > Is that the reason you took part in W3C? I joined the www-style mailing list and reported the problems in the spec to the CSS Working Group. Sometimes I would give a proposal for how I thought the spec should be fixed. And that's how I got involved with W3C. I wrote several patches to Gecko. Probably the most interesting is bug 4510. <https://bugzilla.mozilla.org/show_bug.cgi?id=4510> This one was about table backgrounds. The spec was ambiguous. So first, I made a page explaining all the problems with the spec, where it's ambiguous. Showed what are the alternative, different interpretations. Explained which one I thought was better and why. And proposed text to the spec to fix the problem. After the spec was fixed, I fixed the bug in Gecko. This is the explanation I made of the different problems in the spec. http://fantasai.inkedblade.net/style/discuss/table-backgrounds/ You can see, there's two different interpretations for how to make this background. So I explained what are the two different interpretations, which one is better, and proposed text in the spec to fix it. > You fixed this way? Yeah. I chose this one, instead of that one. There are two different interpretations of the same spec. This is one problem, this one here is another problem, this is another problem, this is another problem... and in the end I gave my recommendations on how to change the spec to make it clear. > When did you fix this? I don't remember. I can find out. > Did you went university? I think so. Let me check the date. [rapid typing] It's loading... My first patch was in 11th grade. Well, the first patch that was accepted. > You were high school student. Yeah. This one [4510] is more complicated, it was later. > He found the date. I made two patches. Temporary fix, until the spec was fixed. Then final fix. Temporary fix was end of high school. Final fix was beginning of university. > You are very different from many other girls in high school. Yeah. [laughs] So, when I started at Mozilla, I only went by my email address and my username, fantasai. Nobody knew my real name, nobody knew how old I was, nobody knew where I lived, or what I did during the day (which was going to high school). Nobody knew my real name, or even if I was a girl or a boy. They didn't know. > Young and cute high school student, nobody knows. I think most people thought I was a guy, because more than 99% of people in the Mozilla Project were guys. Anyways, when I submitted this patch for 4510, I had to put my name at the top of the file. So if you found this file, you could find my name, but you couldn't find my name anywhere else on the Internet. So my name was in the source code, but nowhere else. > Nobody knows her real name. > Did you have some worry? No. They told me, when I was maybe 13? 14? Don't use your real name on the Internet. I kind of started to really like being ambiguous. I liked that people didn't know. > He wants to know about you are very different from the other high school girls. > In Japan, a girl like you can make friends with other girls in school. I had friends. I had two very close friends: Allison Wong, who was my friend from 4th grade. She also learned HTML and CSS, she made Web pages. She's more into makeup and dresses and things like that than me. And also, my friend Melisa was a very close friend of mine since middle school. The three of us were often together. But we also had a group of more friends. All of my friends were in the marching band at school. The three of us liked to play video games like Final Fantasy, and we enjoyed Japanese manga and anime. So my friend's first website was about Sailor Moon. Allison's first website was about Sailor Moon. > Did you speak about Final Fantasy? Yeah. Me and my close friends, Melisa and Allison, we liked to play video games like Final Fantasy. My first video game was Final Fantasy 7. After I got involved with Mozilla, I played less and less video games. > ... Up until high school, I though that I wanted to be a math teacher. But in high school I learned about engineering, and I was very interested in sustainable buildings--green buildings. So when I went to college, I decided I'm going to study civil engineering. I went to Princeton [University]. I signed up for engineering courses. > Did you skip? No. Skipping grades at Princeton is very, very, very difficult. > In elementary or jr high? No. I was one year ahead in math, but many other students were also one year ahead in math. In high school I took AP courses. But I wasn't particularly ahead of anyone else. > Please tell why you studied about sustainability, but now you work in computer programming. As you see, computers was my hobby. I did this in my spare time because I liked it. I thought that when I graduated I would design buildings. It didn't work out that way. I didn't very much like computer science classes. I liked the ones that were more practical. I wasn't so interested in theory. I liked my civil engineering classes. In Princeton, I majored in civil engineering. I did a minor in computer science. I also studied Chinese. I was planning to study Japanese when I got to university, but the students in the Chinese department were so enthusiastic about their department that I decided to study Chinese. This would up being a very useful decision. Not only do I know some Chinese, but also it's useful for learning Japanese. End of 2002, beginning of 2003, CSS3 Text was in Last Call at W3C. > Before Candidate Recommendation. The editor of the draft was Michel Suignard, from Microsoft. I didn't know anything about international text layout. So I didn't think my review would be very useful. But I could check for grammar errors and spelling and things like that. But as I read the spec, I found so many things that didn't make sense. So I started sending many substantial comments. CSS3 Text went through multiple Last Calls because of this. > So your feedback was incorporated. Some of it. But they didn't fix many fundamental problems. And they also made many changes without public review. At that time the CSS Working Group worked in secret, and then published public drafts. I objected to publication as Candidate Recommendation because of these problems. But I was not a member of the CSS Working Group. I was just on the mailing list. When it was published as Candidate Recommendation, I was very angry. [laughs] Michel Suignard left the Working Group soon afterward. In 2004, the CSS Working Group invited me to TPAC in France. It was midterm exams week. > In University? Yeah. I really wanted to go, so I found cheap tickets, found a cheap hotel walking distance from the conference hotel which was very expensive. I took basically my life savings at that point, and spent 2/3 of it on this trip. > How many days? One week. I flew to Paris and took the night train, so that night I didn't need a hotel. > Your exams? I arranged with my professors to take the exams at a different time. My mom was very upset. She says, “You're skipping midterms week, to go to a foreign country, by yourself, to meet people you've only met on the Internet. This is a bad idea, you can't go!” I told her, “This is my money I'm spending, you can't stop me.” So I went, and I met Ian Hickson, and David Baron, and Bert Bos, and Håkon Lie. At that time, Ian Hickson and I worked very closely, so I was very excited to meet him. At that point he was very active in the CSS Working Group. And Tantek Çelik. He was Microsoft's representative at that time. He wrote Internet Explorer for Mac. It was the first time I could speak to people in person about these things that I had spent so many hours speaking about on the Internet only, that I could never speak to with anyone else in real life until this meeting. I was very happy. > Was it a surprise that you were a very young lady? I think so, but also, they said, we're surprised you're so short! > At that time, your real name Elika Etemad was published? In 2002, I think... The CSS Working Group, Daniel Glazman said, W3C is nervous about IP, and we need your real name. Murakami> Real name is expected for IP? Because I made so many contributions. So the CSS Working Group had my name, but they didn't tell anyone. So probably they knew I was a girl. At TPAC in 2004, I became an Invited Expert in the CSS Working Group, and they made me editor of CSS3 Text. In 2004 in the summer, I did an internship at Opera Software. This was the same time that the WHATWG began. Murakami> Opera in Norway? Yeah. Murakami> WHATWG? They began to work on what at that time was called Web Forms 2.0 and eventually became HTML5. At this time W3C didn't work on HTML at all. But the Web browsers felt it was necessary to continue to work on HTML. So they created WHATWG to continue the work on HTML, and Ian Hickson was the editor in charge. At that time he was at Opera. Murakami> You were in Opera at this time. Yeah. Murakami> You were involved? A very little bit, yeah. As Ian Hickson became more and more involved with HTML, he had less time for CSS, and I took over more and more of Ian's responsibilities in the CSS Working Group. So, issue-tracking, CSS2.1 wording changes, and test suite. Slowly I took over everything that he was doing before. Before we used to work together. Now, Ian worked on HTML, I worked on CSS. > Sorry, before? Before, Ian and I worked together on Mozilla, testing, HTML, CSS, everything. But now Ian focused on HTML and I focused on CSS, so we split. Ian Hickson was at Mozilla before me, until maybe 2002-ish, something like that? Ian Hickson also started at Mozilla as a volunteer, then became hired by Netscape, before Opera. > He worked in Netscape. Yeah. And then afterwards became an Opera employee. > He moved to Opera? Yeah. So he started as a Mozilla volunteer, then Netscape employee working on Mozilla, and then after he graduated from university he worked for Opera, because Netscape died in 200?. > When you came to Japan in 2010, what did you work in Japan? I worked with Koji and Murakami-san on CSS Writing Modes and CSS3 Text. Writing Modes was originally part of CSS3 Text. We made a separate module. We completely rewrote both specifications. Writing Modes was redesigned. And Text, many parts were redesigned. > Why did you come to Japan and work together with Koji and ? Between 2005 and 2010, I didn't work on Text very much. Bcause CSS2.1 was not done, and I put all of my focus on CSS2.1 Murakami> You are editor of CSS Text since 2004? Yeah. Very luckily for EPUB, in 2010 summer, I had a little bit of a break where I was waiting for other people's work on 2.1. So as vertical text and Japanese typesetting features became really important and urgent for EPUB, I had the time to return to Text and to work on it. So I worked together with Murakami-san, my co-editor, and Ishii Koji-san, my new co-editor. I thought it would be both interesting and fun, but also useful and efficient, if I spent one month in Japan working with my co-editors. At this time I was on contract with Mozilla, and my contract with Microsoft just finished over the summer. Murakami> You had both contract with Mozilla and Microsoft? Contract with Mozilla and Microsoft simultaneously for six months. Mozilla was to work on CSS2.1 spec. Microsoft was to work on CSS2.1 test suite. So I came to Japan. I wasn't sure if anyone would pay for my way to come to Japan. But I figured it was worth it, because it would be fun anyways. I stayed at Family Inn Saiko and worked from EAST in Shinjuku. > Homestay? Ehhhh... It's kind of 1/3 ryokan, 1/3 hotel, 1/3 homestay. Very interesting mix. <http://www.familyinnsaiko.com/> In EAST office, Koji and I rewrote Text and Writing Modes. In 2003, when I was making comments on CSS3 Text, I was finding things that didn't make sense in the spec, so I would do research in the Princeton library system. During this research I met Martin Heijdra, who worked as a library in the Princeton East Asian Library. I asked him about books about typesetting East Asian languages, and things like Chinese and Mongolian and other less commonly-understood languages. He was very excited, because he was an expert in this, and though he would never meet a student who was studying exactly that. Martin is an expert in Mongolian typesetting. <http://library.princeton.edu/collections/people/martin-heijdra> Mongolian is a very interesting case for vertical text because it is left-to-right instead of right-to-left. Also it's a cursive script. I also was looking into bidirectional text, and how this would apply in vertical text at this time. The 2003 CSS3 Text Candate Recommendation did a very poor job of handling Mongolian and bidi and things like that. So in 2004, when I went to Opera, one of the things I worked on there was designing a new system for vertical text. When I came back to Princeton, I signed up for one-semester independent study in the computer science department to continue working on this. > When did you return to Princeton University? In 2004. I was only at Opera for three months. > And you went back to Princeton University In September. > After September? I signed up for independent study in the computer science department to continue work on the vertical text model. As a result, I wrote a paper which I submitted to the Unicode conference in Berlin in 2005. It was accepted there. > ... Earlier version of this. There I gave a presentation on this topic. Murakami> Early version of this paper was on your website. Yeah. And, I think, I met Kobayashi-san of Justsystem at this conference. The Unicode people asked me to create Unicode Technical Report #22. It's mostly the same paper, it's just better. This paper, also I submitted at school, and it became my junior paper in the computer science department for credit. My advisor was Brian Kernighan in the computer science department. Brian Kernighan and Martin Heijdra were my advisors. > He [Martin Heijdra] was advisor. Unofficially. Very practically. So when we started to rewrite Writing Modes in Shinjuku, we started with the model in this document. Changing around a little bit conceptually to match better the implementations and font systems. I became the liaison between the CSS Working Group and the EPUB Working Group. Since I understood very well the constraints and requirements of the EPUB group, but also the status and real stability of features in the CSS Working Group, we were able to work together very effectively to help EPUB accomplish their goals for international text layout even though the spec process was continuing, we kept in sync. Koji and Murakami-san and I continue to work on Writing Modes and CSS3 Text, revising the specification according to feedback and review. It takes a lot of time to stabilize a spec, because you want to make everything right and you want to incorporate all of the feedback and have a very good design in the end. Summer of 2011, one feedback we got was that the orientation of the characters was not defined, and should be defined. At this point the Unicode Consortium stepped in and said, we will make this document. This began the process of making UTR 50. Last year we split CSS Text into two pieces, CSS Text and CSS Text Decoration. These four specs--Writing Modes, Text, Text Decoration, and UTR50-- are the core pieces that are needed to adapt CSS to Japanese layout. I participated a lot in the early part of UTR50, giving feedback. For this spec, there was a lot of controversy over the orientation of many characters and the principles of design for the data. During this process I didn't work very much on Writing Modes, just waiting for UTR50. I worked on other specs, like CSS Images, and CSS Flexbox. > Do you think if you couldn't come to Japan, how things would changed? I think we would have started a lot slower. I think being together with Murakami-san and Koji in the same place made it much easier to discuss many issues and to draft things quickly. Partly this is because of being able to discuss together. Partly also, when I work with someone so closely, I can work more efficiently and for more hours, and it's less stressful. So we could make rapid progress. I very much enjoyed this month that I spent in Japan, even though many nights Koji and I left the office at almost midnight. > It was impressed, you are focusing internationalization of CSS > rather than only Japanese layout, 3 years ago at interview. So you're saying that, my focus was not just Japan but also every other country. > What is your goal for CSS? I want to make CSS the best that it can be, for everyone. If we design CSS only to handle some languages, then when other languages become important and need CSS, the design of the features will be broken because we didn't think about their requirements. So it's important to think about all of the requirements together. Even if you mainly focus on some of them at first, you need to know that the design of the feature will accommodate everything else well. This is also related to the reason why I work so hard for EPUB. Because I realized, EPUB needs CSS features *now*. If we don't provide them, if we don't coordinate between CSS Working Group and EPUB, EPUB will make up its own things and go this way, and CSS Working Group goes this [other] way, ignoring EPUB. And then we have basically two languages, not one language. And the features here [in EPUB] will not be very well-designed, because they are not informed by the expertise of the CSS Working Group. So I saw my role as making sure that CSS remained coherent for the future. So that it stays together, it makes sense, everything works together.