Latest / The Laravel Podcast / Inside Laravel's Starter Kits with Wendell Adriel
Transcript
- 0:00The Laravel Podcast is brought to you by Tighten,
- 0:03your friendly neighborhood Laravel experts.
- 0:05Check us out at tighten.com
- 0:08and also by other sponsors you will hear about later in the episode.
- 0:21Hey, and welcome back to Laravel Podcast Season Seven.
- 0:24I'm your host, Matt Stauffer, CEO of Tighten.
- 0:26And in this season, I'm gonna be joined every episode by a member of the Laravel team.
- 0:30Today I'm talking to my friend Wendell Adriel, senior software engineer at Laravel.
- 0:33So Wendell, can you say hi and share a little bit about what you do at Laravel?
- 0:37Sure, sure.
- 0:38Hey, thanks.
- 0:39And thanks, Matt, for inviting me.
- 0:41It's a pleasure to be here.
- 0:42I joined a Laravel recently.
- 0:45I joined in January.
- 0:46So uh it's just a few months that I've been there.
- 0:49However, it's been pretty exciting to work there.
- 0:52I've been mostly working on the starter kits.
- 0:55So everything that's coming out for the starter kits, almost everything, the only thing that came out recently that I didn't work out for the starter kits.
- 1:04was the PASKIS.
- 1:05The passkeys were done by Ben.
- 1:07But other than that, I think anything else that's went to the starter kits from January until now, I touched it somehow and working on it.
- 1:17And it's been pretty, pretty cool to be working with the starter kits, learn a lot of things, and it's very different from what I used to do before.
- 1:26Yeah.
- 1:27I've been using uh working mainly on SaaS projects, like really big, complex SaaS applications.
- 1:34And it's been really a a a a different shift to work on open source, like full time, but it was something that I wanted to do for a long time.
- 1:44So I'm loving it and and it's been pretty, pretty exciting.
- 1:48Well, that's cool.
- 1:49So I want to dive all into the starter kits.
- 1:51I actually have a tool that I was building that we decided to sunset that was starter kit related.
- 1:54And I know you guys have been building something.
- 1:56I forget the name of it.
- 1:56So I'm I want to talk all about that.
- 1:58But before we do that, let's talk about your history.
- 2:00So go as far back as you want.
- 2:03It can be childhood, it can be high school, it's gonna be whatever, but like what is your origin story for getting to where you are today?
- 2:09When you were you first getting into programming?
- 2:10You know, what got you there in the first place?
- 2:12What did you do?
- 2:13But did you have an entirely different career?
- 2:14Like what brought you to the point, which we'll get to in a second, but first, what brought you to the point where you're thinking you know what?
- 2:20I'm gonna apply for a job at Laravel?
- 2:22Okay, okay, so yeah, that's funny.
- 2:24I'm going to start very early, as I said.
- 2:26I'm going to my teenage years.
- 2:28I've been like since childhood, I really like loathed like video games.
- 2:33So I think almost everyone thought, okay, I'm going to start learning programming, I'm going to make games, and that's it.
- 2:41So that was my first idea.
- 2:44I wanted to create games and and that
- 2:46What were your favorite games at the time?
- 2:47Like what kind of games were you really into?
- 2:50I I really loved like like platform games like even like Super Mario World and all those things, but one that I loved and it was I think it was the second game I played on Super
- 3:02Nintendo that my mom got me was Prince of Persia.
- 3:05And man, that that that game is so good.
- 3:09It's so good.
- 3:10I love that.
- 3:11I lost the count of hours that I I played that that game.
- 3:15So
- 3:16Did you see there's a thing recently where the guy who made it or someone connected with the guy who made it showed the original videos that he took of his brother that he used to
- 3:24basically like trace the like the different movements of clambering up the wall and everything like that?
- 3:29I don't know if you saw that.
- 3:30It was so fun.
- 3:31He literally took a crappy little camcorder, you 640 by 640 camcorder and told his brother, Hey, go climb up that wall.
- 3:37And you see this movement, and then they show the him tracing that same movement, but in, you know, whatever, 16 pixels.
- 3:43And it's like,
- 3:44This is so cool.
- 3:45You know, so it was fun.
- 3:47I did I didn't see that.
- 3:48I need to check it out.
- 3:49I'll try to let it down.
- 3:50Yeah.
- 3:51But yeah, this was like my idea.
- 3:53I wanted to create games.
- 3:55But before even starting with programming, I started working with other things.
- 3:59Like my first job was delivering stuff.
- 4:02So I was delivering like cartridges for printers.
- 4:06That was it.
- 4:07My first job.
- 4:08Then I
- 4:09Sort of tech related.
- 4:10Yeah, that that's that's true.
- 4:14And then I went to another job that I was like teaching in Brazil, it was very common back in the days to have like schools that uh places that had like different courses on how you
- 4:26can work with Word, Excel, like office the the office thing and like work with Windows for like other people or like children to learn the basics.
- 4:37So I started working on a place like that.
- 4:39because a friend of mine was working there and he invited me to work with him there.
- 4:44And it was pretty cool.
- 4:45Like in the first six months that I was there, I had access to all the courses that they had, and they had a PHP course there.
- 4:53And I started learning PHP there.
- 4:56And the funny thing is, after like six, seven months I was there, one of the teachers that was teaching the PHP course left, and they asked if I wanted to jump in.
- 5:07And I was like, I don't know a lot because.
- 5:08Yeah.
- 5:09I started learning like some months ago, but yeah, let's do it.
- 5:14And and it was pretty fun because I was teaching people something that I was learning, but for me it was the best way to learn more because I had to push myself to really understand
- 5:26those things because I had to teach that to other people.
- 5:30So it was pretty cool.
- 5:32It was like amazingly cool for me.
- 5:34And that when I like loved like programming.
- 5:38And one of my first languages was PHP.
- 5:41So I really loved PHP from the beginning.
- 5:45So this is how I started programming.
- 5:48From there, I still had like for many years I had a 9.5 job and I was working with some freelancers, some projects, creating like small websites, small, like just internal
- 6:03programs, softwares for like friends or
- 6:06people that my family knew, so was things like that, small things.
- 6:11And I even and this is a curious thing because I even worked before going to programming, I even worked in forensics.
- 6:20I worked for one one year and a half.
- 6:23I had this job in Brazil that it was a public, like working for the government.
- 6:29And they put me to work in the forensics department.
- 6:35I was doing not like
- 6:36Of course not the the field work or anything.
- 6:39I was in the office.
- 6:40But even so when people needed some things, like I I was helping them, like checking a lot of cool stuff.
- 6:48I even had some experience doing like forensics on on like computers, hard drives, phones and everything, just trying to find things that we we needed to find, like pictures or
- 7:02videos and try to catch
- 7:04the people doing something bad.
- 7:05So it was pretty fun.
- 7:07And I love the job as well.
- 7:09Yeah.
- 7:09Like I think it was the first time I really thought, uh, should I do something different?
- 7:15Because I really liked what I was doing there.
- 7:18But at the end I decided to go like full uh in software development.
- 7:24I was living uh my family uh still lives there.
- 7:27It's a really small town in Brazil.
- 7:30It's in Minas Gerais.
- 7:32It's the state.
- 7:33It doesn't have like i i it's uh in the countryside, it was really a small town, so we didn't have a lot of jobs for software development there.
- 7:43Right.
- 7:44So I had to move.
- 7:45And then I decided to like, okay, now I I'm I was doing already, I don't know, maybe five, six years of freelance jobs, just freelance other than my night five.
- 7:58And then I said, Okay, I'm going to drop everything that I'm doing, I'm going to
- 8:03move to a new city and I'm going to start working in software development.
- 8:06And that's what I did.
- 8:09And it was then back in 2015 that I started working full-time in for other companies as a software developer.
- 8:19And it was pretty cool because the first interview I got in this new city, I was not living there yet.
- 8:26I was just doing interviews and sometimes I
- 8:29Went there, did interviews, came back to my city.
- 8:32And the first interview that I did, the guy just asked me, Hey, have you ever worked with Laravel?
- 8:38And I was never, never heard of that.
- 8:42And the guy, man, it's it's an amazing PHP framework and everything.
- 8:46At the time I was working like with cake PHP.
- 8:51twenty fifteen, so Larrel was pretty new at the time.
- 8:53Yeah.
- 8:54And then the guy said, No, he said, Yeah, we can hire you because of that and everything.
- 8:58But he said, Go home and learn it.
- 9:01Check, yeah, check it out and learn it.
- 9:04And then I did that.
- 9:06I went home, I checked Laravel, and I said, Man, that's that looks pretty good.
- 9:11And I started learning Laravel, and in a few months I already uh I started working in a company that was not working with Laravel.
- 9:20We were working with Symfony at the time.
- 9:22However
- 9:23I was still doing freelance jobs and every time I got some freelance gig I was doing Laravel.
- 9:32So so that's how I learn about Laravel.
- 9:36Someone just say to me that I should learn it because it was pretty good.
- 9:41And it was.
- 9:42So I I'm pretty happy that interviewer
- 9:46Yeah, you gotta find that guy and say thank you.
- 9:49Yeah.
- 9:51So it's amazing how things go.
- 9:53And I always wanted like to work like on open source, full time.
- 9:59It was something I use it to like do some things on open source, try to create some packages or try to do some contributions every now and then and everything.
- 10:07But I always wanted like to try to work full time on open source.
- 10:12And I remember back on 2016, if I'm not mistaken.
- 10:18Taylor posted the first job for Laravel uh at the time.
- 10:23And I remember that I sent my CV.
- 10:26I th I think okay.
- 10:27I know like Latavell for one year and so, so probably I'm not going to repick, but but I'm going to send any exactly.
- 10:37And it didn't work.
- 10:39And to be honest, I think that I I even joked.
- 10:42around with some people on Slack these days because I I said I think they hired me because they were like already tired of getting my C V so many times.
- 10:52Like just give the guy freaking job already.
- 10:55Bring this guy on, let's let's do in some
- 10:59my god, that's so funny.
- 11:01Because I uh from this until um the beginning of the year, I think I I sent at least six to eight times for different roles my C V Yeah.
- 11:15So I I never I never gave up the the and it worked out.
- 11:24We're going to talk about this second.
- 11:25I'm going take a real quick break and read for some sponsors and then we'll be right back.
- 11:30And thank you as always to our sponsors for making this podcast possible.
- 11:34Our first sponsor is Honey Badger.
- 11:36Move fast and fix things with Honey Badger's intelligent error tracking and application monitoring for Laravel.
- 11:41It's everything you need to keep production healthy and users happy.
- 11:44Get your free developer account at honeybadger.io.
- 11:48I've said this before, but Honey Badger are some of the OGs of exception tracking.
- 11:52They've been around since the early days, long before even Laravel existed.
- 11:55Wonderful human beings, so grateful to them.
- 11:57And of course, as always, we are sponsored by Laravel, the wonderful folks behind Laravel Cloud and LarCon US.
- 12:03Laravel Cloud is the fastest way to deploy Laravel apps, and it also solves all sorts of common problems that keep web artisans from shipping.
- 12:10And LarCon US is the premier in-person event for all web artisans to come be with your people, level up.
- 12:16And leave ready to ship faster and better than ever.
- 12:18So check those out at cloud.laravel dot com and Laricon.us.
- 12:23Okay.
- 12:23So you mentioned that you put in your kind of six applications.
- 12:27Were you primarily working at that one company that did Symfony during the period before leading up to Laravel?
- 12:32Or you did you jump to other places?
- 12:33Like, did you ever actually get to work in Laravel as your day job before you joined Laravel, the organization?
- 12:39Yeah, I did, but it it took a while.
- 12:42After I I worked in that place that was working with Symfony, I actually went to a totally different thing.
- 12:50I worked with Java for for some time.
- 12:53What?
- 12:54Yeah.
- 12:56I was working in a company that that created applications for banks or banking applications, and most of them in in Brazil use Java.
- 13:05So I I was working with Java.
- 13:08And at the time I was working with JavaScript to create mobile application for that bank.
- 13:15And at the time, if I'm not mistaken, the name of the library was Cordova, Cordova, Cordova or something like that.
- 13:22That was the first JavaScript based kind of multi or the first big one, so Yeah.
- 13:27yeah.
- 13:27And it was like Angular one and Cordoba to create the mobile application and Java was the whole back end thing that that was supporting it.
- 13:38So yeah.
- 13:38uh
- 13:39Different stack.
- 13:40That's a different world.
- 13:41Very different word.
- 13:43And I continued using PHP and Lava for my side gigs.
- 13:48Yeah.
- 13:49And it was on Brazil still.
- 13:51And after one year and a half, I got an opportunity to move to Portugal to work here in Portugal in a company called OLX, and they were using PHP.
- 14:04It was not Laravel still, but they were using PHP.
- 14:08And I thought, okay, okay, let's let's try it.
- 14:11And I did the interview process and they liked I was hired, so I had to do all that visa thing to to move to here, and it was like pretty intense because from the interview until
- 14:24my move, it was like three months, and I had to do a lot of things in those three months to move to Portugal.
- 14:31And I moved here to Portugal and started working with with OLX.
- 14:36I was there for one year only, but it was pretty cool.
- 14:40And after that I got hired in another company.
- 14:44That was the company that I was working on before joining Laravel.
- 14:47It's called Crack Street.
- 14:49Yeah.
- 14:49That's the one I knew about you working at.
- 14:51So tell me more about Trek Street.
- 14:53Yeah, Trek Street it's a company that the main application that they have, it's brand protection SAS.
- 15:00So in there they were using Laravel.
- 15:03So it was pretty cool because I wanted to work with Laravel full-time.
- 15:07And the other thing that was pretty cool, they were using Vue.js.
- 15:10And I loved Vue.js because after Angular like launched uh Angular 2 and it was completely different from what was Angular 1.
- 15:20I was I don't think I like this anymore.
- 15:23And I started using View.
- 15:25So um and it was pretty cool because it was the stack I wanted to work with.
- 15:30And I I started working there in 2018, the beginning of 2018.
- 15:38So I worked almost eight years there before joining Laravel.
- 15:41And I started as a senior engineer.
- 15:44After some time, I went to a lead engineering role.
- 15:49After some time I was working as the solution architect for the company.
- 15:54And uh for a small period of time I was doing engineering management, but I didn't like it, so I asked it to go back to the my old role that was solution architect, and after
- 16:08that I joined Laravel.
- 16:09So there
- 16:10It was very cool because I had never worked so many times in the same company.
- 16:16Yeah.
- 16:17It's pretty cool because we see like the results of the decisions that we do.
- 16:23Because if you work like in a place for a short period of time, you may do some things and see some some decisions that were made, but you don't know how that's going to play in the
- 16:35long time, uh in the long run.
- 16:38And it was pretty cool working there because I did see a lot of things that went good and a lot of things that went bad in the long run.
- 16:47So I learned a lot and I also learned a lot not only in the technical aspect of it, but also other skills.
- 16:55Because before, like I I was extremely and I'm still am, but I was extremely shy to talk.
- 17:03Like if I went on a meeting, uh the first time I went on a meeting that
- 17:07had like six people there, I just froze because I was not being able to even talk correctly because I I was so stressed out.
- 17:17And they helped me get a lot of things better in terms of communication.
- 17:23And I had also a lot of understanding to get more into business logic, how to talk
- 17:30Not only with technical people, but I also talk with a product because when I was especially in the solution architect, I had to do like a lot of things that were not
- 17:40coding.
- 17:40To be honest, I was not doing almost any coding.
- 17:44It was just talking with people, decisions, a lot of documentations, diagrams and everything.
- 17:51So it was a very different experience for me, but it was
- 17:56Pretty good.
- 17:57I I think like I I learned a lot this the during this period.
- 18:02Love that.
- 18:02I mean, you really saw a lot of the different aspects.
- 18:04I mean, you were an individual contributor, you were a freelance consultant on the side, you did engineering management, you did small team leadership, you did, you know, the
- 18:12solutions architect, you were dealing with business people.
- 18:15That really sets you up to be somebody who is at a a pretty high level of your involvement with larger teams.
- 18:21So it's very interesting to think about having all that experience and saying, you know what I want to do is I wanna cause open source.
- 18:26Now, open source does keep some of those things, and I want to hear your thoughts.
- 18:29But like people don't often think you're gonna do that and you're gonna rise up the ranks and you're gonna get to leadership levels.
- 18:33And then you what I want to do is I wanna be an individual contributor in the open source level, where you're not with a team of 50 where you're in charge and you haven't, you're
- 18:39not a CTO, whatever.
- 18:40You're just like, I just like doing this thing.
- 18:42So when you moved to work to Laravel, I know part of it was just wanting to work at Laravel, right?
- 18:47You'd said that.
- 18:47You're like, I applied six times.
- 18:48Was part of it also wanting specifically to have this type of work?
- 18:52Because you also mentioned that you like open source.
- 18:53So was this
- 18:54If you were to pick your job in Laravel, not just to get to Laravel, but pick your job, would it be open source?
- 19:00Or were you like, I mean, I I I mean, I actually would have preferred this, but I will just take any job with Laravel.
- 19:03Like how much were you looking for this specific role?
- 19:07When I uh like I already applied to other roles on Laravel that were not open source because it's Laravel, right?
- 19:15Yeah.
- 19:16Yeah, yeah.
- 19:17But when I saw the w this one for open source, I said, man, this is like my my dream job.
- 19:23I really wanted this to work out.
- 19:26And this was one of the primary things because as I said, I was like eight years at the other company, already had like
- 19:34A very good relationship, and I still have a very good relationship with everyone there.
- 19:39So for me to let go, like I built a career inside that company.
- 19:44So for me to let that go for something different should be something that I really wanted to do.
- 19:51And one of the things is that as I said when I was we as the solution architect, I was not almost coding anymore because I was just doing a lot of meetings.
- 20:01lot of documentation, diagrams, talking with people the whole day and everything.
- 20:05And I was missing to build things, to, to create things and codes and everything.
- 20:11And this was one of the points.
- 20:14And the most important was that I really wanted to like to work with open source full time.
- 20:20And having this opportunity for me was like amazing.
- 20:24So yeah.
- 20:26It really was the it was the it was Laravel who you love, open source that you love, just kinda came at the right time.
- 20:30So what was the process of applying like?
- 20:33I mean, you mentioned you'd applied six times.
- 20:35So you knew what sending in your your your resume to them looked like, but what was different this time around?
- 20:40And what surprised you, I guess?
- 20:43Yeah, so I already had a lot of things and every time that I'm going to apply to something, the thing that got me most uh confused on how I'm gonna do is the cover letter.
- 20:53So yeah, I think that the sixth time I applied to Laravel, I created six different cover letters because I I never knew what what I I would say there.
- 21:04And and and uh this last time I created a cover letter more focused on like
- 21:13on what I already did uh and contributed to Laravel specifically because I was doing some contributions lately to Laravel before joining.
- 21:23One of the biggest contributions I did was the HTTP batch for the HTTP client.
- 21:31So I tried to like put those things because I thought okay maybe this is this is going to to to help me.
- 21:39And and another thing that I did
- 21:42And I hope I can say it, is that I I tried and and I thought, okay, I don't have anything to lose.
- 21:48So I'm going to send the CV, I'm going to send a cover letter.
- 21:51I'm going to send an email to Taylor directly saying that I really want that that job.
- 21:58I mean, and honestly, for some people that might just be annoying to Taylor, but for you specifically, Taylor merged your PRs, right?
- 22:06He reviewed the code that you did.
- 22:07He probably gave you some notes and did some back and forth and he merged your PRs.
- 22:10So of any time for someone to do something like that, when you've actually had a valuable, beneficial interaction with Taylor, that's I'm not saying everyone should just directly
- 22:19email the guy, but it really makes sense in your context.
- 22:21So
- 22:22Yeah, yeah.
- 22:23And and I thought like that, like, okay, so recently I had this PR and we had a back and forth because the PR was open for several weeks with back and forth on changing things and
- 22:35getting feedback from Taylor and changing stuff.
- 22:37So I I thought, okay, probably he remembers me from from from that pull request or something.
- 22:43I'm going to send an email and see what it gets.
- 22:46And Taylor was was pretty open.
- 22:49He he asked me, okay
- 22:51What's like what's your expectation or w what you're doing?
- 22:55So we had it it was not a long shot, it was a short one.
- 22:58And at the end he said, Okay, I'm going to talk with the team and we are going to see how it goes.
- 23:04And it went uh I don't know, maybe two weeks or something like that.
- 23:08I was like, man, I don't know if that thing's going to work and everything.
- 23:12And then I received an email for the first interview and I was, Oh
- 23:17That's pretty good because the other times I applied, I was never even called to interview.
- 23:24So that's a really good progress.
- 23:28And I did the first interview and they said, Okay, we are going to talk and see how it goes.
- 23:34If w we want to to move, you're going to receive another email to schedule a second interview.
- 23:41And second interview, from stinky, it was going to be with Joe Tannenbaum.
- 23:46That's my manager now.
- 23:47So I was okay.
- 23:49Okay, that's that's good.
- 23:50So I waited, I don't know, maybe one week or something like that, and received an email saying that I I was going to the second interview.
- 23:58I was all man, that's that's amazing.
- 24:00That's so good.
- 24:02And then I had uh and I was man, I was so nervous to talk with Joe.
- 24:07I was so nervous when I started talking.
- 24:10But and I told him that he was so like lighthearted.
- 24:15And it felt like like an interview.
- 24:18It was like us chatting here.
- 24:21So it was so good.
- 24:22He made me feel so comfortable that it went pretty good because I started pretty nervous.
- 24:29And and then it was again like, okay, if we are going to see, we have still more people to interview and everything.
- 24:39And if everything goes right, we're going to have another interview.
- 24:42And it was going to be with Andre.
- 24:45the the VP of engineering and I I think it was two weeks or something like that when I got an email saying I was going to to to do the the third interview and I was man now now now
- 24:58I'm getting I'm getting close.
- 25:00Now I'm getting close and and it was pretty cool.
- 25:05I had this interview uh Andre, same as Joe.
- 25:09I was pretty nervous at the beginning but if he made me feel very comfortable during the interview.
- 25:15And um then he said me, Okay, we are going to talk and uh when we have a final decision, we are going to let you know if if you are going to be hired, or even if you're not, we
- 25:27are going to give you some feedback.
- 25:29Okay, that that's good.
- 25:30Because there are other companies that they don't tell you if you're not hired.
- 25:34It's just you just
- 25:36Left in a limbo.
- 25:39So yeah, so and it was pretty cool when I received the the news that I was hired because I remember that I was working but I was not working from home because the that day my wife
- 25:55had a conference in another city, so I drove her in the other city.
- 26:00I was going to like a coffee and shop and working from there.
- 26:04And I was there when
- 26:07I saw a message on LinkedIn from Andre saying, Hey, can you jump in a call in like fifteen minutes?
- 26:13And I was of course.
- 26:16Yeah, whatever, whatever it is.
- 26:19And I was okay.
- 26:20So there's two possibilities.
- 26:22Or I'm hired or I'm not hired.
- 26:24So let's let's keep it calm and everything.
- 26:28But but when we started the call and and Andre said, Amen, we we are going to hire you, man.
- 26:35I I was so happy.
- 26:37uh So happy.
- 26:38So I I I I was man.
- 26:44Cause like the as I said, like the first time I I sent like my CV was almost like ten years before that.
- 26:51So nine years.
- 26:54Yeah.
- 26:54And I was like, man, I finally achieved something that I really wanted to do for a long time.
- 27:02So it it felt so good.
- 27:04All right, so we're gonna pause.
- 27:05We're gonna read from another sponsor for just a second.
- 27:06We'll be right back.
- 27:08And thank you to a new sponsor, Laricon AU.
- 27:10Laricon AU returns November 4th to 6th in Brisbane, Australia, with deeper learning, practical insights, and ideas that will stretch how you think about building with Laravel.
- 27:19Get your tickets now at Laricon.au.
- 27:22And I gotta say, y'all, Michael Durinda is one of my favorite human beings in the entire world.
- 27:27And the Australian developer community and the, you know, the the entire area that comes together to Laricon AU is just.
- 27:34So wonderful and kind and welcoming.
- 27:37And obviously not everybody can come the whole way out there, but if you are anywhere near Australia and you can come to Laricon AU this year, I couldn't recommend it more.
- 27:46I will be there, I'll be speaking.
- 27:48But even if I wasn't there, I would recommend it.
- 27:50Wonderful people, wonderful conference, wonderful organizer.
- 27:54Definitely check it out.
- 27:56Okay, so you're at the coffee shop, you have the call with Andre, you're starting at Laravel.
- 28:02What is your first assignment on day one?
- 28:05man.
- 28:06Yeah.
- 28:06So when I got that notice, I still had to do like my notice on the other company and it was like the end of the year.
- 28:13So we defined, okay, you are going to start working on January after the holiday season.
- 28:19So I I okay.
- 28:20So my first day was January five this year.
- 28:25And during the first day I was mostly just getting to know how things worked.
- 28:31So setting up things.
- 28:33a lot of things to set up, services, email, everything.
- 28:37And uh I had a call.
- 28:39Uh we have a like an onboarding buddy s when we joined.
- 28:43So uh it was Francisco that's here from Portugal as well.
- 28:46Yeah it was yeah he walked me through the lot of things even that he's not in in the same thing he's working on cloud but he he walked me through everything that I needed to know
- 28:58when starting work there.
- 29:01And
- 29:02And it was pretty cool.
- 29:03Like the first two days, I think I was just getting to know everything, getting to set up everything, getting permissions with everything.
- 29:11And my first assignment was to to check on the starter kits and understand how they were like working, checking like for pull requests, issues and everything, going through them,
- 29:25uh check if I can do anything there.
- 29:29It started like that.
- 29:30And I don't think it was the first talk I had with Joe, but one of the first talks I had with Joe, Joe said, okay, we know that it's very hard to maintain all those starter kits
- 29:41because it had at the time it had it didn't have this valve one, but it had the React, view and and the live wire.
- 29:50Uh and each starter kit has different variations, right?
- 29:54It has like
- 29:55the work quest variation.
- 29:56It has like the blank variation that doesn't have anything.
- 29:59So it has a lot of variation.
- 30:01So he said you're going to see that it's like it's a pain point that we have.
- 30:07It's maintaining and syncing everything.
- 30:11Because most of the times when someone was like doing an improvement or a fix on a starter kit
- 30:19They were doing the stack they are comfortable with.
- 30:22So most of the times someone it's like doing a pull request on React or LiveWare or View doing an improvement.
- 30:28And then we needed to manually go and do the same changes for the other starter kits.
- 30:34So it's creating all the pull requests, merging everything.
- 30:38So he said, Okay, we're going to do this for for some time for you to understand the pain.
- 30:44Yeah.
- 30:45But then we need to think on how to solve that.
- 30:49And one of the first things I did was okay, I was working with the pull requests and issues, making sure I was closing everything, working with uh all the starter kits, making
- 31:00them like without any issues open, any pull requests open, and doing some small improvements.
- 31:07And then one of the first like big projects was okay, now you need to figure out how we can improve that.
- 31:15And that's when I started working in what
- 31:18Today it's we called Maestro.
- 31:21That's the orchestration for for the starter kits.
- 31:25I worked with that during a long time, just it's public.
- 31:31It's not like I think it was public on March.
- 31:34I'm not sure if it was March or end of February.
- 31:38However,
- 31:39I've been working on on this since January and I think that uh it stayed uh just internal for a long time because we were improving things, making sure everything was working
- 31:50before going public, because this was going to be like the main source of contributions after it it went public.
- 31:58So we wanted to make sure that it was working correctly without having issues for contributors.
- 32:04So and it was one of the biggest
- 32:08projects I worked at so far in Laravel was creating Maestro and it was so fun to work with because it it it was a really different thing that I didn't work with something like that
- 32:18before.
- 32:19So it was pretty cool.
- 32:20I I learned a lot of things and it was pretty cool to okay make this work and then after a while using it I saw okay but oh this thing I'm doing it like manually a lot of of time
- 32:32and things let me try to automate this other thing.
- 32:36And okay, we still have those things that are duplicated with Windows starter kits.
- 32:41How I can I improve that?
- 32:42And it took a while until it is what it is today, but it was pretty cool to work with.
- 32:48It was pretty interesting, pretty cool.
- 32:51And I'm pretty happy with the result on how Maestro is is working right now.
- 32:56So I'm I'm pretty excited that we were able to like create and release that.
- 33:02And it's working because we already already received a lot of contributions from people uh on Maestro.
- 33:08So I'm happy with the result.
- 33:12So how I understand Maestro is that it is a single source of truth for the what's core across all the starter kits.
- 33:19And then it's also an understanding of what's different across each starter kit.
- 33:22And if you want to change anything, whether it's what's different or what's core, rather than changing the starter kits, you're changing myestro it's basically rebuilding.
- 33:29And it and now the starter kits themselves are really just like replica are does that make sense?
- 33:35They're just they're just built output, sort of like the the illuminated components, right?
- 33:39They are just manually or automatically split out.
- 33:41Starter cuts are similar now, right?
- 33:42Is that kind of what it's doing?
- 33:44Yeah, exactly.
- 33:45Exactly.
- 33:45So Maestro today it knows when you are working with Maestro, you can first, if anyone wants to contribute it, you don't need to understand how Maestro works because the files
- 33:57are split between layers.
- 33:59There are files that are common for all starter kits, so they go into a layer that's the shared layer.
- 34:06And then there are different layers, but you don't need to understand that because when you go into Maestro, you can just build
- 34:13one of the starter kits that you want, let's say that you know very well how to work with React.
- 34:18Then you can build the React starter kit and it's going to create a build folder and start a watcher that when you change anything in this build, it knows where those those files
- 34:31should be copied to.
- 34:32So you you don't need to put out.
- 34:35Yeah
- 34:37I literally thought you had to understand the underlying architecture, modify it, and then you could just build it.
- 34:42So holy crap.
- 34:43So yeah, so if you know LiveWire, you set up your LiveWire version, you make your changes there, and the watcher says, if you change that in the LiveWire one, it rolls it back into
- 34:52the source so that next time it builds the others, they all get those same changes too.
- 34:57So cool.
- 34:58yeah, yeah.
- 34:59So th this is one of the like coolest things that I like maestro is that because uh you you don't need to really understand what maestro is doing because it abstracts that for
- 35:09you.
- 35:09You can just build something that you already know, that's the starter kit.
- 35:13It's a live application with the stack that you know, you do the changes and maestro knows where to put those files in.
- 35:22Very cool.
- 35:23Ah, I love this.
- 35:25Okay.
- 35:25So what's what are you working on today?
- 35:27Are you still working on this or have you moved on to something else since since you released this?
- 35:32So after releasing it, I'm working with a lot of things it's still related to starter kits.
- 35:38For example, I worked in the Teams support for starter kits that was released as well.
- 35:43I worked on several other improvements for starter kits, not related to starter kits.
- 35:49One thing that I worked on, and it was released some weeks ago, was the font plugin for the Laravel Vite plugin.
- 35:58I don't know if you saw it, but basically
- 36:02Basically, now you have in your Vite config file you can have the configuration for fonts.
- 36:08So you can add fonts from Google fonts, from bunny fonts, and everything.
- 36:15And the plugin it's going to take those and it's going to download those things and make them local so you don't need to like preload them from HTTP every time.
- 36:27Yeah.
- 36:28And it's going to create some helpers for you, creating CSS variables that you can use and CSS variables that you can use across your code with the fonts that you define.
- 36:39So it's an abstraction.
- 36:40Like you have with next fonts, for example, it's something like that, or Astro, if you already work with Astro, Astro does something like that.
- 36:49So it's like that, but out of the box from Laravel.
- 36:53So you just add a fonts directive.
- 36:57Uh in in Latavel and it's going to load those phones for you.
- 37:00So uh
- 37:02That's fun.
- 37:02I like that.
- 37:03I mean, it's gotten easier in the last years to say, I'm gonna take one of those web fonts, I'm gonna download it, I'm gonna put in the right place.
- 37:10But still it always has felt like a little bit of like a dance of like, nope, you put it in the wrong place, or you grab the W O F one and you're supposed to have the W O F F two
- 37:18or whatever else it ended up being.
- 37:20So just knowing that all you could just say, get this for me and I'll handle it, I I love that.
- 37:24That's very exciting.
- 37:26Yeah, yeah.
- 37:26It's very cool.
- 37:27And for me, even for me, I used to do that for almost all projects.
- 37:32Like, okay, I need to get that font, so I need to download it, put it here, then uh then go in the CSS.
- 37:38Okay, load this front front here and everything.
- 37:40But now it does everything automatically for you.
- 37:42You just need a small configuration in your Vite config and everything it's it's working.
- 37:49That's so good.
- 37:49Well, thank you for contributing that.
- 37:52So one of the things I had mentioned about the starter kits is I had a vision years and years and years ago for how we could make it so that people can deal with exactly the
- 38:00problem you're talking about, which is starter kit changes being able to roll out to other ones.
- 38:04And my idea was that the bigger problem was going to be keep like rebuilding your starter kit every single time a new version of Laravel came out.
- 38:11And so I was thinking every starter kit could be kind of represented as a uh
- 38:15set of changes that gets applied to a stock Laravel repo.
- 38:18And I started building that.
- 38:18It was called Mies.
- 38:19And at some point I just realized that the the number one group of people who needed this was the Laravel organization.
- 38:25And you guys are going to build something that was more specifically tailored to your needs than this.
- 38:28And there's not a lot of other people who are doing a lot of work maintaining it.
- 38:31But there was always something in the back of my head being like, maybe I should have put time and energy in this.
- 38:34Well it never had the vision that you did for my Estros.
- 38:37So I'm like I couldn't be happier that I didn't go forward with that thing any further because that's that's so brilliant.
- 38:44And this fonts thing, I know it's smaller, uh but that's a nicety that I really have.
- 38:47So where did that come from?
- 38:48Is it just something you popped in your mind?
- 38:50You're like, you what, fonts drive me nuts, or did somebody assign you to work on it, or what was that workflow like?
- 38:54That that was a project that Joe was already thinking about.
- 38:58Because of that, like uh like me or and a lot of other developers, like the pain of okay, manually setting all the fonts is that hey man, we have these like in in other stacks,
- 39:10like we have in Next, in Nuxt, in Astro, we have those things that are done automatically.
- 39:15We should check what we can do with our plugin for Vite and come with something that's like
- 39:22fits right in in in Laravel applications.
- 39:26And then I I started working on it after some iterations, we got like the final API.
- 39:31And it's the the the if you see it's pretty simple.
- 39:35It's a pretty simple API like a Laravel uh API that's elegant and simple.
- 39:40And you just put it there and it works.
- 39:43So it's it's pretty cool.
- 39:45And it and it was very uh cool for me to work because I had never worked with a Vite plugin before that
- 39:52So I had to learn a lot of things while working on it.
- 39:55So it was it it was very good.
- 39:56I like working with different things because I I like to learn new things.
- 40:01So I love when I need to do different things like this.
- 40:06That's awesome.
- 40:07I love that.
- 40:08So is there anything because I we're kind of getting close to time.
- 40:11Is there anything that you're looking forward to that you're allowed to talk about?
- 40:14Because I know there's always when I ask what's next, they're like, we can't say that.
- 40:16So is there anything you're allowed to talk about that you are looking forward to on that's on your plate in the next three to six months?
- 40:23sure, sure.
- 40:23Okay, so a lot of things are still internal, so I I I can't talk as you said.
- 40:29But the thing that I'm very excited and this is something that when I started working with the starter kits, I was uh talking with Joe about it's trying to get an API starter kit
- 40:42there.
- 40:42Because
- 40:44Yeah.
- 40:47I love working with APIs.
- 40:49In Track Street, we had like an API that we created.
- 40:52That API is huge today.
- 40:54Like when I left the company, it was already with 300 endpoints or something like that.
- 40:59It's a massive API and everything.
- 41:02And I think that like it was missing something specific for APIs for Laravel, an official thing.
- 41:08So I was talking with Joe and he agreed.
- 41:11So
- 41:12On Maestro, there are already two pull requests that are in drafts there.
- 41:17But it's almost there.
- 41:18We are thinking on releasing them.
- 41:20We don't have release dates set yet, but we want to release it very soon.
- 41:25So very soon we are going to have the API starter kits there.
- 41:30And it's going to be pretty good.
- 41:33And I I can say a lot about it, but we are going to have something for a package as well, if you want to create packages.
- 41:42It's still ongoing, but there there is also something that we are working there for people that are creating packages.
- 41:49Okay, very cool.
- 41:50Yeah, we have one of those meta starter kit package skeletons.
- 41:53There you go, package skeletons that we've used for our packages in the past.
- 41:56But I sure wouldn't mind if there was just an official way to do it and we didn't have to make our own.
- 42:02So very cool.
- 42:03I know you can't talk about that anymore.
- 42:04So we kind of covered your journey from elementary school or middle school all the way up to what you're working on today.
- 42:11Is there anything that you wanted to talk about today?
- 42:13Anything you wanted to share to the people, any kind of things you're really into that you didn't get a chance to talk about today?
- 42:18well, I think that's uh almost everything we talk a lot of of things and man to talk about software development I could talk the whole day.
- 42:28I can find a lot of topics to to discuss.
- 42:31Well, if somebody wants to meet you in person, are you attending any of the conferences coming up for the rest of this year?
- 42:37I'm attending Laravel Leave UK.
- 42:39Okay.
- 42:40It's on eighteenth and nineteenth this month.
- 42:42I'm going to be there.
- 42:43I'm going to be talking there.
- 42:44I'm going to speak.
- 42:45I'm going to present a talk about metaprogramming in PHP and how Laravel uses metaprogramming to create the DX that we love from Laravel Framework.
- 42:55So I'm going to I'm going to talk about it and I'm going to be on Ladacon US as well.
- 43:01great.
- 43:01Okay.
- 43:02So we'll get a chance to see you in person.
- 43:03Thank you so much for the the Vite font plugin for all your work on Maestro and the the starter kits.
- 43:09And actually just get to to see and people who aren't watching the video, this is a friendly guy.
- 43:13I'm just like, I just want to see you in person because I wanna I want your energy to rub off.
- 43:16So I'm like, yeah, let's do this.
- 43:18So
- 43:19Yeah, man, let's let's do it.
- 43:20Let's do it.
- 43:20Are are you going to be on Marvel Leave UK or Warcraft?
- 43:23I won't be at Live UK this year, but I will be at Laracon US.
- 43:26So I will see you there.
- 43:27Normally Laravel Live UK's videos are not streamed or recorded.
- 43:31I'm assuming that's still the case this year.
- 43:33So we're just gonna have to ask you to give that talk again some other time where when the rest of us can see it.
- 43:37So
- 43:37Yeah, yeah.
- 43:38I am happy to do it.
- 43:40I love it.
- 43:41Well, Wendell, thank you so much for hanging out.
- 43:42It was such a pleasure gonna talk to you for a little bit.
- 43:44It's so cool to hear your story and I'm looking forward to meeting you in person in Boston and I'm sure some other folks are looking forward to your talk at Lairville Live UK and to
- 43:51meet you there.
- 43:52So real thank really appreciate you, man.
- 43:54Thanks, thanks, thanks again for inviting me.
- 43:56It was pretty cool.
- 43:57And yeah, let's let's meet and have a coffee or something on Laracon.
- 44:01Sold.
- 44:01All right.
- 44:02For the rest of you, thanks for hanging out and we'll see you next time.