Learn Python with Talk Python's 270 hours of courses

#202: Building a software business Transcript

Recorded on Wednesday, Jan 30, 2019.

00:00 One core question around open source is how do you fund it?

00:02 Well, there's always that PayPal donate button, but that's been a tremendous failure for most projects.

00:08 Often, the go-to answer is consulting.

00:10 But what if you don't want to trade time for money?

00:12 You could take things up a notch and change the equation and exchange value for money.

00:17 That's what Ines Montani and her co-founder did when they started Explosion.ai with Spacey as a foundation.

00:23 Listen to her story about building a sustainable software business on open source and Python.

00:28 This is Talk Python to Me.

00:30 Episode 202, recorded January 30th, 2019.

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

00:53 This is your host, Michael Kennedy.

00:55 Follow me on Twitter, where I'm @mkennedy.

00:57 Keep up with the show and listen to past episodes at talkpython.fm.

01:00 And follow the show on Twitter via at Talk Python.

01:03 Ines, welcome to Talk Python.

01:05 Yeah, it's really nice to be here.

01:06 Thanks.

01:06 It's really excellent to have you here.

01:08 You gave such an excellent talk at EuroPython in 2018.

01:12 And I just wanted to have you on and talk about that and share some of those ideas.

01:16 I think it's going to be a lot of fun.

01:17 Yeah, I think so too.

01:18 For sure.

01:18 Before we dig into those, let's just get started with your background.

01:21 How did you get into programming in Python?

01:23 Yeah, it's actually kind of interesting because I would say I don't have the typical programming background.

01:27 So I started...

01:27 You didn't write games at five years old?

01:29 No, but I started making websites when I was like 11, when we got our first computer.

01:33 So I first started in Microsoft Word.

01:35 And then I, you know, it was back in the day when you could just look at the website source and copy it.

01:40 And so I would do that and always build websites.

01:42 And I did then decide when I was older that I wouldn't want to do this professionally.

01:46 Like for some reason, it never appealed to me.

01:48 But I, so I worked in media, I worked in marketing, and then eventually ended back at programming

01:53 when I realized that I could combine all the things I liked into a job because I also did linguistics in uni.

01:59 So I was always interested in language.

02:01 Yeah, that's a really interesting background.

02:03 You don't think of that as a normal path, like marketing into software development,

02:07 especially something like data science, right?

02:09 Where it's really deep.

02:11 But I guess that ties more into your linguistics side of things, right?

02:14 Yeah, and Spacey, especially.

02:15 Like Spacey, when I started working on Spacey, I realized that, wow, I can really combine what I liked.

02:20 For example, front-end development with a bit more programming, other types of stuff with language

02:25 and really, you know, using computers to understand language.

02:28 That was kind of like the perfect combination of stuff.

02:30 Yeah, that's cool.

02:31 Was that kind of how you got into Python because the NLP side of things?

02:34 Or where was Python in the story?

02:36 Yes, mostly, yeah.

02:37 Nice.

02:37 And today you're running a business of your own, doing some really cool stuff, which we're going to dig into.

02:43 Maybe just tell people quickly about what you do day to day.

02:46 Yeah, so our company is called Explosion AI, and we mostly develop a lot of open source software.

02:50 One of those projects is Spacey, which is a popular library for NLP and Python.

02:55 We also publish other products and other tools for software development developers.

03:01 So we're a developer tools company.

03:03 It really sounds like such an interesting project.

03:04 And I love how you have Spacey and you kind of built a proper business on top of it,

03:11 not, you know, just throw like a PayPal donate button on there and hope that that does something right.

03:16 Like, but legitimately building something on top of this open source stuff that you all have going on,

03:21 which is great.

03:21 We definitely spend some time thinking about how we could best do this, but it combines all the things we like doing.

03:27 It's really nice to have an open source community to put our stuff out there.

03:30 So yeah, we're very happy with the way we've made this work.

03:33 Yeah, it seems like it's working out really well.

03:34 So let's dig into this idea of building a software business.

03:38 You know, it's something I'm very passionate about, something that I've done, right?

03:42 I have my own business and work for myself as well.

03:44 And I think one of the things that really appealed to me about your talk was,

03:48 it kind of pushed back against some of these startup, San Francisco, high growth VC type mindsets

03:57 that are fine for some things.

03:59 But it seems like a lot of folks see that and go, oh, well, if Instagram raised all this money

04:05 and it was successful, I'm going to have to raise all this money for my new text editor or something silly

04:11 that doesn't fit that mold, right?

04:13 Yeah.

04:13 No, that's definitely, that's something we see a lot.

04:15 And I think, of course, I understand why this narrative is so prominent because it's also,

04:19 it's often pushed by people who like that narrative because it makes the money.

04:23 And also, I'm not saying it's the wrong narrative for everything.

04:26 But like, definitely, I think there are lots of businesses that also work very well

04:29 if they're not following the typical startup playbook.

04:31 Yeah, absolutely.

04:32 You know, I think it's partly popular because it's a little bit like winning the lottery.

04:37 People like these winner takes all scenarios.

04:40 People like imagining that type of success and going after that.

04:44 So I think it does play to some of the instincts that we all have probably.

04:48 Yeah, probably.

04:49 I will get into more detail about this, but you talk about selling what you currently have

04:55 versus selling potential, right?

04:58 Like, hey, this is going to be great if we just had $100 million in VC money

05:02 and we could get everybody to use it.

05:03 Think how amazing that would be, right?

05:05 And I feel like that's also a little bit, I don't know, I feel like so many of those things

05:11 are a little bit shallow.

05:11 And I don't know, that's not quite the right word, but it's like, they're not really creating meaningful things for people.

05:18 they're just trying to get a bunch of people to use something silly so that then somehow they can skim a bit of money off of it.

05:26 Yeah, you're selling the potential to make future money because the idea is,

05:29 of course, if you take $100 million in funding, you need to deliver a lot more than that.

05:33 So you're basically, you're working towards that future where you're going to make $100 billion

05:38 rather than the present where you could be making $200 million, which they still are pretty,

05:43 I would say I would call a business with $200 million profit, I would call a successful business.

05:48 Unqualified success, right?

05:50 But in this venture, sort of win the lottery thing I told, like that actually would be kind of a failure, right?

05:55 Like just doing double what you did in raising your money, that would actually be

05:59 probably not enough to make the investors happy.

06:02 Like they look for more than that generally.

06:03 I mean, it's better than failing, but still.

06:05 Yeah.

06:05 Yeah.

06:05 So let's talk about your journey and your project, your company, Explosion AI.

06:11 So I guess maybe just set the background, like how does Explosion AI and Spacey,

06:16 and we'll talk about some of the products you have, how does that whole history fit together and whatnot?

06:20 My co-founder, Matt, he used to work in academia.

06:23 So he was a researcher and he was working on NLP and he very early on saw that,

06:28 oh, this is getting, this is finally getting useful.

06:30 We're finally getting to a point where this can actually be used in like commercial projects and help companies.

06:35 So he left academia and started writing Spacey.

06:38 So he basically, he was in Australia, he moved to Berlin.

06:42 He took some time off and focused on the open source project.

06:44 And that's kind of the early beginnings.

06:46 And we met here in Berlin and we started working together very quickly because he always had ideas

06:52 for like visualizing the software, making it more accessible, making it more usable.

06:56 And that's also something I was very interested in.

06:58 So we started working on Spacey and this worked very well.

07:02 So yeah, we founded Explosion AI together.

07:04 And of course we had to think about like, well, how do we make money?

07:08 how do we fund what we're doing here?

07:10 And so for the first, I would say six months, eight months, maybe we did consulting.

07:15 So we really, there were lots of companies who were interested in that.

07:18 So we did have the advantage that we had Spacey.

07:20 People liked our work, wanted to implement this better.

07:22 And yeah.

07:23 That's cool.

07:23 That seems like level one of this sort of like, how do I make my open source project

07:29 or my open source success or passion be my job?

07:33 And like, I guess level zero is create a successful thing that is open source, right?

07:38 You got to start with that.

07:39 And then level one is I'll do consulting, high-end consulting as the creator of this project, right?

07:44 But you all were looking a little bit beyond that, which I thought was pretty cool.

07:49 And you, I really liked this phrase you used in your presentation.

07:51 You said to sort of get the project going, we raised a client round and we went like,

07:57 you did consulting and you made money to like fill in the gaps until enough momentum was there

08:01 and the products were there and stuff, right?

08:03 Yeah.

08:03 It also helped us get all these insights that otherwise, even venture-backed startups

08:07 have to do this too.

08:08 Like you have to talk to your users or potential users and find out what's working,

08:12 what are their problems, what are you really going to solve?

08:14 And that kind of came almost for free with consulting because we actually

08:19 worked with users who were already using open source projects.

08:22 We saw what they were doing.

08:24 We really also prioritized companies who already had something running that they wanted to improve.

08:28 So yeah, we got to see, okay, what's working for them?

08:31 What isn't, what are the main pain points?

08:33 And one of them was really creating training data for machine learning models,

08:37 which is what then really convinced us that like this idea for Prodigy, our first product

08:42 was definitely something we should invest more into and launch as soon as possible

08:46 because that's really something that people wanted.

08:48 Absolutely.

08:48 I mean, that seems like the perfect follow-on, right?

08:51 And we'll talk, we'll talk about that in just a second.

08:53 But I think one of the really important things that maybe I would guess you gained through

08:58 that whole experience is you not just learned what people want and need,

09:03 but you also made connections with these, these big companies as you consulted for them.

09:07 They probably trusted you.

09:08 So you could say, hey, we have this thing that's going to help you if you all want to get it.

09:11 It probably, it's almost like building an audience of folks who will be your customers

09:17 before you're trying to make them your customer.

09:20 What do you think?

09:21 Yeah, that's true.

09:21 And I think that also happens with the open source project because, you know,

09:24 if you want to convince people to give you money, you need to show them why they should give you money

09:28 and not some other guy.

09:29 And so, of course, the open source work can function in that way.

09:32 People see our software, people can see that we can build useful software

09:35 and it makes it easier for them to trust us that, of course, the software we're selling them

09:39 will also have a similar quality and solve their problem in the same way

09:42 space it in.

09:43 For sure.

09:43 So, let's talk a little bit about Prodigy and that's your first paid for product.

09:48 You go to the website, it has a, how much does it cost?

09:51 You put in the credit card and you get it, right?

09:54 It's not like, well, you sign up, we're going to market to you and then maybe we'll run

09:58 some retargeting ads on you or whatever.

10:01 Like, no, no, just you come, you find the value, you pay for it, right?

10:05 So, tell us about Prodigy.

10:05 Yeah, so Prodigy is an annotation tool mostly that helps people label data

10:10 for machine learning projects and run experiments because the idea is, okay,

10:15 if you're using a library like Spacey or any other machine learning solution,

10:18 you ultimately, once it's really giving you a lot of value, you want to train

10:22 your own systems that are very, very specific to your problems that you're solving.

10:26 For example, you get a lot of customer emails and you want to have a system

10:30 that automatically labels them whether they're about an invoice question

10:34 or whether they're about some other problem the user is having, whether it's a complaint,

10:37 whether they're happy.

10:39 So, that type of system and you need examples for that.

10:41 So, you have all of your emails and you want to train a system and for that,

10:45 you need to label the data and often, you need to label it 10 times until you find a way

10:50 that works.

10:51 That's very tedious work so we've thought a lot about how can we make it simpler

10:54 and one conclusion we ended up with is that it needs to be a developer tool,

10:58 the developer needs to run it locally, needs to be able to quickly also program

11:02 their own workflows.

11:03 It needs to be a Python library that you can interact with.

11:06 It can't be just some app that's on the internet and you need to have that control.

11:10 Yeah, it's not going to do it, yeah.

11:11 Yeah, and also it's what people are used to working with.

11:14 Like we think, or we call it let them write code.

11:17 We think that developers want to write code.

11:20 That's not an issue.

11:21 It's actually, it's a feature.

11:22 You know how to write a function in Python no matter how you want to do it.

11:26 If you can write it in Python, you can use it in Prodigy.

11:28 Yeah, it's really cool because most people doing something with Spacey or other machine learning

11:34 are, chances are they're already somewhat competent with Python anyway, right?

11:38 And so you might as well just leverage that and that sounds really cool.

11:42 And also a big reason people are using Spacey and open source tools like that

11:45 is because they want to build their own systems and implement them themselves

11:48 and also because often the data they're working with is not just something

11:52 they want to upload onto the internet and they usually, they probably also shouldn't.

11:56 Like they're building their own systems which means also their other tooling

11:59 needs to fit to that kind of workflow they've set up.

12:02 the data needs to stay on their machines on their service.

12:05 It can't just be sent to us and Prodigy really fits neatly into that kind of workflow

12:11 and it's been, yeah, it's been very popular and we're very happy that we were able

12:15 to provide more value to our existing users that way.

12:17 It sounds like a really great product and it sounds like it's been pretty successful.

12:21 You talked in your presentation about having two products that you're working on

12:26 that are kind of follow-ons, one called Annotation Manager and one called Datastore.

12:29 Do you want to tell us about that as well?

12:31 Yeah, the Prodigy Annotation Manager or what we're now calling Prodigy Scale

12:34 is basically an extension that lets people scale up their annotation projects

12:39 because once you've found out an approach that works, you often want to have

12:42 more people labeling your data and you want to be able to see what they're working on.

12:46 You want to be able to farm out texts to people who might not be sitting in the same office.

12:51 You also want to compare what they're labeling to see if there's a problem.

12:55 Maybe someone's misunderstanding the question.

12:57 That can lead to lots of hassle later on and ideally you want it to be accessible

13:01 over the internet.

13:02 And so that actually, it's been under development for a long time and it was a very,

13:06 come up with an infrastructure that does not compromise on data privacy while still offering

13:12 a software-as-a-service like FIO.

13:14 So you still log in on our website but you're also running a local cluster

13:17 that farms out the work.

13:19 And so the data never goes through our service so it directly goes via your cluster.

13:25 Your annotators can access it.

13:27 They still have the same nice feeling of accessing it through a web app we own

13:32 and we run but you don't have to send us your data and we don't store your data.

13:35 Yeah, that's an important thing that you talked about a lot.

13:38 How basically, a lot of these high-growth VC companies, their goal is to race

13:44 for as many users as you have so you can so you can basically own their data

13:49 infer things about them and then try to sell them something or sell marketers to them

13:53 or something to that effect you know, Facebook or whatever, right?

13:56 Yeah, that's not very important to us, no.

13:58 It just doesn't sound like it's going to fly very well with machine learning, right?

14:01 You want to send your most important data flow of your company probably containing

14:07 private information through it, right?

14:08 That just, that needs to be something private, right?

14:10 Yeah, and we do have a lot of users in, for example, the healthcare field

14:14 who are actually also working on very interesting stuff and for them it's just like

14:17 an absolute no-go.

14:18 Like, they have their very secure audited environments that they can have

14:23 their data on because it's maybe sensitive patient data and that's it.

14:27 And so they need tools like that and they're very happy about tools like that.

14:30 Yeah, absolutely.

14:31 You know, we have laws like HIPAA in the US about healthcare data but also things like

14:37 GDPR in Europe and even Washington State, the next state over from Oregon,

14:42 is working on a GDPR-like.

14:44 Yeah, I read that.

14:45 I think GDPR is a good thing.

14:47 I'm a fan of regulations in general if they're reasonable.

14:50 Not saying that everything that comes out of the EU as regulations is great

14:54 but I do like the general sentiment of those kinds of privacy laws.

14:58 Yeah, I think there's a big pushback on the overstep and misuse of people's data.

15:03 So this trying to build your business on people's data is, I don't know,

15:07 maybe it's a little shaky ground.

15:09 So it's good that you are not, right?

15:10 Yeah, I also, I think it's just not necessary and that's kind of, also that's one thing

15:14 I try to get across also with that talk.

15:15 It's like there's so many other ways you can build a business that's very sustainable

15:19 so you don't even need to do that.

15:21 Yeah, I do think that people are kind of myopic about seeing VC funding as the only way, right?

15:26 Like it's, I don't think so.

15:27 Yeah.

15:28 Now, one question I did want to ask you and not quite seriously but just to get your thoughts

15:32 on this, right?

15:33 Because I would, I've made the same decision but why not just keep consulting?

15:37 You had six months of this, I'm sure it was going really well.

15:39 You're like, oh, we could totally just continue to consult and a lot of people

15:43 go down that path.

15:44 I think it's a little more risky to start a business and spend your time on that.

15:49 So what was your thinking?

15:51 Why go, no, we're going to build something, a product and we're going to sell it

15:55 rather than try to just keep working for Bosher?

15:57 Or whatever, right?

15:58 It's a good question and I think to some degree it comes down to personal preference.

16:01 Like there are other companies in our space that are doing very well with consulting

16:05 but I think you do get to a point where, okay, if you want to scale consulting,

16:09 you do also need to, you need more consultants.

16:11 You need to, then you're actually running a consultancy business and you're managing

16:15 other consultants and that's just not really, also that we see, we don't see this

16:19 as our strengths.

16:20 like we are quite aware of, okay, what are we good at?

16:23 Where do we have an edge?

16:23 And for us, that's building good developer tools and we always thought we were a good team on that.

16:28 And the nice thing about selling software is that you can sell it, you write it once

16:32 and then you sell it lots of times and that's like, in terms of a business,

16:36 that's very good.

16:36 You have one thing and you sell it and it doesn't, it's still there.

16:39 You sell copies of it.

16:40 I totally agree.

16:41 That touches on something I deeply value these days.

16:45 It just seems so important to me that if it's possible to trade value for money

16:51 rather than time for money.

16:53 Yeah.

16:53 I mean, I've always had a good job.

16:54 I've had a lot of freedom in my job, but you know, when I was doing full-time work,

16:58 but it was like, well, you can't really go on vacation with your family this month

17:02 because there's that project and it's just, you know, it's not the same feeling

17:05 of I'm going to create something, people like it, they find a lot of value

17:09 and it's just a little exchange some money for it.

17:11 Like that just seems to me a much more rewarding thing to do than book another week of consulting.

17:16 Yeah.

17:16 And I also think offering consulting on top of an open source project that you also have,

17:20 I think there's actually a very weird, the incentives are very, very misaligned on this

17:24 because you are making money of people needing help with your software.

17:28 So don't make it too easy.

17:29 Yeah, yeah, exactly.

17:30 So if you make it, like we've always wanted to have great docs, wanted it to be easy

17:33 for people to use Spacey.

17:34 So if it's too easy to use Spacey, people don't need our services and we make less money.

17:38 But if Spacey is shit, we're losing business that way because people are not

17:43 coming to us anymore and the library loses adoption.

17:45 So I think it's, there's a very weird...

17:47 Yeah, they are a little misaligned, the incentives there.

17:50 Yeah.

17:50 Yeah.

17:51 So that's also why we think, we think there's a great business in this for other people

17:54 and actually, in fact, there are lots of consultants who are somewhat specializing

17:58 on building stuff with Spacey and it works well for them and we think that's much better

18:02 for us than if we did all of that.

18:04 you talk about bucking the startup playbook and, you know, like going against it,

18:08 some of these common misconceptions.

18:10 In your talk, you had four main misconceptions.

18:13 I think they were really spot on and super interesting.

18:16 So let's talk about those a little bit.

18:19 The first one was you have to lose money in the early days and the early days

18:25 could be six months, they could be 10 years.

18:27 I mean, there are big companies that are still losing money, not making money.

18:31 Yes, it is incredible, right?

18:33 And, you know, maybe that makes sense and you actually talked about when it does make sense,

18:37 but a lot of times it doesn't and, you know, so let's just start there.

18:41 Do you have to lose money right away for a long time until you've got enough growth?

18:46 In some industries, in some areas, that might be the case.

18:48 So I'm not saying, oh, running at a loss is always bad.

18:51 There's a legitimate like reason why, okay, you might have very high startup costs.

18:55 You can't expect, for example, any social app in that sense or anything that really

19:01 can only make money once you have users falls into that category because you need to grow.

19:05 Yeah, like a two-sided marketplace like Airbnb or Uber or Lyft or something like that,

19:11 right?

19:11 Or anything that has like a physical product.

19:14 Like I think in my talk, I had like this mattress business where, okay, you need to build something.

19:18 Casper, yeah, and then you need to sell that.

19:20 And, okay, so you need some cash up for it.

19:23 That's fine.

19:23 But for a lot of digital things, that's actually not the case.

19:27 And you can, especially if you have a product that you want to sell, there is definitely an advantage

19:32 in selling that straight away rather than running at a loss even though you have something valuable

19:36 that people would be paying for.

19:37 I totally agree with this.

19:38 And I feel like, especially in the digital world where it's software or something along those lines,

19:44 you can work your way into it, right?

19:47 You don't have to say, we're just going to quit our job and start writing

19:50 the first line of code.

19:51 You can start working on this for an hour a day.

19:54 You can start testing.

19:54 You can see, like, is this something I built that seems like it's going to be successful?

19:57 And then slowly sort of transition to it, right?

20:00 Which also helps you have enough traction when you're started that it's like

20:05 sort of covering some of the bills.

20:06 Yeah.

20:07 And also, I think this whole idea of, okay, running at a loss, it's still kind of inspired

20:11 by much more traditional manufacturing where actually things become cheaper at scale.

20:16 So you need to reach that scale.

20:17 Like if you're building, if you have a manufacturing plant, yes, if you're building one car,

20:22 that's going to be much more expensive than if you build 100,000 cars or 100 million cars.

20:27 But that's usually not actually the case with software development because that's actually

20:32 more expensive at scale.

20:33 So this whole concept all falls apart if you're actually applying that to digital

20:38 or fully digital digital products and tools.

20:42 This portion of Talk Python to me is brought to you by Linode.

20:45 Are you looking for hosting that's fast, simple, and incredibly affordable?

20:49 Well, look past that bookstore and check out Linode at talkpython.fm/Linode.

20:54 That's L-I-N-O-D-E.

20:56 Plans start at just $5 a month for a dedicated server with a gig of RAM.

21:00 They have 10 data centers across the globe.

21:03 So no matter where you are or where your users are, there's a data center for you.

21:07 Whether you want to run a Python web app, host a private Git server, or just a file server,

21:11 you'll get native SSDs on all the machines, a newly upgraded 200 gigabit network,

21:16 24-7 friendly support even on holidays, and a seven-day money-back guarantee.

21:21 Need a little help with your infrastructure?

21:23 They even offer professional services to help you with architecture, migrations,

21:27 and more.

21:27 Do you want a dedicated server for free for the next four months?

21:30 Just visit talkpython.fm/Linode.

21:33 We brought that up in your talk and it was so interesting because you're right,

21:38 things do get harder in software as the software gets bigger, whereas they get

21:42 maybe harder but much cheaper in any form of physical manufacturing or something like,

21:49 right?

21:49 Yeah, Elon Musk built the Gigafactory because he needed to make batteries

21:53 at a larger scale so they could be cheaper, right?

21:55 These types of things, like that.

21:57 Yeah, yeah.

21:57 It's not like he's making much money with that yet.

21:59 I think they actually said Tesla was going to have a profit.

22:04 Either it just did or it's just about, but yeah, that's the whole big growth

22:08 sort of side of the world as well.

22:09 Yeah, so the idea that software gets harder to build the more people you try to throw

22:14 at it is really interesting.

22:15 I mean, long ago we had the whole mythical man month that you can't have

22:19 a hundred people working ten times faster than, you know, ten people, that sort of thing,

22:25 right?

22:25 So it's just, it doesn't always take a huge team to build these products

22:31 and, you know, you talked about some of the open source projects and others

22:34 that were actually built by pretty small teams, right?

22:37 there's not that many people behind Spacey and that's super successful.

22:39 There's not that many people behind Flask, right?

22:43 And that's super successful.

22:44 Like the people involved in the pallets project, they run a bunch of open source

22:48 projects and that's like, you know, count them on my hands, number of people,

22:51 right?

22:51 Actually, even if you look at the large companies, if you look at things that are

22:55 produced by Google or open source projects released by other companies of a very large

23:00 size, it doesn't mean that all of Google is working on TensorFlow or all of Google

23:05 is working on some other project they released.

23:07 Or Facebook's React is another example.

23:09 It's not like all of Facebook is working on.

23:11 They actually have a very, very small core team as well and it's a very successful project

23:15 and I think that also you need maybe a single author or very few authors to

23:19 really give a project the direction it needs.

23:22 It's like, yeah, writing a novel with 200 people, that's like a very fun art

23:26 project, but, you know, it's not going to be like the most amazing, continuous novel

23:31 of all time.

23:32 I think it's the same.

23:33 Yeah, but which is why I always found contributors a very weird metric to

23:36 look at open source projects and how big or successful they are.

23:41 Yeah, I guess even in these big companies, the reason the small team gets to

23:44 work on it is they have enough extra money, they can just pay them to work on

23:47 these projects, but that doesn't mean they put 100 people on, like you say,

23:50 React or something, right?

23:51 That doesn't make sense.

23:52 Yeah, and it also doesn't mean that the project is necessarily has like,

23:55 I don't know, more of a chance to stay than a project that's developed by a

23:59 small company.

24:00 If anything, it's much cheaper for a company like Google or easier to just

24:03 shelve some project even.

24:05 I mean, look at all the stuff Google's killed that people love, like Google Reader.

24:09 I'm still bitter about this to this day.

24:11 I'm bitter.

24:12 Yeah, it's been 10 years and I still think about this a lot.

24:16 Still have a few scars in that.

24:17 Yeah, they're killing Inbox, which I absolutely love, and it's gone in two months.

24:22 Yeah, two months.

24:23 So, well, you're right, it doesn't mean it.

24:26 Yeah, so that's why when people are like, oh, but how do I know that your project

24:29 is going to stay around?

24:30 It's a weird way of looking at it.

24:32 It's a valid concern, but just because something is developed by a very large

24:36 company doesn't mean they're going to keep it alive for longer or necessarily want to

24:40 invest more resources into it.

24:41 Yeah, that's for sure.

24:42 So, one other thing you touched on about this kind of running at a loss side of things

24:47 is it's a little bit of a winner-take-all situation.

24:50 Yeah.

24:50 that means people are pursuing these sort of big VC-funded, they've got to be

24:55 really big projects, and that leaves room for a bunch of small and medium-sized

24:59 success stories that are just a little too small for, you know, that big investment

25:04 or whatever, right?

25:05 But it would be really great for many people.

25:07 what we're talking about there as small is still like a very, very significant

25:10 amount.

25:11 Like, you know, in a lot of these areas, a few hundred million would be too small.

25:14 And I think for a lot of people, that's actually, that's a pretty good business.

25:18 Yeah, I would think so.

25:20 Yeah, yeah, and also there are lots of these types of businesses where you can,

25:23 for example, if 50% of your revenue is profit, you have a much, much higher

25:27 trajectory to actually, if you grow at a similar rate organically, you're actually much

25:32 better off than if you're in a position where you maybe have the same revenue

25:35 but it's only like, you have the same profit but it's only like 10% of your

25:39 revenue or 2% of your revenue.

25:41 Yeah.

25:41 So, yeah, we've always seen it like, okay, we don't have to be the one provider

25:46 of developer tools ever in the world.

25:49 Right, so basically, if you're not chasing this tournament, winner takes all,

25:53 I got the big VC round and we're gonna, you know, Facebook's gonna crush

25:57 MySpace or, you know, whatever type of story we're trying, narrative we're trying

26:01 to tell here, then it's not necessary to, run at a loss because you can be

26:07 more organic, you can work on the products that people really want and just

26:10 grow a little bit slower but still totally good for you and your smaller set of people,

26:14 right?

26:14 Yeah, well, you can have a competitor, you can, it's fine, you don't have to

26:18 crush everything else.

26:19 Exactly.

26:20 Can't we all just get along?

26:21 Which is quite expensive, yeah.

26:22 Yeah, that's for sure.

26:23 The other one, which we touched a little bit on, is that you need to hire

26:27 a lot of people.

26:28 So, you think that small teams actually are a big advantage here, yeah?

26:32 I agree.

26:32 In our case, definitely.

26:33 I mean, we're actually working with a few more developers, especially for

26:38 Prodigy Scale to get that ready, and some other projects we've lined up.

26:41 But yeah, we're still very small and the ideal company we envision is also

26:45 very small.

26:46 And for us, it means that actually we can really take advantage of hiring

26:50 or working with people or being people who have, yeah, more, a bigger variety

26:55 of different skills that we can use.

26:58 like, in my talk, I call this like T-shaped skill, they're tree-shaped skills,

27:02 kind of, you know, based on this idea of the T-shaped skills, like a T-shirt,

27:08 one foundation, and like two other skills you kind of have.

27:13 Right, so maybe just to try to summarize that idea of like the T-shaped skill is like,

27:17 you have a bunch of things you sort of know, you're sort of competent, you can sort of create

27:20 a website in Python, you can sort of, you know, work with CSVs or databases,

27:25 but you're really good in one, like the stem of the T is you're really good

27:29 in one deep area.

27:31 You're like a systems engineer, that's the idea of the T-shaped and then I say,

27:34 actually, what's even better than that and even more useful in small business

27:38 is that, is it, are the tree-shaped skills.

27:40 So you have, you still have a base but you have all these different branches

27:44 and all these different other skills that you have, those can, they can overlap

27:48 with other trees, you can grow a new branch which is kind of nice because actually,

27:53 yeah, a T-shirt is really quite static.

27:55 Just gets worn out over time, that's right.

27:57 Yeah, but like a tree, you can, you know, a tree is active, a tree is growing

28:01 so I kind of like that metaphor more.

28:03 I like that metaphor a whole lot too because I think, you know, it's one thing to hire people

28:08 but you're never going to hire people that have all the skills you need but you know what,

28:12 they can learn it, they can take an online class, they could go and do an in-person class,

28:16 they could get a book, there's so many ways to learn these days that like you can sprout

28:21 these new skills and I think that's a great analogy, these tree-shaped skills.

28:24 The types of people who have these sort of very versatile skills, it's not really selected for

28:30 in a lot of larger teams and, you know, more, you know, the more stereotypical software development

28:36 because in large companies, it's, you know, it's fine, it makes sense why a large company

28:40 hires differently than a small company because you need people to be a bit more interchangeable

28:44 and you need a very different type of team but if you're small, you kind of don't have

28:48 those concerns and so you can really, yeah, it can really help you a lot

28:51 to have very different people, very different backgrounds and that's kind of

28:56 what we're doing.

28:56 So another analogy that I really like about this is this tree and this idea of like

29:00 growing new skills.

29:01 To be successful as a software developer, especially in smaller companies,

29:06 you have to be always willing to be learning new things, right?

29:10 It's not enough to like, well, I went to school and I got my computer science degree

29:13 so now I'm just going to go do that, right?

29:16 like you're continuously learning and this tree analogy and adding new skills,

29:20 I think it embraces like the best type of software developers anyway because they're constantly learning.

29:26 No, I agree with that.

29:26 So another thing that you said was you don't have to be sneaky and I feel like

29:30 that comes back to this kind of data is the new oil, what we need our users

29:35 so we can take their data and somehow make money on it and maybe we're going to do

29:38 something a little shady so we've got to be a little sneaky about that.

29:41 What did you mean there?

29:42 I also had this point like you don't the true value lies in your users' data

29:46 which is basically the same idea that you're kind of you're trying to trick people

29:50 into using your product but actually your incentives are very different or you're trying to monetize

29:56 something that you don't already have you're trying to you're monetizing

29:59 some future promise that you've made which will actually offer you those returns

30:03 that you have to come up with because just making a profit isn't enough so you actually end up

30:08 often all I've definitely seen like a lot of products on companies that have

30:13 made in my opinion bad product decisions in order to kind of satisfy those types

30:18 of promises Yeah promises to investors right not promises to the users and actually it's not even

30:24 just that you have all the evil investors you actually you set up you go for a business model

30:28 where okay you get a lot of money up front and that's great and you can work with that

30:31 but also for yourself you need to turn it into a certain type of company

30:35 in order to make it worthwhile and to also get some money out of it for yourself

30:40 so it's just that okay that that thing you agreed on and that dynamic and that works for some

30:45 types of products and for others it really doesn't Yeah absolutely machine learning

30:50 that's processing sensitive private data probably not so much sneaky is probably

30:54 not a good option no and also you do want I think trust is very important and actually

30:58 genuine trust like if your users think you're a decent person that's like

31:02 that's worth a lot and that's also something you don't want to play with

31:06 and that's you know it's a scary thing to do and say okay look I'm ready to really take

31:11 full responsibility and I want to you know we say well we want to be held accountable

31:15 for the things we do like it'd be much easier to just not do that and set those

31:21 expectations That's right so another thing that's big in the startup world

31:26 is that you have to not just test things or try them but you have to A-B test them

31:32 you have to every time you send an email there needs to be a couple of variations

31:35 every time you have a page that talks about your product you need to have

31:38 three versions that sell it in different ways and so on and that can just

31:43 be overwhelming to a lot of people they're like do I really need to do all this stuff

31:48 to get started I don't know it just it seems a little over the top and one of your

31:52 beliefs is that you can make good decisions without testing all the assumptions

31:57 yeah you can you don't have to test everything right that's true and also because

32:01 I think the underlying idea there is that you can't just replace logic and reasoning

32:06 about things with pure data you've collected because there's always you know

32:09 it's always biased in some way and that's just not possible and the thing is

32:13 the reality is if you're running a business you need to make a lot of decisions

32:16 and you need to make you need to be right that's sort of the secret you need to make

32:20 the right decisions and make them many times in a row you know you can do a lot of

32:24 things to make this easier for you and make it easier for you to make the right

32:28 decisions but ultimately you need to be able to reason about things and reason about it

32:32 in a way that leads to the outcome that you want and that's something you can't

32:37 just compensate for by trying things until you maybe find something that

32:42 works and then going back looking at what you've tested there and drawing the conclusion

32:46 and how this must have been why this worked and the other thing didn't yeah and so

32:50 many times I think those experiments especially around price or offers can feel

32:55 really crummy to the your best people the people who buy stuff from you and

32:59 support you I'm thinking of things like Udemy the online course place where if you go

33:05 there they say the price of this course is 200 bucks but you know what if you don't

33:09 actually buy it but you're logged in you'll get an email saying oh it's actually on sale for

33:14 just one week it's $15 or something right like it's 5% of the price or whatever a

33:20 little bit later and then you come back and there's some other sale it ends

33:23 tonight oh wait tomorrow the sale is on these are just all these shady things and just my

33:28 feeling of companies like that I just like oh man like either just sell me

33:33 what you think the value of the thing is or I don't know just don't don't try to like

33:38 continuously show me tricky stuff until I you know bite on something right it

33:43 just feels like dishonest somehow we as developers are maybe also a bit more a bit less like

33:48 oblivious there like you know we spot bullshit and we don't want to be like

33:52 bullshit I'm not saying this is like something unique to developers but I

33:55 think you look at these things and you don't want someone to tell you like oh this

33:59 is magically going to solve all your problems you want someone to tell you

34:01 oh you developing something here's something that can help you and here's

34:04 how this works and here's how much this costs and you're like all right or you're

34:08 like maybe not so we've definitely we've definitely seen seen this as something

34:13 that's like important for us and just because you're a b testing something

34:17 it doesn't always mean you know you still need to reason about stuff like if

34:20 you just automatically you test every possible combination and you might end

34:23 up with the conclusion that scamming people is actually the most lucrative way of

34:28 making money at least in the short term right but it goes back to this trust thing as well

34:32 yeah in the short term maybe even in the long term like there are people who've

34:35 been scamming for all their lives and they've been doing pretty well at that

34:38 so you know you can optimize for that but like is that really the thing you want to be

34:41 doing probably not or if it is I thought about like mentioning this up front in my talk like

34:45 I'm going to be talking about ethical and legal ways of running a business if

34:49 that's not what you have to know start some like initial coin offering stuff

34:55 and leave now like because it's the other rules like sure if you don't want it to

34:59 be legal or ethical like yeah none of this there's a lot of options but who cares

35:04 right that's not what you're about interesting and you also talked about some

35:09 of this a b testing stuff is sort of driven by this tournament winner takes all mentality

35:14 because if you're competing against another company and your belief is they're

35:19 going to crush us or we have to crush them there's no way we can both coexist then you're

35:22 always looking for that little edge right that's true and also or you look at like I

35:26 think another thing that's also very popular is looking at others in this who

35:30 were in the same tournament and didn't make it so you look at some other company that

35:34 was there before and they failed and then you try to analyze that and maybe even talk

35:37 to them why did you fail and they will tell you well we should have done x

35:42 because we didn't do x and that's why we failed and so you're like well and that's

35:46 how that's actually where I think a lot of this advice comes from and it doesn't actually

35:50 make much sense because it's it's not really um yeah we're not that good at really analyze

35:55 and at analyzing why something didn't happen and just because you didn't do x and fail

35:59 doesn't mean that if you had done x you wouldn't have failed yeah I mean if you

36:03 actually knew exactly why it failed you probably could just address it and make

36:07 it not fail yeah probably right like well this is the problem let's just not

36:11 do that I mean not always but uh it's still interesting and then the last

36:15 misconception you talk about is that the true value of your software company product

36:21 whatever lies in your users data yeah because I mean we really I think we

36:26 talked about this briefly earlier we yeah we definitely covered this yeah yeah

36:29 and I think it's clear where this comes from this was definitely driven by this idea

36:33 that all data is so valuable and people talk about this and I think it's never

36:36 even really clear what they mean by data do they mean your personal data

36:41 because maybe that's valuable if you're in a certain position like if I want to

36:45 sell you stuff knowing who you are where you live what you like is valuable

36:48 if I don't for me personally your Amazon buying history wouldn't be very valuable if I

36:55 were in a different business maybe it would so it's not always very even

36:58 very clear what people mean with data but what people have concluded is that we

37:02 need to harvest as much as possible as quickly as possible whatever we can might

37:05 be worth something and I think now we're getting to a point where people are

37:08 sitting on all of this and are realizing that actually it's not even necessarily that useful

37:13 and they're very now we're at a point where companies are really struggling to make

37:17 sense of all of that data they've harvested at like very high costs in terms of

37:21 user experience and trust I agree and I also think it's only valuable to the very

37:25 large companies right like it's valuable to Facebook it's valuable to Google but if you

37:31 were a three person software company that had 5,000 really committed users that

37:37 were could otherwise pay you right there's no way that those 5,000 people's buying

37:41 history or whatever is worth anywhere near just like their trust and like hey I'm gonna make

37:46 something for you I think it's valuable I think you'll want it they agree you give

37:50 them something that they give you money back right like that's just a much better and

37:54 easier story I think this portion of talk Python to me is brought to you by

37:59 rollbar got a question for you have you been outsourcing your bug discovery to

38:04 your users have you been making them send you bug reports you know there's two

38:08 problems with that you can't discover all the bugs this way and some users don't bother

38:12 reporting bugs at all they just leave sometimes forever the best software teams practice

38:17 proactive error monitoring they detect all the errors in their production apps and

38:21 services in real time and debug important errors in minutes or hours sometimes before

38:26 users even notice teams from companies like Twilio Instacart and Circle CI use rollbar to

38:32 do this with rollbar you get a real-time feed of all the errors so you know exactly what's

38:38 broken in production and rollbar automatically collects all the relevant data and

38:42 metadata you need to debug the errors so you don't have to sift through logs if you

38:46 aren't using rollbar yet they have a special offer for you and it's really awesome sign up

38:51 and install rollbar at talkpython.fm/rollbar and rollbar will send you a $100 gift card

38:57 to use at the open collective where you can donate to any of the 900 plus projects listed

39:03 under the open source collective or to the women who code organization get notified

39:07 of errors in real time and make a difference in open source visit talkpython.fm/ rollbar

39:12 today we can do that we can just we can sell products and not promises and that's

39:19 that's very nice and that also makes that also means we can really make product

39:23 decisions around actually providing that value that people want without having to

39:27 engineer our personal objectives hidden or hidden objectives into that somehow yeah

39:33 yeah it comes back to kind of the start of this whole conversation right like sell

39:38 products not don't be sneaky all those kinds of things right yeah and also I think in

39:43 machine learning especially people have this idea that oh maybe the users okay

39:46 our users are using prodigy to label their data and there and that's because it's

39:51 you know seen as such a tedious process you know maybe we could people have told us

39:55 like oh you're sitting on this gold mine if you just harvested everything people ever

39:58 labeled with your tool you could then use that and train one machine machine learning model

40:03 that knows everything but this is actually very far from how machine learning works

40:07 in practice it's also the really the true value is in creating very very specific

40:12 systems that are very specific to your problem so anything you label might not

40:17 necessarily be useful to me also this process is very very experimental so I

40:23 have no idea of knowing which one of your 200 data sets is actually the one that

40:28 worked for you and even if I do I know it worked for whatever problem you were

40:31 trying to solve there's no machine learning model to rule them all also we've built

40:36 an annotation tool we believe our annotation tool is one of the most efficient out

40:40 there so if we wanted to label some data and train a model we would just do that

40:45 ourselves right just go to mechanical turk yeah well yeah I'll just I mean prodigy is very

40:50 optimized for having people work very fast having people you can hire doing it yourself

40:55 so you don't even need any human labor platform because that also comes with a lot

40:59 of problems so I could sit there spend a day and I could be very very productive run

41:05 lots of experiments and end up with a model that well at least knowing whether my

41:10 model can learn what I wanted to learn and that's very powerful and so if we wanted to do

41:14 that there's no need to just take this from our users we can just do it you've built the

41:18 tool that they get to use to really solve their problem you could just do that for

41:22 yourself it makes a lot of sense I think I don't know there's there's a whole lot of

41:26 interesting ways we could talk about AI and machine learning and stuff where do you see

41:31 AI going do you see it being these super specialized things do you see there being one

41:36 AI to rule them all like what are your thoughts here I think the one AI to rule

41:40 them all that's like maybe something you can come up with if you yeah follow some of

41:43 the media coverage but like I don't think it's very very realistic and very

41:46 close to what people are actually building I think what we're seeing is all across

41:49 industries whatever people are doing they want more insights they want to optimize their

41:54 existing processes and they want systems that specialize very well to exactly what they are

41:59 trying to do and it becomes more of a tool right so the more specialized it is yeah

42:04 and they can use machine learning as a tool to achieve that and of course there are

42:08 realistic concerns that we do have to think about in for example what's going to

42:12 happen with people being replaced how or how are companies dealing with this in

42:17 maybe ways that are actually very harmful also because of kind of a wrong idea of what

42:21 the technology can really do their ethical concerns their concerns about bias and just you

42:26 know just because we build some system doesn't mean that it's like perfect and you

42:31 know we still build it so we're gonna all the mistakes we make we're just going to encode in

42:35 that system all the bias and all the problems we have we're going to just encode in

42:39 that system and cool then it can you know if you make bad decisions cool you can

42:43 train a model to make those bad decisions for you it doesn't mean that things are necessarily

42:47 better so these are all things we have to talk about ultimately I think still machine

42:52 learning is a tool at this point and yeah I tend to agree I am a little concerned about

42:56 the automation and jobs and then the effect that will have on on politics and society but

43:01 but in general I'm pretty upbeat on these things I guess let me ask you a couple of

43:06 sort of meta questions around around this to close out this okay first of all it seems

43:13 like you're having a lot of fun are you having fun running your own company you and

43:16 Matt yes definitely I would say it's the best job I've had so far yeah that's cool I

43:20 thrilled doing what I'm doing I'm basically broken like I cannot go back to a regular

43:25 corporate job I don't know about you but I think it really depends like I feel like one

43:29 thing I hate is like this mentality that a lot of self-employed people have where they're

43:32 like essentially looking down on people who are like in regular jobs I read this a lot and I'm

43:37 like no there's so many valid reasons why you would want to have a regular job working for

43:43 someone else and that makes people happy but on the other hand I do think

43:46 yeah in general and as a society we should make it easier for people who want

43:50 to start their own businesses to start their own businesses and then make it easier for those

43:54 businesses to actually create sustainable jobs that then other people can

43:58 take right we were just talking about AI taking away people's jobs but if

44:02 there can be other businesses so they don't lose their job they just do a different job that's

44:06 also meaningful to them that's a much better option right also businesses that can pay

44:09 their employees out of profits they make because that's ultimately also very

44:13 sustainable because that means the money is there right and rather than say

44:16 stock options that are kind of promises down the line in the future yeah yeah

44:21 exactly and also already I mean in order to like a lot of these offerings in order

44:24 to exercise them you already need such a privilege that you can afford this and if you

44:28 cannot you know this is expensive if you're already pretty privileged enough

44:32 fine but like if you're not none of this is going to help you very much I

44:35 totally agree that's a great point then another question someone asked at

44:39 the end of your talk which I thought was maybe worth mentioning is you know you

44:44 hear people talk about I think this also comes from some of the VC back companies is talk about

44:49 work-life balance and just giving up everything to work super super hard and maybe

44:55 they're really successful in business but maybe not so much in life right with

44:59 relationships and whatnot how's that for you I'm definitely very much against

45:02 this kind of school of like entrepreneurship where all you need to you know only

45:06 the hardest workers can succeed and you need to run on four hours of sleep and

45:11 like I don't know this is definitely something we try to like optimize in the way

45:15 we run our company that like you know we we're not measuring success by like

45:19 how how low can you go on sleep and how hard can you work because I also think

45:24 you can always work you can work smarter instead of harder there's a certain

45:27 privilege of course that comes with you know we I can choose where I want to

45:31 work I can choose to structure my life in a certain way I feel like this

45:34 is important to point out because not everyone's able to do that but in general I

45:38 do think we can you know in a way if you if you're not in the competition you can

45:42 optimize for living in a place that's affordable you can optimize for okay you

45:47 want to have more time or you want to work in a certain way now while you're younger so

45:53 you can maybe work less when you're older those are all important considerations

45:57 yeah absolutely like for example you talked about living in Berlin where life is

46:02 fairly reasonable as opposed to you know eight thousand dollars for an apartment in San Francisco or

46:07 something completely off the charts right and we're lucky that we don't have to be in

46:10 one of the tech hubs we can be on the internet but I don't I'm always trying to

46:13 when talking about these topics especially work life balance I'm always trying to

46:17 be careful not to come across as like yay start your own business it's all great

46:21 like oh I can but also not going the other road and saying yes you know yeah you

46:25 have to be prepared to work like super hard and you're on call all day and it's

46:30 like there are valid concerns on both sides and I don't want to over romanticize either of and but

46:35 I do think it's possible to optimize for something that works for your living

46:39 situation yes yeah you don't have to completely kill yourself to make it work in

46:43 your specific situation right like you and Matt are having a have a good time not always

46:49 working always burned out if I could keep it that way that's a very good objective for me

46:53 yes one of the really nice trade-offs when that person asked that question I thought

46:56 well yeah it's a little more stressful you've got to keep the business running there's

47:01 more stuff on your shoulders but also you have more flexibility because you're

47:07 trading value for money not time for money so if something comes up in your life you're

47:11 like the next three days I kind of want to do this like you just do it and then maybe you

47:15 work on the weekend to make up for it or like I think there's more fluidity and

47:19 freedom to find that work-life balance if you're after it yeah and also this idea of I

47:23 mean what's often referred to as passive income even though I find this I don't know I find

47:27 this term a bit weird I do find it weird as well because you typically have to work

47:31 super hard to get that passive income it doesn't it's not really passive yeah it's also

47:35 because it's this fantasy like of course everyone wants to like sit at the beach while making

47:39 tons of money and that's why this has also been abused a lot in like I don't know life

47:43 advice and you if you google passive income I'm sure the top results are all from some scammy

47:49 life advice buy this e-book where I'm going to tell you how to make passive income and the advice in

47:54 that e-book is write an e-book promising others passive income and it's like that kind of

47:59 pyramid scheme so that's why I like hate this term but it's obviously in general optimizing for

48:05 a situation where for example you build something once that has value that people like you optimize for a

48:10 business where people genuinely like buying your software and are happy with your software and you'll have

48:16 one software one piece of software that you can just sell to lots of people who are all happy with that

48:20 that's a good way of doing it because you know this means you can build something once and maintain

48:25 it once and sell it a lot to people there's a lot to be said for that path absolutely so I guess maybe we

48:31 could close out our conversation around this building a software business maybe bucking the startup

48:37 trends with just some advice you might have for people so if there are people out there maybe they have an

48:43 open source project maybe they just have an idea for something they want

48:46 to start what advice would you give them about somehow making this their

48:52 job right starting some kind of company that offers value to people maybe they're doing consulting maybe

48:57 they're doing full-time work I don't know yeah I mean it's a very loaded

49:00 question because it's it's tough I know it's very specific to people's situations but yeah definitely I think

49:05 what worked for us was definitely okay you you know you want to offer people something that they need and

49:10 if you're in a position where for example you have an open source project and you see that there's you

49:15 know genuinely something you're solving for people that's a very good start you know it is also very good

49:21 to actually you know you look at how is it going are you making making money with this and also have a plan

49:27 for okay when are you gonna stop because I feel like the if you're going the opposite route there's not

49:32 really never really an incentive for is it working is it not working because you can always optimize and

49:36 you're running at a loss anyways but if you're actually running at a profit

49:39 you can use that profit to really see okay you know this is where you're

49:43 going it doesn't lie it's very yeah in a sense it is riskier because you know

49:49 there's no that's the only path like always people are like oh you're going

49:52 you're doing the risk averse thing and I'm like well it's not that risk averse because you know we're actually

49:57 making a profit that is like that's quite a risk because if you're not making a profit that's it you know

50:03 like choosing not to make a profit is actually a pretty risk averse it's a

50:07 little too open-ended maybe maybe I mean it's it's like ultimately or maybe ultimately like giving advice is

50:12 always difficult and ultimately the advice would have to be make decisions

50:17 and be right about them that's actually that would be the most honest genuine advice but it's also often not

50:23 what's really that actionable yeah very satisfying because the advice you know

50:28 you still need to do it and I but on the other hand I kind of I also like this

50:31 sort of way of thinking about it because it shows that okay at this and whatever

50:35 I'm going to tell someone is always going to be kind of biased yeah it's

50:38 this idea okay you can like it is possible to ship value and make money from that it is possible to offer

50:45 something that people will pay for because people like paying for things

50:49 it's not like nobody wants to pay for stuff people do want to pay for stuff if

50:53 you can find a way to give them that opportunity and I think also it is fine

50:57 if you can reason about things and you're right it's fine to do that like

51:01 you shouldn't feel like you need all of this data to back up whatever you thought

51:06 was right if you can actually make this work it's fine like you don't have to

51:10 beat yourself up because you didn't maybe test that assumption and somebody's gonna ask you oh but how do

51:14 you know that like the sky is blue it's like well I looked at the sky and

51:18 it's like it's blue my experience is it's generally blue yeah yeah I mean

51:22 something it's real because I experience it is also a pretty problematic way of looking at things in

51:27 my opinion but like it's still there are some things that you can know when

51:31 it's fine to like know things and act on them especially if it like leads to a

51:36 good outcome yeah that sounds good I guess take your best take your understanding make your best decisions

51:43 you can and take action and then follow that feedback loop right basically creates

51:47 a job for yourself where you can do all the things you like and channel that into

51:50 a productive outcome that's commercially viable because it took me a while to

51:55 kind of get there but often I do think for most people they have things that

51:58 they like doing that they're good at that maybe are not so compatible in the

52:02 very stereotypical system of working and typical jobs in tech that might actually

52:07 it might actually look very different once you're in business for yourself and

52:10 you realize that oh actually this sort of talent I have here or this thing I'm

52:14 really good at I can actually use this productively in my own business this is

52:19 useful for people yeah absolutely yeah that sounds great let's leave it there so

52:22 hopefully people got a lot out of that conversation I'm sure that they will but

52:26 before I let you go we have to ask you the two questions at the end of the show as

52:30 usual if you're going to write some Python code what editor do you use visual

52:34 studio code like probably like most people these days I'm not sure what's the most

52:37 popular I would say the Vim no I think Visual Studio Code is probably the number

52:42 one most popular and you know PyTarm is actually going pretty strong there and if

52:47 it's not one of those two it's usually Vim or not even a max it's usually Vim yeah

52:52 I've tried probably most editors I'm also very very open to trying new things if

52:56 they come out but I kind of I do think Microsoft did like a really good job it's a

53:01 very it was it's a very impressive product like I didn't expect that at first when I

53:05 started using it yeah I hear that a lot and it's getting better all the time which

53:08 is pretty cool yeah and I'm actually very excited about the Python integrations and

53:11 also the more like data science focused stuff that I've been working on also I'd

53:16 always wanted like a spacey extension I haven't I haven't had time to look into

53:20 this but like we have an open issue on the tracker so if someone listens to this and

53:24 wants to work on this I'm super super excited about that idea that sounds super

53:28 cool all right and then notable package on pipey maybe not necessarily the most popular

53:33 but some of the people you're like oh somebody they I found this and they should

53:37 know about it and I'll go ahead and throw spacey out there for you already so we can

53:41 put spacey on the list right yeah of course one idea I've had just that we have to

53:45 mention like spacey wouldn't have been possible without siphon and lots of other

53:48 probably most sometimes people don't realize this but most Python packages you

53:53 use wouldn't have been possible without c extensions and all you know the great

53:57 work that it went into the siphon so I feel like I should just mention that

54:00 because it's such a huge part of what we're building but also one thing I was

54:04 really got into recently was like making our code more consistent having like a

54:09 well formatted well organized code base and so often when I start like organizing

54:14 things I kind of get really into it so but like I've really started to appreciate the black formatter the

54:19 auto formatting tool and just in general the idea of okay enforcing opinionated

54:24 formatting rules automatically right as like a pre-commit hook or something even

54:28 better right yeah or even maybe in you I actually think for me it works well in my

54:32 editor because I actually if something looks like super messy it does remind me

54:36 that like often the code is actually not that great like if I write like a line of

54:41 code and then I see it gets spread over five lines and actually looks more

54:44 confusing it often means that yeah okay I maybe I shouldn't have had that for loop

54:49 and if statement on one line just to kind of make things a bit like nicer actually it's

54:55 not it's harder to read I should refactor that so that's actually helped me quite a

55:00 lot and also just having yeah flake eight I always kind of likes having you know kind

55:04 of a subset of rules that we enforce to have some standards you know you don't have

55:08 to go over the top and like okay we want to meet exactly everything but there's some

55:13 things that are very helpful you can catch bugs that way and just having things nice

55:18 and tidy by default was very nice I like that it doesn't complain but that it just

55:22 fixes it rather than going here's the seven things you need to go reformat it just goes

55:26 I'll reformat those right that's nice yeah yeah and also even if you run diagnostics

55:30 it says okay here you you're overwriting something you've imported you probably

55:34 didn't want to do that and then I look at it I'm like yeah I didn't want to do that

55:37 or like okay something's under like something's actually not defined yeah

55:42 that's a bug thanks so stuff like that it's it's helpful it's simple and

55:47 especially if you have lots of open source projects lots of code bases yeah a lot

55:51 of contributors yeah it's great yeah all right yeah so I want to give you a

55:55 chance for a final call to action for folks I think we already did that around

55:58 the building a successful software business so maybe just around spacey and

56:02 prodigy tell people that are interested in NLP and what you guys are up to

56:07 where can they check it out if you don't know about space yet you should check it

56:10 out if you feel like spacey is not going to be useful to you then you don't like

56:13 I'm not you know I don't want to go here and tell everyone they should use

56:16 our software we're building very specific maybe slightly niche developer product

56:20 developer tools but you know spacey I think we really we put a lot of effort

56:24 into our documentation we have a nice getting started guide if you're interested I'm hoping it should you know

56:29 even give people who haven't really worked much with machine learning a good

56:33 intro to how machine learning works with text and how you know you can use that

56:37 productively yeah my your python keynote was recorded and it's on YouTube so that

56:42 kind of has the full overview of all my thoughts on that you know the stuff I

56:46 was saying yeah and I'll put the keynote in the show notes as well of course prodigy if you're working with

56:50 labeling data if you're training machine learning models we're hoping that

56:54 prodigy is a good developer tool that gets people productive we have a lot of

56:57 people who felt like their work yeah it really speeded up their workflow and

57:02 made them more efficient and yeah keep an eye on prodigy for like our announcement for prodigy scale which

57:07 takes it to the next level follow us on Twitter because we have that's where we

57:11 announce new stuff we have a lot of cool stuff coming excellent yeah a lot

57:15 of great stuff people should check it out and you know thank you for being on

57:17 the show and sharing your experience yeah thanks for inviting me yeah you

57:21 bet bye bye this has been another episode of talk python to me our guest

57:26 on this episode was Ines Montani and it's been brought to you by Linode and

57:30 Rollbar Linode is your go-to hosting for whatever you're building with Python get four months free at

57:36 talkpython.fm/Linode that's l-i-n-o-d-e rollbar takes the pain out of errors they give you the context

57:44 insight you need to quickly locate and fix errors that might have gone unnoticed until users complain of

57:50 course track a ridiculous number of errors for free as talk Python to me

57:54 listeners at talkpython.fm/rollbar want to level up your Python if

57:59 you're just getting started try my Python jumpstart by building 10 apps course or

58:04 if you're looking for something more advanced check out our new async course

58:08 that digs into all the different types of async programming you can do in

58:12 Python and of course if you're interested in more than one of these be sure to check out our everything

58:16 bundle it's like a subscription that never expires be sure to subscribe to

58:20 the show open your favorite podcatcher and search for Python we should be

58:24 right at the top you can also find the iTunes feed at /itunes the Google

58:28 Play feed at /play and the direct RSS feed at /rss on talkpython.fm this is your host Michael Kennedy thanks

58:36 so much for listening I really appreciate it now get out there and write some Python code

58:40 you you you you you you you you you Thank you.

58:58 you Thank you.

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