Monitor performance issues & errors in your code

#42: Python in Startups and Investing Transcript

Recorded on Thursday, Dec 17, 2015.

00:00 Have you ever dreamt of creating a startup that will change the world? You and your two best friends leave the dull world of writing internal business apps and go heads-down for three months to launch something amazing?

00:00 It turns out that Python plays a key role in many early stage startups. And this week's guest, Leah Culver has some amazing experience and stories about both! This is Talk Python To Me,

00:00 episode number 42, recorded December 17th 2015.

00:00 [music intro]

00:00 Welcome to Talk Python to Me. A weekly podcast on Python- the language, the libraries, the ecosystem, and the personalities.

00:00 This is your host, Michael Kennedy. Follow me on twitter where I'm @mkennedy. Keep up with the show and listen to past episodes at talkpython.fm and follow the show on twitter via @talkpython.

00:00 Sponsors

00:00 This episode is brought to you by Hired and Snap CI. Thank them for supporting the show on twitter via @Hired_HQ and @snap_ci.

00:00 Hi everyone. Thanks for listening. Let me introduce Leah so we can get right to the show. Leah Culver is an IOS and Python developer at Dropbox where she works on the Paper team. She's a former founder of Grove, Convore, and Pownce. She is also an author of both the OAuth and oEmbed API specifications.

01:37 Leah, welcome to the show.

01:41 Hi!

01:41 HI. I'm really happy to talk to you today about whole bunch of interesting things around startups and investing, and Dropbox.

01:47 Great. Thanks so much for having me.

01:51 Yeah, it's going to be fun. So, before we get to these topics, let's start at the beginning- how did you get into programming in Python?

01:57 So I got into programming in college, I took a class in Javascript and I fell in love with it, switched majors and finish with the computer science degree. I didn't get into Python until after college I was looking to build my first startup and I was looking at Ruby on Rails, and I wasn't super into it and I was looking for alternative web frameworks and a friend of mine suggested Django. And I fell in love with Django and thorough that fell in love with Python and I have been pretty much doing Python ever since.

02:30 That's a cool story. I think a lot of people get into Python through Django, it seems to have really brought a lot of people in.

02:37 Yeah. It's a very simple straightforward framework, it's easy to learn, it has a lot of utility functions and a lot of- at the time, it had a lot more than some other frameworks and platforms and really helped bootstrapped the process of building a startup.

02:55 Startups. These things are really something I am fascinated with, I've worked in them in various capacities, had some fails, things like this, but also done some good stuff there. So I am really excited to talk about this because it's kind of near and dear to my heart. So, What was your first experience with startups- you said you got into Python because you wanted to start one, right?

03:21 Yes, I moved out to Silicon Valley area right after college and had a job at a small startup there, kind of balanced around a little bit, and really kind of wanted to do my own thing and work on my own projects as young, creative, just wanted to do interesting things, and meeting interesting people. And I met my co-founders at an event here in San Francisco and they said, Can you build this for us?" And I said, "Sure!" [laugh] And, so that's how Pownce got started which was my first startup. It was Kevin Rose who at the time was doing Dig.com, and Daniel Burka was his designer for Dig. Both very fantastic, very talented people. So to ask me I was pretty much unknown, hadn't really done much of anything to build a website, I said, "Sure, I can build it," you know, kind of at the same time it was like, "I don't know if I can do this!" So, full of doubt but I thought that I just had to do it, I was committed.

04:25 What a cool opportunity to get started with those guys, right?

04:30 Yes, and the thing is though, I feel like at that time there was a lot of opportunities, people were like, "Can you build this?", and just being able to say, "Yes I can do that", was a big deal because I think it was a lot harder then, there was no Heroku, there was no Amazon Web Services, actually there was one web service which was S3 which helped us a lot in the early days, but you know, you were running your own servers, you were setting up your own websites, doing a lot more I think than is strictly necessary nowadays.

05:03 Yeah, I think one of the major changes over last ten years, maybe 5 years is the amount of capital investment to like get the very first thing together, right, in that first story you have to buy servers, and software and all sorts of stuff, and now, you need to pay $10 a month to some cloud servers to try this out, right?

05:27 Yeah, which is great, it allows people to build things so much more quickly now and try out different ideas, and really focus more on the product and the business.

05:35 Yeah, that's cool. Every day working in tech is just getting cooler right, every day I wake up and think, "Wow, today is even cooler than it was yesterday, it's so fun!"

05:45 Yeah, yeah. I love to tell the horror story when I built my first startup, there was only 1 AWS.

05:52 That's right, it wasn't this huge overwhelming bunch of things. So, what was Pownce?

05:57 SO it was a social networking website, that allowed you to send sort of short messages to friends, post them publicly, and send like one on one as well. So it's kind of a mix between I would say Twitter and Tumbler and you got to attach things to your messages, you could send something like an event out to people, this was kind of pre Facebook news feed being a big thing as well, actually I am not sure it existed then, it's hard for me to remember what existed and what didn't at the time, I am pretty sure Facebook news feed didn't exist when Pownce was around.

06:29 Yes, it seems like it might not have, it's hard to imagine a world without a Facebook. But there was one-

06:34 Yeah, pre Facebook news feed, that kind of blows my mind, that's super crazy. Pre Facebook news feed- that's really good description.

06:46 What happened to Pownce, it's not still around, is it?

06:49 No. It is not still around, we ran into some issues with being too similar to Twitter, I mean we created this nice drama for the press to write about, but it kind of took its toll, on the team and it was hard and 2009 happened which here in Silicon Valley was really hard to raise money, then and so we looked up being acquired. And, we were acquired by Six Apart which was a blogging company, they have Type Pad and Movable Type, in fact I don't know if they still have those because they were later acquired by another company. But at the time, they had all of these blogging products and they acquired Pownce and I don't know if they had planned to shut it down or not, but after acquisition they decided that it was time to shut it down. Which was sad, it would have been nice to keep it but these things happen and I went on to work on other projects at Six Apart.

07:47 Ok, was it fun to work there?

07:48 Yeah, it was pretty nice, I had a pretty good experience. I have been pretty lucky in my career to always work with interesting people, and Six Apart was definitely fun and it was a good time.

08:01 Cool. So after Pownce, what did you work on next?

08:05 I contracted for a little while where I worked on bunch of startups. Basically, people I had known who had done their own startups at that point said, "Hey, I need an IOS app," or, "I need some landing pages," or, "A log in system," so I got to work on all the fun things that you can just pay a contractor to do them for you. And then, I did my second startup, after that which is pretty interesting.

08:32 Nice. What was that?

08:34 It was called Convore, and it was with Eric Florenzano and Eric Maguire. Eric Florenzano being a fairly prominent member of the Django community and we had known each other through Django and he approached me and it was like, "I'm going to do a startup," and at the time I was contracting and I said, "Oh I could do another startup."

08:56 It's been long enough, I could do that again.

08:59 "It's been a year, I'm fine," I guess it had been two years at that point, "It's been two years, I'm fine let's do another one." And so we applied to YC and we bought a prototype and we were accepted to YC and then I was like, "I guess we have to do it now" [laugh]

09:16 That'll put the pressure on. So you actually went through the whole Y Combinator thing?

09:20 Yes. We did, we applied and I was pretty surprised that we got it and it's an interesting experience.

09:30 Yeah, I bet. What other startups went through the same time as you?

09:35 Oh, that's a great question. It's funny because at the time you don't know who is going to be still around, still successful, so we did this in winter 2011, I would say the best known startup from my batch was potentially- there was a couple, Paddle was in our group, it was their first watch- I hate to say it but it was super ugly. So it wasn't until they did the Kickstarter and had like a nicer design that I don't think they really found an audience. But at the time we were like, "I don't think anyone is going to want to wear that"

10:13 It's supposed to look good, you know.

10:14 Yeah, like who wants to wear really ugly watch? But the technology was good, the team was good and they did some pretty awesome things.

10:25 They are still doing cool stuff.

10:27 Yeah. Zero Cater which is well known around here for catering lunches, who else- Hello Sign, the faxing and signing of documents, I don't know if you have used them for anything, if someone sends you a link to sign some documents. I see them a lot more doing investing [laugh] like, "Here is our documents you can sign them" and then I would be like "wow, hello sign".

11:00 Like, "Hey, I know these guys".

11:03 So unless you do a lot of documents to signing for taxes or legal purposes you probably don't see them too often.

11:10 Yeah, luckily. I have more or less avoided that this year being abroad, I would probably have to use something like that, right?

11:18 Yeah, it's super useful.

11:21 Ok, so what was the story of this startup, Convore, what did you guys do there, what was the idea?

11:26 The concept was, so Eric had maintained a forum, like a forum's site with his friends from college, and he was really into it, it was like people, we should have this as a product and we built sort of a real time forum, so it was a mix between chat and forum, it was like topics, it had groups first of all which was like you knew who was in your group of people and then within that there were topics, and within each topic there was a conversation, like a chat. So it was a little convoluted, I think one of the problems with it as a product was it was difficult for people to understand like is it forum, is it chat, who do I invite to these things, like what kind of groups is this good for, it was kind of very vague.

12:16 Yeah, there is a tension between like creating something new and really different but then if it takes you 2 minutes to tell the story of why it's both different but better, like your people are gone already, right? It's too late.

12:30 Yeah, I just had to explain it to you and it took me a little while... [laugh] It was nearly one line to explain what combo was, but it was a really great learning experience on the other hand, right. So experimenting with both forums and chat definitely gave me a lot of- I felt like I gained a lot just learning from the experience and then I ended up pivoting, we wanted to pivot and actually Erics wanted to try totally different product so they founded their own company and did YC again. I don't know why they wanted to go through YC again, it's a great experience but it's also difficult and a lot of work. So, they did YC a second time, and I alone along with an employee, we had hired someone just the two of us pivoted and did grove.io which is basically what Slack is today. It was IRC for businesses, we framed it in the context or IRC but it was a 13:31 and an IRC server. But, you could just buy it, like you could just pay money and have an IRC server for your company.

13:41 Yeah, that's cool. IRC is something that's a little hard to get started and it's not entirely obvious when you are new, so trying to make this more consumer-friendly- that seems like a good idea.

13:52 Yeah, and I am not sure that we took it as far as we could have, in terms of being consumer friendly. And at the time HipChat was still fairly popular and Campfire, but our audience was definitely the more technical side of things, we had corporate IT departments, corporate sort of a lot of sys admins, sort of infrastructure teams, that sort of thing were our main consumers of Grove. And they were happy to pay to have it sort of setup for them, and do things like logging and have like we had to 14:27 API so you could easily write thoughts pretty quickly. Yeah, so it was pretty good.

14:36 Yeah, that sounds really fun. Is it still going?

14:38 Yes, so I ended up sort of- I was going to shut it down because just it was, it kind of wore on me- being a solo founder is sad, and I love money kind of thoughts-

14:50 Hard enough for you to get someone to help you?

14:54 Yes, that's probably advice I would give anyone thinking of doing a company is to think about your team, and building the people around you and having that support. And I have great friends I just, I didn't work- I think one of the mistakes I made was not to work hard enough to build support for the company in terms of team and the people that invested and had a lot in the company. And the people I did work with are fantastic, I don't want to downplay the team we had, but I think we could have grown it a lot faster and brought in more people. So it was definitely a factor of just not feeling enough support and become- the product was actually selling pretty well, and so when we shot it down there were all these sad customers. And Revolution Systems out of Kansas, which is Frank and Jacob's company from the Django community as well, came and said, "Can we buy it from you?" And then I said, "Ok," so I think they got it probably a pretty good deal on it, and they maintained it and it makes money for them, so it's pretty cool.

16:03 Yeah, that's pretty cool that it's a part of the Django community still, in some sense as well.

16:08 Yes, oh probably more so now, than it was then, it's been worked on by several people in the Django community so- pretty cool.

16:17 How much do you feel like the success of these startups is- how should I put this, like, they had the great idea and they just executed perfectly, and how much of it is they had a pretty good idea and they kind of did a pretty good job, but the timing wasn't perfect. Like how much luck and timing do you think play into this?

16:17 [music]

16:17 This episode is brought to you by Hired. Hired is a two-sided, curated marketplace that connects the world's knowledge workers to the best opportunities.

16:17 Each offer you receive has salary and equity presented right up front and you can view the offers to accept or reject them before you even talk to the company.

16:17 Typical candidates receive 5 or more offers in just the first week and there are no obligations ever.

16:17 Sounds awesome, doesn't it? Well did I mention the signing bonus? Everyone who accepts a job from Hired gets a $2,000 signing bonus. And, as Talk Python listeners, it get's way sweeter! Use the link hired.com/talkpythontome and Hired will double the signing bonus to $4,000!

16:17 Opportunity is knocking, visit hired.com/talkpythontome and answer the call.

16:17 [music]

17:37 That's an interesting question because I think neither of those things is the most important thing in the success of a startup. Right? So, I think having a decent product is the bare minimum. You have to make something that people actually want to use, if people can't use it or don't want to use it, that's bad. Timing is super important as well, you are right about that, it is really important to come out at the right time to be with the right movement. I have actually been thinking about doing a new project, I don't know if it's a startup, but I am thinking about doing a project in podcasting, podcasting has been around for- right, we are at a podcast now, talking about podacsting. Podcasting has been around for a long time, but the technology just hasn't been there, and I feel just in the past couple of years there has been some new technological advances that could really change the game for like doing a podcasting network or a podcasting app, or things like that, there is all these like the technology is just so much better. So I think the timing is right, also things like Serial coming up and being widely listened to has made podcasting a viable sort of medium for stories and content.

18:48 I think you are right and, obviously that's something near and dear to my heart because I have put a lot of time into it, but I have been really studying that the last few years thinking a lot about how do you make something like this podcast or podcast in general, something that you can actually make a job or a business out of, right, and then we have had this, like you brought up Serial, Serial is the most popular podcast ever, and it's definitely going to have some kind of financial impact even though it was out of like an MPR type place. Do you listen to Startup from Gimlet Media?

19:26 No, but someone just recommended it the other day. So, I need to check it out.

19:32 Yeah, you should definitely check it out. I was going to ask you about it earlier because you said you went to YC and they follow a pair of women co-founders that start basically a dating website app through there and they like from the very beginning to the very end and it's super interesting, so check it out, but the reason it's sort of relevant now is, those guys left in PR and they were like "I sure hope I can eat. My kids are going to need food, so let's see if this works," and after a year, they were doing $2 million dollars in business like revenue, and they just got $6 million in additional funding evaluated 25 million. They've got a couple of podcasts, right. So I think that kind of story totally works in 2015; in 2010 or 2012 I think people would have just said, "There is no way we are giving you money for that, forget it."

20:27 Right, this popularity of Serial, it's totally advances in technology and how we listen to things and a lot of it actually is funny, because I think it rides of another trend that I am really interested in, I'm really interested in sort of like non professional fitness, like consumer everybody fitness, like beginner level of fitness apps and that has just blown up in the past year or two, more people are working out, running and running is the thing that's driving the podcast. So, [laugh] one of the things that we can do is investing, one of he things I love doing and I always loved doing since I was a little kid is looking at trends. And, predicting sort of what is hot right now, and what is going to be hot. And, I think a lot of the problems of my startups was I was playing around with what was interesting to me, which is pushing the boundaries of where I see things and not really thinking about where people are now, right? So doing something like Slack 5 years ago was like very much like I wanted to play with that space but I don't think people were ready for that in the corporate product space, like these sort of enterprise apps, just wasn't there yet. People weren't really ready to be buying consumer like products as businesses. Does that make sense?

21:52 Yeah, absolutely. I think things like Campfire were about as far as they went, right, like Slack and HipChat and these things and Yammer, all those things have sort of changed the way people communicate within large organizations. And, that's a very different world than a consumer's or small business, right, those guys they live in different world in those large enterprises.

22:15 Right, but I never finished my last point which was timing on product is necessarily the only thing, a lot of it here is support and network, marketing and growth, so you can have the best product in the world, but if no one ever hears about it, you are probably never getting any traction, and if- sadly in the Silicon Valley the money issue is a thing right, so if you can run it without money, you are doing pretty well, but if you need to take investment it's a lot of in your network, who you know, who you are friends with, who you have worked with in the past. So, all of that is a factor and there is some wonderful mix of that that comes together to create the best startups. Like the best startups you see now, it's not just because they had a fantastic product, it's not just because they were in the right place at the right time, right. Like there is actually apps and startups that I see that are the right product at the right time but because they don't have the right network, they suffer, and that breaks my heart a lot. So that's what makes me really sad, but what can you do?

23:18 I think you are right, there is a lot of things that have to come together and let's say there is four- if you have three of them even though those all might be perfect, it's not enough and it's really hard to know especially if it's the first time you try what's right.

23:33 Yeah, and that's why I tend to look at team because the more people you can bring in the more are those aspects you can capture as well.

23:41 So you do some Angel investing yourself, right?

23:44 I just started which is funny, I wanted to talk about it because I made one angel investment. So, I put it on my Twitter bio and then I was thinking, "I feel that's a little bit of a lie, like I've done 1 Angel Investment, " I'm looking at doing the second just now, actually, I'm in talks to do a second Angel investment, and I have put it on my Twitter bio so that I could bring some in.

24:12 I think it's awesome and I think if you have made one Angel investment it can go on your Twitter profile. I think that counts.

24:18 Thank you. I mean, if it's going to go anywhere it should go on a Twitter bio right?[laugh]

24:24 That's right, it should. So, did you see a lot of companies before you ad e that investment or how's that-

24:31 How does that work?

24:33 Yeah, how has it been going for you?

24:35 I think you asked me, I think the initial thing you sent over for me was like oh do you hear pitches 24:40 I was like, "Oh, not really." I've been thinking about doing it for a while, but you need to there is some factors that you need to meet some criteria before you become an Angel investor for your own safety and for the safety of the company so you are investing which is that you need to have a certain net worth or you need to have a certain equity stake in the company already, or things like that.

25:03 That the official qualified investor from the US, something like this?

25:07 Yeah, what's it called? Not qualified- but a creditor? I think it's a creditor.

25:14 A creditor investor, yes, that's right.

25:16 Yes, you need to be the creditor Angel investor, I don't say you need to because there is actually some laws now, where you can sort of put crowd funding and things, to allow for crowd funding-

25:29 And that's super new, right, like that just came out like a year and a half ago, or something.

25:31 Yep, so you can do small investments, large batch of small investments but, I mean I am not an expert on this, but normally it's that you need to have a million dollars in like assets and net worth not tied up in home. Which is-

25:54 That rules a few people out.

25:57 [laugh] Yeah, definitely, definitely it does, but it's for the company sake and for your own because if you put a large chunk of your net worth into a company and the company completely fails, which there is a 99% percent chance that it will, it's looking up for you, right, you don't want to lose that much money, and it's looking after the company because you could sue the company and you can sue the individual if they didn't form their company properly, right? Like if they had some weird corporate structure, I am not sure exactly which ones they are personal liable for versus not, like 26:28 you are not personally viable, but if you form under a so proprietorship for example you would be personally liable for 26:34 .It's all these legal stuff basically to protect yourself and to protect the company.

26:40 Yeah, all that investment regulation and legal corporate structure stuff- a lot of people get into startups because they are into technology and they want to change the world and neither of those really feel like they are really super contributing to that, right?

26:55 No, and the best thing you can always invest in is in investing in yourself. So, doing your own startup. Investing in your own education, things like that are definitely the best return, on your money you can get especially if you aren't a billionaire that's the sort of stuff- like doing your own startups is really the best investment.

27:17 It definitely takes a lot of you, but every time I think you learn a lot. So as long as you don't just quit your job and say, "I've got $5000 and a month and a half to do this, let's go." A little more net than that maybe, but- it's good.

27:35 Yeah, I mean, the worst that could happen is that you run out of money and they have earned a lot. And hopefully- I mean, in the past they have gone into credit card debt and things which isn't fun, but yeah, people don't talk about that.

27:58 Yeah I think it can get pretty rough, so- there is a lot of glamour to it. One of the things I think is interesting is I work with a lot of tech companies from a training perspective, sort of throughout the world, it seems like San Francisco, Silicon Valley, there is some kind of special going on there that seems really hard to replicate in other countries and places. Do you think that's a case and why do you think that is?

27:58 [music]

27:58 Continuous delivery isn't just a buzz word; it's a shift in productivity that will help your whole team become more efficient.

27:58 With Snap CI's continuous delivery tool you can test, debug, and deploy your code quickly and reliably. Get your product in the hands of your users faster and deploy from just about anywhere at any time.

27:58 Did you know that ThoughtWorks literally wrote the book on continuous integration and continuous delivery? Connect Snap to your GitHub Repo and they'll build and run your first pipeline auto-magically.

27:58 Thank Snap CI for sponsoring this episode by trying them for free at snap.ci/talkpython.

27:58 [music]

29:22 Oh, it's definitely the case. It's because people move here to be a part of that culture, so like for example I'm from Minneapolis, right, I grew up in Minnesota and I lived there for 24 years. You'll hear that story everywhere. Like where did you grew up, all over the world basically. And then people come here because they want to know other people like themselves, like very creative, people, very tech minded, very knowny and interested in obscure topics and technology. And, I think it just happened to be the meeting place for these people, it could have been any place in the world that just so happened that because things sort of started here in the seventies and eighties that just happened to be San Francisco and Silicon Valley. San Francisco more nowadays which is nice.

30:12 Yeah, it's moving back up north to the city, huh?

30:16 Yeah. I think it's probably good, for young people and for the economy and San Francisco bringing some of that here as well.

30:26 Yeah, I think it's probably good as well and you know, there is less traffic jam, people aren't commuting as far because they can live more densely in the city.

30:36 Most people in San Francisco that I know do not even own a car. So-

30:40 Yeah, for sure. Do you want to switch gears a little bit and talk about what you do at Dropbox?

30:44 Sure. So I am actually in between roles now at Dropbox, I am switching, I think I have formally switched this week. So, it's pretty cool.

30:55 Good news, new role, ok.

30:56 Yeah, still my past role is developer relations, I was a developer advocate on our API team. And, I basically talked to people about Dropbox APIs, so promoting the API to kind of the long tail of developers, still like not everyone is using it, so not necessarily our big partnership deals, but you know, like for example you, if you want to play with our Dropbox API, those are the kind of folks that we want to reach out to. So it's blogging, and speaking, and doing Hackathons and it's a really cool job.

31:32 Yeah, that whole developer evangelist role seems like a perfect match for somebody who is really good with technology but is really passionate about sharing technology.

31:43 Yes. It is sort of a more generalist job, you are not heads down in code all day, you are heads down in the code part of the day, and then part of the day is talking about tech with other people.

31:54 Yeah, very cool. So, that was last week, what's this week?

31:59 Yeah. I just joined Dropbox Paper, I don't know if you heard about it, it's a new product by Dropbox-

32:05 That's awesome, I have heard of paper-

32:10 Yeah, it's super new, it's just launched.

32:11 But tell us more about it.

32:12 Yeah, so Dropbox Paper is an online collaborative editor, similar to sort of a mix between Google Docs and Medium. Because, I say Medium because it looks- it has a very clean sleek look to it, but it has the functionality of Google Docs, so the ability to create a document share with someone else and then work on it together, and has some really cool features like the ability to sort of like highlight lines and then have the whole conversation around it. It has some fun features like stickers and emoji; it's just really cool, and we have been testing it internally at Dropbox, for a long time, so in my group of developer relations we have to write a lot of blog posts, we have been using it to draft a blog post and get a feedback from the rest of the team, like, "You should change some wording here/ don't forget to mention this/ you should link to this doc." So we have been using it for a long time, and it got to the point where we like couldn't live without it on our team, and it was time at Dropbox- So Dropbox every 18 months has an engineer they want him to try something new, and so they have a program called HackaSprint and you go to another team and you work on that team for a sprint which is six weeks long, so you work on that team for six weeks and then you decide either to go back to your former team and be like, "Oh it's a good experience, I learned a lot, it was fun, I added a new feature for whatever team you were joined," or you stay on the team. And I am in my sixth week now and I joined the team yesterday, so I am on my final week of my HackaSprint.

33:42 That's really cool. Awesome.

33:43 Yeah, and it's because I loved Paper, I wanted to work on it. So now I do Javascript all day, which I am front end Javascript editor and I have been working on integrations, so every time you paste a link into Paper, so say I'll link to a YouTube video or a photo, it renders that in line and that's the stuff I am working on.

34:05 Nice. One of the Javascript front end frameworks using like Angular JS or Amber or anything like this?

34:14 We are using react, which is around Dropbox a super popular, working at a company as a Dropbox you kind of lose perspective on what's popular within industry as a whole, but here react is super popular for a bunch of our work at Dropbox. And then Type Script for static typing of Javascript. And I am sure we use other things but I am so new at the company that those are the ones that I have touched the most, and I haven't dug too deep. It feels like it kind like a separate company here at Dropbpx because it's whole separate product, it's not Dropbox it has a different codebase than Dropbox.

34:51 Yeah, it's not some rest API to some process, it's entirely different, right?

34:56 Totally different stack, I mean Dropbox is mostly Python, I heard you had Jessica McKellar on the show-

35:03 Yes, that was great-

35:03 Yeah she is great.

35:13 So what's the back end for Paper?

35:18 Javscript.

35:22 So is it something like Node?

35:22 You know, it's not Node and I can't remember off the top of my head what it is, I think it predates Node, so Dropbox paper is based off of hackpad which was also a YC startup. They were acquired by Dropbpx and the code base is very similar, I mean, it's not completely reused, but they took a lot of hackpad and used it to sort of bootstrap the development of Paper. And-

35:48 That's interesting because you see a lot of these startups and some of them vanish, some of them explode like Airbnb but a lot of then get kind of gobbled up and I always wonder like what does that really mean, are we going to kind of see this thing live on or what's the story?

36:09 There is different categories, and this is actually something I looked at as an Angel investor, like what category do I think this company falls under. As a startup you can go public, and go big, so like the best result is that your company is huge you explode, you have thousands of employees, you are the next Google, you are the next Facebook, right, you go public. And that's the point for investors most of the time I mean. Anybody can buy shares in the company, there is nothing special about being an investor.

36:40 Right, that's probably the most common outcome for a startup, right?

36:43 Yeah. [laugh]

36:47 One in thousand, yeah.

36:51 The most common sadly is that it fails. And you lose all your money. Another scenario is that the company keeps running as a small business, a good example of this would probably be maybe a big example but like 37 signals I think they are still operating independently.

37:10 Those guys have some really interesting thinking around startups and companies and sort of growth rates and yeah.

37:22 Maybe not a best example of this, but you get to the company that stays private and keeps running maybe Craigslist might be an interesting example, of this, right, like they are independent and have been running for a very long time. I think they are still at like 20 employees or something like that. Interesting right? That's not super common either, that's pretty rare. A lot of times you will grow and your company will be acquired for the team, so those are small acquisitions; sometimes they'll be acquired for the product maybe they'll be acquired for both. So, I think hackpad is an example of being acquired for both, the team and the product. For example, Grove is acquired for only the product, my previous startup Pownce was acquired only for the team.

38:08 Yes, so you've been kind of involved in all three, how interesting.

38:10 Yeah, yeah. Definitely, I mean you see all kinds, right? And now I am working at Dropbox which is likely going to be a big company that goes public. Unless it's a big acquisition, but that seems less likely.

38:28 Yeah, it doesn't seem too likely, it has to be a pretty big acquisition, but I guess that could happen.

38:33 Yeah, these things happen, YouTube is a good example, a huge acquisition by Google, billion dollar I think, something like that acquisition, I should know this.

38:45 And that's another interesting Python story as well, right?

38:47 Yeah, it's very true.

38:50 So another thing that I saw you were involved with was the Oauth and OEmbed API specifications. Is that like the Oauth that everybody knows loves and sometimes curses down around security and -

39:03 Oh yes, knows and loves- loves is a strong word. Everybody knows and struggles through.

39:14 Cool, how did you get involved with that?

39:15 So my first startup Pownce, we wanted to build an API, and we wanted to do secure authentication for the API and at the time, SSL wasn't super popular, I'm pretty sure none of Pownce was SSL, which is nowadays you can be truly horrified by that, nowadays that's pretty bad. But it wasn't easy to get SSL certifications back then. Or it wasn't common, people just didn't do it.

39:45 It was expensive and if you had to run your own hardware it used to be computationally expensive, and there was lots of barriers, right?

39:52 Yeah, so we were looking for a way to sort of authenticate securely for APIs and most APIs at the time were done over html basis authentication which is still in use and over SSL that's not too bad, basically you were just passing your username and password along with every request. The problem with that is that you are allowing any third party site to sort of capture the username and password for your users.

40:25 Right, so if I wanted to integrate like GitHUb with Pownce I would have had to give GitHub my Pownce password, right?

40:34 Yes. Exactly, and that was bad because it could be used for fishing and getting people's passwords, right? So there were two problems, SSL and passwords being available to third party applications or users. So these were the problems with HTTP basic. Flickr at the time had developed a new type of authentication which they probably just called Flickr auth and it was token based authentication. And it was very similar to exactly what ended up being the first version of the Oauth.

41:13 That's cool, so you got involved to kind of bring it into your startup to try and deal with the APIs and the authentication and all that?

41:18 Yes, it was the small group of people and I was asking around like what should I do, and they were like you should talk to these guys, and so I talked to them and they were like well, we haven't really built anything yet but here is our spec and the spec was great and I got involved because I worked the first implementation form the spec, the first OpenSource implementation I think people had played around with it on their own sites. I think people at Dropbox today still have parts of that in their code base which is pretty incredible.

41:49 Yeah, that's really awesome. So did you find out like, ok this spec is not quite making it because- was the spec good enough that you could just write and work.

42:00 Yes, there was nothing wrong with the spec, it was good, I mean, I ran into some issues, I had to do some of my own like signature- signing stuff, there were some there was definitely some back and forth. There was 12 or so people working on it together, so it definitely was a lot of back and forth and collaboration, that's the other great thing you mentioned before about Silicon Valley and people here, it's like, meetings, like physical meetings with people, SuperHappyDevHouse, which is where people go, developers go and hang out together so if we did something that worked at SuperHappyDevHouse we would go to offices, we went to the Twitter office, we would go to Google or Yahoo or something, and we would like discuss Oauth. So it's definitely a group effort, I have to give a lot of credit to Amy Smith, who helped a lot with the first implementations who did the first PHP implementation, helped me rewrite my Python to may be not terrible, so it was definitely more of a collaborative effort.

43:04 Yeah, how cool. And then you also mentioned- you are also involved in OEmbed and that I actually do not know what OEmbed is.

43:09 It's funny because that's what I am doing right now at Dropbox Paper. SO, the concept of pasting a link into a service like at the time Pownce and nowadays Facebook and Twitter, pasting a link into a service and then rendering something pretty from that link, so if it was a link to YouTube, showing the actual video in line, like you've seen this happened I assume.

43:36 Yeah, yeah, yeah.

43:38 Yeah, you'll see it if you paste a YouTube link in the Facebook or Twitter, renders all in one video. A little video preview that people can watch it right on Facebook or Twitter, they don't have to like go to YouTube to watch it.

43:48 Yeah, that's cool. And like Skype has started doing that, Slack does that, it's definitely becoming more popular last few years. Ok, I didn't realize there was a specification for that, that's cool.

44:00 So there was not, at the time actually this was a really unheard of thing people were putting links into Pownce and I wanted a way to display pretty content, so I was like scraping html page, so on a server side you make another request to pull in the content of the page and parse it and display whatever seemed interesting from that page. The problem was that it was really hard to do that at Scale, because the internet is so vast, right, like you can do it for a couple of sites pretty easily, right, you could do YouTube, you could do Flickr you could do nowadays Instagram, these are the things that you probably choose to do right away-

44:37 I see, so this lets any website participate in this so they are embeddable in this sense, yeah?

44:43 Right, right. So then we had developers coming to us, coming to Pownce and saying, "Hey, will you integrate with our site? Here we made an API for you and you can do it this way." And I was like, well, I'm not going to do this, I mean we did it, for a couple of sites and we were like, not going to do this. So let's put out a specification and if they follow the specification we'll pull content from their site. And so we did OEmbed, it was myself, Richard Crowley, Mike Malone, and Cal Henderson, the four of us got together, Richard and Cal were at the Flickr at the time. Mike and I at Pownce. It was kind of the fun thing, because Flickr was the provider of the content and we were the consumers of the content. So it was like a very good back and forth, I guess that again most of the stuff that I worked on was definitely in collaboration with a lot of other really smart people, so...

45:38 Yeah, that's a cool collaboration. One of the things that I sort of heard as you were talking about these things, and I thought it was really interesting experience, is you started Pownce and it's not still running, but it sounds like a lot of what you are doing are some of the lessons you learned at Pownce, right? And, just sort of the theme of like even if you try the startup and it doesn't necessarily make it, you might have gained some really interesting experience and skills that you have no idea where they will take you.

46:11 Yeah. And, honestly, I can say that I am not that sad about my startups not making it because they live on, in other projects, like OEmbed lives on, Slack uses OEmbed, right, YouTube and Tumblr and all these sites still use OEmbed, all these sites still use I mean, Oauth is everywhere, right?

46:35 Yeah, that's really awesome. And, but I am sure you didn't imagine when you started the Pownce, I am going to do like a security API.

46:44 No and actually now I am actually interested in security because of working on it. But I had no idea and it's not even just the specifications, it's like some of the design, that Daniel Berko did for Pownce, has echoed through all these sites like Facebook, the Facebook newsfeed, looks a lot like Pownce, like visually looks very similar, and Pownce took a lot of that from Tumblr, so there is sort of like this evolution of products that you can sort of see happening, taking different design ideas, different product ideas, different API ideas, different technical ideas from sites and the best one sort of continue on for many years.

47:29 Yeah, I think that's really interesting.

47:34 Yeah, it's super cool and it's hard I think it's hard because people imagine startups, they imagine these visionary founder and this brilliant idea and things happening very much in a vacuum and it very much is not like that. Products are definitely very influenced by a large number of people, working together in sort of pushing things forward, and like I said, with the podcasting thing, without advances in technology, certain products and ideas just aren't as possible and then the technology gets there, through other means. So one of the things I am looking at for podcasting is doing speech recognition and transcripts, and the technology wasn't there before, and now via Siri and all these like mobile devices, you can do sort of speech recognition. So, pretty interesting right, how those things can sort of feedback into each other.

48:29 Yeah. That's awesome.

48:31 Yeah.

48:32 Very cool. So, I have learned a lot about the startup world, i appreciate you sharing all of your experience and these stories, and one of the things that hits me is that it's not just the technical thing, it's not like you can be successful to startup if you are really good at like programming. There is all these aspects of it, you've got to make sure you bring them in the right mix.

48:58 Yeah, and I think you can definitely be successful as a technical person out of multiple person startup. But, really it is a group effort, unless you are amazingly- but I have never even heard of a startup that's been just one person who is fantastically great, right, that just doesn't exist.

49:16 Yeah. Even if they could do everything, they will burn out and go crazy, right? You've got to get some help.

49:23 Yeah, you'll go crazy. Oftentimes you hear about one man founder like the Mark Zuckerberg, but there are all this other people as well, Facebook employees.

49:36 All right. 2 final questions for you before you go that I always ask my guests- if you are going to sit down and write some Python code, or maybe even some Javascript, what editor do you open up?

49:46 Atom.

49:51 Ok, yeah, Atom is pretty awesome, I like it.

49:54 Yeah, I like the extensibility of it, because especially working with things like typescript, I am able to find a syntax highlighter, for typescript, and that people can sort of add and built on to it, the things that they need for their projects.

50:10 Yeah, very cool. And the other one is, of all the PyPi packages out there for Python that you could find, what is the one that you maybe think most people do not know about but they should?

50:22 I'm a big fan of Boto- the library for Amazon Web Services. I think if you are using anything from Amazon you should definitely make sure that you checked that out. It makes everything a lot easier.

50:35 Yeah, that's cool, that's a good one. I really like Boto and more generally, we are talking about how you used to buy physical servers, that had like fans and energy went into them and stuff. And, now things like Boto and the programmability of this like infinite data centers that like AWS and other places, they really change the game, so yeah good answer.

50:57 Yeah, definitely a game changer, I mean, at Pownce we had the site go down once for about an hour because a power strip failed at our hosting company and my sys admin got on the phone with them and he could hear the fans in the background cooling the servers. And said hey, our server is out, and they were like a power strip busted, I will get you another one, and they replaced it and the site went back up. And you just that kind of stuff, it's so nice not to even have to think about them anymore.

51:32 Yeah, it's- there are sometimes the things like AWS go down but it is not common, not like if you running on the AWS does go down, it's pretty fun here in San Francisco. For a friend’s wedding once it went down, and half of the room hops on their laptops and you know logging into their websites trying to bring their sites back up.

52:04 "I can't get in, I can't get in, what's going on!?" Yeah, one thing that does seem to happen is if like the Virginia data center goes down, there is more than one well known website or a company that seems unreachable it's pretty amazing how it's kind of all our eggs in one basket but it's a really good basket.

52:32 Yeah. Yeah.

52:34 Cool. All right, any final calls for action? Maybe people should come check out Paper, right?

52:38 Oh, definitely. Yeah, come check out Paper, it's currently in invite only beta but I'll give you a little bit of a pro tip if you know someone who has access to Paper, all they need to do is invite you to collaborate on a document and you will have access and we are also letting in new users every day. So, come check it out.

52:57 Is there a website people can go check it out?

53:01 paper.dropbox.com

53:02 All right. So everyone, go check that out. Leah, this has been a really interesting conversation. Thanks for sharing your stories with us.

53:08 Thanks for having me.

53:10 You bet. See you later.

53:10 This has been another episode of Talk Python To Me.

53:10 Today's guest was Leah Culver and this episode has been sponsored by Hired and SnapCI. Thank you guys for supporting the show!

53:10 Hired wants to help you find your next big thing. Visit hired.com/talkpythontome to get 5 or more offers with salary and equity right up front and a special listener signing bonus of $2,000 USD.

53:10 Snap CI is modern continuous integration and delivery. Build, test, and deploy your code directly from github, all in your browser with debugging, docker, and parallelism included. Try them for free at snap.ci/talkpython

53:10 You can find the links from the show at talkpython.fm/episodes/show/42

53:10 Be sure to subscribe to the show. Open your favorite podcatcher and search for Python. We should be right at the top. You can also find the iTunes and direct RSS feeds in the footer on the website.

53:10 Our theme music is Developers Developers Developers by Cory Smith, who goes by Smixx. You can hear the entire song on our website.

53:10 This is your host, Michael Kennedy. Thanks for listening!

53:10 Smixx, take us out of here.

Back to show page
Talk Python's Mastodon Michael Kennedy's Mastodon