Jacob Bennett: [00:00:30] Hey, everybody. Welcome back to the Laravel News Podcast. Right off the bat today we wanted to start by talking about a really exciting development in the Laravel Community which is our very first Laravel online only conference, it's Laracon Online. You can get your tickets for it at laracon.net for 10 bucks which is kind of crazy. On to talk with us today about Laracon Online is Mr. Ian Landsman. Ian is helping to organize Laracon Online and we wanted to get [00:01:00] him on to talk about what you can expect if you're going to be attending. I also wanted to have him on to talk about some of the history of Laravel. Ian worked with Taylor during some of the beginning stages of Laravel's development. Ian, for anybody who might not be familiar with you, would you mind introducing yourself and then you can tell us a little bit about the history of Laravel and what part you play in that?
Ian Landsman: Yeah. Hi, everybody. Thanks guys for having me on. It's kind of a crazy story. I'm Ian from UserScape [00:01:30] and I founded UserScape 12-ish years ago. We make a product called HelpSpot which is our main product. It's a help desk application. A really tight summary of our relationship with Laravel is about five years ago or so. We were looking at doing some different projects and improving HelpSpot and different things like that. I was looking at PHP frameworks and there was Symfony, and Cake, and CodeIgniter, and whatever, [00:02:00] you know, all of them. There was none I really loved and I found this little one called Laravel that was just like slim, basic.
Jacob Bennett: Yeah, they're cut down a lot.
Ian Landsman: It wasn't all flushed out yet, right? I was just researching that, poking around, and I actually came across a forest post. I don't know if you remember forest. I've seen this code ...
Jacob Bennett: I do remember forest. I remember it back in the day, but I think the post you're going to reference, we saw [00:02:30] something about it during its fifth year anniversary. I won't steal the story though. You go ahead.
Ian Landsman: No. What it was was just a thing from Taylor saying that he was available for hire. I was like, hey, there's this framework that's synced exactly like I think of a PHP framework should be.
Jacob Bennett: Oh, no way.
Ian Landsman: I was like, the guy who created it needs a job and we were looking to hire somebody so just message him and ...
Michael Dyrynda: Yeah, stars aligned.
Ian Landsman: Yup. Part of it was that Laravel would [00:03:00] need to evolve a little bit more which is kind of I think in Taylor's mind already but he was just doing it on the side at that point of his day job, so the first three months, I guess, he worked at UserScape, he did pretty much nothing but work on Laravel and build out things like queues and he rewrote Eloquent and I added more databases and caching, I think. I don't know, a whole bunch of stuff got added in there. This is Laravel version three. That was kind of the beginning of it. We did do [00:03:30] the first two Laracon USs. We did with Taylor, in conjunction with Taylor, so that was Laracon DC and Laracon New York.
Jacob Bennett: Did UserScape actually do the planning portion of it and you guys funded it and did all that stuff, put it all together?
Ian Landsman: Yeah. Taylor worked at UserScape at the time and so we as a company did it. We did help with some of the bankrolling of it initially. That was all made back in ticket sales and all that but in terms of just getting it off the ground. [00:04:00] Then obviously we just worked with Taylor on it because we were just working together. I mean, we're a small company so we would just be talking about what do we want to do with this, what do we want to do with that, and just ran it together. Then about three years after that point, Taylor, Laravel obviously got huge so Taylor went off on his own which is awesome. At that point, he just took over the conferences which made sense so that they could fund his work completely on Laravel.
[00:04:30] That's kind of the history and now we're here at laracon.net which we'll talk about more, but a little bit of background on that which is that this was also something we talked about, that Taylor and I talked about a long time ago. Then I had this kind of itch to get back in the conference game a little bit, but right now the real world conference is a ton of work. You got the physical occasion and people are flying. It's just a ton of work. I didn't want [00:05:00] to settle with that much work. Then Eric Barnes of Laravel News who also works at UserScape, he brought this idea backup of maybe doing an online conference, so between my itching to do a conference and him bringing that up and then we talked to Taylor and decided to do it, last minute decided to do it for this year. That's kind of where we are right now.
Jacob Bennett: Yeah. I'm really, really excited about that and excited to hear what the format is going to be. I know I had seen [00:05:30] one kind of online conference like this. I've heard about them for a long time. I'm trying to remember if it's ... There was one that Chris Coyier always used to push. There was this grouping of these online conferences that have around CSS or JavaScript. Anyway, I saw one recently where they held a JavaScript online conference or whatever, kind of like what you guys are talking about. I think what they had is they basically just had all the speakers on like a hangout or something like that and then just broadcast it.
I'm interested [00:06:00] to hear how was it going to work. I know you guys have the schedule already out there for 8:00 Eastern Time is when it's going to start and whatever, whatever. You have a couple breaks in there. Everybody's going to be invited to hangout on the Slack channel. I guess I was curious to hear is it going to be one speaker at a time, they're going to have the main stage and then everybody else is just in the Slack Room or how that's going to work?
Ian Landsman: Yeah. We're figuring it out so it's not [inaudible 00:06:27] locked in stone but the sketch of it currently is [00:06:30] definitely it will ... Everybody would be live or at least almost everybody. There might be one speaker who's going to be in China, so we're going to test his internet and make sure that he's capable of streaming live. If not, we might do just that one recorded potentially. Otherwise, everybody's going to be live. Through the software, the webinar software, we'll move from speaker to speaker. I'll probably come in in between to introduce the next speaker and all that and take care of some business in between [00:07:00] each talk. Basically, just transferring around. Most of the speakers will be at least in and out of the Slack throughout the day. Taylor will be in there all day, I'm sure Jeffrey Way be in there all day, those guys. Everybody will be in Slack hanging out where people can talk as the conference is going on which is pretty cool. We'll see how it goes. I mean, I've never done an online conference so we will see how it works.
We aren't going to use Hangouts, we're going to use probably Zoom. It's like a professional mass broadcasting [00:07:30] application or maybe GoToWebinar which is another big one. I don't want to be in the spot where it's like from that and make sure we have ... There's a bunch of startuppy ones too which I don't really trust so I'm not doing those. Then there's obviously like YouTube Live or whatever, but that's kind of limited in some ways. What we're thinking right now is we're spending the money to make sure that we have high quality streaming because obviously if the streaming doesn't work then the online conference is not going to be [00:08:00] very much fun, so making sure we have the streaming that's going to work all around the world and all that is really important. We're probably going to go with the well established paid product kind of thing. There's going to be a lot of people too so we don't want to try like home grow some little system or whatever.
Michael Dyrynda: Yeah, for sure.
Ian Landsman: We've got some really great speakers lined up. Michael, would you mind telling us who it is that's going to be there this year?
Michael Dyrynda: Yeah. Obviously we've got Taylor Otwell, we've got Jeffrey Way, Matt Stauffer, [00:08:30] there's Adam Wathan as well. We've also got Evan You the creator of Vue.js. We've also got Jason McCreary who gave a great talk at Laracon last year on YAGNI. Then we've got two newcomers, I think, to the Laracon community in Rachel Andrew and Nick, is it Canzoneri?
Ian Landsman: Yup.
Michael Dyrynda: From Postmark. Cool. Looks like a pretty sweet lineup. I assume it will be Evan that will be in China for his talk?
Ian Landsman: Yeah. I think he lives in the US but he said he was going to be in China, just happened [00:09:00] to be there on that day, so we're going to see how his connection is once he's over there. We're going to test drive it a couple days before.
Michael Dyrynda: Yeah.
Jacob Bennett: Very cool.
Michael Dyrynda: Looks like a great lineup for sure.
Jacob Bennett: Yeah, absolutely. Rachel Andrew who I have heard her talk on ... I'm trying to remember if Adam Wathan had her on his podcast or if it was somewhere else. I've heard her talk though about Perch CMS. I've never actually had the chance to use it. Did you guys know her just through connections or have you been able to use her product before or ...
Ian Landsman: Yeah, no. I've known her for, [00:09:30] I don't even know, 10 years or a very long time and her husband as well. They've been really super involved in web standards and PHP for a really long time. Kind of in Laracon tradition I feel like is that we don't do the pure where there's nothing but the topic of the conference, the whole conference, right? It just feels like you need to break ... We could have found three more Laravel people and we could have done all Laravel or four more, [00:10:00] but I feel like that's not modern web development first of all it's just kind of boring to hear eight straight hours of only Laravel.
Obviously we have all the big Laravel names so they're going to be able to really cover Laravel well and 5.4 changes and all that kind of stuff, but then I thought it was nice to mix it up with ... Rachel's going to talk about all the crazy stuff that's going on with CSS Grid and Flexbox and just laying out in the modern web. Nick's going to do email, so all your transactional email. [00:10:30] I mean, who's not building a web app that's not sending a zillion emails nowadays. How you can avoid screwing that up and making sure they're delivered and he's going to get into the tech of that so it's not going to be light, it's going to be kind of heavy. Obviously Vue is everywhere in the Laravel space now. I think that'll be a really nice mix of topics and something for everybody, something for people at different levels of ability too, so I'm pretty excited [00:11:00] about the speaker mix there.
Jacob Bennett: Yeah, for sure. The thing I think that shocked me the most about this was the fact that it was $10. I saw it on Twitter like, "Hey, laracon.net, we're going to do this online Laravel conference." I was like, "That's awesome. I wonder how much it's going to be?" I'm expecting $50, $60, something very reasonable but still a little bit more pricey. $10.
Ian Landsman: Right? It's kind of crazy.
Jacob Bennett: Can you help me ... Not only that but you got somebody to sponsor I'm assuming [00:11:30] free .co domains for the first 20,000 attendees. You're literally paying for a .co, a domain, and then getting a free conference ticket. It's really what's happening.
Ian Landsman: Right, right. Exactly.
Jacob Bennett: It's kind of insane, so maybe you can talk a little bit around the pricing and, you know, I mean, it's very generous. I appreciate that. There's going to be tons of people coming, hopefully.
Ian Landsman: Right. I think there's a few aspects to it. One of the things I definitely want to do was from a financial aspect 29 to $59 would [00:12:00] be a better price point, right? Just straight finances, but one of our goals, really the core goal of the conference was to try to reach people who would never come to a Laracon. Not that we don't want everybody who could go to a Laracon, but there's people from all over the world using Laravel, a lot of them are not going to be able to travel to New York City and stay in a hotel for five days and airline tickets and all that stuff. Then also the factor of Laracon US, Laracon [00:12:30] EU, they sell out months in advance so even people who want to go can't go because the tickets just are gone. We really wanted to make it exactly like a no brainer. There still are people who are like, "$10 is too much," but we have to have something, right?
Because one of the things we are doing also is a lot of online conferences are just people getting together and they're not what I would say [00:13:00] is really a conference. We're paying all the speakers for instance and we're not paying them ... I mean, they're not getting rich off this but it's not 100 bucks either. Speakers are getting paid, they're building talks, they're doing a lot of work, so we're compensating them for that. There's a streaming service that we're going to pay for. We all wanted that it just [inaudible 00:13:21] together. We paid a designer for the website. There's a lot of expenses in all this even though it's not as much a physical conference, they're still significant. We're trying to find that balance [00:13:30] to make it as affordable as we possibly could for everybody except for maybe the most extreme cases. $10 felt like a good spot for that.
One thing that we're counting on is sponsors too, so if anybody wants to get in front of many thousands of PHP and Laravel developers, definitely reach out, links on the website, because definitely one of the things we are counting on is sponsors to make up the bulk of the revenue [00:14:00] of the conference so that we can cover all those costs. We'll see. So far we have a couple sponsors on board as you mentioned and then we're talking to a bunch of others now. I feel like that's going to work out well but that is sort of the premise of this. It was that we do it really cheap, we get a lot of developers that will be an interesting group for sponsors to sponsor the conference and they will then form the backbone of the financial model [00:14:30] being able to do it. That's the experiment. We're still not covering all our costs but we are working our way towards there. I'm pretty confident we will be able to cover them.
Michael Dyrynda: Yeah, cool. Has this been done before? We've had online conferences before but has it been done before? Has it been done at this scale?
Ian Landsman: Yeah, it is. Somebody else asked me that. I don't know. I don't think anybody in the PHP framework world has ever done anything like this.
Michael Dyrynda: Sure.
Ian Landsman: I don't [00:15:00] know about ... These big webinar services definitely are built for 10,000 people, so in that regard there's people doing stuff like this but I do think it's a lot of like all the examples that for example Zoom gave me where things like Uber does big online meetings with all their drivers, things like that where it's a company running a big webinar. I don't know. It's something I have to research a little bit more to see in terms of a paid online [00:15:30] conference, what the largest of those has been. I'm guessing there's something bigger but I don't know when that's probably bigger. I definitely don't know of anything in the online tech conference space that's probably going to be bigger than this, but I'm curious to maybe poke around a little bit more and find out about that.
Michael Dyrynda: Very cool.
Ian Landsman: Just that we sold some thousand tickets in the first 24 hours, so that was awesome to see everybody kind of get out and support it [00:16:00] like that and then the speaker lineup and all of those things because we committed to all the expenses and with 30 people buying a ticket then we're not getting sponsors.
Michael Dyrynda: [crosstalk 00:16:10].
Ian Landsman: That's $300 so that's not going to pay for anything. It was great that people liked it as much as we thought they would, so that was cool.
Michael Dyrynda: Yeah, awesome.
Jacob Bennett: Do you have a target number in mind, Ian, that you're thinking like, "We'd like to see this many people show up." I mean, obviously for the first 20,000 atendees you [00:16:30] have free .co domains, do you think it'll get up that high?
Ian Landsman: That's just a sponsor who's able to do that which is part of our digital schwag initiative. That's one of the things that ... I also don't think I've seen before but I'm not a connoisseur of this but we really want to have something to give people like a real "conference" so we're trying to put together some different things, our digital schwag. Some of them will be offers like that. There's a few other things we're working on that are more like items which are digital, for lack of a better term. Anyway, [00:17:00] we're working on some cool stuff there. All those things, I mean, those things could far exceed the price of the ticket in terms of their value. That's definitely our goal is to get it up to be like, "Wow. I got $100 and stuff for this $10 ticket." That's definitely our goal.
The .co domain was cool. As part of the sponsorship, they said, "Hey ... " I mean, they need to set some limit so they said up to 20,000. I don't think we're even going to get to 20,000 this year. At [00:17:30] least in part just because the conference is only in a month, and normally you'd do this with three or four months of lead time at least and we're just decided to do this. This time of the year works out best because we don't really want to get into when Laracon US and EU are running and all that. Plus, in general, we like this time of year for future years so that it'll be after the midterm Laravel release we'll do the Laracon Online in mid-late February. It can always be there to kind of catch you up on what changes in those midterm releases that come [00:18:00] out in January, so kind of feel like that's a good time for it. Then Laracon US and EU will be where Taylor unveils his super new hotness for the year and the main release.
Michael Dyrynda: [inaudible 00:18:12] release.
Ian Landsman: Right. Whatever big crazy thing he's working on that he always seems to have something amazing up his sleeve, so that can shine there in the middle of the year. I don't think we're going to get to 20,000 but we are at 1700 right now. I think it's going to fly now [00:18:30] obviously. We got all the people who are super on Twitter all the time and know everything about what's going on. They all bought the first day. Now it's reaching some of those other people who aren't necessarily as connected as all of us might be. People getting approvals, all that kind of stuff.
If I'd have a specific number, I'd say right now I think we're definitely going get to 2500 at least, 3,000, probably really more like 3,000. If it goes above that, that'd be awesome. I [00:19:00] would like it to get to 4,000 because I just think that would be a cool number of people to have involved in it. As it is right now, we can run it. That's my main thing. It's enough people that we can run it and that was my main concern. It got to that point and people are really excited about it. There's a lot of people doing viewing parties which I hadn't even considered that that's a really awesome thing that just coming out of the community.
Jacob Bennett: Like a local meetup, you all buy tickets and show [00:19:30] up and you watch it together. That's a great idea.
Ian Landsman: Yeah, that's what they're doing.
Jacob Bennett: I'm doing that. I'm doing that. I'm definitely doing that.
Ian Landsman: We started retweeting people who are doing that for people who are looking to do it in the area or whatever. I think that's another thing. I'm already keeping notes for next year and that's on my list is how can we support those people or maybe we'd do like a party pack where you can just extreme-
Jacob Bennett: A volume discount or something.
Ian Landsman: Yeah, like whatever, for 50 bucks you're office [00:20:00] can watch or something. I don't know, but just something that facilitates that. We didn't have a lot of time to think through all those angles a bit, so this first year we're going to take a lot of notes and then next year we can do some more cool stuff with a little more time to plan it all out.
Michael Dyrynda: It's obviously in their way of policing that with people, we're not saying policing. I mean, you don't know that if someone's having a viewing party that they've got one person that's paid $10 or everyone's paid and they've gone there, so it'd be nice to at least put that front of mind I think next year or next [00:20:30] time now that you've had the chance to consider it.
Ian Landsman: Yeah, exactly. One of the things about this is that's another thing with the low price. It's like, hey, if you can afford it, buy a ticket. It's not burdensome. It's a low threshold there.
Michael Dyrynda: Just chip in.
Ian Landsman: Yeah, just chip in to help make it happen. There's always going to be people who watch who haven't paid. I don't worry myself with that stuff at all really. It's the same as our software is downloadable software, HelpSpot. We host it for you as well but a lot of people download [00:21:00] it and a lot of people ... there's people who steal it. There's key generators and all that stuff. If you go down that path, then you'll be terrified and you won't able to do anything. You'll spend all your time trying to fight them. Same thing with the conference.
If we put a ton of effort into making sure every single person who sees has a ticket and having weird rules and all kinds of crazy hoops to jump through, then that's just not ... you're not going to be able to have a successful event. [00:21:30] We do like the bare minimum. We're not only going to send the link to the people who registered. Obviously some of these are going to get out or whatever, but we think that most people will want to do the right thing and we're making it easy for them to do the right thing and that's usually the best bet.
Michael Dyrynda: As an Australian, making it easy for people to do the right thing is massive. Because down here cable TV is so expensive and we're very limited in what we can get streaming wise. Things like Hulu and Netflix. [00:22:00] Hulu we still don't have here technically ...
Ian Landsman: Really?
Michael Dyrynda: ... and Netflix with a long, long time. Making it easy for people, making it cheap and easy for people to do it is massive for people that are I guess outside of the United States for a lot of these kind of things so I really appreciate that.
Ian Landsman: Exactly. We're not going to block Australia. We're going to let you watch.
Michael Dyrynda: Excellent. I'll have to watch the recordings because I'm not getting up 2 a.m. to watch it.
Ian Landsman: Oh, come on.
Jacob Bennett: Yes, he will. He'll be there.
Ian Landsman: He'll be there.
Jacob Bennett: Michael will be online at 2 in the morning. You'll [00:22:30] have him no doubt.
Ian Landsman: It's a long event so maybe you'll get to the front or the back of it.
Michael Dyrynda: Suddenly.
Ian Landsman: I don't know, whichever works that's easier.
Michael Dyrynda: It's about 2 now, 3 now, so I should catch the second half of the day at least.
Ian Landsman: Yeah, exactly.
Jacob Bennett: Yeah, it's 2:30, around 3:30.
Ian Landsman: It's 3:30 Eastern and so it's like 7:30 there or something.
Michael Dyrynda: Yeah. It's just gone 7 now.
Ian Landsman: 7 a.m.
Michael Dyrynda: In the morning.
Ian Landsman: You can get up early, catch a little of the back two, three hours and then rest of the day you watched [00:23:00] what happened before. It'll probably be the next day. We're going to turn the videos around as fast as we can but it might not be, will not be [inaudible 00:23:06].
Michael Dyrynda: All of the talks, they're going to be freshly crafted for this event? We're not going to have talks that people have seen maybe in other conferences. They're not going to be maybe the same talks that happened here, they're not going to happen at Laracon as well?
Ian Landsman: Yeah. Everybody, I know there's one or two people who still were working on what their talk is but everybody has got a fresh talk and as far [00:23:30] as I know they're not reusing them for Laracon US or other places they're going to be. I don't know. I can't verify that 100%, but I would think that that would be the case. I can see Taylor's not going to be using the same talk, then Jeffrey's not going to use the same talk, so it should be all new stuff for both. If you're going to both, you're not going to have anything ruined for you. It's going to be all new everywhere. I think that'll be great.
Jacob Bennett: Which I will say is rather impressive. I'm always racking my brain like what could I possibly give a talk proposal [00:24:00] about and these people were like, "Yeah, you need another one?" "Sure, I got that. No problem." "I got one for Laracon Online and one for Laracon US. No big deal. Oh, and one for Laracon EU." It's just crazy. I don't know where these people come up with this stuff. I don't know. What can I talk about?
Ian Landsman: I can't do it, that's for sure. I think it also helps when you get the people who are so, they're so deep in it that they could talk about all different aspects of Laravel or web development. Jeffrey, right? The guy is making these videos [00:24:30] and they're just amazing that they find these angles and all that. Any one of those could be a talk and so he just works away with that. He's doing Laravel Mix which is his baby. We could go through Laravel Mix for everybody but ... Adam's going to do some stuff on testing which is in his real house obviously, so it's going to be good stuff, all new talks.
Michael Dyrynda: I like that everyone's got their titles on the speaker list. Taylor is [00:25:00] the creator of Laravel and you've got Evan You the creator of Vue.js and you just got Adam who is developer and Canadian. At this point in Laravel history, saying that you are Canadian is very important.
Ian Landsman: That's right. I love Canadians that's why. It's like, "You know what? He is Canadian." Why not? We'll put in on there.
Jacob Bennett: Yeah. Not writer of Refactoring of Collections, not creator of Test-Driven Laravel. No, developer and Canadian.
Ian Landsman: That's just boring.
Jacob Bennett: [00:25:30] Yeah. Sorry, Adam, if you're listening.
Ian Landsman: [inaudible 00:25:35].
Jacob Bennett: I got you.
Ian Landsman: I should say that was my call and not his call so I don't know. I actually don't know how he feels about it. I should check how he feels about it, but that was my call. I was building this site and I was like, "I'm just going to go with Canadian and we'll see how it goes."
Jacob Bennett: That looks really great by the way. I think one of the speakers for Laracon US is the person who did it, right?
Ian Landsman: Yeah.
Jacob Bennett: What's her name? I don't ...
Ian Landsman: Laura [00:26:00] Elizabeth. She's really [inaudible 00:26:03] designer. It's kind of funny because it's like a weird world's colliding thing. I found out about her from some freelance people I know. We contracted with her actually she's working on new helpspot.com for our site and then this came up and I was like, "Hey, would you mind just inserting this project in for us last minute on not too much of a budget." She was very accommodating [00:26:30] which was awesome. Then we saw on Laracon US slightly before or after I do this design. I saw it, I was like, "Holy cow. She's going to be at Laracon US," and I had no idea that that was happening.
Jacob Bennett: That's really funny. Small world. Small world.
Ian Landsman: Yeah, for sure.
Jacob Bennett: Michael, I'm out of questions. Do you have anything else for us?
Michael Dyrynda: Just a couple of quick ones, I think. Are there any surprises that you're leaving to reveal closer to the date? You can tease us so you can say nothing and then surprise us later.
Ian Landsman: I don't know. I'm going to say there's not [00:27:00] going to be any huge ... I don't want to say there's no huge surprises. I'm not planning on anything too crazy only because it's the first one. I feel like I really want to run it and play it straight a little bit. We had thought about surprising some of the speakers and rolling them out as a little bit more of a surprise as we went but then we decided no. It's just like everybody read, everybody's on board, just put them all up there to start. There are a whole bunch of ideas that we have for things we could do, [00:27:30] so I think maybe not for this year just because the time is so tight. You never know. There could be some stuff that comes up. We do have this digital schwag situation which is kind of opening up possibilities for things so there could be some things that sneak their way in there that are a bit of a surprise but we'll see.
Michael Dyrynda: Cool. I did have someone reach out to me on Twitter. I wanted to know does this mean that ... I don't know if you can answer this, but does this mean that there won't be a stream for Laracon US this year? Is the online [00:28:00] event basically going to take over from there or is it just going to run both?
Ian Landsman: Yeah. It's definitely totally separate. It's not intended to replace that at all. I don't know. Taylor just runs Laracon US on his own so I have no idea what he's actually planning. If he is in fact planning to stream it, I don't know. He either will or won't based on the finances of that he had to it and if he can get people to do it, whatever things he needs to make that happen but it's not going to be because Laracon online was streamed [00:28:30] and now he's not going to do it. As far as I know, nothing's changed with that and I assume that there will be some kind of recording/streaming, but this is definitely not intended to replace that.
Michael Dyrynda: Awesome.
Jacob Bennett: I'm remembering I did have one other question.
Ian Landsman: Yeah. I got all day.
Jacob Bennett: The other we had talked about was getting your thoughts on Rouge One. You're a big Star Wars guy.
Ian Landsman: Yes.
Jacob Bennett: For anybody who listens to your podcast, we've heard you rant and rave and talked about some of the other [00:29:00] Star Wars stuff. What were your thoughts on Rogue One? Did you like it? Did you not?
Ian Landsman: Yeah, finally. I don't think I've talked about Rogue One on a podcast yet, so this will be the first spot here which is great. I liked it a lot. I think it's a little bit more like my son didn't like it. He wasn't really that into it, my oldest son. I liked it. I thought it was pretty good. I liked that it was a little bit of a different take. I liked that they ... I don't want give to spoilers but the end is not traditional Star Wars really. I wasn't even that mad [00:29:30] about the digital Tarkin and stuff. He was a little bit distracting there, but I feel you kind of need Tarkin so I understand what they had to do with that. Otherwise it would be weird to not have him kind of because he's the guy who's in charge of the thing. I really liked it. I think it was a great kick off for these in between years. I'm really excited now for the next ones of these in between years and what they're going to do with those because I think it'll be nice to explore more parts of the Star Wars Universe [00:30:00] since it's always been pretty linear in that way. What did you guys think?
Jacob Bennett: I actually have not seen it yet.
Ian Landsman: Oh.
Jacob Bennett: I know, I know. I'm sorry. Thanks for not going into any spoilers. That's appreciated. I actually heard from different people though. Some people say like, "Man, there's just action the whole time. I couldn't stand it. I feel it's just battles." Then I heard from another, she'd be like, "The entire thing was character development. There was no action at all." I heard it was complete opposite. I'm like how can that be possibly be true?
Michael Dyrynda: It's just that Star Wars fans are protecting [00:30:30] you Jake so you don't really know what happens until you see it.
Jacob Bennett: Thank you. Throwing me off the set. Throwing me off the chair. I get it.
Ian Landsman: It's on in the camp of ... I think why that happens is because it's not all action but there's not enough character development, for me. I think that was probably its weakest part. It could have used a little more ... I wouldn't mind if it was 30 minutes longer. I think if it was a 2 hour 40 minute movie, which they don't want to do, I know. To me I think that would have been perfect because there was maybe not quite enough character development [00:31:00] to that. At the end a few of the things that are supposed to pay off maybe don't land quite as well as they could have if you had another couple scenes between certain people. I think that's where I can see people feeling different ways about it. There's definitely downtime with battling but then there's definitely, there's a lot of characters, so I think they didn't all get enough time in some ways. If we're talking movies, [00:31:30] one more movie item.
Jacob Bennett: Uh-oh. Here we go.
Ian Landsman: Last night, do you guys like Jason Bourne? The Jason Bourne movies?
Jacob Bennett: Yeah.
Michael Dyrynda: I've only seen the first one.
Ian Landsman: Oh.
Jacob Bennett: I have the trilogy on Blu-ray, you know what I mean? I saw the one that was after that.
Ian Landsman: Right. Legacy.
Jacob Bennett: The one that had the other guy. Legacy, I was like, it was all right. I haven't seen the newest one though.
Ian Landsman: That's what I watched last night. I didn't see it in a movie theater. Right there I was a little ... because I heard it wasn't that great and I was [00:32:00] super busy, whatever. It didn't last that long in the movie theater. I'm just in a movie theater, sat down last night to watch it, the horrible abomination of a movie. Horrible, terrible movie.
Jacob Bennett: Oh, no.
Ian Landsman: Terrible.
Jacob Bennett: Sad. I'm glad you told me.
Ian Landsman: I love the first three, especially the first one. The first two, I love. The third one, the more I watch it, I like it a lot. Legacy, I didn't love but I thought it was okay. But this makes Legacy look like an Academy Award nominated.
Jacob Bennett: Oh, no.
Ian Landsman: Jason Bourne [00:32:30] is a terrible movie. It's just a movie they did for the money or something. It's got that we'd just do it together to make a quick buck on the Jason Bourne name vibe to it. The acting is horrible. Everything about it is horrible.
Jacob Bennett: Okay. Thanks for saving me a couple hours of my life. I appreciate it. I'm not going to watch it now, because I was planning on watching it. My wife and I are both Jason Bourne fans, so we were like, "Yeah. We should watch that together," so we won't.
Ian Landsman: No, you should watch it. You should enjoy the horribleness of it. I don't know. I feel like I'd have to watch it just to complete the series [00:33:00] even though it's bad. I'd like to complete these things even when they're bad like The Matrix. Those weren't that great after the first one. You saw the [inaudible 00:33:09].
Michael Dyrynda: There were more Matrix movies?
Ian Landsman: Yeah. There's two after the first one.
Jacob Bennett: Yeah, it's true.
Ian Landsman: They didn't even send them down to you. They were like, "Forget it. We're not even going to send those."
Michael Dyrynda: [inaudible 00:33:18].
Jacob Bennett: We won't even put them on Netflix, not happening.
Michael Dyrynda: I think we just didn't acknowledge them.
Ian Landsman: That's hilar-
Michael Dyrynda: That's funny.
Ian Landsman: Exactly, Australia's probably smarter.
Michael Dyrynda: [crosstalk 00:33:27].
Ian Landsman: What's that?
Jacob Bennett: Yeah, right. [inaudible 00:33:29]
Ian Landsman: Yeah, I think [00:33:30] you're right. I think they were filmed under ... Now the first Matrix is one of my all time favorite movies. That's in the pantheon.
Jacob Bennett: For sure.
Ian Landsman: But the other ones are not that great.
Jacob Bennett: Thanks so much for taking some time out to come out and talk with us today about Laracon Online conference. For any of you who have not purchased tickets, you can get those at laracon.net. It's 10 bucks, free .co domain, you should definitely check that out.
Ian Landsman: Yup. Thanks a lot for having me on guys. Great job filling the big shoes here [00:34:00] on Laravel News Podcast.
Michael Dyrynda: Thanks very much.
Jacob Bennett: Tell Eric we said hi.
Ian Landsman: Will do. Thanks.
Jacob Bennett: All right, man. Sounds good. Thanks, Ian.
Michael Dyrynda: See you later.
Jacob Bennett: Well, Michael, so we have a couple other things to talk about here. We want to talk about a couple UI changes to Forge, to GitHub. We got some PHP things to talk about and then a couple Laravel things to talk about. Why don't I go ahead and start with the Forge stuff. This last week there was a new Forge UI that was released. [00:34:30] If you are a user of Forge, you might notice that when you login to go manage your servers, it looks quite a bit different. Really, Forge has been out since Laracon New York City, the very first Laracon New York City. Not this one, obviously. The UI really has been updated since then. It was bootstrap-ish which was fine. It worked perfectly well but it looks really good now. It's responsive as well which is cool. I've heard some people say [00:35:00] they can manage it from their phones which is cool. I mean, why not right? Sure, go for it. We've got that which has been really cool.
I use Forge all the time, so it was a little bit difficult for me to find some of the stuff that I was used looking for in other places. But overall, it's a good improvement. I like that they have the recent events down at the bottom which maybe it had that before, I just never noticed it. It's basically a running event log of all the things that have happened on the service that you're managing through Forge. Pretty cool, pretty cool. Kind of in that same vein, I don't know if you noticed this. You're probably just waking [00:35:30] up in Australia, but on GitHub, if you go to github.com, the top bar across the top is black. Do you notice that?
Michael Dyrynda: No.
Jacob Bennett: Weird, right?
Michael Dyrynda: I mean, I rolled out of bed and straight onto the podcast so ...
Jacob Bennett: I'm not sure exactly why.
Michael Dyrynda: ... not going to GitHub yet.
Jacob Bennett: Is there anything in the source code that they're like, "Hey, this is because it's ... " I don't know. It's kind of interesting though. It's black now. I'm not complaining.
Michael Dyrynda: It could be Black History month thing.
Jacob Bennett: Yeah, maybe that's it. Black Lives Matter, who knows? I'd expect to see some sort of hashtag if it was for something like that.
Michael Dyrynda: [00:36:00] There's nothing on the GitHub blog so [inaudible 00:36:02].
Jacob Bennett: Interesting. Anyway, so there's a nice little change. Something to check out. Then the one other thing I wanted to talk about with GitHub is actually that there are now GitHub Topics, they're called. If you go to a repository that you own, right underneath of the description of your repository, there's a little button that says manage topics. If you click that, you can actually add topics to categorize your repository and make it more discoverable, I suppose. [00:36:30] I know Taylor had tweeted out this last week that if you have anything that's a Laravel package or related to Laravel, just go into that and add Laravel as a topic there. That's kind of cool. I did that with all of mine. Laravel middleware HTTP/2 on my Laravel HTTP/2 server push package. I haven't actually used it to discover anything though. Have you tried that?
Michael Dyrynda: No. I'll click through it briefly and it was probably about ... There's many, many more people who have used this since I last looked at it.
Jacob Bennett: Yeah. It looks like if you click it, like if I click Laravel for [00:37:00] instance it shows me all of the things that are tagged with Laravel ordered by stars it looks like, how many stars they've got. Kind of cool. Another way to do it. I suppose, I don't know. Previously, all I would do, I suppose if I was looking for something is I would just search in GitHub say Laravel and it would just come up with a listing of all the stuff. I'm not sure if this makes a ton more useful or if it's just a thing to help supplement that.
Michael Dyrynda: I think it's a step in a nice direction. It'd be nice if you could find things based on dependencies and composer [00:37:30] rather than just like tags, because then you've got to put the tag in composer, you've got to put ... Again, you've got to make it work across all the different languages. Obviously, GitHub is bigger than just PHP so ...
Jacob Bennett: The fear that I kind of have is just that it opens the door to be abused. With twitter you have hashtag Laravel, hashtag PHP, hashtag Forge. These people who are just pushing all that stuff out there so that they get discovered for just this particular hashtag. That's my only fear, I guess, with these GitHub [00:38:00] topics is that you have somebody who really wants their middleware package to be discovered so they hashtag it to death with everything they can possibly think of. Then it becomes not useful, right? If you made it, you have a limit of three or a limit of two. Maybe you'd prevent some of that. I don't know. I don't know what the upper limit is on this, like how many you can have.
Speaking of Forge, the guy that I worked with, actually he's my boss, Jordan Brill. He posted a thing on Medium. His first Medium post about how he set up a VM inside our corporate network and he's managing it with Forge. [00:38:30] That's kind of cool. Previous to this we had had to use IIS which is a Microsoft product that is a web host. We had to use that for everything. It was really a pain. You can't use Envoyer on IIS obviously, so we really wanted to have a solution where we just had an internal web server that only we can access inside our network, but you can still manage it from Forge and still use Envoyer to deploy to it. It's a quick little read, maybe a 5, 10 minute read. For anybody who is interested in doing that, it's [00:39:00] a great place to start, and it works really well. Shout out for that.
Michael Dyrynda: Yeah. It's a good way, especially ... I mean, I work in the data center so all of our [inaudible 00:39:07] self hosted, so it might be worth looking at that as well for our situation.
Jacob Bennett: Yeah. It's great because somebody like me, I don't have a ton of time to spend learning dev ops, and learning how to set up my own box, and do all that stuff, and make sure that it's up to date, and make sure I can do all this stuff that Forge does for you. This is a perfect scenario for us. Just Forge does all of the stuff if I want to add a new site, literally go in, click add site, and it's [00:39:30] on my box within seconds. It's pretty cool.
Michael Dyrynda: Yeah. Next thing we're going to talk about is PHP itself. As of the 20th of January this year, PHP 5.6 is no longer actively supported. It is still receiving security support, so it'll still get security fixes up until 2019, but there will be no new features going into it. You should upgrade your version of PHP. At least be mindful, be prepared, [00:40:00] Laravel 5.5 is going to be targeting PHP 7. If you're going to be planning on upgrading to Laravel 5.5 when that ships later this year, you're going to need to be running PHP 7. It might be worth signing to plan that transition out, making sure that not only in Laravel apps but any other applications you've got on the same servers that may not be ready or haven't been upgraded for PHP 7, whether you look it up or any of those applications. If you look at splitting out your hosting, [00:40:30] you've got your Laravel applications running on PHP 7 on one host and your other applications on 5.6. The sooner you start planning the transition, the easier it's going to be to get back onto an accurately supported version of PHP.
Jacob Bennett: Have you migrated anything recently from 5 to 6 to 7?
Michael Dyrynda: Not really. I do most of my development on 7. Our production servers are still running 5, 6. That's largely because we're on CentOS software [00:41:00] collections which we use to deploy. Our packages has only recently made PHP 7 available, so some of the work that we're doing at the moment, we're building with the Vue to ship it on PHP 7. Those things are going to go into production in the next couple weeks.
Jacob Bennett: I have to say that in my experiences of moving from 5, 6, to 7, I haven't really encountered any headaches, anything that was deprecated that I was even using. Do yourself a favor and get onto 7. It's way faster. I think it's double the speed, [00:41:30] isn't it?
Michael Dyrynda: Yeah. 7 was double that of PHP 56. I think 7.1 was faster again.
Jacob Bennett: Yeah. For that reason alone it's worth upgrading your installation to 7 at least.
Michael Dyrynda: Yeah. If you've been writing PHP since probably about 5.5, if you've been writing it in a modern-ish kind of way and you haven't been using a lot of those deprecated functions that were pre 5.5, you shouldn't hit any language issues going from 5.5 to 5.6 and to 5.6 to 5.7. [00:42:00] You'll have some issues with old applications that are leveraging long and deprecated and unsupported features and functions. I think WordPress doesn't quite work with PHP 7.1 but 7.0 should be just fine for most things written in the last five years or whatever.
Jacob Bennett: Yeah. Speaking of deprecations, there was a blog post out there on Laravel News this week about deprecations for PHP 7.2. Do you want to talk about that a little bit?
Michael Dyrynda: Yeah. With PHP 7.2 which is the [00:42:30] upcoming version of PHP, there's a number of functions that are going to be deprecated. These things will be marked as deprecated within the language and they'll be removed later on, so it's probably time to start looking if you're still using these things to be removing them from your code. Things like the order load magic method which hasn't really been used since most applications are now leveraging composer. If you're still using the order load function, that is going to be removed in a later version of PHP. There's a [00:43:00] number of functions and variables that will be removed with the upcoming versions so there is a blog post on Laravel News which we'll link up in the show notes that explains what each of these are. As I said, for majority of developers, they're probably aren't using any of these things which I guess is why they're being removed. You check it out. Have a look through your code base, make sure that you aren't using it and if you are, take the appropriate steps to start upgrading.
Jacob Bennett: Very cool. We've talked about Valet a lot on this show which [00:43:30] is a really minimal environment for local web development. One we haven't talked about as much, we haven't in particular, but Jack and Eric talked about was Laravel Homestead. Laravel Homestead just released a new version which is 1.1.0. One of the things that I had used on previous versions of Homestead which was actually a large pain to set up was a service called Mail Catcher. It is written in ruby and what it does is it essentially acts as a local SMTP server and it will catch your mail and display it [00:44:00] to you. Very similar to what MailTrap would do except for it's run locally. The new version of Homestead runs a similar thing called MailHog but it is written in go. You can install it through NPM, I believe. It comes right out of the box with the new Homestead version. You download the new box and you will have that available to you immediately.
If you, like me, would rather have a local version then use something like MailTrap, MailHog can be accessed [00:44:30] through the new Homestead box. If you were like me however would run something locally, then use something like MailTrap. You can install this right on your Mac as well. If you're using Valet, all you have to do is brew install MailHog and then you just point your SMTP server in your mail.php settings to use port 1025, make sure that MailHog is running and all of your stuff will go to this local MailHog server and you can just check it out on your local machine. It's kind of cool, especially if you don't have internet access as well. In the case [00:45:00] that you're developing offline and you don't have access to MailTrap, something like this is really nice to have just on the backburner.
Michael Dyrynda: Yeah, or if there's a chance that you might accidentally email thousands and thousands of people.
Jacob Bennett: That too. I think that's probably happened to every developer a couple times, right? Where you accidentally put in the live credentials instead of your test credentials.
Michael Dyrynda: Yeah.
Jacob Bennett: The worst is when that happens and you're doing payments, oops. That happened to me.
Michael Dyrynda: Oh, yeah.
Jacob Bennett: Oh, no. Cool [00:45:30] story. There was a guy who had made a donation for I think it was a thousand dollars, he gave me a thousand dollars to a thousand dollar donation. I was in local development testing something and I had forgotten to turn off my pusher configuration so it was pushing stuff to a live ... maybe it was Iron. It was back when we were using Iron for queues. I was pushing to a live Iron queue and my production server was consuming those and was charging them. We ended up charging [00:46:00] $30,000 I think before we caught it, before Stripe caught it. That was a fun conversation. If you've done this people before, if you've actually suddenly made a mistake, believe me, your mistake was probably not as large as that one and I'm still developing. Take comfort, take heart. It's happened to all of us.
Michael Dyrynda: All right. The next thing and probably the last thing that we'll talk about. Adam Wathan tweeted the other day about using the intersect method [00:46:30] on the request façade to basically simplify doing partial model updates. Where previously you might have done a whole series of checks on the request to see if the request has a title, update a title on the model, if the request has RSD or whatever, at the end of all of those, has [inaudible 00:46:51]? Instead of doing that, you can basically pass request into sect and then an array of properties that you want to updated [00:47:00] on the model. What intersect will do is it will look through all of the data that was sent through the request and it will return only the values that were present in that array. For a null property, it won't come up in that request object, so when you call request intersect, if total was missing from the request for example, then it would not be saved against that model. It's a nice and easy way to cut down on a bunch of lines of code that you really don't need to have [00:47:30] there.
Jacob Bennett: I've run into before with something like this is maybe what I would have used would have been request only, so you can say request:: only and then you specify the fields that you want to pull out of the request. The problem is if those do not exist in the request, you still get a key for them. If the title did not exist in the request when it was coming through, it will set a key for a title and then it will set it to blank. If you're trying to do a, you have a post and you want to update the title, the date, and the whatever, if you said post update and then you said request only, [00:48:00] title, subtitle, body. If title wasn't set, it will now set it to blank string and your title will be updated as a blank string. Whereas with this, it excludes anything that comes through as null or as a blank string so that you can safely say request intersect and then give it the keys and it will only pull out a subsection of those requested attributes to update your model with. You can use this of course for things other than updating your model, right? You can use this in a number of different formats. This just allows you to basically have an easy way [00:48:30] to use array intersect. Have you ever used array intersect?
Michael Dyrynda: Yeah.
Jacob Bennett: Yeah. So you basically have an array and then you have another array and you compare the keys and it'll pull out whatever they have in common. This is essentially I'm just kind of doing array intersect behind the scenes. It's just a more convenient way to do it.
Michael Dyrynda: Yup, it's definitely.
Jacob Bennett: Speaking of behind the scenes, you had said that Adam said, what was the quote? What was the exact quote?
Michael Dyrynda: He says to me that the only way that he develops now using Laravel is by diving through the source, so he doesn't even read the documentation, which is a good way of [00:49:00] finding things. Because the documentation, as comprehensive as it is, can't cover everything. There are API docs as well which sort of gives you an indication of what methods are there and a brief description of what they do. The best way about or the best way to learn the framework is really just to jump into that vendor Laravel folder and just start reading code. You don't have to do it all at once. You can pick one component. The same way that Taylor does when he's just been through the fine toothed comb and refactored a whole bunch of code for the [00:49:30] 5.4 release. Pick a component and just read through all of it, everything that that component does, read through that class, read through its dependencies, and you'll get a much greater understanding of how the framework operates.
Jacob Bennett: I want to learn some of these little secret things really that are not in the documentation, right? Let me just give a plug here for PHP Storm. When I first started developing in Laravel, I was using Sublime which is fine, but one of the things that PHP Storm, and you may be able to do this in Sublime, one of the things that I really appreciated [00:50:00] in PHP Storm and Jeffrey way had said when he was first starting his series on using PHP Storm. He said if you are unfamiliar with the framework, PHP Storm is a great tool because what you can do is you can just command click on a method and it will take you right to the spot in the vendor source code where that method is called. Then you find something in there and you command click and it'll take you to that method. You can go, you can follow a thread through the source code extremely easily using a tool like PHP [00:50:30] Storm and you can figure out how it's working behind the scenes and do that source code diving really quickly. I'm assuming there's probably got to be a way to do that in Sublime text. I just have never set it up.
Michael Dyrynda: I'm not sure. I don't use it. I've got a plugin that shows me where something might be to find. It doesn't have the level of intelligence like PHPStorm does. I like to think of programming in Sublime is programming on expert mode.
Jacob Bennett: On expert mode, yeah. PHPStorm is a little bit slower [00:51:00] if you have really large applications, but if you haven't tried it, give it a shot and see what you think of it, you might find out that you like it.
Michael Dyrynda: Definitely.
Jacob Bennett: Pretty cool. I think that about wraps it up for it today. Got through all the stuff we wanted to talk about. If you liked the show, please feel free to rate us up in your podcatcher of choice. Five stars is always appreciated. If you would like to find show notes for this episode, you can find them at laravel-news.com/podcast/31.
Michael Dyrynda: If you've got any questions for us or suggestions [00:51:30] for future topics, you can reach us on Twitter @laravelnews or you can reach out to Jake or myself directly on Twitter as well. Thank you everybody for listening. We'll catch you on the next [00:52:00] show.
Jacob Bennett: Thanks, Michael.