Taylor Otwell: "PHP (and a cheap laptop) changed my life"
Before we get started, I want to talk about Balsamiq again. They're just a really interesting company to me. One thing that's interesting about them is they don't look at analytics ever. Instead, they're focused on talking to their customers as much as possible. And if you go to their site, you'll see there's a ton of ways to get in touch with them, forums, email, phone.
Justin:But they also have this new thing. I I might copy this actually called a customer advisory board. You sign up and you get to talk to them directly and influence their roadmap and the future of their products. Really cool. They also have office hours with balsamic mentors.
Justin:You can check it all out at balsamic.com /givingback. Hello and welcome to build your SaaS. This is the behind the scenes story of building a web app in 2019. I'm Justin Jackson. My co founder John Buda is somewhere in Europe.
Justin:But today, I have my friend Taylor Otwell on the show. Hey, Taylor.
Speaker 2:Hey. How's it going?
Justin:Good, man. Good. I thought it would be interesting to have you on the show because you are the creator of Laravel. Actually, could you briefly describe what that is for people that might not know?
Speaker 2:Yep. So in 2011, I created poor man's Ruby on Rails called Laravel for PHP. No. But it's basically a web framework that I created in PHP that lets people build their applications faster, and it is sort of in the spirit of, Ruby on Rails for the Ruby language. So it's sort of geared towards rapid prototyping, letting just 1 or 2 developers work really quickly to build a really powerful web application.
Justin:Yeah. So and it's open source. Right? Is it it's one of the most popular repos on GitHub. Is that right?
Speaker 2:As far as back end frameworks go, yes. It's one of the most popular, back end frameworks on GitHub. The the most popular, actually.
Justin:And what does that mean, like, for any of the business folks that are listening? Like, how do you quantify what's popular?
Speaker 2:Well, there's kinda 2 ways on GitHub. So one is just sort of contribution activity and the amount of people contributing to the framework. And then there's also a way to sort of favorite, open source repositories on GitHub using stars or likes and stuff like that. So usually people measure their stars. I like to also look at the contribution activity, just to see, like, how sort of active the project is.
Speaker 2:So sort of in both cases, Laravel's basically at the front of the pack in terms of back end web frameworks.
Justin:Yeah. And and can you tell how many, like, new projects are started with Laravel in a month or how many times it's downloaded?
Speaker 2:So yeah. I mean, it's downloaded millions of times a month. It's hard to really quantify with how that translates into projects because, every time someone updates their Laravel version, you know, that increments that download counter. So I don't actually have a great way to know how many businesses are building new stuff on Laravel. You know?
Speaker 2:I'm sure tens of 1,000 or even a 100000, companies are using Laravel.
Justin:Yeah. It's the part that's crazy for me as someone who kind of came from outside your world, outside the PHP world, is when I went to your conference, Laracon, I went to the one in New York. And then last year, I went to the one in Chicago. And I think, especially, the one in Chicago, it just helped me understand on a human scale what was going on. Because you were like, hey, Justin, let's go check out the lineup.
Justin:And we went and in this science center in Chicago, we're going down the escalator. And you can just see this huge lineup. And it was, like, wrapped around they had, like, a a train car in the middle. It was, like, wrapped around that train car.
Speaker 2:Mhmm.
Justin:That was crazy to me. Mhmm.
Speaker 2:Yeah. It is really crazy. And I think part of the reason that's the case is that Laravel came at a very opportune time in PHP's history, and it was sort of a light in the darkness. And so, like, in the kind of human story of Laravel, I feel like there were a lot of people doing PHP before Laravel that were really sort of burned out on PHP. And maybe they, they didn't enjoy their job, their tools.
Speaker 2:They weren't very nice to work with. And then Laravel came out and have had and still has a big emphasis on developer experience and sort of developer happiness. And a lot of people come up to me at these conferences and they're like, you know, I hated my job. I hated what I was doing. And now, you know, I'm using Laravel.
Speaker 2:And not only do I like my job, maybe I'm starting my own little side project because Laravel was sort of geared for that, you know, because it is so easy to work with. And it just really helped them in, like, a very personal way, yeah, in their life. And so they tend to be really passionate about it, and I found and they sort of latch on to it and find a lot of community inside of it.
Justin:Yeah. Did you set out to do that from the beginning?
Speaker 2:Yeah. Actually, I actually I did think about that from the very beginning because I felt like everybody wants to kinda feel like they're a part of something. You know what I mean? And Yeah. If you can build sort of this cool community around a tool and make people feel welcome and sort of included in this sort of interesting story in PHP's history and improving PHP, then people naturally gravitate towards that.
Speaker 2:And so, yeah, that was sort of intentional to build a community in that way because I felt like everyone sort of has that desire inside of them to be Yeah. Part of something like that.
Justin:How did you have that insight though? Was that something
Speaker 2:Because I felt that way personally. You know, like, I felt like I just had kinda identified these times in my life where I felt like I was a part of something, and that was those are really good moments in my life. Whether
Justin:Mhmm.
Speaker 2:Even, like, simple things, like when I was part of a drum line in college or, like, when I was, you know, in high school and in some group or whatever. And those were just, like, very positive experiences, and I think that everyone sort of socially wants those experiences deep down. Yeah. And so it it was almost like a psychological hack in a way, although not really in, like, a malicious way. But I knew that if I could tap into that, then I could probably build a fairly large community.
Justin:And so were you just observing I mean, you were clearly observing Ruby on Rails.
Speaker 2:Mhmm. Yeah.
Justin:But you must have also been observing what was going on in the PHP world. And there's, like, cake PHP, and there's code igniter. Like, were you just seeing the opportunity of, wait a second, they're missing this crucial piece?
Speaker 2:Yeah. So I started doing PHP on the side because I wanted to launch my own side projects. In my full time job, I was doing dot net development. I never really done PHP much at all, except a friend had used it in college and just sorta had offhand commented that it was pretty easy to use. And so Yeah.
Speaker 2:When I wanted to start a side project, hosting dot net on your own for your own side project at the time, which is sort of a chore. So I went to PHP. I started using some of the tools, and, they were okay, you know, like CodeIgniter. And I didn't even really sample a lot of the tools. I really only used CodeIgniter.
Speaker 2:It's not like I tried a lot of them. And I was like, this is okay, but I I really wanted some of the features that I saw in other frameworks, like Rails, even like some of the .net web stuff and, kinda set out to make my own thing. But I I didn't even necessarily have the intention of making it a big deal until maybe 4 or 5 months into the process. I was just sort of building it so that with the end goal of launching my own, you know, web apps and startups.
Justin:Okay. And so what year was this?
Speaker 2:This was late 2010.
Justin:2010. And
Speaker 2:Laravel shipped in 2011 June 2011.
Justin:So it's pretty quick. Mhmm. Yeah. And was it exactly like this? Like, you're, like, working at this dot net job in the day.
Justin:Mhmm. And then on the side, you're, like, I wanna build my own projects. And then you're like, okay. Well, I'm gonna choose PHP. And then you're you see that there's this need for a framework.
Justin:And so you started building that right away, and it took about a year?
Speaker 2:Yeah. Exactly. So I I I feel like I probably started working on Laravel in, like, September, October 2010
Justin:Okay.
Speaker 2:And shipped 1.0 in June 2011. But, yeah, I mean, that's basically exactly how the story went.
Justin:And what what else was going on in your life at the time, Like, in 2010?
Speaker 2:I was pretty recently married, and we had our first child. We were living in a small apartment. I had, you know, I actually had, like, a very cheap Windows laptop. I didn't I I actually was not, like, very techie or nerdy, surprisingly. I didn't, like, come home really and just, like, nerd out on the computer a lot.
Speaker 2:And, but once I had this idea, like, really dove into it hardcore and would stay up until, like, you know, my wife would go to bed at, like, 9 PM, and I would stay up until, like, 1 AM pretty regularly. I just seem to have, like, quite a bit more energy back then for some reason. But, so I would hack on it, you know, on my, just like flimsy Acer Windows laptop for, like, 4 hours a night. And, you know, over the months, it kinda came together.
Justin:That's crazy. What's weird there's a bunch of weird things to me. Like, you you didn't think you like, you weren't really that nerdy of a guy? You weren't, you weren't super into computers or anything?
Speaker 2:Yeah. Like, a matter of fact, when I I graduated from Arkansas Tech University in 2008, and I had an IT degree, but I was actually so not interested in programming that I actually considered just getting in a different job outside of IT entirely. Like, it just wasn't, I think it was because I hadn't been presented, programming in sort of a way that captured my attention yet.
Gavin:Mhmm.
Speaker 2:And so I just wasn't sure if that's what I wanted to kinda do, but I just happened to follow it into a full time job that that's what I did. So, that kinda solved that problem.
Justin:Yeah. What's weird for me is because you have a podcast called Laravel snip snippets.
Speaker 2:Mhmm. Yeah.
Justin:And when you talk about programming, it's clear that now you're passionate about it. Like, you'll comment on, you know, the debate of the day on Twitter. You'll you'll give your opinion on, you know, what you think is the best way to do things. So what what changed? What changed from you feeling like you just wanted to get a different job and not be in programming at all to kind of being captured, enraptured by this idea.
Speaker 2:I think a big thing is I hadn't really grasped programming as sort of this blank canvas for my own ideas. It was all sort of, working on other businesses, kind of boring ideas, like, you know, just kinda stuffy, like, main you know, make a change to this accounting routine for this, huge company or, you know, change little programs like that. But it wasn't like this blank canvas where the sky's the limit, and I can basically build anything, any web app I want to, and make money off of it. You know, I just didn't really have that vision at the time. So to me, programming was, like literally for the first couple years of my job, I went to work.
Speaker 2:I did my programming job, and I went home and I didn't think about programming at all. I didn't get on GitHub. I didn't do any of that.
Justin:Did you did you have a profile on GitHub?
Speaker 2:I don't think so. No.
Justin:Was there something going on in the startup world that interested you?
Speaker 2:So what drew me in actually was, this kind of jogging my memory. I wanted to be able to sort of work from home and set my own hours. And that that was sort of the impetus for figuring out how to make money in other ways. And, I know there wasn't really anything going on, like in the startup world. I just kinda would think up little ideas.
Speaker 2:I mean, just stupid little stuff, you know, like an invoice manager for lawn companies or, like, just little business ideas. You know? And I was I wasn't necessarily trying to make 1,000,000 of dollars. Maybe if I could just make a 100,000 a year, then that would be great. Especially here in Arkansas, I could just work from home and kinda set my own hours and, like, we would have enough money to live comfortably and all that.
Justin:And so okay. So you're you're working this dotnet job that's kind of boring. You recently married. You've got a a baby. Mhmm.
Jon:You're
Justin:living in this little apartment. And the motivation was, wait a second. I if I want a better life, maybe I could build something on the web
Speaker 2:Mhmm.
Justin:That would make us an independent income, and we can get out of this you know, it would help improve our life on multiple vectors. Right? I would have to go to this boring job. I wouldn't have to, you know, we could live more comfortably. We could you know, you saw that there was a potential for something bigger.
Speaker 2:Yeah. Exactly.
Justin:But you didn't have any role models? Like, were were were there no people that you were really, like, kind of following? Or was it just, like, were you on Twitter and noticing folks there? Or
Speaker 2:No. I really wasn't on Twitter. You know, I mean, I guess my biggest role models at the time were just, like, Steve Jobs. I don't know. Yeah.
Speaker 2:I mean yeah. It wasn't like any other program necessarily until I got deeper in. You know, once I got, like, deeper into working on Laravel, I was looking at other frameworks like Rails and, what else at the time? Like Flask and Sinatra and Ruby. Flask is in Python.
Speaker 2:But, you know, then I started to kinda pay attention to other programmers.
Justin:Yeah.
Speaker 2:Yeah. At first, I didn't really I just didn't know anyone like that, you know, because I was sort of out of the loop.
Justin:Mhmm. The interesting thing is that's kind of like a common thread also in the Laravel community. You you mentioned that earlier. Right? Like, for for Laravel developers, this can turn their life from being kind of boring and tedious, uninspiring to a place where they actually enjoy their work
Speaker 2:Yeah.
Justin:And they enjoy their life.
Speaker 2:Yeah. I talked to I talked to, like, you know, people in their thirties and forties that were doing other careers. Like, maybe they were a car salesman or a real estate agent or whatever. Just something entirely separate from programming. And they just sort of maybe they did a couple programming classes in college or or whatever.
Speaker 2:And, they kinda start learning Laravel and literally become full time Laravel people. It's really crazy, actually.
Justin:Wow. Just to back up even more, did did you like, were you programming in high school or before that?
Speaker 2:So I did, like, HTML and and CSS in high school. Some I never wrote really, like, intense programs other than programming. My TI 83 graphing calculator was the only, like, I feel like the only real programming I did in high school outside of HTML. Because, like, when I was a kid, when I was in like a middle school, I would make like little Pokemon sites, right. With HTML and put them out on geo cities or whatever.
Speaker 2:Like I did all that. But I didn't write any serious web programming.
Justin:Interesting. See, I I'm just looking at the Stack Overflow survey in 2019.
Speaker 2:Mhmm.
Justin:And this I thought this part was interesting. Over half of respondents had written their first line of code by the time they were 16. Although, this experience varies by country and by gender.
Speaker 2:Mhmm.
Justin:And I always thought that was so interesting that there's so many and I don't know how like, that's pretty general. I mean, you know, I I wrote code before I was 16, but I would have never said I was a programmer. And I
Speaker 2:Yeah. Me too. I think I would have been the same way.
Justin:Yeah. I think this is another thing I found really inspiring about the the Laravel community is as someone who has always been into computers but never could grasp programming. When I'm at Laracon and I'm meeting that real estate guy that was like, oh, yeah. I I just, like, started, like, 2 months ago. It made me feel like, oh, wow.
Justin:This is this is completely approachable. This is not, just for folks that, you know, wrote full you know, we're writing full binaries by the time they were 12.
Speaker 2:Yeah. Exactly. Yeah.
Justin:It it's like goes beyond that. The crazy part for me though is that because you're kind of the leader of this movement, but you came to this pretty late. Right?
Speaker 2:Yeah. You could say so. Yeah. I mean, I wasn't, yeah. I wasn't that kid, you know, hacking Linux at, 14 years old or whatever.
Justin:Yeah. What what were you in? What were you really interested in high school?
Speaker 2:I was into sort of, you know, just kinda tech stuff in general, like video games and computers and, you know, AIM chat a lot and just, like, making little websites. But I don't know. Just normal high school kid stuff too. You know? Like, I played basketball.
Speaker 2:I was in the drum line in the band. Like, I had other activities too. I wasn't just, like, strictly this computer guy necessarily.
Justin:Mhmm. And was there a reason you decided to go to school for computers?
Speaker 2:It was really the only thing that I've had sort of a natural interest in. And, actually, my degree in IT was more like computer networking. You know? It wasn't like computer programming.
Justin:Okay.
Speaker 2:So my whole way through school, through college, I'm actually envisioning myself as, like, sort of a network. I don't know what you call them. Like, a network administrator or whatever. I'm not picturing myself writing programming code.
Justin:Yeah. You're you're seeing yourself in an office pulling cable.
Speaker 2:Exactly. Yeah. And those are the and I applied for jobs like that, when I was, you know, had just graduated or was fixing to graduate. And I don't know. Thankfully, you know, a pro a company that needed a programmer sort of brought me on board.
Justin:And how do you remember how you got that job?
Speaker 2:So they this particular company, it's Arkansas Best Freight here in Arkansas. It's actually a pretty large, trucking company, like, across the whole United States. And, they came to my college. They were a couple hours away, their headquarters, in a town called Fort Smith, Arkansas. And they came to my college and interviewed people, and they have this kinda unique approach where they like to hire all their programmers fresh out of college, and then they immediately put you through 6 months of their own in house programming training.
Justin:Okay.
Speaker 2:So I feel like I really learned a for real program in those 6 months of training at Arkansas Best Freight. And I learned, like, COBOL. I learned dot net. I learned ASP, classic ASP. And that was I mean, they really literally almost started you from scratch as if you had not had any programming experience at all in college whatsoever.
Speaker 2:Because I'd I'd only actually had 2 classes, like, 2 basic c plus plus classes because, again, my degree was not computer programming at all. It was computer networking. So that was where I really learned to program. And, thankfully, that company was around because my story would be, like, a lot different, you know, if they hadn't, been around.
Justin:You could be, like, still, like, configuring someone's, router right now.
Speaker 2:Yeah. If that like, I mean, some of the jobs, like I said, weren't even programming earlier. Like, I applied to be, like, the manager at a hotel or, like, I mean, literally, just other random stuff like that.
Helen:Mhmm.
Justin:Yeah. That's and that's refreshing to hear, I think, because, now Laravel is this huge thing.
Jason:Mhmm.
Justin:And I think people miss out on some of that journey, you know. I I remember in, 2008, I decided to change careers. I was 28 years old, and we already had a couple kids by this point. And I was like, I I'd worked with nonprofits. But then I was like, what am I gonna do now?
Justin:Like, who's gonna hire me? And I I was doing the same thing. I applied to be a window salesman. I applied to work at the Apple Store. Like, just just applying everywhere.
Justin:And in the same way, the software company decided to hire me. But if that hadn't happened, I might still be selling Windows. You know?
Speaker 2:Right. Yeah.
Justin:It's so weird.
Speaker 2:I know. Yeah. I feel like my store could have been way different than it is now for sure.
Justin:Crazy. Okay. In a bit, I wanna talk about Laravel as a business. But before that, I'm gonna give a shout out to our sponsor, Clubhouse. You You know, if you're serious about building software, you need a good way to manage tasks, chores, bugs.
Justin:That's how you get things done. You make a list, and you just start checking things off. And honestly, I've tried so many of these tools. Trello is just too light. Jira is like sort of a mess.
Justin:I cannot use that. Clubhouse is just makes it easy to manage the whole product development process. It puts everybody on the same page. It's what John and I are you we've used it a bunch today to ship faster here at Transistor. If you haven't tried it yet, I think you should go try it.
Justin:You get 2 months free if you use this URL clubhouse.io/build. That's a dot io domain. Don't see as many of those now. It's good. Now now they can stick out in people's minds.
Justin:Okay. So you launched Laravel in 2011. Did it take off right away?
Speaker 2:It gained some momentum pretty quickly. It didn't become, like, the, number one PHP framework for years. But, it sort of got a nice reaction, right from the start. I think it was just sort of a breath of fresh air for people. It leveraged some of the new features of PHP at the time and was just sort of different and more developer friendly than pretty much anything out there at the time.
Speaker 2:So I think that's why people launched onto it latched onto it. And then also a big emphasis for me was I had a lot of documentation, like, from day 1, like because I had seen so many, tools at this point that were kinda thrown out there, and it was like documentation coming soon. You know? It was just like, well, okay. That's not very helpful.
Speaker 2:So I I wanted to make sure that I had really good documentation because I really felt like whoever had the best documentation in a lot of ways, like, is gonna win. And whoever's the most accessible and approachable is gonna win. And, I mean, that's why WordPress is so hugely popular. You know?
Justin:Yeah. So I keep trying to, like, get back to, like, kind of what the daily grind was like. Because you you'd spent a year doing this on the side. You get home, you know, you you might you know, you spend some time with the baby. You Mhmm.
Speaker 2:Put the
Justin:baby to sleep, and then you're hacking away at this cheap little laptop till early in the morning.
Speaker 2:Yep.
Justin:Did by the way, did your spouse was she, like, what are you doing? Or was she what was her reaction to this?
Speaker 2:Yeah. She was, like, pretty excited about it, actually. I mean, like, I would explain it to her, and even though she wasn't a programmer, like, she understood, like, the the end goals were exciting, right, to, like, launch this thing. And, you know, once I put Laravel out there, it was still unclear how I was ever gonna make money off of it. But, at least it was getting more popular and stuff like that, but I hadn't actually made a single cent from it yet.
Speaker 2:But she was she was excited about the initial end goal of, like, launching our own business and making this independent income.
Justin:Yeah. And at this time, were you thinking Laravel was gonna be the business? Or were you thinking, no. No. This is just a means to an end.
Justin:This is how I'm going to build my own web app.
Speaker 2:Yeah. It was still just a means to an end. And, like, I even started building, other apps with Laravel, you know, that weren't related to Laravel. So, like, I remember me and a guy tried to build this little invoicing software called Coinfly, and, he was actually one of the first Laravel users and a a guy that actually lived in Arkansas at the time, which was kinda coincidental. But, yeah.
Speaker 2:So, I mean, it was still very much a means to an end. Even after Laravel came out, I was still hacking not only on Laravel, but still trying to find, like, some way to make money.
Justin:Okay. So so you launched it in 2011. Mhmm. What what at what point did you launch Coinfly?
Speaker 2:That must have been sometime in 2011, because, you know, not long after I launched Laravel in 2011, just 6 months later in December, I get an email from Ian Landsman of Userscape saying that they're looking for a PHP developer and that he kind of liked what he saw in Laravel and wanted to talk to me about it. And that was still the beginning of my journey over to UserScape and becoming a full time PHP developer.
Justin:Okay. So Ian sees you raising a ruckus.
Speaker 2:Mhmm.
Justin:He likes it. He sent an e did were you familiar with Ian or user name at the time? No. Okay. And so, 6 months after you launched Laravel, you get this job offer.
Justin:Mhmm. And you had already tried coin Coinfly at this point? Yeah.
Speaker 2:I think so. I think it must have been a little bit before UserScape. I don't remember working on that after UserScape. Escape.
Justin:And and what happened with Coinfly?
Speaker 2:We launched it, and I actually used it some, but, like, no one no one else signed up, really. You know? Like, I I didn't have, you know, a 70,000 Twitter followers back then. I just had, like, a few 100. So I wasn't launching to like a massive audience and it just never really took off.
Speaker 2:So I will say though that I feel like the spiritual successor to coin fly is still around in an app called push silver. Is that pushsilver.com? Yeah. Pushsilver.com, and it is a Laravel app. So sort of the dream of that lives on, and it's built built by my friend, David Hempel.
Justin:Okay. Cool. So someone else so someone else ended up doing it.
Speaker 2:Yep. And I still use it for all Laracon invoicing to this day.
Justin:Okay. Cool. Ian offers you this job, and you're like, okay. Well, this this, Coinfly thing didn't work out. And so you you say yes.
Justin:And you're just working remote for Ian?
Speaker 2:Yeah. I just worked from home. So we actually once that started, we actually moved back. Now that I was sort of location independent, we moved back closer to where I grew up and I'm working from home. You know, just, yeah, working with we had 2 other developers or one other developer at the time and, you know, just all on hip chat during the day and hacking away on PHP projects.
Justin:Interesting. Okay. So in a way, Laravel did, after lunch, 6 months later, get you a bunch of the progress you wanted.
Speaker 2:Yeah. Yeah. Yeah. For sure.
Justin:You wanted to be able to move back to Little Rock.
Speaker 2:Yep. So we sort of achieved the work from home. You know, my hours were totally flexible, but they were more definitely more flexible than sort of this job I had to go to where I had to wear business casual every day and, you know, might be there at the same time.
Justin:Yeah. Yeah. Yeah. By the way, I'd love to see some photos of Taylor Otwell in business casual.
Speaker 2:I still have my company photo actually from my job there.
Justin:I think that that there there is something about remote work. I had this, like, article called the freedom ladder. And for me, once like, remote work was a bunch of rungs up the freedom ladder. Because it does you can get up. You can wear what you want.
Justin:You have this it feels like you are more of a master of your domain. You know?
Speaker 2:Yeah. I agree.
Justin:Cool. So you're you're working with userscape. What happens next? Like, you're just and you're still working on Laravel on the side.
Speaker 2:Yeah. So there's sort of 2 roads that sort of I'm traveling at this point. So I'm working for Userscape, and we're building a product called Snappy, which is a new help desk startup that Ian wants to build. So Ian already has HelpSpot, and it's sort of this big, help desk product that big companies use. And he wants to build sort of he his initial version vision of it was sort of the tumbler of help desk.
Speaker 2:You know, this very minimal help desk that has way stripped down features. It's very easy to use for teams of, let's say, like, 4 to 5 people that may maybe right now, they're just saying like a Gmail inbox. So right so we're building that. That's one side. That's sort of my user scape side.
Speaker 2:And then kind of on the Laravel side, I'm still trying to find a way to monetize it. So what I do is I actually write an ebook called Laravel from apprentice to artisan, and I sell it on lean pub for, like, $30. And I ended up making, like, $70,000 off of this ebook, which at the time was like just a crazy success, you know, and, and gave me a lot of extra money, off off the first time I'd really, like, sort of cashed in on some of Larabelle's value.
Justin:Yeah. And what year was that?
Speaker 2:Oh, gosh. That had to be, like, 2012 or 30 or 2013. It's it was a while back.
Justin:It's still up on lean pub
Speaker 2:right now. I still get, like, $20 a month on lean pub. So, I mean, it was last updated September 2013. I don't know when it was published.
Justin:Yeah. Okay. So I want you to take me through that process a little bit. So okay. At work, you're building this real web app, from ground up using Laravel Mhmm.
Speaker 2:Which
Justin:must have been kinda cool in in of itself.
Speaker 2:Yeah.
Justin:And then on the side, I'm guessing at this point, because now it's 2013, it's 2 years later, Laravel has picked up more steam.
Speaker 2:Yeah. It's picked up a lot more steam, and thanks partly to some other community members that kinda came on bill board and built training materials around it. So, like, there was a guy in London or in UK named, Dale Reese, who actually wrote another kind of longer ebook about Laravel called, was it called Code Happy or something like that at the time? And he made a lot of money from that, you know, like a 6 a 6 figure ebook. And that was before I had even written mine.
Speaker 2:And, Jeffrey Way eventually started making Lyricast around probably around this time, and that is also like a big sort of, you know, throwing gas on the fire of this Laravel thing because we just have more and more sort of educational resources, onboarding resources, and sort of the snowball really gets rolling in terms of building up more and more people into the Laravel community.
Justin:Yeah. Yeah. That's actually interesting in of itself. The fact that there's some key because Jeffrey Way already had a little bit of a following
Speaker 2:Right.
Justin:Before Laravel. Right?
Speaker 2:Yeah. A lot of people knew of Jeffrey Way before Laravel. And, like, when I've been around him at Laracon, like, people come up to him and say, like, oh, I watched your WordPress videos, like, back before Laravel even existed. You know? So he had, I mean, he had a pretty decent Twitter following, I think, before he ever even came into the Laravel world.
Justin:Yeah. And so he decides to kind of hook his train to Laravel. And okay. And so you're seeing you're seeing, you know, Jeffrey Way is doing training videos for for, yeah. He started in 2013.
Speaker 2:Yeah.
Justin:So, you see him doing his thing. You see this other guy write this book and you're like, hold up.
Speaker 2:I still haven't made anything at this point, by the way. So, like, Jeffrey is he was the first full time person to take Laravel and turn it into, like, a a full time side thing
Justin:Mhmm.
Speaker 2:Successfully.
Justin:And so now you're thinking I should do something.
Speaker 2:Yeah. So I get the book ebook out in 2013, and then through what really is the real game changer is in 2014, the next year, I build my first SaaS application, Laravel Forge, which is, like, my server provisioning tool for Laravel, less people deploy their Laravel applications. And I, I start building that in 20 late 2014. And, again, I'm kind of in that mode of working, you know, 9 PM to 1 AM for like 6 or 7 months straight. And then summer 2015, I launch it at Laracon in New York City.
Speaker 2:And, you know, within a few months was making more than I was making at my day job. So that's when really everything changed.
Justin:So you start working on Forge in 2014?
Speaker 2:Yeah. Late 2014.
Justin:And then 2015, you launched it at Laracon. Has Laracon been going on for a while now?
Speaker 2:Let me see. That was just the second Laracon, I think.
Justin:Okay.
Speaker 2:Okay. Wait, I have, I look, let me look at this. I'm looking at the Laravel news articles and stuff from that way back then. No. I I'm wrong.
Speaker 2:I launched forge in summer 2014. I started working at the end of 2013 after the book was sort of released and done.
Justin:Okay.
Speaker 2:So I was off by a year. So summer 2014, Forge comes out in New York City at Laracon, which is Laracon number 2.
Justin:Okay. And how many people were at that Laracon?
Speaker 2:About 240.
Justin:Okay. So you already figured out. And the first Lyricon had, like, 50 people or something?
Gavin:The
Speaker 2:first Lyricon was 90 people in Washington, DC.
Justin:By the way, when you launched that first event, was that a little bit of a revelation too? Like, I can get 90 people, or was it a disappointment? Like, were you hoping?
Speaker 2:I was didn't think we would even be able to get that many people. Like, Ian, my boss, was the one who really kinda wanted to do the conference. And I was like, you know, I don't know. I don't know if there's enough interest in this, blah blah blah. And he he really felt like we could get 90 people in Washington DC to come.
Speaker 2:And, he was right. Like, we sold out and, you know, it felt like bigger at the time. You know, a a 90 person conference would look so tiny if I walked into 1, but at the time, it just felt like this really cool party thing. And there was a lot of fun.
Justin:It must that must've been a bit weird though. Hey. Like, you you weren't sure, and now all of a sudden, you're meeting people in real life
Gavin:Yeah.
Justin:Who are really excited about this.
Speaker 2:It's sort of the first time I experienced, like, you know, Laravel crazed people in real life.
Justin:And were they saying things to you that were like, do you remember any of that those initial meetings? Like, was there anything in that that you're like, holy shit?
Speaker 2:I just remember people being, you know, so excited about it. Wanted to take pictures, with me and stuff. And that was crazy too. Yeah. But and then it only got kinda crazier from there.
Justin:Yeah. Okay. So and it's kinda cool actually that Ian was pushing you along here.
Speaker 2:Mhmm. Yeah. I don't I wouldn't have done it out of my own initiative.
Justin:Yeah. And he was he was okay with this. Like, Taylor's kinda building this big thing on the side. I mean, he's clearly using it too. But,
Speaker 2:Yeah. Yeah. And I think it was more beneficial for me than it was for him. Like, there was I don't know if there was some sense of like, hey, it's sort of mutually beneficial for UserScape. We're sort of, you know, out there.
Speaker 2:We're building Snappy and us kind of, benefiting off each other like the Laravel crowd, and we can kind of show Snappy to these people, and they will know about Snappy. But I think at the end of the day, it was more beneficial for me than it was for Userscape. But I'm sure there was, you know, some of that. Snappy, of course, was, like, a sponsor of these events and stuff like that.
Justin:I mean, tail I mean, Ian still shows up at every Laracon, so it must be okay for him.
Speaker 2:Yeah. Yeah. For sure.
Justin:Okay. So you launched Forge in 2014 at Laracon. And were people was it an immediate success? Like, what happened?
Speaker 2:Yeah. It was actually a fairly immediate success, I feel like. Like, I don't remember the exact how fast it grew, but I know I was making, 90 or a 100000 a year within a few weeks off of Laravel Forge. Like it was a pretty immediate success in that regard. And I did not, I didn't know, have any idea what to expect.
Speaker 2:Like before I launched it, I was just, like, talking with my wife and, like, you know, maybe it will make 2 or 3000 a month, and that's fine. Like, it just gives us some extra money, blah blah blah. But I did not expect it necessarily to grow as fast as it did.
Justin:Wow. So this thing launches, and it's like a crazy success. Because you said within a few weeks, it
Speaker 2:was 4. Within a month or so, I was I had passed, like, my day job income. So I feel like I was making a little over a 100,000 a year maybe.
Justin:Now that is definitely significant, and you've already experienced this to a certain extent because you'd when you launched Coinfly, you saw, you know, one reaction. Mhmm. And then you launched your ebook, and you saw another reaction.
Speaker 2:Yeah.
Justin:And then you you did the conference, and you're seeing that growing.
Speaker 2:Mhmm.
Justin:But this is a whole other scale. This is more than, you know, the 240 people you got to Laracon. This is a lot of customers all
Gavin:at once.
Speaker 2:Yeah. Yeah. So I guess I had about a 1000 customers in that 1st month or so.
Justin:Wow. And how did they find out about it?
Speaker 2:You know, probably online via Twitter. I'm sure a lot of them were at the conference. Then, of course, we had, Laracon EU was happening just a month later. That was another couple hundred people. So, you know, we had 500 people coming to Laracon in person.
Speaker 2:So having sort of a 1000 people around the world that could use this product, I guess, was fairly achievable at the time, given our audience.
Justin:Do do you feel it was mostly folks at Laracon that were signing up?
Speaker 2:I don't know what the percentages were. You know, I'm sure a significant number of them signed up because it was a pretty cheap product. It was only $10 a month at the time at the time. So it was pretty accessible for people, and it actually did save you a lot of time. Like, it was a pretty valuable product, and there wasn't quite anything like it out there at the time.
Speaker 2:You could either kinda go all in on Heroku and have sort of this managed service that's quite expensive. You could do it all by hand yourself, which is like, you know, googling on Stack Overflow for hours trying to find out little bugs, or you could pay $10 a month and have a server ready to go in, like, 10 minutes. And so I think for a lot of people, it was really a no brainer at the time. And I was really scratching my own itch in building it because I had felt that pain.
Justin:I'm just trying to imagine this because with transistor, we've had kind of this slow ramp up.
Speaker 2:Mhmm.
Justin:And, net and our price points our initial price point is higher than yours. We started at $19 a month for our entry level tier.
Speaker 2:Yeah.
Justin:We still get quite a bit of customer support. Like, I'd say, I have to respond to probably 5, 10, sometimes even 20 things a day.
Speaker 2:Right.
Justin:Were were you how are you handling all the support for these 1,000 customers?
Speaker 2:I would just have to try to answer emails, like, on my lunch break, answer emails just like when I had a spare minute. I didn't actually have a ton of support right off the bat. But I would try to, like, make blog posts. If there was, like, a common thing that people were having trouble with, try to, like, you know, educate people on that so they don't have to bug me about it. Just stuff like that.
Speaker 2:You know?
Justin:So you didn't find it overwhelming?
Speaker 2:I don't remember it being particularly overwhelming at the time. I mean, Forge had less features at the time, so maybe there was just sort of less things to support. Mhmm.
Jason:Yeah.
Speaker 2:I don't know. Surprisingly, it wasn't super overwhelming at first in terms of customer support.
Justin:Because it because the the common wisdom might be, woah, $10 a month. That's not that's a low price point. And you're gonna have all these people, and they're gonna they're gonna suck you dry. Yeah. But you were fine.
Speaker 2:Yeah. In my case, I can definitely understand that line of reasoning, though. I think there's definitely probably some truth in there, but some I don't know. For this case, I just didn't have a ton of customer support flooding in like that.
Justin:And and and so at what point did you quit your job? Is this around the time where you quit your job?
Speaker 2:Yeah. Pretty close. So on that customer support thing, I think another thing that probably played into that were all these Laravel developers were used to helping each other on forums already. And so, like, when Forge came out, of course, Laracast has, like, a forge forum, and people are, like, self supporting each other a lot and, you know, posting their questions, posting their answers. So that probably contributed as well.
Speaker 2:Whereas other startups probably don't have that same scenario, you know, where there's a bunch of interested people helping each other learn how to use transistor necessarily.
Justin:Mhmm. Yeah.
Speaker 2:Towards the fall or winter of that same year, 2014, it's starting to become sort of apparent, like, running forge and staying at Userscape is not going to be sustainable long term because it is getting at this point, it is getting, like, too big, you know, and there's just too much stuff to do.
Jason:Mhmm.
Speaker 2:So we sort of Ian and I sort of run an experiment where I work every other week for UserScape and, of course, cut my pay down, but I I get to keep the UserScape health insurance, which was nice at the time because I was kind of scared to sort of go out on my own because I was making I was making decent money, but I wasn't making just, like, you know, 1,000,000 of dollars a year. So I was scared to kinda go out on my own with no fallback, buy my own health insurance, blah blah blah. So we we try that for a few months, and then we decide we're gonna decide at the end of the year, you know, either to continue on with every other week or just kinda, I'll leave UserScape and do Laravel full time. So we get to the end of the year and basically come to the decision that I'm just gonna leave UserScape, and now I'm gonna be on my own. January 1, 2015 is the 1st day I'm full time Laravel on my own.
Justin:Wow. And was that just a crazy feeling?
Speaker 2:Yeah. I mean, it felt like once I remember once that started, it felt like I had all the time in the world to do whatever I wanted. You know? Like, truly, like and I felt like I had overnight developed a huge competitive advantage over other open source frameworks as well because they're sort of scraping by on volunteer effort and, you know, people that are tired after the day job. Whereas I was fresh every day, 8 hours working on Laravel and Forge.
Speaker 2:And I think really put us pretty far ahead in these next couple of years in terms of other open source PHP projects.
Justin:Yeah. And did you feel or worry that you were gonna lose your edge? You know, sometimes when you're doing it on the side, it's like you you've got this you're really hungry. Did you worry about losing that or was it okay?
Speaker 2:It went okay. I think because I developed this sort of, like, really competitive nature in terms of PHP open source projects, and I wanted to, like, keep it going and be, like, the best it could be.
Justin:And I
Speaker 2:was just really passionate about it personally. I wanted to make, like, just the best developer experience I could. I wanted to help people out and people to really have enjoy it and have a lot of fun with it. And so I was just kinda continually driven and wanted to keep working on it. I didn't really have any big burnout on it or anything.
Justin:Yeah. So you're really driven to see Laravel succeed.
Speaker 2:Yeah. Mhmm.
Justin:And so now, of course, it's 4 years later. And you've developed other products. Right? You have Laravel Forge. What else do you have?
Speaker 2:Yeah. So actually just 7 months after Forge comes out in February, 2015, I launched on voyeur. Io, which is a zero downtime deployment PHP SaaS. So I launched that just sorta out of the blue, actually, not any conference around it. No, like, big announcement.
Speaker 2:Like, you know, I kinda teased it a little bit on Twitter, and then boom, there's another Laravel SaaS, not even a year after forge. And it was a smaller scope than forge, so it was a little easier to build.
Justin:Mhmm.
Speaker 2:And it also like, I sorta use these projects to dog food Laravel itself. So I finished Forge, and now I sort of I wanna build something else with Laravel to sort of try out new features, you know, see what sucks about the framework right now. Because as I'm building this app, I'm gonna see like, this is kinda crap, you know, I can improve this about Laravel. So I build Envoy, and I put it out there. And, that also grows.
Speaker 2:You know, it does pretty well. And then I also the year after that, I guess, 2016, I announced Laravel Spark, which so all the experience I had building fortune Envoyeur, I baked that into Spark as sort of the SaaS starter kit for Laravel. So, like, all the subscription management, the letting people download their invoices, blah blah blah, all of that sort of cruft. I just sort of packaged up in this thing called Laravel Spark, and the idea was, you know, sort of like a spark for your next big idea or whatever. And and start selling that as sort of a onetime purchase download.
Speaker 2:Whereas my other things were SaaS's.
Justin:How much do you consider yourself a business person?
Speaker 2:Not much. I mean, definitely have some impostor syndrome there where I feel like I barely know what I'm doing from a business perspective. And actually, it gives me a lot of sympathy towards, like, other, you know, bosses of programmers because it's, like, hard It's really hard to make that transition from being a programmer to sort of managing other employees and managing a business and, I don't know, knowing how to keep people happy and engaged.
Justin:Do do you feel because, I mean, from the outside, it looks like everything's running great. So do you feel like and you're still writing a ton of code, like, the the kind of keynote of every Laracon is you getting up, and and you've been you build up anticipation
Speaker 2:Yeah.
Justin:To this moment where you you then have your Steve Jobs moment, and you you describe what you have been working on. So you're writing a lot of code. Yeah.
Speaker 2:A lot.
Justin:Do you think that'll continue? Like, will you continue to be, the major kind of contributor to these Laravel projects?
Speaker 2:I'd like to believe so. So, like, every time I've launched an idea, so, like, even after forge, after Envoy, after Spark, after Nova, every time I launch it, I come off stage and essentially I'm like, I don't have another idea. You know, like I'm out of ideas And I never know if that's true or not. And like so far, that has always been not true, but I feel like there is a day coming where that's it. You know?
Speaker 2:Like, there is no big thing around the corner, and I sort of release all I have to release, and that's it kind of. And I'm, I'm sort of okay with that. I mean, like, it's just not realistic, you know, to think that you can kind of carry on these big launches year after year after year for, like, 10 years. That just doesn't make sense. And
Justin:Yeah.
Speaker 2:Eventually, like, it's just gonna collapse under itself. I feel like.
Justin:But one thing that's interesting, because there's other people involved in the ecosystem.
Speaker 2:Mhmm.
Justin:These ideas that you're coming up with have all been successful.
Speaker 2:Mhmm.
Justin:So what are you noticing that other people don't?
Speaker 2:I think a lot of it is I own the framework, and that lets me build really tailored high quality solutions for the framework, because I can even make changes to the framework if I need to, because I have total power over everything. So not that Laravel is anything like apple, but it is similar in a sense that they own the hardware and the software. So with Laravel, I own the framework and I own the products, and I can make them work really well together in a way that other people can't, even if they're building Laravel stuff. Like, even for this new product, I've been secretly molding Laravel behind the scenes, like, getting it ready for this new product. And other people wouldn't have been able to build the product because Laravel wouldn't have worked with it.
Speaker 2:And so I feel like that's part of the secret sauce. And then also it's just the fact that I, you know, I work full time on it. And a lot of people, they just can't, you know, they can't put that amount of time into it.
Justin:So those are 2 big advantages. You own the framework and you work full time on it. But there's still this part of, like, how do you come up with an idea? Like, how do you know that I should build I mean, spark seems obvious.
Speaker 2:Yeah. So all of my products are sort of passion products in a sense that they sort of scratch my own itch. Forge, I was spending way too much time configuring servers. Boom. Let's automate all that.
Speaker 2:On Voyeur, we can't deploy Snappy and have it be down while we're deploying. Let's or we can't deploy whatever. I can't deploy forge even without it being down. So build something around that. Spark, I never wanna have to write all the boilerplate code that I wrote for forge and envoy ever again.
Speaker 2:So let's automate all that. And then with, Nova, that was sort of the first product that someone had to sorta sell me on because David comes to me at Laracon New York, 2017, I believe. Or maybe even, maybe it was a 2018. No, it was a 2017. And he's like, you know, I really think we should build this thing for Laravel.
Speaker 2:And I just didn't get it at first. I didn't understand why I needed it, but then once he sort of like explained it to me, I was like, oh man, this is like, because people had asked me about it for years. Like, Hey, you should build an admin panel for Laravel. And I was like, why would you even need that? And I just couldn't grasp it.
Speaker 2:And then once he explained it to me, I realized, oh, I've needed this, my whole Laravel career and didn't even like realize it. And so he sort of, like, pulled the veil from my eyes there and helped me see it. And then this new product is the same way. Like, I'm scratching another itch, you know, that I've developed. And that keeps me personally motivated about it because from the very beginning with Forged and everything, I always told even my wife, if nobody uses this product, I'm still going to use this product and I'm gonna enjoy using it.
Speaker 2:So even the same way with the thing I'm building right now, if no one builds this, they're lost because I'm gonna still use this thing a lot, honestly.
Justin:Yeah. But I want see, this is where I wonder if you really are secretly a businessman Because every software developer has all sorts of ideas that in some ways can be in name is probably the wrong word. But just, you know, there's they might be interesting to them from a academic point of view or intellectual point of view. And, actually, some of them might even be able to eventually, you know, become some sort of foundation for commercial product, but the the line just seems super long. Right?
Justin:Yeah. But yours, you know, you're obviously noticing something that has business value or no one would be paying for it. And so do do you think there's something about you that just recognizes okay. Wait a sec. Like, because you you could you could you could do anything.
Speaker 2:Yeah. I think one thing that my friend Adam Wathan and I have talked about that I feel like we both kind of share and that helps us in this regard is we both have a very low pain tolerance for sort of, inconvenience in terms of programming. So, like, if you go on, like, hacker news or, like, some programming forum and someone pitches an idea, a lot of people will sort of chime in and be like, well, you could just, you know, run your own Raspberry Pi in your basement and install this version of Linux and do the same thing for free. And those people just don't get it. You know, they just lost the plot entirely.
Speaker 2:And I think we just have, like, such a low pain tolerance for that kind of thing that, some of the ideas like forged the whole time I was building, I was like, I just kept Googling. Like, this has to exist. Like, it's it was so it felt so obvious at the time. But I think the thing was people were scared to build it in a way because all the people would chime in and be like, you could just configure your own server using these scripts that I found on the Internet or, like, you know, do it all by hand if you're a real programmer. And so everyone, you know, Everyone kind of shied away from it, I guess.
Justin:Yeah. Some of my favorite threads are to go back to, like, hacker news threads and blog comments when 37 37 signals launched Basecamp back in whatever it was. And, you know, it's so interesting because people are like, this is exactly like a blog. That's what they were saying about Basecamp. Exactly like a blog.
Justin:This is stupid. It's never gonna sell. And then also fairly quickly after Basecamp comes out, somebody launched an open source version.
Gavin:Mhmm.
Justin:So now it's, like, now you can just you can just run Basecamp for free.
Speaker 2:Wow.
Justin:That open source version never took off. I don't even know if it's still around.
Speaker 2:Interesting.
Justin:And so I think there is this, that's actually maybe a fundamental understanding between you almost have to get out of your DIY mindset Yeah. And look at it from another point of view. Right?
Speaker 2:Mhmm. I think so.
Justin:Because if you're like of course, you could you could create something that that generates an RSS feed for you and allows you to upload MP threes. And, of course, you could do that.
Speaker 2:Right.
Justin:But are are most people going to wanna do that? And if you gave most people the choice to do the lazy thing
Speaker 2:Mhmm.
Justin:Is that what they're gonna do? Well, clearly, often that the easiest, laziest thing works.
Speaker 2:Yeah. I think so.
Justin:And so if you can download Spark and and not have to rewrite all that template code, Why wouldn't you do that?
Speaker 2:Yeah, exactly. Yeah. I always, I mean, I just kinda do feel like the easiest solution just ends up winning most of the time, you know, for better or worse. And I think PHP and Laravel in particular sort of in an advantageous spot there because it's an easy language to learn. So it draws in a lot of people.
Speaker 2:And then Laravel is just sort of sitting there at the entrance to PHP with a big open mouth, like a big blue whale, you know, just kind of catching all these people being the most accessible full stack framework, hopefully.
Gavin:Mhmm.
Speaker 2:Yeah. So that's sort of where I like to be positioned.
Justin:Yeah. And I think this is another thing that I've noticed too is because this with Transistor, it's like the first time I feel like I've been in a market that's just growing super fast. Mhmm.
Speaker 2:And
Justin:now I just kinda get it. It's like, oh, man. Like, you don't have to try all these convoluted marketing tactics or it's you just you just let the the rushing water take you. Right? And it it's a totally different feeling, which is I think the lesson here and it's not an easy lesson, but momentum really does matter.
Speaker 2:Yeah. I think so.
Justin:Cool, then. Well, thanks so much, man. This is really fun, get getting to talk to you today. What what should we tell people? They can follow you on Twitter, Taylor Otwell.
Speaker 2:At Taylor Otwell. Yeah. And they can, yeah. I have my own little podcast, the Laravel snippet. They wanna keep up with that.
Speaker 2:And, of course, forge and Envoy and Spark and Nova, those are all still active products they can check out. And, you know, if they're having ever tried Laravel, give it a shot.
Justin:Yeah. Yeah. I'll put note I'll put show notes to all those. Actually and I think anyone that's thinking about starting a podcast or a business podcast should, check out your show. I'll put it in the show notes because you just turn on the mic and start talking.
Speaker 2:Yep. I don't even edit that.
Justin:It's so and immediately, it's, like, clear. It's often very current. So you'll say, okay. And today on Twitter, there's some discussion around this. Here's what I'm thinking.
Justin:It's brilliant. Like, I like I said, I I don't understand most of what you're talking about when it comes to programming. Mhmm. But I just love hearing you kind of process all these things out loud. It makes it it's every business show should be like that.
Justin:And you're also not trying to be someone else. Like, you don't have a radio alright.
Speaker 2:Just have for little snippets. Yeah.
Justin:You're you're you're just yourself. It's really refreshing. I will talk to you again soon. Thanks again, Taylor.
Speaker 2:Alright. See you.
Justin:Alright. I hope you enjoyed that chat with Taylor Otwell. Before I go, I wanna give a shout out to our Patreon supporters. Brand new for this week, we have Simon Bennett. He runs Snap Shooter.
Justin:We have Corey Haines. We have Michael Sittver, Paul Jarvis, and Jack Ellis, Dan Buddha, Darby Frey, Samori Agusto, Dave Young, Brad from Canada, Kevin Markham, Sammy Schuichert, Dan Erickson, Mike Walker, Adam Devander, Dave Junta Junta, Kyle Fox at GetRewardful, and, of course, we have our monthly sponsors, Clubhouse and Balsamic. Thanks for listening. We will see you next week.