Andrew Lee on Firebase
"'Oh Great! You have the SWOT analysis, and you have Five Forces and all these things,' which are probably great for some types of businesses. But for what we were doing...they just told us, 'You're crazy. Stop this.'" Andrew Lee on entrepreneurship
Transcript
David: Tonight is March 16. Our guest tonight on "Engineers On Stage" is Andrew Lee. How are you doing tonight?
Andrew: I'm good.
David: That's great, man.
Andrew: Thanks for having me on.
David: Cool. I met Andrew because the two of us are roommates. There is a guy who used to live here in the apartment. He was at a coworking space called Doorhaus where I worked for a while. What was his name? I don't even remember.
Andrew: It was Robert Stefus.
David: OK. But he moved out, right?
Andrew: Yeah. He worked with my friend Rishi at a company called Flying Cart.
David: Oh yeah, yeah. I actually know Rishi. He has a crazy engagement story to his wife. It's cool.
Andrew: Yes. The only guy I know who essentially got his fiancée to pay him during the engagement process.
[laughter]
David: It's pretty incredible. So you're from Minnesota originally, right?
Andrew: Yes. Twin Cities.
David: Yeah. It's pretty amazing, we're out here in San Francisco. You got into engineering, though, right? So I always ask, what's the story there? How did you know you wanted to do electrical engineering?
Andrew: You know it's a long story. My family's always been very technical. My dad was a programmer, growing up we had computers everywhere. At one point I think we had 22 computers in my house. [laughing] During high school, actually, my Dad decided this "Internet" thing was cool, so we should start our own ISP. So we had a high-speed line in my house starting in, like, 1998.
David: OK.
Andrew: I was the sys admin...
David: What was it, like a T1?
Andrew: It was an ISDN. I think it was a dual-channel 128kbps back when everyone else had their 9600 baud modems.
David: OK. So you could fit how many? 12 of them on there? Or maybe 14 simultaneously?
Andrew: We did do dialup but we didn't focus on that. We were mainly web hosting types of things. And I did the sysadmin work for that. So I learned NetBSD and how to set up web servers and all that stuff from my dad.
David: When you were 12 years old?
Andrew: Maybe a little older. Yeah, early high school.
David: OK. That's pretty cool. So you guys were selling web hosting, you said?
Andrew: Yeah. We sold web hosting. I did a little bit of programming but mostly through people my dad introduced me to.
David: OK. Cool. So you guys must have had a bunch of customers. How many did you have? 50 or 100?
Andrew: I don't remember. Not very many. The original intention of the business was to pay for the ISDN line so my dad could have awesome Internet. I think it did a little better than that. But it was never a full-time job for him.
David: I see. Were there technology classes at your high school and stuff? How did you become a programmer?
Andrew: You know, I think there was a C class. I never took it. I had a friend, Clayton Williams, who I think David actually knows.
David: I actually do. Yeah.
Andrew: My brother did some programming. It wasn't until my freshman year of high school when I met him. He was already into programming. I really started thinking I should spend some time...
David: Clayton, right?
Andrew: Yeah, Clayton Williams.
David: He was at Amazon for a while. I know him from Seattle. And University of Illinois as well, which is where Ravi and I both went to college.
Andrew: Yeah. He had a game called Blob Fighter which was three circles, a snowman-type thing, and a graphical game back in the MacOS 8 days.
David: Sure.
Andrew: And he had this little fighter game. [laughter]
Andrew: And I decided that I could do better than Blob Fighter. And I built something silly, and then he built something sillier.
David: Sure.
Andrew: And that's how it started, I think.
David: Did you parents do the ISDN thing? It was mostly a side thing, right? They had normal jobs. Right?
Andrew: Yeah. So my dad worked at Cray.
David: Supercomputer, right?
Andrew: Yeah. He's worked at several in that industry where he's been focused on the supercomputer industry for a long time.
David: So then you ended up at Rose-Hulman after that. What was that process, deciding where to go to college?
Andrew: That was a long time ago. My cousin, Jay, who now has a startup as well, he had gone out there, so we knew of it through him. Then my brother had considered it when he went to school. I applied to three schools. I applied to Iowa State, MIT, and Rose. I got rejected from MIT.
David: I also got rejected from MIT.
Andrew: High five.
David: And applied to three schools. [laughs] High five!
Andrew: That's funny. When I was in Malaysia last fall, I discovered that I, my friend, and the guy we were staying with had all also been rejected from MIT. It's a good bonding experience. So, I got rejected from MIT, and I went and I visited Iowa State. I was very much not impressed. At so, at that point, I only had one option, so I went to Rose.
David: It's in the Midwest but it's not next door, because you're from Minnesota but Rose is in Indiana.
Andrew: It was a good 10-hour drive to get home. It's pretty far.
Ravi: Did you do Computer Science at Rose-Hulman?
Andrew: I started out doing Computer Science, and then I had a lot of credit coming in. I took eight AP tests in high school,
David: I had six, I think.
Andrew: It's the cheapest way to get college credit. You pay $60 or whatever for the test, and then you skip a couple quarters. I had some free time to work with and I work too hard, so I added a EE as well.
David: You had CS and EE.
Andrew: Yeah, I had a double major.
David: You had mentioned that you did Electrical Engineering but also CS as well.
Andrew: Yes.
David: So, all three of us have some form of electrical engineering degree, which is fun. Any good stories from there? What's the culture there like? You said one time that a lot of people go on to work jobs out of school there. Not a big startup school, I guess. What's it like?
Andrew: It's a very engineering-focused school. It's all they do. They focus primarily on hardware-type stuff. They have a very good mechanical engineering program and EE program, civil program. Less so on the software. I discovered after I got there that the software wasn't really their strength, which is one of the reasons I chose EE because I wanted to take advantage of what their strengths were. They don't really have that much of a startup culture, although they do have an incubator associated with it. They're mostly a feeder into some of the big tech companies.
Ravi: Doing EE, what were your favorite classes at Rose-Hulman?
David: Yeah, what did you do in college? Did you go to class a lot? Did you work?
Andrew: I did go to the classes. As far as what was my favorite to attend, I think one of them would've been an analog electronics class. That's mainly because the teacher was hilarious. He was one of these guys that talked really, really quietly, but had a lot of really dry humor. The whole class was just dead silent the whole time, because nobody wanted to miss the jokes. It worked really well. Every time he introduced a new topic - here's how to use a MOSFET or some new component - he'd introduce it with, "This is how we will use this new component or idea to generate high voltage."
Ravi: He'd link stuff to real-world applications.
Andrew: Right, very practical things, like here's how to shock people with this...[laughter]
Andrew: One of those I actually built myself. I took one of the ideas that he had and I built a solar powered Taser, essentially, which I then gave to my parents to shock the dogs in our yard. It worked!
David: OK!!? [laughter]
Andrew: It could take a chunk of metal off a doorknob. It was pretty awesome.
David: That's pretty incredible.
Andrew: Yeah, before I get to that, I actually threatened my roommate with it, to make sure he was up in time for lab.
David: OK. Was it like eight AM or something really early?
Andrew: It was an early lab, yeah, so I was like, "Either get up or I'll wake you up myself."
David: Little bit evil.
Ravi: Is Rose Hulman primarily an engineering school, or do you guys have a business and arts and science wing and stuff? I actually don't know much about the university, so I'm kind of curious.
Andrew: That's all they do. It's all engineering.
David: They have a lot of guys too, right? Like, not too many women at the school.
Andrew: Like 88% male, something like that? Very, very heavily male. It used to be all male until maybe 10 years before I was there, it was all male. There were a few women when I was there.
David: Like Silicon Valley.
Andrew: Way, way more so. Way more so, yeah. I felt right at home here, like at YC, because it's the same kind of thing.
David: Sure. So, then, you came over to Urbana a couple of times. You mentioned this to me, right, for Reflections|Projections?
Andrew: Yeah, I was there relatively often, actually. I think I still have a shirt, maybe, from that.
David: No kidding.
Andrew: So, my friend Clayton went to UIUC, and the computer science program there is definitely much bigger and I think it might be better. There were a lot of events there, so I got to go to the competitions. I forget the names.
David: You did the robotics competition, right?
Ravi: Oh, did you do the Jerry Sanders competition?
Andrew: No. There was an AI competition where you write an AI for this game, and they'd fight with each other, and we did a couple of ACM competitions there. Yeah, I was over there. We went to some of the job fairs. The job fairs at UIUC were pretty good.
David: So probably, reflections projects and some of the other ones? Expo, I think, was the big one, too—a lot of companies go there, it's like 300 companies, I think.
Andrew: I don't remember which ones I went to.
Ravi: A lot of tech companies also come to reflections|projections, too, just because they know that people all over the midwest come there just to compete in the competitions.
David: OK, cool. So, did you intern at all when you were in college?
Andrew: Yeah, I had one every year. The first year, I worked at a start-up in Indianapolis that was doing medical device sales software; it was like a CRM for people doing medical device sales, and it was called Know, Inc. That was my first real job I guess, outside of McDonald's.
David: Was that at the end of your freshman year?
Andrew: Yeah, after my freshman year.
David: So, you never worked in high school or anything?
Andrew: No, no, I had normal people jobs.
David: You worked at McDonald's. [laughs]
Andrew: I worked at McDonald's, I was a gymnastics coach, I had a paper route, I worked on a farm picking vegetables.
David: [laughs] That's awesome.
Andrew: I had a job since I was 12, doing all kinds of random things. I did a bunch of consulting work. When I was old enough to do stuff with computers, I did that because it paid better. I'm probably missing a bunch of jobs that I had in there.
David: I did that, too. I was a golf caddie for a long time and did computer work too, when I was in high school.
Ravi: You got a scholarship off of that.
David: Yeah, I did.
Andrew: My parents kept telling me to caddie. My siblings caddied. "Yeah, you can get a scholarship!" I never did, though.
David: That's all right. So, I guess you worked at that company after your freshman year that was in Indiana. That was a software job, right?
Andrew: Yeah. I was an intern in charge of testing, and they had a product with a GUI, which it turns out is very hard to test in an automated fashion, so they just threw interns at it.
David: We deal with this problem a lot at Wishary, actually. Automated testing of GUIs.
Andrew: Don't you wish you had some interns to throw at it?
David: I actually do, yeah.
Andrew: It was an interesting experience. My first day on the job, I met with my boss and he gave me this manual that talked about how all their software worked and told me to read it.
David: A manual?
Andrew: A manual! It was like 300 pages thick.
David: Who the hell has a manual?
Andrew: I went back to my desk, I sat down, and I promptly fell asleep.
David: [laughs] You seriously fell asleep at work?
Andrew: I fell asleep on my desk, first day on the job, and I was woken up by my manager that day. I went home that day convinced that I was going to get fired, and trying to figure out how I was going to pay back my friend, Andy, who had just lent me the money to put the down payment on the apartment I had just rented. Because I had no money.
David: [laughs] That's awesome! What did you after that? You said you had an internship every year. What was your sophomore year like?
Andrew: The second year, I worked at Adobe.
David: Where, in Seattle?
Andrew: No, in Minnesota, actually, just north of St. Paul. They had bought out a company. I forget which company they bought out, but they had a company office with about 70 people there. That was actually a great job. I had a private office as an intern. Lots of very nice people there, and it paid really well. They paid double overtime, and they let me work as much overtime as I wanted.
David: You were working an hourly job?
Andrew: Yeah.
David: Interesting. I didn't know that Seattle... Not Seattle. I keep saying Seattle because Adobe has an office in Seattle, that Adobe does hourly billing. I didn't actually know that.
Andrew: For the interns. I doubt the full-time people are like that, but I was an intern. I was special. Somehow, they thought it was logical to pay me that way. It was great, because I made a bunch of money off overtime.
David: I see, because you worked a lot. What project were you working on?
Andrew: I worked on Photoshop. I don't know if I'm still in there, but at one point, if you looked in the credits for Photoshop, I was listed.
David: I know they credit everybody in Photoshop, right? It's not a corporate-authored product.
Andrew: Yeah, it's a long list of names.
David: That's uncommon. I think most software companies don't do that. They don't acknowledge every single person that's worked on the product, right?
Andrew: I think they should; you've got to get people to care about it. Putting their name on it...I actually insisted on that. I don't know if I would've been in that, but when I showed up, I said, "Do I get to be in the credits?" and they said, "Yes." I emailed them several times afterwards to make sure, and I made sure that I got my free copy.
David: It's a nice product too, Photoshop, obviously. It's very ubiquitous. What after that? What did you do after Adobe?
Andrew: The next summer, I had another offer to go back to Adobe, but I wanted to do something different, so I went and worked for Seagate in Colorado.
David: That's a little further away, because you were in... Remind me. Indianapolis, and then... Where was Adobe?
Andrew: It was in Minnesota. I lived at home that summer. That was convenient.
David: Where were you in Colorado? Boulder, or Colorado Springs?
Andrew: Just north of Boulder, in Longmont, so I spent a lot of time in Boulder that summer. I worked there in the team that builds the control systems for the heads for the hard drives.
David: For hard drives, cool. That's probably a little more electrical engineering, I imagine.
Andrew: That was what I thought it would be.
David: Did you do embedded stuff? What did you do?
Andrew: I wrote MATLAB code. I picked it mainly because I wanted to try to flex my EE muscle a little bit, to see when I got my full time job if I wanted to go in that direction or not. I ended up writing a lot of MATLAB code - a lot of MATLAB GUI code, which was kind of painful. But I had some pretty fun projects, too. I got to do some R&D type stuff, doing some analysis they'd never done before.
David: What were you doing in MATLAB? Some kind of signal processing? What was it?
Andrew: It turns out that building a hard drive is a very interesting thing. It turns out that...
David: It's really hard, isn't it?
Andrew: Every hard drive, when it comes off the line, is actually different. They have individual different performance characteristics. They actually generate the control parameters after they've been assembled. They come out of the machine, and they already have code flashed onto the drives. They use that to test the drives for performance metrics, and then generate the control parameters.
David: CPUs do this a bit too, I think, but it's mostly around the clocking, right?
Andrew: I don't know but I wouldn't be surprised if they did.
David: I think they do some verification routines and then depending on how high of a frequency they can verify, they clock it that way, I think.
Andrew: Yeah, and they put them in different bins, right? They do the same thing with hard drives. I think it's a fair bit more elaborate though.
David: Seems so, yeah.
Andrew: Not only do they quantify is this one good or is that one good, they actually tune a lot of variables to make sure that it's as good as it can be.
David: I see.
Andrew: They also do things like they go around, they test the drive and they find the bad sectors. So every hard drive has this long, hours-long process of validating and optimizing itself before they ship it.
David: So discs ship from the manufacturer with some bad sectors on them. That's interesting. Is it just from manufacturing defects?
Andrew: They all do, yeah, manufacturing defects. There are a lot of very tight tolerances in hard drives, and there are material problems.
David: Yeah, the individual magnetization zones are probably microns or even nanometers across.
Andrew: Very, very small, I don't know the exact dimensions but they were...
David: They're tiny.
Andrew: They're constantly trying to make them smaller. When I was there they were in a process of going from horizontal recording to vertical recording, like the orientation of the magnetic fields on the discs were changing because the limiting factor had become the magnetization of the material itself was getting, the bits themselves were getting too close together and the magnetization wasn't holding. So they had to change the orientation of the fields.
David: It's incredible. Wow. So then, with the disk controllers, if they have bad sectors on them, do they present that to the operating system, or does the disc just hide that?
Andrew: The disc just hides it.
David: Wow.
Andrew: They take care of that internally. So what I was actually doing there was...
Ravi: Did they perform full tolerances as well at that, right? The discs, if there are bad sectors, does it try to presume the data on them? Or...
David: I don't think it writes any data there at all. Right?
Andrew: Yeah, I think it just writes somewhere, in some table, that these bad sectors shouldn't be used, and it just skips over those, doesn't address them.
David: Sure. What were you saying? You were mentioning about discs, I think, right?
Andrew: Yeah, I was just saying what I was working on that summer. I was helping them store and process their own analytics. The team I worked with was with the guy who wrote the logic for the control software. It was some fairly standard EE control systems, but at very high frequencies on a very small scale.
They needed to get diagnostics, so when they put out a new control algorithm, how it performed, and all that. So I spent my time helping them do analysis on that data and store it off to disc.
David: MATLAB is pretty widely used by people that aren't necessarily software engineers, but have to do a lot of analysis.
Andrew: It is.
David: Like mechanical engineers and electrical engineers, those kinds of people.
Ravi: Even in finance, actually, I've seen people use MATLAB.
David: It's a very easy way to do lots of number crunching.
Andrew: There are a lot of functions built in. If you want to do matrix math it's very easy to do that sort of thing.
David: I see. So what did you do after that? That would've been your junior year. So did you graduate and you started working right after that?
Andrew: Yeah.
David: You went to Green Hills, I think, right?
Andrew: Yeah.
David: Interesting place. Not very well known by people, I don't think. Most people never heard of it, I imagine.
Andrew: Probably not, no.
Ravi: Green Hills is near Los Angeles or something, right?
Andrew: Yeah. It's down south.
David: So you came out all the way to the West Coast, huh?
Andrew: Yeah, I got recruited by them when I was at Rose and they did a great job of building buzz around their company.
Ravi: They're a big presence in Illinois as well, I remember that.
David: Yeah, you mentioned that they make you take a test, I think, just to work there?
Andrew: Yeah.
David: You have to take a written test.
Andrew: You have to take a written test.
David: That's impressive.
Andrew: When they did that, at the time I almost didn't apply because I thought I was kind of above that. Why should I have to take a test? I just spent four years going to school, why should I do this? And it turns out it's actually a really good thing for the company to do this. Not only do they do a good job of vetting people, but it also helps build culture because...
David: You guys do this at your company right now, right?
Andrew: We do this now, yeah.
David: We're going to get to that.
Andrew: It works so well that we're copying that. It does two things. One is, it helps you find the good people, but it also, once you get inside there, it helps build culture because from day one everyone has this shared experience of having done this test. And so it means that... And the test is pretty hard. There are two sections, there's a written portion, and there's actually, when they fly you out, they sit you down in front of a computer for six hours and they make you build, like, a real program.
David: Six hours?
Andrew: Yeah.
David: Wow.
Andrew: And it has to work, right? And it's automatically tested. So you build this thing. If it doesn't pass their automatic validation, you're not getting hired. But what that means is everyone who does get hired, you know that they're at least good enough to do that test. And the test is hard.
David: They have some minimal programmer, coding ability.
Andrew: Yeah. And so you trust people.
Ravi: I've gone through their test. I've actually taken this test myself during the first round. They came to our university and they made you take this. I think it was an hour-long test or whatever, in the first round itself. And the questions there, you had to have a well-rounded view of computer science in general. You need to know your basic algorithms, computer architecture, some embedded systems knowledge...
Andrew: The one I took they actually made up an imaginary programming language, and they asked you to execute this language. They explained how it worked, and they gave you sample code and said, what would this do? And if I remember, it was a language where the instructions weren't supposed to be executed until after the variables were defined, but the variables could be defined afterwards.
David: So it supported lazy loading?
Andrew: It was lazy declaration of variables. So it would start like, "printline a+b", and then we would define a and then we would define b, and when b was defined, it was immediately supposed to print that line. So the order of operations got really strange, and you had to figure out exactly how they got printed.
David: There are complicated dependencies, right?
Andrew: Yes.
Ravi: Coming back to Green Hills. Now, we know what Seagate does and we know what Adobe does. So why don't you describe to us what Green Hills does and what you did there.
Andrew: They build tools for embedded systems. They build, they have an operating system, they have an IDE, and they have compilers. They started out as a compiler company but at this point I think their big business actually is virtualization software, which is one of the pieces I worked on when I was there.
David: How many people worked there? Like, hundreds or thousands?
Andrew: Hundreds. I don't know today. When I was there I think they were up to two hundred engineers.
David: Wow, OK.
Andrew: So it's a medium-sized company.
David: Yeah. How did you feel about moving to California?
Andrew: I was a big fan, so that was actually a large part of the reason I picked that job. The buzz that they built when I was being recruited was a helping part of that, but I had offers from Amazon and Microsoft, and some other smaller companies, and none of them were in sunny Santa Barbara.
I remember when I went out there, and I stepped off the plane... I remember it was January, no, it was December when I went out there, and I had driven way too fast through a blizzard to get to the airport in Indiana. It was the worst blizzard I had ever seen in Indiana, there were cars lining the sides of the road, and I was terrified to be driving in this thing. I almost missed my flight, but I didn't because the plane itself was delayed from the blizzard. I fly out to California, I remember I got off the plane and got met by a recruiter there and it's like 55 degrees and sunny.
David: This is for your interview, or when you started?
Andrew: For the interview. And the first thing the recruiter says to me is, "I'm sorry for the bad weather." Referring to the 55 degrees that it was in December.
David: Oh, in California.
Andrew: In California. I said, "You have no idea."
David: No kidding, especially coming from Minnesota, right?
Andrew: Yes.
David: That's great. You were there for a year and a half, I think. What did you work on?
Andrew: I worked in their AP group, their advanced products group, which does their consulting work. They have two sides. One actually builds their products, and the other side tailors those products to specific companies. I did "hired gun" work to modify the operating system, or to build new device drivers, or to port their code. I worked on a bunch of projects, like in the OS level, write device drivers. I also worked on their virtualization software. They have a high-security hypervisor that they use for military and government work.
David: Was this mostly x86 stuff? What was the architecture?
Andrew: I didn't do much on x86. I did a lot with ARM. I worked with a processor called "ARC".
David: Yeah, I saw that. I was looking at the Wikipedia article on the company and I saw something about ARC. I don't know much about it.
Andrew: ARC, it's for people who can't afford normal licensing fee, basically.
It's not great. I had fun with that. I did a bunch of different chips. Until I started on the virtualization software, I didn't do much with x86, but I did do some work on those machines once I started doing virtualization.
David: That's cool. You were there for about a year and a half, I think?
Andrew: Yeah.
David: Why did you leave?
Andrew: I had been planning on doing the startup the whole time.
David: You were just waiting.
Andrew: I moved to California. They paid very well, so I was able to save up some money. I was able to learn a bit about California and the industry, and when I had the money I needed, I quit my job.
David: You were ready to go, at that point?
Andrew: Yeah.
David: That's good. You mentioned that you had saved a fair bit of money, and you did some options trading, I think, or some kind of financial thing for awhile.
Andrew: I did. I started trading when I was at Seagate, actually, as an intern. I thought Seagate was doing very well, so I bought some stock. I made money off that purchase, so I thought this was a great idea. I started trading as soon as I had money to play with.
David: It's amazing just listening to you talk about this stuff. I also did a little bit of securities trading when I worked at Microsoft, which was also a big tech company. Coming from the Midwest as well, it's just funny to see these parallels. I don't know, it's funny. You did stock trading, and then you did some options trading, as well, right?
Andrew: I did. I started just as the stocks world, and I got a little overconfident, thinking I knew what I was doing. I started trading options, and for a long time I did fairly well with that.
David: What strategies were you using, briefly? Anything in particular?
Andrew: I tried to pick tech companies I thought I understood, for the most part. When I thought they were going to do well, I'd buy, and when I thought they weren't going to do well, I'd sell it. I tended to like to play what I thought were over-compensations in the news. When something bad happens, often the stock will swing way lower than it should; or something good, way higher. I would try to catch what I felt was over-exuberance or too much fear, and I'd try to make some money off that.
David: Exploit that, sure, because the underlying value of the company doesn't change that much, day to day. After you left Green Hills, you stayed in California, right? You were in Santa Barbara, or Santa Monica? Remind me.
Andrew: Santa Barbara. It's about an hour and a half, mostly west from LA. The coast curves out there. It's the last big suburb of the giant city that is LA.
David: That's Santa Barbara, right?
Andrew: Santa Barbara. It's a beautiful little town on the beach.
David: You went and started a company after that. It was a hardware company, if I remember properly.
Andrew: That's right.
David: Your co-founder, James, was he working with you at the time?
Andrew: Yeah, James was with me from the very beginning. After I had been at Green Hills about a year, I was getting close to having the money I needed.
David: James was working at Green Hills, as well?
Andrew: No, he wasn't. I know James from high school, actually, a long, long time ago. I was working at Green Hills. I had saved up the money I needed, and I was getting ready to quit. So, I went and I called up all of my friends who I thought would want to do a startup with me. I went through the whole list, and they all said definitively, "No."
David: I had a similar experience when I left Microsoft, actually. I went through my whole Rolodex. There were a couple people that were like, maybe vaguely interested, but they all had jobs, and they're all like, "What is this? Why would I do that?" It's risk aversion, man—it's the Midwest.
Andrew: It is. It is. I'd try and talk some of these guys into doing this for a long time, and it wasn't working. I asked my brother. I asked all these people, and I couldn't get anyone.
David: Engineers, mostly? Who were they?
Andrew: Yeah, engineers. People from college, people from high school, family. I got no's from everybody. I spent a couple months doing this. I also thought I had an idea. I believe at the time the idea wasn't even a hardware company. It was a completely different idea.
One weekend, I was home in Minnesota, just visiting my parents. I called randomly. I called my friend James just to see if any of my high school friends were still in town. He happened to be there, just for one night, visiting his parents. He was home from Wisconsin. He went to school in Wisconsin. We went to Applebee's, and we caught up.
David: [laughs] That's awesome!
Andrew: Yeah, one night. I told him I was going to do a startup, and he said, "Great! I was thinking about doing a startup, too!" At that point, I said, "This could be fun." James and I got along well in high school. I hadn't really stayed in touch with him that well during college, but I thought hey, let's give it a shot.
David: What was he doing at the time?
Andrew: He was still in grad school.
David: He went to graduate school. I didn't know that.
Andrew: Yeah, he got a Master's in industrial engineering. His expertise is in designing processes.
David: Is he from the UK?
Andrew: Yeah, he's British. He moved to the US when he was 12, initially, and he's been back and forth a couple times since.
David: Where was he at graduate school, somewhere in Wisconsin?
Andrew: He went to Wisconsin Madison.
David: UWM, as it's known, right? Or Wisconsin Madison, I guess.
Andrew: Yes. He also spent some time over in the UK during that. I think he spent a year over in the UK during that period.
David: You guys met at the Applebee's. It's just funny it's Applebee’s. Right?
Andrew: Yeah.
David: You went to the restaurant and you talked for a little while. Did you know he was in town? Or you just called him randomly?
Andrew: I just called him—totally random. I didn't know, totally random. I just got lucky.
David: It's a while ago. You said he was looking into doing something similar. Did he move to California then, eventually?
Andrew: This was in, I think, September. I was planning to quit in December, and he wanted to do some traveling. I didn't want to wait, so I said, "Fine. Go do your traveling. I'll start the company right away in December when I quit my job, and then when you get back you can join me." I quit in mid-December.
This is actually a funny story. We had been planning on building a service for, I believe this was a marketplace for expertise, where you could find an expert online and you pay them by the hour and they would Skype with you and tell you what you wanted to know.
David: I think that was part of the rationale behind eBay's acquisition of Skype.
Andrew: Yeah, it was and they actually had a product in there that was along these lines.
David: Just a little bit of background. They paid a lot of money; I think it was a billion and a half euros, approximately for Skype [ed. note: eBay paid $2.6 billion for Skype].
Andrew: Yeah, something of that range. They paid a lot and then wrote it off later. And Microsoft picked them up later.
David: There was a big head scratcher for everybody, like, why would eBay buy Skype? But I think they were trying to set up exactly this. It was a brokered marketplace for professional services, right? Where people could use Skype to connect, I guess?
Andrew: That's my understanding. And they actually had some paid features. You could actually do this. There were some people who had set up marketplaces and the funny thing is, I actually found this out about two weeks, I had already given notice to my job.
David: At Green Hill?
Andrew: Yeah, at Green Hills. I have notice to my boss and he didn't want me to leave so he said, "You know what, I'm not going to tell HR, I'm going to wait until, I think it was Monday, the next Monday, I'll wait until the next Monday and then if you haven't said anything to me, then I'll tell HR. And that Saturday night, James called me up and said, "Hey, I was doing some Googling and I found like fifty zillion competitors to the thing that we're building".
He sent me the link, I went through them and at the time I thought competition mattered and I freaked out and I almost called my boss and I called the whole thing off because...
David: Well, competition is actually, it's an interesting topic by itself because on the one hand, it means that you're doing something that there is at least some market for, right? Otherwise there wouldn't be all these competitors there.
Andrew: At this point, I consider competition in the market to be a good thing, because exactly what you say, it indicates that, there's something.
David: There's a market, there's something, right? At least a lot of people think that but it can be bad in case of a winner-take-all situation or you're coming a little late to the game. Right?
Andrew: Yes, if there is one, big, dominant player that might be worse but I still, I don't think most entrepreneurs should worry too much about competition. If you have something that'll differentiate you, you can get customers anyways. If the product is useful, if your market, you know, exists.
David: Sure, so you found a lot of competitors? What was your reaction at the time?
Andrew: I panicked; I thought that mattered. I thought if anyone had started the idea that there was no point in us trying, that they would win, but I found out later that was a very silly reaction. I still think that this should be done by someone.
David: Well, you know, looking back, it makes sense at the time why you felt that way.
Andrew: It does. Absolutely.
David: It's interesting because there's all these lessons of start-ups out here with lean start-up movement, and Y Combinator, and there is this huge body of institutional knowledge that you eventually pick up. You know, everyone comes at this from a different angle and they come with a different set of preconceptions and that was the one you had, apparently.
Andrew: I think this is actually one misconception that a lot of people have. A lot of people think that the main thing that kills a business is competition and that they need to keep their idea secret, and the process isn't like that at all. It's not nearly as cut throat as, it's cut throat in different ways, I guess, but it's not the kind of thing where you're trying to be secretive and getting patents and that kind of thing to build a business.
You build a business by talking to customers and building something that's valuable and if you get to the point where IP and secrecy matter, you've already won. No matter how it works out you're going to be...
David: Because it means you have something that other people want, right, or that there's a big enough deal.
Andrew: Yeah. Turns out if you've gotten to that stage, you already have a very valuable business. Most start-ups never get to the phase of having something that other people want.
David: Sure. So you didn't end up building the professional services thing, but you still did leave Green Hills.
Andrew: I did, yeah.
David: On schedule.
Andrew: On schedule. I did not change my mind, I had another idea I'd been throwing around for a long time, which was basically a hardware device for your smartphone that would allow you to, in real-time, authenticate credit card transactions.
Basically, you would attach the thing to your smartphone, and then whenever you used your credit card we would tie in at the credit card processor level. And we would alert your cell phone that a transaction was going to take place and allow you to approve or reject it with your fingerprint.
Ravi: That's maybe something similar to what Square is working on right now?
Andrew: Kind of, right?
David: But before we get into that, where do these ideas come from? How do you get start-up ideas?
Andrew: I actually kept a list all through college. I started this freshman year, and I maintained this with actually several other friends, and we had a sort of collaborative list of every time any idea popped into our heads of something we thought should be built, we put it on this list.
Basically, when I started thinking I should leave my company, I just looked at the list and it was the best one on here.
David: I had a document in Google Docs called Opportunities. Same kind of thing, right?
Andrew: Yes.
David: Why doesn't this exist?
Andrew: Very familiar. So you have this list of a hundred ideas, and you just say, OK, I'm going to do a start-up and let's sort it by expected value and pick the best one. So that's what I did, and then when that one didn't work I went down the list, basically.
David: OK. The sort process is interesting too, because you've got to have an idea that, I think, you care about and that you're capable of executing.
Andrew: And that you can get your partner on board with.
David: Yeah, exactly. Whoever else is involved. There are a lot of different dimensions to this. The market has to be sufficiently large, you know. You have to have the right capital intensity. Like, you can't start a company that makes airplanes. At least, I don't think so. Maybe somebody would figure that out.
Andrew: You'd need to raise a little more money.
David: Yeah, right. Couple billion.
Andrew: Not angel-financed.
David: Right. So you took the second one, I guess, on the list. So the first one was the professional services thing. You shied away from that from the competition, you said.
Andrew: That's right.
David: That's interesting. So the second one was what, that was the credit card thing? I guess the idea behind that was you wanted to make sure that credit card fraud wasn't a problem for people?
Andrew:Yeah. We thought of credit card fraud as this major issue and we wanted to stop it, and we thought... I had a solution that was; I spent a lot of time doing encryption in work at school. I took a couple of encryption classes, thought it was exciting. I loved doing cryptography work. And I thought the solution to credit card fraud would be a highly secure, like, cryptographically secure solution to this.
David: You know, PayPal started similarly to this. I don't know if you know that.
Andrew: I do, they had a hardware device.
David: Yeah, they had a hardware device. But I think it...
Andrew: I saw Max Levchin give a talk about it.
David: Yeah. They started up, it was something with payments with phones or something, right? I'm not sure exactly.
Andrew: Yes. I got the whole story. That's kind of a funny story in itself. You guys should interview Max at some point.
David: Yeah. Well, maybe we'll get Max later. [laughs] That's a little ambitious. So you did that, and I know you told me that you bought a lot of hardware, right? Like a whole ton of hardware to get started with this.
Andrew: Yeah. I bought...
David: And you weren't sure whether this was something people would want but you just started building it right away, right?
Andrew: Yep. I bought a microcontroller, I bought a PIC, I think, like a development kit for PIC.
David: I've built PICs myself, actually.
Andrew: And I bought...
David: Did you program it in C or assembly?
Andrew: I don't remember. And I bought $2500 in fingerprint sensing parts. I called up a couple of contacts and got them to, like, give me price quotes for the board...
David: So you were going whole hog on this thing, huh?
Andrew: I thought I was just going to build this thing, and then when I was done I'd just, you know, sell it. I had no idea what I was doing.
David: [laughs] That's very honest of you Andrew.
Andrew: Most of this time while I was doing this my co-founder was off in Asia. He was participating over email but he wasn't really around. So most of this was me fumbling around in the dark by myself.
David: This was between September and December?
Andrew: This was... No, no, no. I quit my job in December.
David: OK.
Andrew: December 15, 2007, I quit my job.
David: OK.
Andrew: Now, from December until early May, it was just me. I'm working not real hard. I was having fun with it. I was coaching at the time. I was spending a lot of time coaching.
David: You were coaching gymnastics, right?
Andrew: That's right.
David: So that was your side job.
Andrew: That got me out of the house.
David: I see. That's nice. So it was for high school students, I think, or who was it?
Andrew: No, it was all ages. I had a team of girls. The youngest was seven or eight and the oldest was 17.
David: Is was at a local gym or where was it?
Andrew: Yeah, it was just a local gym.
David: That's a nice thing to do. I think a lot of people that work really hard in technology don't have that kind of side thing. It's even better when your side thing pays a little bit of money, right?
Andrew: It helped keep me sane for a while.
David: Sure. Because you were working completely by yourself, right?
Andrew: Until January.
David: Out of your own house, or...?
Andrew: Yeah.
David: That's amazing. I get it. I realize it's difficult because I did this for a while. You just get up in the morning...
Andrew: People think that the working from home is awesome. Working from home is terrible.
David: Yeah, it is. Because you don't leave the house all day.
Andrew: You're either always at work or always at home. So you either get nothing done or you can't relax.
David: Yeah. There's not a lot of hygiene around like, the separation between work and home, which can get really difficult.
Andrew: Right. Yeah, you get food everywhere.
David: Yeah, food all over the place. You do your laundry in the middle of the day. You're not ever really home in the sense that you're away from work. You're always at work perpetually. It can get tough.
When I was in Seattle I became a member at a co-working space to avoid this. It was a couple hundred dollars a month extra but I think it was well worth it.
Andrew: Definitely.
David: So you told me that James eventually told you that this wasn't working, huh? So he was the voice of reason in this one?
Andrew: He came out in May and actually made the whole living thing even more ridiculous. We ended up sharing a room.
David: With your co-founder.
Andrew: His room became the office and he slept in my room. This actually made for lots of great jokes. The bed he slept on, actually, I owned it.
David: So he was sleeping in your bed.
Andrew: He was sleeping in my bed, right. So that's how my roommates would introduce us, as this is Andrew and this is the guy that sleeps in his bed.
David: That's awesome.
Andrew: He successfully convinced a lot of people that we we're gay lovers but that's alright. We had fun.
David: Yeah, of course. You guys had a shared bank account too.
Andrew: Yeah.
David: You lived in the same house.
Andrew: Yeah, we shared money.
David: He slept in your bed. So yeah, it was a bit of a marriage.
David: But so it goes, right?
Andrew: True partners.
David: Yeah, right. [laughs]
Andrew: Yeah, it's hard to tell the difference.
David: Yeah, no kidding. So that's good. Then eventually you shut that down. Then what was the next thing you did after that?
Andrew: So around July. James came out in early May and we spend May, June, and most of July working on this. Most of that time was actually spent building a giant 70 page business plan...
David: Oh, no!
Andrew: ... Where we projected that within two years we'd have a million dollars in revenue. We had all these ludicrous... James has taken a lot of business classes so he had developed all of these....
David: Ideas about business.
Andrew: Yeah. He had the five forces model where you can model your competition.
David: Porter's Five Forces model, I think it's called...
Andrew: Yeah. Are you familiar with this?
David: Yeah, I've heard of this.
Andrew: He had all this thing. This business plan was full of stuff.
David: Like two by two matrices and SWOT analysis and...
Andrew: Yeah, we had SWOT analysis, yeah!
David: [laughs] ... All that kind of stuff.
Andrew: We had all that stuff. We actually took it to this local group. I forget what they're called. It's retired CEOs and they get together.
David: Yeah, I think I've heard of this.
Andrew: I'm forgetting the name. But we took the business plan to them. They read through it and said, "Oh Great! You have the SWOT analysis, and you have Five Forces and all these things," which are probably great for some types of businesses. But for what we were doing, which was completely hopeless, basically they just told us, "You're crazy. Stop this."
David: In general, is that what startups do to pitch to a bunch of venture capitalists here? I think it's being reinvented right now.
Andrew: What, the business plan?
David: No, just the way entrepreneurship works. It's in the process of being reinvented, and made better.
Andrew: It is. If I walked into a VC's office with a printed business plan, they would laugh me out of the office.
David: They just want a slide deck, right?
Andrew: They want a slide deck, the best ones. Sequoia, actually...
David: And a demo.
Andrew: And a demo, absolutely. If you don't have a working product when you walk in there, you're never going to get out of there...
Andrew: One of the guys from Sequoia actually talked with us last summer, and he tried to talk us into pitching with no slide deck. He wanted you just to talk. I don't know if I have the confidence to do that, but that was actually what he said. No deck, no business plan, just come in and tell them about your startup.
David: Just know it well enough that you can do that and not have to rely on the deck. Because the thing about presentations always is that they're referred to as visual aids, but I think in some sense they're not an aid. A lot of people use them, and it's a bit more like note cards, almost. It's like you're just reading note cards off the wall.
Ravi: If you just read through the bullet point as you presented the slide, that can...
Andrew: For people who aren't amazing presenters, it helps with the structure of their talk, which is why I like them.
David: The second company, what did it do? Tell me about it.
Andrew: The second one, basically when we figured out this first one wasn't working...James figured it out first, and took a few weeks to convince me that it definitely was not working. He had an idea, and I said, "OK, it's your turn."
David: Come up with an idea, James.
Andrew: He already had the idea. Basically, he had lost some stuff. He had lost his cell phone at a bar in Wisconsin when he was visiting, and he thought, "Why can't we use the Internet to help us find stuff, find lost items?" So, we worked on this product called "Send Me Home" where you could label all of your objects with these codes, and then anyone who went to our website could type in that code and they could return the item to the owner. It had this whole social aspect, a lot like a company that came along later, a little more famous company called "Stickybits."
David: I think I've heard of Stickybits, actually.
Andrew: The founders, they eventually started Turntable.fm.
David: Oh, I see. It's obviously well-known here. This was in 2009 that you were working on this project, or 2008?
Andrew: This was in 2008 we started working on this, 2008 and early 2009. The social aspect behind this was that you could have items where, when you lose them you didn't intend them to come back to the owner, you just wanted to document their journey. So, each person, when they typed in the code, they'd be prompted to add some pictures, have a blog post, and share their story.
David: It's a bit like the tracking dollar bills...
Andrew: Yeah, Where's George, but for any item. I actually had some items do some pretty cool things. We had one item that went to Obama's inauguration; it went to Mardis Gras in New Orleans; it went to the Great Wall of China and a bunch of other places.
David: This got some mentions, I think. I remember reading on LinkedIn that it was noted in "Business Week," right?
Andrew: We had a lot of press, actually. We launched on Lifehacker, if I remember right. At one point, actually, "TechCrunch" wrote about us. We all loved people picking it up from that. At the end of 2009, we ended up getting a mention in "PC World." They picked us as, I think it was the 64th best product in 2009. We were ahead of Dropbox, which is the best thing ever. The funny thing was that at that point we had already given up.
We already knew this thing wasn't working, and we were looking for ways to transition out of it. This thing came out and we said "Great! We can call our competition and say Hey, how would you like to buy up a product that's better than Dropbox"? We'll do it for cheap and we can move onto our next product.
David: You did end up selling it, right?
Andrew: Yeah, there were a couple of companies bidding for it. One was a start-up, and actually they were starting a new company called Memory Lane out here in San Francisco, and then the other one was an established company called TrackItBack that sells these labels in stores worldwide, and they were offering cash.
David: Cool.
Andrew: We took the cash offer.
David: You took the money, cool.
Andrew: We took the money.
David: That's really great. I imagine you put some of that into your third company.
Andrew: That's right.
David: This is amazing, this is your third company, you're like 28 years old now right?
Andrew: We kept telling ourselves that nine out of ten are supposed to fail, so we only have n more to go until it succeeds [laughter] . We're on number three now...
Ravi: You just moved on with opportunities.
Andrew: Exactly, so we have to fail six more and then one of them will work.
David: Your third one, you targeted it for musicians, but it's a chat product, right?
Andrew: Yeah, I wouldn't say it's targeted for musicians. It was intended originally for blogs, that was the original audience, and it was a chat product that looked a lot like Facebook's chat that let you talk with other people. Not that who were your friends, but other people at the same websites.
The thought process there was, there are lots of people on the Internet reading the same stories as you, but you can't seem them. They're looking at the same thing as you are, but, if you went to a convention, and you went to a booth at that convention, and you were the only person at the convention hall, that would seem strange and lonely.
Why when we're on this convention hall—the Internet—why don't we get to see the other people?
David: I think there's some of this on blogs and news articles. They have comment streams, and things like that, but it's not real time.
Andrew: It's not real time, and it doesn't let you do things like branch off into private conversation.
David: Right. It's more long form and kind of asynchronous. It's not like standing there talking to somebody, right?
Andrew: It persists. One of the problems with comments is that people are afraid to leave comments around because it might come back to haunt them later. Someone might come on later and see what you wrote, and if it was something non-insightful, or angry, or something, you might regret it, where if it was something like chat, the histories don't live around very long, so you're OK having those discussions, especially if it's a private conversation.
David: Is that the expectation that you communicate to your users that this will be off the record, that it will just disappear in awhile?
Andrew: We have a couple different kinds of chats. There are public chats that exists on a web page, that do let you see what other people said and go back in the history a fair amount, but It's not forever, and in our experience most people don't scroll up. They just see the new stuff as it comes in.
We also have private chats, where the expectation is that it's off the record, just between those people, and we don't release to those transcripts, and it's only with people that you share.
David: For these chats, how many people participate in these? One, or two, or five? How does it work?
Andrew: It really varies. The private chats are generally one on one, but you can invite as many people as you want on those. The public chats really vary in size. On most websites it might be a few people, but on bigger celebrity websites you invite hundreds of people in a single chat. One of the first big sites that we were on was the Limp Bizkit website.
David: Limp Bizkit.
Andrew: Limp Bizkit. It was one of the first big ones. When Fred Durst tweeted about the chat, we had hundreds of people show up in his chat room.
David: Did it break?
Andrew: No, it worked just fine, although Fred Durst said he hated it—James opened up a private chat with him and he said "what is this terrible chat? I hate it", but he left it on his website and he continued to pay us. Apparently he didn't hate it too much.
Ravi: In terms of identity, are people tied to their Facebook or Google identity or can people just chat as anonymous?
Andrew: We tried to stay out of that business. We tried to let the website owners hook that up however they wanted. If they wanted to tie-in with Facebook we had some tools to let them do that, if they wanted to use their own authentication systems, we let them do that. It turns out the vast majority of people using the chat actually use our API to allow people to sign in to authenticate, with their own login.
We are very popular especially on CMSs that have a plugin system because we can do that API part automatically. We're very big on WordPress, and Vbulletin, and Drupal.
David: Just to be clear, this is a tough problem. You have to have a bunch of people that are all connected at the same time and you guys handle, in some cases like, tens of thousands or more of concurrent connections, right?
Andrew: Yeah, we do.
David: You've got all these people all connected to your server at the same time, all these messages are being passed around to all these people. It gets a little tough, right?
Andrew: Because of the problem that you referred to and the fact that we have to do the messaging in ways that are not optimal, because we're on a web browser we have to do what's called long-polling to support most browsers, we end up handling tens of thousands of HTP requests every second across a bunch of servers.
David: Every second you handle tens of thousands of requests, that's incredible. You wrote the whole thing in Java and Jetty if I remember correctly.
Andrew: Yes, the chat's all on Java.
David: You wrote your own web server for this, right?
Andrew: No. Jetty is a Java servlet container designed specifically for doing asynchronous I/O. It's designed for doing things like long-polling.
David: When I heard about this, the first words out of my mouth were "you should use node", but, this came out before node was popular, this was 2008 or 2009.
Andrew: Yeah, we started working on this in 2009. Node might have started, but I'm sure it wasn't usable at that point.
Ravi: Until last year, node wasn't even that big, the community wasn't that big.
David: That's good. So, what's the evolution into Firebase? That's your new product right? That's the really exciting thing you're working on now.
Andrew: The chat's gone very well. We've got a lot of websites using it. We're on about 60,000 sites.
David: Damn. Are most of those people paying?
Andrew: Most of those are free. It turns out that the distribution, there are a few very big sites, and tons of little sites, and most of our money comes from the top few.
David: The really big ones.
Real quickly, that's an interesting point. A lot of start-ups are trying this model now where they have a very hands off sales process. There's been a lot of discussion about this recently about whether or not you should try and have a lot of smaller customers or a lot of bigger people. People complain, they don't like talking to sales people about pricing and stuff, but it turns out that's where a lot of companies make their money, on the bigger end of things.
Andrew: There's a tradeoff. Small customers are nice, they lead to a more fun company to build. They may be a little more fun to interact with. There's much less hand-holding that you need to do with them. Self-serve is awesome, I get emails everyday when people sign up, I do nothing, and the money just comes in, which is really nice, but one big customer can be as big as a hundred small customers.
David: I see.
Andrew: When you have the option of, you know, Universal Music is one of our big customers. If we had the option of putting in a couple extra features to make sure they have what they need, it's the same as getting maybe, 100 of these small customers.
Ravi: So, coming back to this chat program that you're working on, I can see where a lot of your customers were using chat to let people comment about the products, or services, that they have, so for example, for Limp Bizkit website, the users can comment about next tour dates, for Limp Bizkit, but what about the applications you have for chat where you're Comcast, and you need to do customer service, and I have a chat program, or Amazon, or these myriad of service websites where you have some sort of issue? Did you guys consider that?
Andrew: No we didn't, in fact we specifically avoided that vertical because there are a ton of companies doing that.
David: OLark, Zendesk, Assistly...
Andrew: And they aren't even the big ones, Boldchat, Liveperson, there are a lot of companies doing that, and we saw that as a very crowded space. We were focused primarily on group chats—peer-to-peer—we were trying to open up the web. With one of those services, you get to talk to a salesperson; we wanted peers to talk to each other on web pages, so we specifically avoided that vertical.
David: I see. Tell me about the current company, it's pretty exciting, you're about to launch a pretty big product.
Andrew: What we discovered when we were building this chat product was that one, these customers with all the money were a few of the big ones. Two, those customers needed a lot of customization that we just couldn't provide them.
They kept asking for new features and new customizations, and for a long time we'd add more checkboxes and drop-downs and options for them to have what they needed, but it got to a point where they'd have requests that really didn't fall under the scope of the chat product we were building.
We sat down and had a long hard think about this. We figured out that the extreme of customization is a full development platform. Rather than trying to build every feature for them, why don't we just expose an API to them and let them build it themselves, because one of the nice things about these big customers is—the big Facebook games and the music sites...
David: They're pretty savvy.
Andrew: ... They're savvy, and they have their own developers, and they don't have enough developers to build a full chat system, but they have enough to customize the GUI and that sort of thing.
David: They probably want that anyway, since they want to offer a more branded experience, right?
Andrew:Exactly. One of the things we get asked a lot for is people want access to the data. We have all these chat transcripts, and we provided a nice GUI to get at them, but we didn't have any sort of API. People wanted to do things like market to these people. This person mentioned this product, I'd like to show an ad tied to that product, or they have a game and they want to give them virtual points for doing certain kinds of things in chat, how can we make that happen?
We thought real hard about how we make this possible, and there really wasn't a good way for us to expose all this and still have this chat product. We said great, we're just going to build this full, like, development product for building chat.
David: The other important trend here that we haven't talked about much is the coming of the real time web. Whereas the web used to be just about an HTTP request to getting a full web page down, increasingly now, you don't have to go all the way to the server to get more information. The users expect that the new stuff will be pushed to them automatically.
Andrew: It's true, yeah.
David: You guys enable that.
Andrew: We do, we do. This is why what we figured out was the reason that these developers were using us. They were able to build their own GUIs, and they actually in a lot of cases preferred to build their own GUIs.
David: On top of your chat product?
Andrew: Just in general. The thing they couldn't do was that real-time distribution of data. That's what they really needed to be able to do.
David: Just to be clear, you have a bunch of data, and a bunch of people are either looking at it or observing it. One party can change some piece of information in this whole giant collection. Everybody wants to know when it's changed. You can imagine using this to look at the weather outside, over a huge geographic area, or maybe a set of stock prices, if people are trading, right?
Andrew:Right, exactly. This problem turns out to be a very hard problem to solve, especially if you have multiple parties changing that object. An example you had, if a 1,000 people are watching and one person makes a change, and you're doing this over long-polling, which is very common technique for doing this in the browser, that means you have to set 1,000 HTTP request for every change that's made.
Now, let's say all thousand of those people are updating that object. You have to do a 1,000-squared HTTP requests, every n amount of time to handle that. This is the kind of thing that, most people don't know how to build a software that can do this.
David: It's actually a very specialized area of expertise, right?
Andrew: This is one of the reasons that node is so popular, because it enables developers that might not be experts in this topic to actually build asynchronous event-driven software, and build things that scale very well.
David: That's pretty neat. What's next, then? You're going to launch this product, when you said, April 13th?
Andrew: Yeah, the press date is April 13th, and we're intending to tell the world about it, although I don't think we're going to be able to invite everyone into the beta just yet.
David: OK, so it will come out and there will be a limited beta for a while?
Andrew: We already have a number of companies in beta, and we're going to open that up a little wider on the 13th as well as publish our docs to let people to take a look.
David: Just to be clear, your intention with this is that it will be a full database platform. You could write your mobile application or your website or whatever. You won't need to host it on Heroku or on DotCloud or any of these other systems, it will just talk directly to your service, right?
Andrew: Exactly. What we actually do is we provide a synchronized data structure that you can access from a simple library that you include in your application. Any changes that you make to that data structure propagate automatically to everyone else who has the same data structure, and it also propagates to our servers where we save that data. We act as both a database and a communication layer, we do synchronization between all of our clients.
David: You have some pretty good demos, one of them is that race car, you show a race car on a mobile and people can turn the mobile device and the racecar will pivot on another screen, remotely, right?
Andrew: Yeah, you can use your phone as a steering wheel or game controller.
David: It works in real-time, just with a website, right? No native app, just a website.
Andrew: Yes.
David: That's pretty awesome, and what are some of the other ones? I think you had a Tetris game too, where two people can play a game at the same time?
Andrew: The most popular demos are the games. Tetris is great if I'm meeting with a customer or investor, I can sit down and play Tetris with them for five minutes, and then at the end of that they already love it. Because they love Tetris.
David: That's cool.
Ravi: I mentioned earlier that whenever start-ups work on a good idea, there are always competitors in the same space. Who do you think the competitors in the same space, how do you differentiate yourself on that?
Andrew: There are a couple broad categories of competitors. There are people who are doing real-time services, and there are people that are doing a sort of back-end of the service type of approach. On the real-time side the big ones are people like PubNub and Pusher and there are some others, Beaconpush I think was one of them, there are a number of others. They focus on doing a pub-sub service. You can send out messages to large numbers of people.
On the other side you have people like Heroku, AppEngine, StackMob, and they provide a persistence layer, and a back-end for your application. We sit in the middle between the two of these. We provide both a persistence layer and the real-time messaging, and we let you build fully collaborative applications without any server infrastructure at all.
David: That's amazing, I just want to say. It blows my mind that this is possible. Alright, that's about all we have time for tonight. Thank you.
Andrew: Thanks for helping me out.
David: We hope to talk to you soon.
Andrew: Sounds good.