An Interview with Phil Sturgeon, Author of Build APIs You Won’t Hate
Published Mar 10, 2016 by Len Epp
Phil Sturgeon is a software engineer, popular speaker, and author of the Leanpub bestseller Build APIs You Won’t Hate. In this interview, Leanpub co-founder Len Epp chats with Phil in a wide-ranging discussion about his career, his various projects, and his experience writing and selling a bestselling book.
This interview was recorded on January 12, 2016.
Len: Hi, I’m Len Epp from Leanpub, and in this Leanpub podcast, I’ll be interviewing Phil Sturgeon. Phil is currently a software engineer at the New York City based carpooling app, Ride. In the past he’s built websites in a number of languages and frameworks, and he was a core contributor to CodeIgniter, FuelPHP and also PyroCMS, which he founded and later sold.
Phil has organized and spoken at a number of conferences, and he blogs regularly at philsturgeon.uk. He also contributes to a podcast series called PHP Town Hall, which you can find at phptownhall.com. Phil is the author of the Leanub book, Build APIs You Won’t Hate, as well as Catapult into PyroCMS, and the co-author of PHP: The “Right” Way.
Recently Phil had the distinction of appearing in both the list for the top 10 best selling Leanpub books for 2015, with Build APIs You Won’t Hate, and at the same time in the list of the top 10 most popular books in 2015, with, PHP: The “Right” Way. In this interview, we’re going to talk about Phil’s professional interests, his books, his experiences using Leanpub, and ways we can improve Leanpub for him and other authors. So thank you Phil for being on the Leanpub Podcast.
Phil: Hey man, how you doing?
Len: And thanks for sitting through that too.
Phil: Yeah that’s great. I need you to like follow me to parties and introduce me in that way. That would be amazing.
Len: I usually like to start these interviews by asking people for their origin story, so I was wondering if you could tell us how you first became interested in programming and how you ended up in New York?
Phil: I’ve been programming for a really long time. I started when I was about 11 years old, interestingly — with HTML and CSS and was making a lot of this big games review website. And it was a very complicated manual process, just using HTML all the time. So in the end, someone taught me all about PHP, and that was when a whole new world of opportunities opened itself up for me. I’ve been hacking around with various content management systems, building my own systems and frameworks and all that sort of stuff for a really long time.
Then, I’m not entirely sure how I ended up in NYC. It just happened. A company reached out. They were looking for somebody to CTO for them. They were interested in PHP after recently having a bit of a mess of a Rails app made for them. And they just wanted to not have to do Rails anymore. They reached out to me after seeing my work with FuelPHP, which was a relatively popular PHP framework. And they thought that I’d be a good fit for that job. And now I’m here.
Len: One question I like to ask people is, if you got a computer science degree or something like that along the way? Beause I find about half of the people I ask say no.
Phil: It’s interesting. I don’t have a degree, annoyingly. And it’s an interesting story actually if you have a second. I have a Higher National Diploma from the UK, which is like the first two years of what a degree would be. A third year would turn that into a degree. But the year after I got my HND, they changed it from being the Higher National Diploma, to being the Foundation Degree. It just literally changed the name, not the meaning of it, because everyone hears the word “degree,” they think it’s much better. So one extra year and I would have technically had a degree.
Len: Yeah it’s funny, I know there’s a discourse about that in academia in the UK as well, where — it used to be that the term “Professor” was not as high a distinction as it is in Germany, but certainly meant more than just teaching at a university. And there’s a kind of reverse snobbery in the way some professors in the UK will call themselves professors, even though they’re not, because without the title if they come to the United States, they get treated like they don’t have their PhD yet or something like that.
Phil: Oh wow.
Len: It’s very strange. Anyway, I was wondering, when did you found PyroCMS, and what motivated you to do that, and can you just tell a little bit of the story around that?
Phil: I’m a little fuzzy on the dates, but basically, when I came out of college, I started my own company — just a really small four, five person development agency. We did a lot of like five-page websites. Really basic websites like a hotel booking system, where it would be the same blog, the same contact us page, the same page manager, and then this extra module that would be a booking module. Or it would be a car showroom website, which would be the same stuff, and then this one extra module. So we built a lot of that ourselves, and we kept building the same stuff over and over again.
We realized that it was a bit daft, but at the time, I had been working with a lot of other content management systems, and I really didn’t like any of them. I think most of them have made huge improvements in the last couple of years. But at the time, there wasn’t a PHP CMS around that was simple enough or free or cheap enough to make a lot of sense. We could have used ExpressionEngine, but the budgets were small and with ExpressionEngine, you need to pay about $1,000 just to get started and things like that.
So I ended up turning the code that we had into a really basic CMS for use at that company. And then literally every single project we did was just — deploy the CMS and add in a new custom module. And then when we had another hotel booking website, it would be — install the hotel booking module, right? And every project we had made this whole collection of code better. We started to amass modules and everything else. So then the recession hit in about 2009 somewhere I suppose, maybe 2010, and my clients just stopped paying. The company didn’t last very much longer than that.
I had all this code, and I thought, “It’s kind of a shame to just throw this away, like just delete it”, so I open sourced it, and initially it had terrible feedback. It looked terrible. It was using the CodeIgniter framework, which was very popular. That got it some points, but it looked awful. Luckily at that point, some friends of mine, we kind of all contributed together and made it much, much better over the next few versions. And about six months later, we had a version we were really happy with. About another year after that of [we started] seeing a lot of usage. We got it on GitHub, and it was the most watched PHP CMS on GitHub. Apart from WordPress, which was just a mirror, it wasn’t even on GitHub. So it got pretty popular, and based off the back of that, we made a professional module — a professional distribution, which for $80 you could get some extra functionality and some pretty cool stuff. And you could white label it and all that.
That’s how PyroCMS ended up coming about. It’s a bit of a natural evolution story, as opposed to like, “I am going to make a CMS, because the CMS market is so insanely flooded that no one’s going to go, “This is where I can make some money. This is going to be the next big catch.”
Len: And did you do anything specific, looking back on it to get all that attention, eventually, when you were happy with how it looked, on GitHub?
Phil: That was also a bit of a natural evolution as well, I think, as well as a lot of luck. It was built using CodeIgniter. And at the time there wasn’t a finished CodeIgniter CMS. There were a lot of half-done attempts, but there weren’t any like that. It was also when the whole concept of PHP frameworks was quite new. They’ve been around since 2006, most of them weren’t great or weren’t publicly used for a couple of years after that. So around about 2009, 2010, we were the first CodeIgniter CMS that was completely done that had the features that people needed. That combined with the fact that I was very active in the community — I blogged a lot, I wrote about CodeIgniter a lot. I had a relatively large following of people that liked that framework. Because of that, people would see about PyroCMS and that was it. There wasn’t like an AdWords campaign or anything — marketing like that. It was just naturally people started using it.
Len: That’s a great answer, thanks. I think a lot of people, when they’re telling stories about how something became a success, they’re sort of like, “I was working in the movie store, and then I won my Oscar”. It’s really good to hear the details of how people get from A to B.
On that note actually, I was wondering — I know that you’re quite a popular conference speaker, and I think a lot of people who themselves sit at conferences, wonder, “How do I get up on stage?” And do you have any advice for anyone looking to make that move?
Phil: Again, the way that it worked for me might not be how it works for other people.
To explain that, the first few conferences I spoke at, I organized myself. So, again, CodeIgniter, if people don’t know what that is, I’m sorry to keep mentioning it, but I ran the CodeIgniter conference. I took it over from somebody else, because they did a terrible job the first time around. And the next couple I organized, we had three of them, and we got a bunch of speakers in. I spoke at those to give myself a little bit of practice.
But apart from that, I did a few meetups and user groups and things like that. And that’s a great place to get the confidence to speak. Because if you have a local user group — whichever one it is, and there’s maybe 20, maybe 60, maybe 100 people that go. If you can go and speak there, then unless you’ve done a few things wrong, they’re going to be your friends, they are going to be people that you know. And therefore, the feedback will be much better. It will be less scary, because you’re looking back at familiar faces. And it’s much easier to kind of dip your toe at the local user group than it is the conference stage.
Once you’ve done that a couple of times, you just apply literally every website has a, most conferences have a call for papers website. There’s a few websites around that list these, and I really wish I could remember what they’re called right now. If you Google search “call for papers conferences” you’ll find one. But just apply and make a good abstract. Ask your friends for feedback. Put it up on Twitter, see what they say. And just apply and go.
The other approach, really quickly is — most conferences you attend will have a “uncon” track. The uncon is usually just a room that has a stage and a microphone, just like the main stage. But they won’t have a planned schedule for it. So you can just go there, sign up and say, “I’ve done this one at my local user group, and I want to do it now, and I think it’d be good.” And do it there. And then, if people like it, you’ll get good feedback on the internets and then maybe you can apply for a proper one at a difference conference soon.
Len: Speaking about doing things with groups of people that you know, I saw that you were involved with an organization called “The League of Extraordinary Packages”, or, “The PHP League”. I was wondering if you could talk a little bit — I love the name by the way. I saw in one of your blog posts, I think that some people didn’t get the joke, which I find extraordinary. But obviously “League of Extraordinary Packages” comes from “League of Extraordinary Gentlemen” the movie — I was wondering if you could talk a little bit about what the League does and how it got formed?
Phil: Absolutely. I think — I’d been quite used to releasing code under CodeIgniter or PyroCMS or FuelPHP — or under the names of any of the open source projects that I’d been managing. But when I moved to New York and became CTO of a tech startup, I had a fair few responsibilities, a few things on my shoulders. And I didn’t have the time or the ability or the need to work on CodeIgniter, FuelPHP or PyroCMS.
So I ended up quitting all of those things, which left me in a really weird position. When I was releasing some code — I was building this code for use at the startup called Capture — I was building this code, and I realized that I should release it as a package, because it was actually really useful and it didn’t exist as far as I knew in the PHP world. So I wanted to work out where to put it. But with PHP these days, you need to have a namespace for it. It didn’t in the past, but a namespace can just be — it could be your surname or your company name or a nickname or anything else. And I started thinking, what would that namespace be? Would it be Phil Sturgeon? Seems really egotistical to make people write my name into their code. I’m like, “Sturgeon’s a bit weird.” And I was like, “Do I come up with a nickname?” I used to be called “Squared.” “Oh Squared’s another company, I can’t be called that.” And I just had this really hard time doing it. And I asked my friends if they’d ever thought of it. And they’d had the exact same problem.
So in the end, me and a few friends tried coming up with some names that we could use. I think that “PHP Super Best Friends Club” was in there — that was a winner for a while. But the namespace was hard. Would you like call it “Besties” or “PHP SBF” or whatever?> Eventually somebody suggested “The League of Extraordinary Packages”. My concern was that people would think it was an indecent joke. But luckily that one hasn’t been the feedback so far. Basically we just released a bunch of code under this name. It’s me and a few of my friends. We’ve got OAuth 2.0 servers and OAuth 2.0 clients. Fly System, which is a PHP package that helps you use one standard interface. And you can work with different file systems like the local file system, S3 FTP — all these different things. They’re just really, really interesting — really unique packages that focus as much as they can on quality, without taking shortcuts or anything else. And we all work on them together and share responsibilities, and it’s a fun little group of people.
Len: That’s fantastic. I also have a question about Ride, where you’re working now. As I said in the intro, a New York City-based carpooling app. I was wondering if you could talk a little bit about what Ride — it’s an interesting space- what Ride’s larger mission is, and what your role is there.
Phil: Oh for sure. It’s an interesting space and there’s a lot of competition. We’ve managed to find ourselves a little niche that isn’t being fulfilled already. So when people say “carpooling” and it’s an iPhone app — everyone thinks, “That’s like Uber and Lyft, right?” But things like Uber, Lyft, Get, Via — all of those similar apps, they are basically, “I am currently at point A, I would like to get to point B — can you get me there now please?” And somebody will come and pick you up. There’s a paid driver, and they will take you to where you’re going.
Now that’s fine as a one-off, but imagine if you lived in a town where there’s 10,000 people, and you had a 1 hour long commute to work every day? There’s no way that you can just stop using your car and request an Uber every single day. Because what if you’ve only got a few Uber drivers in that town? What if they take the day off? What if they’re busy? What if they’re not near you? So trying to use Uber or Lyft or Via or Get — or anything else for schedule-based, repetitive — like literal carpooling, like back in the good old days, carpooling, it is quite hard with those services.
So we help people that already know each other, invite each other. And then in that case, it just helps you manage the money sharing. And if you don’t know people that want to carpool, then we’ll help you be matched with people automatically. So based on your schedules and based on where you’re going, we’ll find you a really efficient match that helps get you from home to work and back again every single day on the same schedule. And so far, no one else is doing that. I think Uber Hop I think is the name of the one they’re starting to roll out, which does things a little differently. But, it’s an interesting space anyway.
Len: It’s really interesting actually. I hadn’t thought of it that way before. But one of the ways many products and services — one of the divides that products will fall on one side on or the other side of is — is it something that you can rely on when you need it for something serious? So for example, now I make the distinction between — I don’t use it, but Outlook and Gmail, right? If you can go to jail for sending the wrong email, you use Outlook. And if it kinda doesn’t matter that much, you use Gmail. And there’s all sorts of ways of explaining that, but one of the differences is that in Gmail it will actually hide the email address of the person you’re sending it to. And like no one who ever designed that has ever sent a serious email in their life, right? They imposed that on all of us.
Phil: Well that’s how things like Hilary Clinton sending it from her wrong account happened, right? That’s just -
Len: Exactly. But I’d never thought of that. So that’s very interesting. So in the world of arranging rides, Ride is on the side of people on the side of the divide where it’s getting to work, right? You can’t be late.
Phil: Yeah for now it’s — as far as definitively getting to work, like you sign up and you put in your itineraries, and it’s the same time every day. And then it will go to and back every day. Which is a little bit rigid, which is why we’re rolling out a few cool new features in the future, to make it a bit more organic. Like we’re going to ride today. We’re going over there. And you can have a bit more control about where you’re going and what you’re doing.
Because there’s been a few times where I’ve — me and my friends go paintballing over in Staten Island. It’s quite a drive away, right? So there’s 10 of us. We need to take two cars and we all live all over the place. So us trying to arrange who goes in what car and where, when we don’t all necessarily know each other or where each other lives, is a bit of a pain in the backside. So if we could just all jump into Ride and just be like, “We want to go to this paintball place”, and it just matches us all up, then that would be really handy. And then money’s paid for and that you don’t have that situation where like two people have Venmo and one person has Square Cash. And the other one doesn’t like technology. So he just gives you a fiver and you forget about it. That whole thing can be solved with apps quite well I think.
Len: That’s really fascinating. Does Ride have an enterprise version where people who have companies where they provide services like that can then use Ride for their service?
Phil: We don’t have any of that fancy stuff just yet. But that would be interesting. Most of our users are accumulated in a B2B fashion. So we do work with a lot of larger companies providing their carpooling for them. So we’ll talk to big companies — can’t think of one I’m allowed to mention, so I won’t. But a big company. That company will give us a certain amount of money per year, and then we will provide them with statistics and information on how many tons of C02 they’re saving and how many cars are no longer going to be in their car park, so that they know that they can sell off one of their car parks to a Starbucks or whatever. We work with large companies in that sort of way, to give them value back, knowing how much C02 you’re saving, will get you money off your taxes, or whatever. Because you’re doing a good thing. But yeah, we don’t have any other sort of fancy integrations yet.
Len: I was also wondering — I mean it’s kind of an obvious question, but I suppose Ride’s relationship to the foretold switch to autonomous cars would be — if that were to happen, would be less controversial then for other ride sharing apps, right?
Phil: Yeah, makes zero difference to us if you happen to be interacting with the car or not. Say we have four people, they’re in a ride. Any one of them can be the driver. They can swap halfway. None of this stuff really matters. Because we don’t have paid drivers, we don’t lose out if no one’s actually got their arms on the wheel. So that’s okay.
Len: That’s really interesting, I can imagine, especially if companies in the automated driving future start arranging for maybe less rigid commuting patterns, something like that would be really, really useful.
Phil: Yeah, you can use a helicopter if you want.
Len: Yeah, if only. Especially where you are in Brooklyn, just getting over to Manhattan would be -
Phil: It’s the only way to get around in any sort of reasonable time. But it’s a little bit pricey. I prefer the train.
Len: Actually I wanted to ask you a question about something you were involved in recently, called — I think — Geeks Giving for AIDS, where you went on a really long bike ride, like 285 miles. And in addition to doing that to raise funds, you did two interesting things. One was you included discounts to buying your books, and even books by other Leanpub authors if people would donate. And you also went a month without drinking.
Len: So both are actually really interesting aspects of that to me. I was wondering, was it easy to get other people, other Leanpub authors to contribute books to your plan?
Phil: Yes. I’ve actually done this twice. I did this once in the past. And I just did the discounts and things like that. And it was roughly the same plan and the same bike ride. I just asked my friends if they’d do me a favor the first time. And I mostly only approached people that I knew pretty well, like people I’d met at conferences and had a drink with or we hang out regularly. And then I realized that it was actually quite good marketing for them. So the second time I didn’t feel quite so bad running around asking other people.
A lot of the time getting any sort of coupons out there is pretty helpful. Some people say, “Don’t overdo the coupons.” But I really find that they help. Another little trick I found is if you can stay in the top ten on Leanpub, then you get a lot of sales just by being on the top ten. So quite often throwing out some coupons — you might make a little bit less money that way, but you get more money when you’re up top. So most of my friends are happy to give out a couple of coupons, especially if it means that the money’s all going to charity.
It worked out really well. There was Leanpub people, there was other random people that do video courses and all sorts of discounts. And it was because I’d done it twice. The second time I thought, “I’ll throw in an extra bonus. I’ll do a month no booze.” Because I like to party, I like to have fun. I go out with my friends a fair bit. And that was the extra clincher for a lot of people, because a lot of people were like, “We’re not going to keep paying Phil to ride bikes. Phil just likes riding bikes. We’re not going to keep putting our hand in our pocket for this.” So in the end, I was like, “Well okay, if I also don’t drink… “ They were like, “Whoa, he’s serious. We should put some money in there.”
Len: I’m really curious, but just very briefly — I have a friend who did that once. And he said a very unexpected consequence of it was that he was tired all the time and slept a lot more than he did normally. I was just wondering if it had that effect on you?
Phil: Yeah I got a fair amount of sleep, and I also started a few side projects, which I now don’t have the time to maintain. I was just hyper productive for a month and it was really fun. I wrote a few articles. I think I started working on a video course along the same lines as my API book. I did a whole bunch of things that I’m going to have to finish up now, instead of drink.
Len: I was wondering also about the charity project. We’ve got the Leanpub For Causes program, I’m not sure if you’re actually aware of that, but Leanpub authors can share royalties from their sales with various causes that have signed up. You just pick one and you can share with it. Including PHPWomen, I think, which is a cause that you’re familiar with.
Phil: Oh really? I hadn’t seen that on there when I was selecting my group. I’ve been donating to the EFF for the entirety of the time I’ve had the book on there. At one point when the EFF were really losing, I put it up to 20% and I think even to 30%. But now that they’re winning a few more battles, it’s back down to 10%, because I need the money myself. But I didn’t know PHPWomen was on there. Yeah, it’s great news.
Len: Yeah they joined up a little while ago. But yeah okay thanks for that. I actually — I should have known that but I forget that you were supporting the EFF. And that’s — I support them with stuff too. And yeah they have been having more victories lately, which is great. But yeah it’s really interesting the sort of symbiosis one can arrange between doing good things for other people, and doing good things for one’s self at the same time. Which is one of the reasons we started the causes program.
So I wanted to ask you a question that’s related to Build APIs You Won’t Hate, which is one of the big Leanpub bestsellers. I know that over the summer [it was in 2014 — ed.] you wrote an article about some difficulty you had with getting a work visa to the States.
Len: And I know that’s a really long story, so I’m not going to ask you to repeat it and I’ll post the links when we publish the transcription of this blog to your blog post where you talk about it. But I did want to ask, I know that actually your book, Build APIs You Won’t Hate, actually played a role in that story. I was wondering if you could tell us a little bit about that?
I don’t think it’d be too much of an exaggeration to say that it stopped me from being dead or homeless.
Phil: I don’t think it’d be too much of an exaggeration to say that it stopped me from being dead or homeless. I was going through a really tough time. The startup that brought me over to the United States, they ran out of money without warning me about it. And therefore, one day everyone was just fired, and the company was bankrupt and it was pretty terrible. And the type of Visa I had makes you tied to the one specific job.
So, without diving into it too much, basically I — I think I popped off out of the country to go and speak at a conference in Barcelona. Some friends of mine were running it, I didn’t want to cancel on them. And then I wasn’t allowed back into the United States. And so I came back on holiday. And it was one of these ridiculous situations where I was not allowed to work. So I couldn’t do any freelance stuff really.
But I also couldn’t get rid of my apartment, because my apartment was on a lease that they wouldn’t let me out of. And the only thing that — for the 3 months I was there on holiday before I ended up having to get the heck of the country entirely, my only source of income was actually Leanpub. So it worked out perfect timing, in that the first month I collected royalties from Leanpub was the — it started right at the start of that.
So the whole time through, the only money I had coming in was Leanpub royalties. Because that’s not working, I can do that legally. So it worked out really well and eventually I managed to get rid of my apartment, and I kind of went international for a while. And there was a conference in South Africa and a conference in Turkey. So it was like, “I’m just going to hang out in South Africa for a while, and I’m just going to mess around in Turkey.” So actually, it sounds like a first-world problems situation of being like, “I had to go to these places.” It was amazing.
I finished off the book on this rooftop bar at a really cheap hostel in Turkey. And it was scarily whilst the riots were happening. The Taksim Square riots were happening. I could hear them all happening and I was like, “I’m just going to stay over here and drink my martini while that all happens, and finish working on my book.” It was really weird, but it was really helpful. And without Leanpub making me that income, I really don’t know what I would have done.
Len: Well I was really glad to read about that, and it is really fascinating hearing about it directly from you. That a book can play a role like that in someone’s life.
Len: It’s just great to hear. Actually I have a question — I myself have lived and worked abroad. I lived in the UK for nine years. So I’ve got a little bit of experience with what it’s like to do that. And you’re in the States right now, and I was wondering what your take is on the discussion around immigration that’s happening in the Republican primary. Is that something that has an effect on you at all, or is it something you think about in personal terms?
Phil: Yeah it’s really interesting. Because most of these people that are complaining about immigration just haven’t quite realized that they’re racist yet. There’s a number of times I’ve been in a bar or somewhere, sat around in public, and you hear people say, “Are all these immigrants coming over here and taking our jobs?” or whatever. I’ll just be like, “Hey, excuse me, I’m an immigrant. I don’t believe I was taking anyone’s job. Because they tried for months to find somebody, and then eventually they had to bring me over at great expense to them and the nation and some lawyers — just so that the job could be done. Are you mad at me as well?” And they’ll be like, “Oh no, we don’t mean people like you.” “Oh, you mean people from other countries?” Other countries don’t like people that happen to be a different color to you. Oh I see. And then like, they slowly start to realize that they’ve just been racist.
The whole stuff on immigration right now is pretty mad. Because America is notoriously hard to get visas in. I think my story, the very brief one I gave you. But if you read the article it’s like — I’ve had a really hard time getting a visa and staying and working in the country. And I’m making a reasonable salary and if they gave me a visa or a green card, then they would be getting quite a reasonable amount of tax every year. And there’s a lot of smart people that want to get into the country, that want to work and contribute to society and they just can’t. And it’s really daft.
I know you can’t just throw open the flood gates and let everyone in. But it just — it really blows my mind that it’s so difficult to get here and work here. Because, the very basic version, if you’re trying to get a visa to work in America, you either have to get an O-1 Visa, which is the “Alien of Extraordinary Ability”, which me and a few of my friends have got — great name, right? — but to get those is really hard. You have to have books out and conference speaking or be a judge on a panel at some big whatever. You have to do all these big, hard things. You have to get like articles on NETTUTS and wherever. And then they’ll give you a visa. And that costs about $10, 000 to obtain, and it takes months to work on.
But that is often a better option and is quicker than trying to apply for a H1B Visa, which used to be a case of first come first serve. But now it’s a lottery and it might take you three years to get a visa. So if you’re trying to get a H-1B, you have to apply in April. You might get one in October, or get one next October, or next October or next October. It’s ridiculous. Like, who is trying to — who is going to a job interview saying, “Yeah no, I’m happy to work for you, when can I start? Any point in the next three years to be honest. Probably around October.” It just never works, it never makes any sense. So how the hell are people meant to get visas and come and work in the country, when the option is pay an insane amount of money, which you probably don’t have. Or just wait forever. Or like marry someone illegally.
Len: It sounds incredibly difficult, and it’s one of those things that makes the debate even more difficult to listen to from abroad. I can only imagine what it’s like, because at least in other countries, one doesn’t run into the advocates for that kind of thing so much. But if you’re living there, I imagine it’s just a part of daily furniture every once in a while to have to defend your own situation.
Phil: Yeah, actually one thing to add into that actually is that, unfortunately people often conflate the idea of making it easier to obtain a work Visa with, “Well you should just let people work remote.” I’m a massive fan of remote working, and it definitely has it’s place. Some companies are 100% remote, and that works for them. I’m really impressed with that, and I’d like to experience a company that can be 100% remote successfully someday. But the important thing to remember is that most companies, even that do have a large number of remote staff, do have people on site. And a few startups, the startup I’ve worked at now, we have 20, 25 engineers and two of them are in the New York office. The rest of them were in South America. They’re in Argentina, Brazil, Columbia. And that’s a pretty spread out team, that’s pretty remote.
But the benefit is that we have two engineers and a few people in the office, so that we can have those important meetings that can’t be done via Slack, and can work on those things. So you want to have some people that can actually be face to face, and then other people remote.
The thing that people forget about remote employees is that you still have to see each other sometimes.
The thing that people forget about remote employees is that you still have to see each other sometimes. If you’ve never met your staff or the people you work with, you have this really gross, weird, isolated feeling at work. It’s not something that people stick around with very long. They’ll do a year there, and they’ll wander off. Maybe if they’ve got families, they’re more happy with it and they just like being around their family. But we often find — at Ride we fly the Americans down to South America or them up to us. And we find flying people around quite a lot is a good way to kind of fix that remote distance situation. But it’s also really expensive.
So you can’t just always replace on site workers with remote workers. In every instance where you need someone to work — in the office, where you might end up getting them a visa, they’re not going to be the correct person for remote working.
They’re really not the same thing. And whenever you try to have a conversation about making it easier for immigration and visas to happen for tech employees or for people in general, you always get people run out and go, “Remote work, I remote work and you should do that more often.” You’re like, “It’s not the same, stop it.”
Len: Yeah, I know exactly what you’re talking about. One of the consequences as well that people often don’t think about or take into account, maybe until they’ve done it, is that, you can kind of end up with the cool kids and the not cool kids. The cool kids are the ones who are at HQ in the native country to the company. They see each other and talk to each other and hang out all the time. And other people don’t. And it’s even little things like not getting the in-joke and having to have it explained to you. That can build up into a narrative that you’re completely outside of over time and so that’s another one of the costs of remote working, is that sort of cohesion is being lost.
Phil: Yeah, absolutely.
Len: It’s also interesting, I hadn’t thought about this at all, but from a perspective of immigration policy, you probably want fewer remote workers, because they don’t pay taxes in your country.
Phil: Absolutely. The money’s just going straight out to some other random country and you never see it again.
Len: Yeah, I mean it’s outsourcing from that perspective. Anyway, moving on to APIs You Won’t Hate. I was wondering, money aside, what was your motivation to write a book on that topic?
Phil: Interestingly, I never really thought it would make that much money. I’m pleasantly surprised that it’s done okay. The original plan was that I wanted to — I blog a lot, and I really enjoy blogging. I really enjoy writing. And I originally did this really silly little blog post of just bullet points of things you should think about. And it was a bit flippant and jovialistically rude. But it was just like, “Do this, do that. Yeah, you muppet”, and just really rapid fire like that.
And it was actually really well received. People are, “I hadn’t thought about this, could you expand on this? Could you explain this more?” I used that bullet point list to then notch out some sections and chapters. It was originally like nine chapters long. As I started writing, I realized that it was going to be more like 13 chapters long. And it took me a couple of weeks to really finish up the first post. I thought, “Oh God, if it’s going to take me a couple weeks or a month for every single one of these chapters, it’s going to take me a year to get this blog series done”.
I’ve never put adverts on my blog. I’ve never really tried to do that. I don’t like to try and monetize everything I ever do. Although, that’s changed a little bit because of the tax situation. So I don’t really try and worry about just building good content on the blog so that it can make ad sales or whatever. I just usually just enjoy writing.
But I realized how long it was going to take me to finish off that entire book. And I also worried about the quality — if I take on this project, it’s going to take me a year and a half of just writing these articles. Firstly, I’m not going to get to write about anything else, which is going to be really boring. But secondly I worry that quality would be much lower.
Whereas, when I realized if I was to make it as a book, then I could actually put even more time in it. Even more effort and maybe get an editor later on.
Which, unfortunately I did too late. A lot of the reviews happened before I got the editor involved. So I got four out of five instead of a five. But that was the motivation really. It was like, I don’t want to just knock out this nonsense and I don’t want it to take forever for nothing. And I don’t want to have to jam adverts on my website to cover it. So I’ll just do it as a book and see what people are willing to pay. And happily people were willing to pay quite a decent amount, and they were happy to buy it early on as well, so I could fuel the development of the book with the early sales.
Len: And is that one of the reasons you chose Leanpub, amongst all the options there are out there? Was it the ability to sort of hit the publish button before it was “done done”?
Phil: Yeah that was exactly it. A lot of people just said, “You’re an idiot why are you giving them 20% or whatever of your royalties?” And that was never the point. Like, I could make 100% of not much. I could wait until I finished the entire book, and then like a year later or six months later, I could then get 100% of the sales. Or I could do it earlier on and do it better.
Just having this group of people that were used to the concept of books being developed on the go, meant that people wouldn’t be shocked or annoyed when they got a half done book.
Just having this group of people that were used to the concept of books being developed on the go, meant that people wouldn’t be shocked or annoyed when they got a half done book. And being able to send out email updates. All that sort of thing. It just seemed like a really good way of doing it. And I basically did — I did the first chapter as a blog, I think. So I already had that one there for free, and just tweaked it up a little bit. And then the next two chapters I did in the space of another month, I think. And then I put those three chapters on Leanpub and put the price for like $8.99 or something. And then I just went, “Go. You can buy it now.” See what happens. And luckily, people started buying it. And the more people that bought it, the quicker I worked on it, and the more time I devoted to it. And then it was done.
Len: Oh that’s a great story. Just one comment is that our royalty rate is 90% minus 50 cents per sale. So it’s about 10%.
Phil: Oh nice.
Len: But we’re very familiar with and sympathetic to the arguments that certain authors have of, “Why would I give — why don’t I just go — Why don’t I do it myself?” It’s when you have needs for other — I mean, we think that Leanpub is a great platform, and people should publish all their books on it. But it’s very understandable that one would hear that argument, especially when the concept of “lean publishing” is still relatively unfamiliar and people might not be aware of all the value that you can get out of doing things that way, and being part of a community where people already understand what the value is in that.
Actually, I wanted to ask — one of the values that a lot of authors find in that is the feedback that they get from the community when the book isn’t finished. Because often the very first people you attract are the ones who most desperately need whatever answers you’re providing, right? So they would rather have their problem partially solved now than never solved. Because if a book about it came out in a year, that’s far too late for them to get done what they need to get done. And I was wondering, was interacting with readers while you were writing it something that you engaged in actively, or did things just come to you, or did you just ignore it?
Phil: All three. Some people got in touch with feedback that was absolutely on the money, and I implemented as it came in. Some people gave me suggestions for things to add or links to include or things like that. So there was a certain amount of user participation, which was really helpful, that I wouldn’t have just got if I was doing it in an echo chamber.
I don’t like to advocate “the users will be your beta testers.” But there was a certain amount of — a lot of people noticed mistakes. I’m terrible at spelling, I’m terrible at grammar. And at relatively early points, I mean that’s kind of the reason that you’re getting this cheaper book is that it’s not finished, right? Like it’s not done yet. And when it’s done it’ll be spot on. But if you need this information soon, if you want it at discounted prices — you might have some mistakes to deal with.
Someone fixed like 100 spelling mistakes in one pull request — which was amazing.
But luckily people were really understanding about that, and there was lots of — people even sent me some pull requests. Once you started supporting GitHub, there were a certain number of people that were like, “Please add me to this. I promise I won’t do anything messed up, just let me make a pull request to the book”. Someone fixed like 100 spelling mistakes in one pull request — which was amazing. So the users really helped out there; the users helped out more than some of my friends did, because everyone’s busy, and everyone’s got stuff going on. And a few people did say, “I’ll definitely take a look at that book for you.” And then life got in the way, and I completely understand why. But there are a few people that were going to help a lot that just didn’t do anything. And there were a few users that helped more than everyone. So it’s impressive.
Len: That’s a really great story — to enable something like that is one of the reasons Leanpub was built in the first place. Especially seeing that there are — well there are people who think very strongly that they only want to read something when it’d “done done”. Even those people often find, a) “Actually sometimes I’m in a situation where I really need information or opinion from someone who’s really good at this right now”, and b) they’ll often realize too that as annoying, when it’s in the flow of your reading, as say a typo might be, the gratification that you get from informing the author about it and having them update, is actually something that a lot of people really enjoy. Which goes towards explaining why you’d have someone do like 100 corrections to your book.
People enjoy helping each other and participating in projects like that. And it can really, really be gratifying on both sides.
I was wondering also about, PHP: The “Right” Way. I was wondering if you could explain a little bit about that project, because that’s been quite successful in terms of the number of downloads on Leanpub.
Phil: PHP: The “Right” Way is actually a really interesting project. Because it’s not something — to say that me and my co-author, Josh Lockhart are co-authors is an interesting way of looking at it. Basically we started a website called, PHP: The Right Way, which is a community-built set of resources, tutorials, guides, tips, advice on how to write PHP in a more modern way. If you Google search pretty much anything, like, “How do I upload files in PHP?” One of the first things you get is some absolute piece of garbage that’s going to make your website be instantly hacked and just terrible. And it’s really unfortunate that that’s that how a lot of people see PHP, is because there’s all this garbage out there, that’s years old — completely irrelevant — they think that is what it still is.
So we decided to make this website that would be a link to resources. You could just link to this section. This is how you install it. This is how you use composer. This how you do these things. There’s loads of information in there. And I wrote probably about 30% of it. I don’t know — maybe only 20%, but I’m one of the top two, three contributors on there. And Josh Lockhart did another really huge amount. He’s done 30% to 40%. But it’s very much a community-built website, in the sense that we have — I haven’t looked at it in a while, but it’s a couple of hundred of contributors. It might be like 300 or 400. I don’t know.
My contribution — apart from writing a whole bunch of the website — was that I built a little, a tiny little PHP script that would pull in the website. Which is all written in Markdown, and convert it into Leanpub Markdown, Markua [note: Markua is not quite live on Leanpub yet, and will replace the current “Leanpub-flavored Markdown” — ed.]. So it would take the very — I think it was built in Jekyll originally. So it would take the very specific Jekyll tags, and then do a little bit of find and replace and turn them into Markua. Which wasn’t much of a big deal at all. It’s more to do with syntax highlighting and stuff like that.
But I turned that into a book, and then released it on my account, just because it had to go somewhere, and Josh didn’t want to do it. So now it’s up there. And every now and then I re-run the script and all the updates from the website go and get put up on the Leanpub book version. People have really enjoyed it. I don’t know if they want it for their Kindle or whether they like to print it out. Or they just wanted a version that wasn’t a big website or what. But people have really seemed to have gone for it. It’s got like 3,000 downloads or something silly. I can’t remember.
Len: I was wondering — so you mentioned before that you — sort of towards the end of APIs You Won’t Hate, you got an editor. And I was wondering on that note, when people are thinking about, “Should I publish a book?” one of the things they wonder about is marketing. I was wondering if you did any specific marketing around the book, or was it just something that you would sort of promote from time to time, here and there?
Phil: Yeah, I’m really bad at marketing. So luckily my editor, Ashley, helped me. Ashley’s also my marketing helper/adviser/friend. So a couple of things I started to do. I have a relatively big blog, so I blog about API related things. And then if the post is tagged with API, at the bottom there’ll be a little section that says, “And if you like this, there’s a book over there”. Stuff like that, which has got me a couple of sales. I don’t track how many, but I know that — I saw a noticeable bump when I put it on there.
Other than that, I found that just trying to make a useful community and a useful resource out of the website — I made apisyouwonthate.com be its own website — and then people can go there and buy stuff. But I’m trying to turn that into more of a community and more of a — less of just like a marketing page for a book. Because that actually makes people want to link to it more. And we now have a Slack group, which is something I added fairly recently. And that got about 500 people in it already. I sent out a little blast to the mailing list, which I accrued via Leanpub. So I sent a little blast to the mailing list, and just said, “Hey everybody if you liked the book and want to talk about stuff to do with APIs in general, come on over to the Slack group, and we can just chat about that in general.” And that’s got a lot of people talking, and a lot of people have invited their friends. And then people were like, “Oh there’s a lot of good information here. I should probably go and check out this book, because it’s also relevant”. And when I see people posting really cool links to articles, I then can post those from the Twitter account for APIs You Won’t Hate, and stuff like that.
So it’s really like self — not self serving, that’s the wrong thing to use. But it’s like beneficial for everyone. People get this great place, and they can talk. And then that surfaces information that I haven’t thought of. Gives me ideas for blogs to write and for things to maybe add to the book in a later edition. And then other people get to see that, and it brings them back to the book and back to the Slack group and -
Len: That’s really fascinating. It sounds like a great job. I’m just particularly interested, because one of our big plans for 2016 at Leanpub is to actually do more to help people build community and understand the new directions and ways communities can be valuable and desirable when you’re built around a central piece of content, especially one that can evolve. So that’s really helpful to us actually, to hear about that.
I was wondering actually, one Leanpub question I would have is — customer development is really important to us, and I wanted to ask you, if there’s one thing we could do for you that would make Leanpub better, what is it? I mean is there something that always bugged you that we hadn’t built? Or that we had built and didn’t implement properly? Or if there was just some fantasy feature you could have, what would that be?
Phil: If you’d have asked me a month ago, I would have said Bitcoin support, which I know has been something that’s been brought up before. I was really interested in that, because I felt like there was this whole world of people out there that wanted to buy books with Bitcoin, and didn’t have access to PayPal and stuff. And I was like, “I’m missing out on so many potential sales, and there’s so many people that could learn that want to and can — Arr I wish they had Bitcoin support”.
But I ended up hacking together something myself. And in the space of three months, I’ve had two sales with Bitcoin. So it’s a complete waste of time. So yeah I used to really think I wanted Bitcoin support, but I really don’t think it matters based on my very rudimentary experiment there.
The one thing — coming from someone who’s very technically minded — if more of Leanpub was open source — I don’t mean anything too core to your business. But something like Markua itself. I’m not sure how much of that is or if any of it is. But the systems that help turn my Markdown in this GitHub folder into the book, right? Like if anything in between there could be really tweaked with. BeCause I have found and reported a few bugs over the last year or two, and most of them were finished, most of them were fixed. But there have been a few things that I would have just loved to have jumped in and been like, “Here’s the fix for this. Here’s how you do that.” Because there’s certain things that Markdown in general will support, but that Leanpub Markdown won’t.
And that — it can always be worked around. But there’s a lot of people that don’t want to have to think about the differences. And when I was doing things like importing the PHP: The Right Way website, and converting it to that, I found myself changing Markdown on the Jekyll website, just so that it would work in the book, and things like that. So that’s one thing I would like to see more of. But I know that that stuff is quite hard to open source really.
Len: Well actually on that note, I guess I have a couple of things to say. One is that actually our internationalization has been done community-based — localization I should say, sorry. Where someone’s — the first person who wants to publish a book in French is like, “Can I localize your page for you?” So we actually set something up on GitHub where people could do pull requests for just translating strings of words.
Phil: Oh nice.
Len: Or even individual words like, “Buy Now!” So you get that properly and in the right language on the button for that book. So that was really helpful.
When it comes to Markua, which is — and I don’t want to go into too much detail about it, because I’ll probably get something wrong and then Peter, my co-founder will be mad at me — but basically he has been working very hard on finishing up the complete spec for Markua, which is going to be published relatively soon, so the whole thing will be publicly available. And people will be free to take that and use that to build whatever they want, including integrations with products and things like that.
Markua, while it grew out of Leanpub, is actually a standalone thing. Essentially the way to look at it is like — Markdown was written for easily writing web pages in a simplified markup language or syntax for outputting HTML, right? So it was about web pages. Markua, the idea there is that it’s for producing documents like books. And so a lot of — there’s a lot of Markdown inspiration in Markua, but in itself, it is meant for a different purpose from Markdown. And Markua grew out of Leanpub-Flavored Markdown, which is a thing we’ve all been using and growing over this time, that you were describing, sort of wrestling with it a little bit. So when that comes out we’re going to be really interested to know what authors like you and also what people in the publishing industry have to say, right, because no one’s done for book production what John Gruber did for HTML yet. We would say anyway, or I would say.
Phil: Yeah, there are a few around, and people often say, “You should have done it in REST or the LaTeX or stuff”. I’ve worked with a lot of those, and they’re just gross.
Len: That’s kind of what I’m getting at when I say, “No one’s done it”. I mean no one’s done it in a way that worked so well so easily for so many people. I definitely know it’s been attempted, and there are other solutions out there.
Phil: It’s tough, because that’s one of the reasons I started doing it with Markdown as well. I started building it as a blog post. And then I ended up taking that blog post and turning it into a book, which was a great start. But if I’d had to have learnt REST or some complicated system or one of these like — A lot of the software for these things, you have to like install Windows for, and I don’t want to do that. So there was a lot of stuff around that seemed way, way, way, way over the top and really complicated. And with Markdown, the — or Markua, which is based on Markdown — the learning curve is nothing, you just start writing text. You know how to do links. Like most — a lot of people know how to use Markdown, even my non-technical friends. A lot of them know what Markdown is, how to work with that. So by not enforcing this really complex standard on them, Leanpub is just so easy to get into working with, so it’s definitely a benefit.
Len: Oh, I’m so glad to hear that, because that was one of the reasons that Peter and Scott chose to go down that route in the first place. It was kind of a long term bet, right? Because changing people’s writing practices and publishing practices takes a very long time. So it was a very — a very long term vision for will, something along the lines of Markdown, ending up being used for writing books in the future, and it looks like that is starting to happen which is just great.
So anyway, I just wanted to say — thanks a lot for chatting. It’s been a great conversation. And thanks for being a Leanpub author.
Phil: Yeah, thanks for having me on the show, it’s been fun talking to you.
This interview has been edited for conciseness and clarity.
– Posted by Len Epp
Originally published at leanpub.com.