POPULARITY
Ian and Aaron are joined by Taylor Otwell to discuss the Mostly Technical Party at Laracon, what exactly Taylor does on a day-to-day basis, how they all use AI, and so much more.Sponsored by Bento, WorkOS, Native PHP for Mobile, and Laracon US 2025Interested in sponsoring Mostly Technical? Head to https://mostlytechnical.com/sponsor to learn more.(00:00) - Revenge of the Sith (09:18) - The Big Announcement (12:00) - Laracon US (14:57) - Taylor's Day-to-Day (21:57) - Forge Updates (28:00) - Starter Kits & WorkOS (36:35) - Using AI (55:11) - You Still Need Good Ideas (01:05:28) - Tina Fey & Amy Poehler (01:10:48) - Aaron's Climbing Wall Links:Mostly Technical Laracon Pre-Party! sponsored by DiagonalRevenge of the Sith re-releaseAndor Season 2KamalJason McCreary on TwitterYAGNIAaron's ChatGPT sidebarAaron's video about AIOpenAI's CodexTina Fey & Amy Poehler on tourAaron's tweet about his climbing wall
In this episode, Jake and Michael discuss the blockbuster trade of Luka Dončić to the the Los Angeles Lakers in exchange for Anthony Davis, the just-announced Laracon US, and pitch our talks for the very same conference.
Ian and Aaron discuss Aaron's reveal of Fusion at Laracon EU, the new Backstage Pass concept, the Laracon US announcement, and more.Sponsored by Bento, Moonbase Labs, and Packetly.Interested in sponsoring Mostly Technical? Head to https://mostlytechnical.com/sponsor to learn more.Links:Fusion hype videoBackstage Pass
In this episode of the Laravel podcast, host Matt Stauffer is joined by Taylor Otwell and Jess Archer at Laracon Australia to discuss the new Laravel Nightwatch product and answer listener questions about the Nightwatch announcement. They dive into the development timeline, team dynamics, and the integration of Nightwatch with existing Laravel tools like Pulse, Horizon, and Telescope. The conversation also covers the tech stack used for Nightwatch, the challenges faced during development, and future integrations and features planned for the product.Taylor Otwell's Twitter Matt Stauffer's TwitterJess Archer's Twitter Laravel Twitter Laravel Website Tighten Website Nightwatch Announcement Video from Laracon AUJess Archer's Talk at Laracon US ----- Editing and transcription sponsored by Tighten.
Jake and Michael discuss all the latest Laravel releases, tutorials, and happenings in the community.This episode is sponsored by Sentry - code breaks, fix it faster. Don't just observe, take action today!Show linksAsset Prefetching Strategies with Vite in Laravel 11.21 The Laracon US 2024 Keynote by Taylor Otwell is Now Available Highlights from Taylor Otwell's Laracon US Keynote 2024 Introducing Laravel CloudEverything We Know about Pest 3 Introducing Pest 3.0 - Laracon USLCS #5 - Patricio: Mingle JS, PHP WASM, VoxPop Andrew Schmelyun: Publishing Video Courses, Virtual and Physical Worlds, LLM'sLaravel Developer SurveyLightweight Spreadsheets for Laravel Generate Entity-Relationship Diagrams with Laravel How to Build Your First PHP Package Laravel Model Tips Get your early bird tickets for Laracon AU
In this episode, recorded live at Laracon US, we talk about the current moment we're seeing in the Laravel world, reflecting on Laravel's evolution and where it stands today. We also dedicate time to answering your questions from Laracon US, mainly about Laravel Cloud, bringing insights directly from the heart of the Laravel community.Taylor Otwell's Twitter Matt Stauffer's TwitterLaravel TwitterLaravel WebsiteTighten WebsitePodcast Suggestions Laravel Cloud-----Editing and transcription sponsored by Tighten.
After a short break, we're back and the countdown to Laracon US is on! Join us as we discuss the upcoming Laracon US and the journey from local meetups to bigger Laravel events. We also explore the future of Nova and Filament, two key admin panel tools in the Laravel ecosystem. Plus, we're answering more of your questions! We cover open-source projects by the Laravel team, coding styles within the Laravel community, the use of Livewire and Alpine for front-end development, testing practices, PWA support in Laravel, and database query optimization.Taylor Otwell's Twitter Matt Stauffer's TwitterLaravel TwitterLaravel WebsiteTighten WebsitePodcast Suggestions Built with Laravel-----Editing and transcription sponsored by Tighten.
In this episode of the Business of Laravel podcast, host Matt Stauffer interviews Michele and Mathias Hansen, the founders of Geocodio, a SaaS that provides hassle-free geocoding, built with Laravel. They discuss their motivation for creating the service, born from their own need for reliable geocoding data, and explore the challenges and benefits of working together as a couple, including how their roles have evolved as the company has grown. They also highlight the importance of listening to user feedback and customer input throughout the development process and share their experiences in hiring and building a remote team.Matt Stauffer Twitter Tighten Website Michele Hansen Twitter Mathias Hansen TwitterGeocodio WebsiteMichele's book - Deploy Empathy -----Editing and transcription sponsored by Tighten.
Tras una larga pausa vuelvo a las grabaciones del podcast. Para esta nueva etapa quiero hablar de la estupenda charla ofrecida por Ben Orenstein en la conferencia Laracon US 2023 titulada "Predictable Mistakes of the Developer-Turned-Founder". En esta presentación Ben aborda los retos habituales a los que se enfrentan los desarrolladores que pasan a desempeñar el papel de fundador. Desde su propia experiencia en su empresa Tuple de varios años, Ben Orenstein ofrece valiosos consejos sobre cómo superar estos desafíos y fomentar una transición exitosa en el mundo del emprendimiento. Entre los errores que nos comenta Ben en su charla comentaré los siguientes: Empezar con la filosofía del SAAS en mente. Escoger una mala idea. Enfocarse en vender clientes individuales en lugar de a buenos negocios. Venderle a negocios baratos. Asumir que no debe existir competencia en el mercado. Escribir código. No enfocarse en un entorno deseable como profesional. No hacer email marketing. No hacer buen pricing. No atender la experiencia de usuario desde el principio. Sobreconstruir soluciones. No ser autosuficiente financieramente y contar con inversores externos sin conexión. No ir acompañado y no hacer networking. Os recomiendo ver la charla completa en YouTube donde Ben explica con detalle todos estos puntos. Espero tus comentarios y participación en este episodio. ¡Gracias!
Welcome back to another episode of the Laravel podcast! In this episode, we dive into the exciting release of Laravel 11 and discuss its impact since it has been out in the wild. Taylor also shares his insights on the release and other recent developments in the Laravel ecosystem, including the launch of Herd Pro. Additionally, we discuss the new hires at Laravel, including Andre Valentin, Chris Fadao, Mohammed Said, and Alyssa Mazzina and touch on the topic of open-source sustainability.Taylor Otwell's Twitter - https://twitter.com/taylorotwellMatt Stauffer's Twitter - https://twitter.com/stauffermattLaravel Twitter - https://twitter.com/laravelphpLaravel Website - https://laravel.com/Tighten Website - https://tighten.com/Laravel 11 - https://laravel.com/docs/11.x/releasesLaravel Careers - https://laravel.com/careersLaravel Reverb - https://laravel.com/docs/master/reverbLaravel Herd - https://herd.laravel.com/Laravel Herd for Windows - https://herd.laravel.com/windowsLaravel Valet - https://laravel.com/docs/11.x/valetChristoph Rumpel Forge Productivity Tweet: https://x.com/christophrumpel/status/1773738874264600608?s=20Andre Valentin Twitter - @theandreval Laravel Director of EngineeringChris Fidao Twitter - @fideloper Laravel Infrastructure EngineerMohammed Said Twitter - @themsaidAlyssa Mazzina Twitter - @alyssamazzinaLaragon - https://laragon.org/Django - https://www.djangoproject.com/Spatie - https://spatie.be/Laracon US - https://laracon.us/-----Editing and transcription sponsored by Tighten.
In this episode of the Laravel Podcast, we are diving into the highlights of Laracon EU including the unveiling of Laravel 11 and the introduction of Laravel Reverb. Taylor Otwell shares insights on the streamlined application structure and new features in Laravel 11. We also discuss the launch of Laravel Herd for Windows and Herd Pro, offering power user features for local development, and provide some exciting updates about the upcoming Laracon US.Taylor Otwell's Twitter - https://twitter.com/taylorotwellMatt Stauffer's Twitter - https://twitter.com/stauffermattLaravel Twitter - https://twitter.com/laravelphpLaravel Website - https://laravel.com/Tighten Website - https://tighten.com/Laracon EU Photo Gallery Tweet - https://x.com/LaraconEU/status/1755957896209113444?s=20Laravel Reverb - https://laravel.com/docs/master/reverbLaravel 11 - https://laravel.com/docs/master/releasesThiery Laverdure's Project - https://github.com/tlaverdure/laravel-echo-serverPusher - https://pusher.com/Ably - https://ably.com/Laravel Herd - https://herd.laravel.com/Adam Wathan Twitter - https://twitter.com/adamwathanJess Archer Twitter - https://twitter.com/jessarchercodesLuke Twitter Downing Twitter - https://twitter.com/lukedowning19Daniel Coulbourne Twitter - https://twitter.com/DCoulbourneJoe Dixon Twitter - https://twitter.com/_joedixonPhilo Hermans Twitter - https://twitter.com/Philo01?ref_src=twsrc%5Egoogle%7Ctwcamp%5Eserp%7Ctwgr%5EauthorLaracon US - https://laracon.us/Laracon CFP Talk Submission Form - https://docs.google.com/forms/d/e/1FAIpQLSdlyTDvqeKNB3r-wVNmDBlE23oHKEL4m8lzL5nci0YPH_5WYA/viewform-----Editing and transcription sponsored by Tighten.
In this episode of the Laravel Podcast, we talk about the recent announcement of hiring a new head of engineering at Laravel and the impact it will have on the future of Laravel. We also dive into the upcoming conferences and events, including Laracon EU, Laracon US, and Laracon India. Additionally, we talk about Typesense, a potential alternative to Meilisearch and Algolia for self-hosted search functionality.Taylor Otwell's Twitter - https://twitter.com/taylorotwellMatt Stauffer's Twitter - https://twitter.com/stauffermattLaravel Twitter - https://twitter.com/laravelphpLaravel Website - https://laravel.com/Tighten.co - https://tighten.com/VP/Head of Engineering at Laravel - https://frequent-pick-a8d.notion.site/VP-Head-of-Engineering-at-Laravel-149b566a670841f7a74b3e904e261693Laracon EU - https://laracon.eu/Laracon US - https://laracon.us/Laravel Herd - https://herd.laravel.com/Laravel 11 - https://laravel.com/docs/master/releasesLaravel Live Denmark -https://laravellive.dk/Laravel Live UK - https://laravellive.uk/Laracon India - https://laracon.in/Caleb Porzio Twitter - https://twitter.com/calebporzioLivewire: https://laravel-livewire.com/ThePrimeagen Twitter - https://twitter.com/ThePrimeagenThe Factory - https://www.thefactoryindeepellum.com/Eric Barnes Twitter - https://twitter.com/ericlbarnesJoe Dixon Twitter - https://twitter.com/_joedixonJames Brooks - https://twitter.com/jbrooksukFreek VAn der Herten Twitter - https://twitter.com/freekmurze?lang=enPeter Suhm Twitter - https://twitter.com/petersuhmMichele Hansen Twitter - https://twitter.com/mjwhansenLaracon AU Twitter - https://twitter.com/LaraconAULaravel Scout - https://laravel.com/docs/10.x/scoutTypesense - https://typesense.org/Algolia -https://algolia.com/Meilisearch - https://www.meilisearch.com/Elasticsearch - https://www.elastic.co/elasticsearchLaravel Sail - https://laravel.com/docs/10.x/sailLaravel Vapor - https://vapor.laravel.com/Early Vapor Tweet - https://x.com/taylorotwell/status/1748782542663131442?s=20Tailwind CSS - https://tailwindcss.com/-----Editing and transcription sponsored by Tighten.
Ian & Aaron discuss the Laracon US announcement, going on ski vacations, route model bindings in Laravel, & more.Sponsored by LaraJobs & Screencasting.com.Sent questions or feedback to mostlytechnicalpodcast@gmail.com.(00:00) - Ski In, Ski Out (09:00) - Aaron's Problem Is Beach (14:59) - Mailbag & PlanetScale Studios Follow Up (27:48) - Laracon US, Baby! (34:03) - The Bear (45:16) - Route Model Bindings Links:Jonathan Coulton - IkeaAdopt Me! (Roblox Game)Laracon US 2024The Bear (FX)Aaron's Fast & Furious ListRoute Model Binding
Jake and Michael discuss all the latest Laravel releases, tutorials, and happenings in the community.(01:02) - Laravel 10.35 released (02:24) - Laravel 10.73 released (03:59) - Laravel 10.40 - with a number clamp method, an APA-style helper, Vite asset path customization, and more (06:08) - Laravel 10.41 - Conditional job chains, a Number::spell() threshold, configurable model:prune path, and more (08:21) - Filament v3.1 is released (10:38) - Introducing Filament v3.2 (12:50) - Heroicons Micro - icons for high-density UIs (13:49) - What's new in Tinkerwell 4? (15:06) - Laravel Reverb (16:13) - FrankenPHP v1.0 is here (17:25) - Laravel Octane now supports FrankenPHP (18:23) - Alpine adds a new build to work with Content Security Policies (19:53) - Laracon EU Amsterdam 2024 (20:23) - Laravel Live Denmark: A two-day event in Copenhagen, Denmark on August 22-23, 2024 (20:55) - Save the date: Laracon US is coming to Dallas TX Aug 27-28, 2024 (21:45) - DevDB - access your database right inside VSCode! (22:58) - Easily manage temporary files in Laravel (24:10) - Get insights into all your Laravel notifications with Paragraphs new package (25:48) - Self-healing URLs in Laravel (27:04) - Manage virtual wallets in Laravel with Pay Pocket (28:15) - Share data between PHP and JavaScript with PHP2JS (29:38) - Database status card for Laravel Pulse
Dans cet épisode spécial news de l'été, nous allons revenir sur la Laracon US 2023 et les principales annonces sur l'écosystème Laravel. Nous évoquerons également Astro 2.9 qui intègre les Views Transition. Nous parlerons de Bases de données avec des services compatibles Edge et des ORM. Nous passerons rapidement sur la Tailwind Connect et les annonces de cette conférence. Nous finirons par quelques news rapides avant de prendre quelques vacances en août. Bonnes vacances et on se retrouve en septembre. Retrouvez toutes les notes et les liens de l'épisode sur cette page : https://double-slash.dev/podcasts/sumnews23/
Jake and Michael discuss all the latest news and releases from Laracon US 2023 in Nashville.This episode is sponsored by Honeybadger - combining error monitoring, uptime monitoring and check-in monitoring into a single, easy to use platform and making you a DevOps hero. (06:35) - Pest's "Spicy Summer" release (15:34) - The Livewire v3 beta has been released (18:29) - Watch Marcel Pociot's "NativePHP" presentation from Laracon (20:54) - Sponsor: Honeybadger (23:03) - Laravel Herd (26:54) - Laravel Folio (31:44) - A look at what's coming to Laravel 11 (39:06) - Watch Taylor Otwell's "State of Laravel" keynote from Laracon (39:24) - Laracon recap Show links Watch Nuno Maduro's "Pest 2 - Summer of Spice" from Laracon Watch Caleb Porzio's "Livewire 3" presentation from Laracon
Jake and Michael discuss all the latest Laravel releases, tutorials, and happenings in the community.This episode is sponsored by Honeybadger - combining error monitoring, uptime monitoring and check-in monitoring into a single, easy to use platform and making you a DevOps hero. (01:19) - Laravel 9.44 is released with native support for changing database columns and more (04:51) - Laravel 9.45 released (09:01) - Laravel 9.46 released (12:11) - Laravel Certification Program is no longer official (13:41) - Laracon India 2023 (15:23) - Laracon EU Lisbon 2023 (17:05) - Laracon US 2023 (18:18) - Announcing Eventy (20:51) - Laravel News top 10 posts of 2022 (23:02) - Laravel Breeze now with dark mode (23:40) - Laravel 10 bug hunt (24:56) - Sponsor: Honeybadger (25:54) - OpnForm is an open-source form builder made with Laravel (28:15) - OpenAI for Laravel (29:08) - Spin up your development background processes with ease (32:13) - Cloudflare's Turnsite captcha for Laravel (33:58) - Inspect and develop mail templates with Laravel Mailbook (37:26) - Effective Eloquent (38:30) - A quick guide on why you should use Laravel Octane to scale your app (40:13) - How we automatically share new content on social media (40:43) - A practical guide to search Eloquent relationships using Laravel Scout database driver (41:36) - Using OpenAI in Laravel (41:50) - CRUD operations using Laravel Livewire Cloudflare Turnstile Going deep on UUIDs and ULIDs
Jonathan Reinink (https://reinink.ca/)Inertia JS (https://inertiajs.com/)What is an ORM? (https://en.wikipedia.org/wiki/Object-relational_mapping)Active record pattern (https://en.wikipedia.org/wiki/Active_record_pattern)Eloquent (https://laravel.com/docs/eloquent)Query Builder (https://laravel.com/docs/queries)Query Scopes (https://laravel.com/docs/eloquent#query-scopes)Jonathan's blog (https://reinink.ca/articles)Jonathan's talk at Laracon US in NY: “Eloquent Performance Patterns” (https://www.youtube.com/watch?v=IBUXXErAtuk) Transcription sponsored by LarajobsEditing sponsored byTighten
Bill Condo interviews Justin Jackson at Laracon US 2019 in New York.
Bill Condo interviews Jason McCreary at Laracon US 2019 in New York.
Bill Condo interviews Taylor Otwell at Laracon US 2019 in New York.
Bill Condo interviews Matt Stauffer at Laracon US 2019 in New York.
Bill Condo interviews Marcel Pociot at Laracon US 2019 in New York.
Bill Condo interviews Jonathan Reinink at Laracon US 2019 in New York.
Bill Condo interviews Christoph Rumpel at Laracon US 2019 in New York.
Bill Condo interviews Bobby Bouwmann at Laracon US 2019 in New York.
Bill Condo interviews Dries Vints at Laracon US 2019 in New York.
Bill Condo interviews Evan You at Laracon US 2019 in New York.
Bill Condo interviews Freek Van der Herten at Laracon US 2019 in New York.
Bill Condo interviews Katerina Trajchevska at Laracon US 2019 in New York.
Jake and Michael recap some Laracon US 2019 highlights, and cover off the exciting annoucements form the conference.
In this episode, Adam talks to Taylor Otwell about Laravel Vapor, the new serverless platform for Laravel applications that was recently announced at Laracon US. Topics include: What is serverless? What AWS services Vapor manages and how they are billed Using a single RDS instance with multiple databases Understanding cold boots with Lambda and how to minimize the effect they have on your application's performance Performance on Vapor How queues work with Vapor Tuning your queue concurrency based on your database connection limit Strategies for preventing your web instances and queue instances from competing for resources How scheduled tasks work with Vapor How file uploads work with Vapor Limitations when running code on Lambda and strategies for working around them Sponsors: DigitalOcean, get your free $50 credit at do.co/fullstack Cloudinary, sign up and get 300,000 images/videos, 10GB of storage and 20GB of monthly bandwidth for free Links: Laravel Vapor Intro to Laravel Vapor, Taylor's talk at Laracon
Jake and Michael catch up with Caleb Porzio and Daniel Coulbourne at Laracon US 2019 for a day one recap.
Jake and Michael discuss all the latest Laravel releases, tutorials, and happenings in the community.
Jake and Michael return for 2019, sharing their personal and technical goals for the year, talk about refactoring legacy code and introducing tests, and Jake shares more of his adventures with Laravel Nova.
Jake and Michael discuss all the latest Laravel releases, tutorials, and happenings in the community.
An interview with Abed Halawi, Laracon EU speaker and Tech Lead at Vinelab Abed on twitter Abed's talk at Laracon EU 2016, "The lucid architecture for building scalable applications" VineLab Neo4j NeoEloquent Beirut Transcription sponsored by Larajobs Editing sponsored by Tighten Matt Stauffer: (music) Hi- Abed Halawi: Abed. Matt Stauffer: Abed, hello. All right, ah dang it. Welcome back to Laravel podcast, season three where I mispronounce everybody's names. Today I'm talking to Abed Halawi. I think that's right. He did lots of great packages and stuff, you'll learn more soon, okay bye. (music) All right, welcome back to another episode of Laravel podcast, season three where I mispronounce people's names. I actually got it wrong right before the intro, but then he corrected me. So it's, so the syllable its the emphasis on the wrong syllable. I'm talking to Abed Halawi. And I'm going to let him introduce himself, where he's from and I tell you guys all this every single time when I do this, but I'd like to switch it up between people that you have heard of before. You know, you know an Adam and you know a Taylor and you know whatever. And people who, within certain communities they're well known. They made an amazing package, they're a strong community leader or something, but the whole rest of the world might not know about them. So, the guy I'm talking to today, is a little more in that second one. So I want him to tell us a real quick bit about so who are you? Where do you live? Where do you work? And what are a few things that you are known for in your world? Abed Halawi: All right, so you got my name almost right, this time. Matt Stauffer: All most, I'll take it. Abed Halawi: It's Abed Halawi, in our language. In English usually it's Abed Halawi, so the emphasis is on the middle of that- Matt Stauffer: Wait so when you say it, the emphasis is on the last syllable of your last name, Halawi. Not Halawi. Abed Halawi: Yeah. Matt Stauffer: Oh, okay. Abed Halawi: Yeah. Matt Stauffer: All right, I'm getting there. Sorry, go ahead. Abed Halawi: So, I live in Beirut. I was born here and always been here. I currently work here as well at a company called Vinelab. What we do is, focus on the influencer marketing, building a SAS platform to provide influencer marketing to brands. Basically our website says it all, so if you'd like to know more about that, go to vinelab.com and that will tell you everything about that. So I'm here because mainly about the Lucid Architecture which was first introduced in Laracon EU. The Lucid Architecture is about a collection of experiences that we went through, and we thought that certain ways would improve the ways we work together as a team. We thought that, well actually this is something very interesting and could help others solve their problems as well. The same problems that we've had and solved our way. So maybe our way could help others solve theirs as well. That's one thing, and the other thing is Neo Eloquent, which is the package for Eloquent, and Neo4j. Neo4j is the graph database, and we use that library as the core storage library in our products, with which we bridge between Laravel project and graph databases. Matt Stauffer: So, there's a couple things you said there. If anybody was at Laracon EU, you would have seen Abed give his talk, was it two years ago? 2017? Or that was one year ago I guess- Abed Halawi: Yes. Matt Stauffer: ... that and math is hard. But also make sure I put a link to that in the show notes. So you mentioned that and also you mentioned he maintains and created a package called Neo Eloquent which is kind of an Eloquent style wrap around types of Neo4j. If you ever heard anybody talk about graph databases, it's one of those things where, "Oh my gosh, graph databases are the new hotness." But I think a lot of people don't actually have a lot of experience working with them. Real quick, before we get into your back story, I'd love for you to give me a tiny little pitch on each of those. I don't know if you're familiar with the phrase elevator pitch, but it basically means, imagine you have 30 seconds on an elevator ride to convince a potential user, or founder or funder or something like that, of why your thing's great. Can you give me the elevator pitch, the 30 second pitch on Lucid Architecture, why is it different, what does it help you with? And then I want to get the same one for Neo4j and graph databases. Abed Halawi: All right, no pressure. Matt Stauffer: None at all. Abed Halawi: Okay, so Lucid, it's about eliminating legacy projects completely. You would never have to move to a project that you've worked on three years ago, and say where does this go? Where is this piece of code that I'm looking for? Where do I find this happening? How is this feature implemented? What's the structure of the code? All of these are eliminated with the Lucid Architecture, which basically takes over from where MVC leaves off. Matt Stauffer: What's the one biggest difference with how Lucid Architecture organizes its code relative to your normal MVC project? Abed Halawi: It compliments MVC projects. So it's not a replacement MVC, but basically with MVC, and the controller, you almost have everything. This is where things get a little confusing in controllers, I mean, if you have a project A and you have a project B to each by a different separate team, in the controller if you go there you will find things written differently. And this is where Lucid comes in. What Lucid says that each controller method, only has one line, only. This line is to serve a specific feature. A feature, specifically, is a class by itself. And within that feature, you would define the sequence of steps that accomplishes this feature and we call them in Lucid, jobs. So as each step in the feature is a job, and each job does only one things and is responsible for performing one thing only. You can share jobs between different features, but each job can do only one thing. And each feature serves one user story from the controller. That way you can achieve what we always dream about achieving with MVC, which is the thinnest controllers we can ever reach. Matt Stauffer: Is it similar to envocable controllers, or do your controllers have multiple methods but each of those methods only have one line? Abed Halawi: You can say it's close to what a command bus pattern is. So you can think of your controller as the command bus, and your just executing commands. Matt Stauffer: Got it. Abed Halawi: The commands take different forms. It could be a future or could be a job, so the same form repeats itself. Matt Stauffer: Got it. Okay, and if anybody wants to learn more, it's all written up in the, well it's both written up in the Github, which I'll link, but it's also in your Laracon EU talk, which is on YouTube, and I'll link that one as well. But since this is not an architecture podcast at the moment, it's a person podcast, let's move on real quick to talk about Neo Eloquent. So, Neo Eloquent I understand gives an Eloquent style interface to Neo4j. Let's, if you had to give the elevator pitch again, this time, can you give me a quick elevator pitch for graph databases, and what makes them a little bit different from traditional relational databases? Abed Halawi: Sure. So, with the graph databases, the way we store the data, and visualize the data, and manipulate the data is the same way we think about the data. So the first thing we do when we start a new project, or data modeling for a project. What we do is draw circles and connections between these circles, which later on gets translated and transformed into tables and foreign keys et cetera. But with graph databases, the way you draw the first data model with your hand, on a board, is the way it is stored right away. And you can manipulate that. Matt Stauffer: Okay. Abed Halawi: You can also implement traversal and all the graph algorithms that we study about through out our computer science journey. So, you can apply all of these to the data that is stored. Matt Stauffer: And if anybody, like me, does not have a computer science background, when we're talking about graphs, the easiest way to think about that is when people talk about a social graph. They think about everything being based on relationships, on relationships, on relationships. Abed Halawi: Exactly. And a relationship is what we call a first class citizen in the database. Matt Stauffer: Right, where as with relational databases it's a little more second class, essentially- Abed Halawi: Exactly. Matt Stauffer: ... with foreign keys and everything. Okay cool. Well I'd love to talk more about those things, but today ain't the day for that. So, I want to know a little bit about you. So before we go into your backstory, I'd like to know, first of all, when you meet somebody at the supermarket and they ask you what you do, what do you tell them? Abed Halawi: These days I find it very easy to talk about these things, from how it used to be when I first started. Because, today, especially with today's generation, they take technology for granted. Right? They're born and growing up in the world where cloud is the normal. Right? So, if I were to explain this, I would maybe go to an example by saying, okay I'm a robot, and you tell me what to do. I will do everything you tell me. So this is how it first starts. So when they tell me to do this and do that, I would do them. Then I would say, this is exactly what I do with machines. I will give instructions to machines so that they run them when I am not there. So they keep doing that. Matt Stauffer: Okay, so what is your actual role, are you a developer, are you a tech lead? What's your official title? Abed Halawi: My official title is tech lead. Matt Stauffer: Okay. Abed Halawi: But, we're a start up- Matt Stauffer: Okay, a little bit of everything. Abed Halawi: ... this is where things ... yeah exactly. Matt Stauffer: You can call yourself CTO if you want, right? Abed Halawi: Yeah, yeah, exactly. The thing is, with start ups, mostly, we get the opportunity to wear different hats. Which is interesting, so that we can get horizontal and vertical expertise. Matt Stauffer: Yeah. Abed Halawi: So, by horizontal I mean, different technologies, different areas of technologies, say front end, back end, dev ops and everything related to that. And at each area we get to grow vertically where, we improve ourselves and our skills in each of these areas. This is the most interesting about being in a start up. Matt Stauffer: You mentioned having a computer science degree, so I want to hear a little bit later about the path you took from computer science degree up to being a part of a start up. Real quick, were you one of the founders of the start up or did you join in after it started? Abed Halawi: I'm not the founder, but I'm the first employee. Matt Stauffer: All right, so you're employee number one. So, we'll talk little bit later about your journey from graduating with a computer science degree to being employee number one of a start up. But real quick, when did you first get into computers? Abed Halawi: I was very young. Basically around, I was nine years old, maybe ten years old. And our neighbor had a computer, and I used to go there just to watch them play, they did not allow me to play. My brother used to play, he said. But later on I had my own computer at home, but with no internet, so encyclopedia was our way to go to search for information back then. And mostly gaming. So, we were kids, I enjoyed gaming mostly. [crosstalk 00:11:40] Matt Stauffer: What kind of games did you play? Abed Halawi: This was my introduction to ... mostly fight games, first person shooter. Matt Stauffer: Yeah. Abed Halawi: Delta Force and you know these games. Also strategy, like Edge of Vampires, Red Alert, you know the early versions of those. Yeah. But then, later, the reason why I joined or took the computer science path was a bit of a coincidence- Matt Stauffer: Okay. Abed Halawi: ... kind of. Because at first, I was into medicine, so I wanted to be a doctor at first. I went to the university where I started studying that, for a year. But, after half of that year passed, I did not find myself there. I felt that I'm not doing what I'm supposed to be doing. And the thing is, I passed all my exams and passed everything, and I was doing good. Matt Stauffer: Sure. Abed Halawi: But then, later on, I couldn't feel it. It was just that thing you get at a later stage of doing a thing for a while. Then you say I don't feel like doing this my entire life. Matt Stauffer: Yeah. Abed Halawi: Mainly because I was interested in neurology and everything related to the human brain and human mind. It has kind of a minor to psychology, that's a side interest. But at some point, I decided to shift majors, and I was looking at what universities are in the area that are close by. Saw a software engineering class, by mistake, basically because I was looking at the different area of courses. There was software engineering and I was like, what is software engineering. And didn't know what that was. I went in, I saw a lot of things that had to do with computers, and I though, well that would tell me how these games have always worked. What's interesting is that, I'm going to jump a little forward to say that, with computer science, I've found myself finding out about how humans operate, and psychology specifically. More than I think I could have with medicine, because the amount of people who are using technology today can tell you a lot about how it had changed the way we live. It's everywhere. And it has changed almost every industry. So when you're in technology, it's not only about the code that we write, it's not only about having programs that are written just for the machine to work, but it's more about satisfying the human need. This is the essence of these things. One thing that I had recently a small chat about that has to do with how designers can get to know more about technology, and how technology or developers get to know more about design and maybe do it themselves. The way I like to think about it is that, designers don't need to know technology or development, and developers don't really need to know design, and do it themselves. It's the bridge between them lies in a different area. It's philosophy, it's psychology, it's the bridge between those two. So if these two areas can learn more about these, I think this will close a huge gap between these two areas. Matt Stauffer: You're reminding me a lot of my favorite conference talk I've ever given, which was about empathy. And, I made a lot of the similar pitches, from a little bit different angle than you're talking about, but that understanding people and satisfying people is the best way to be a good programmer is not to know the code better than everybody else, it's to know the end user better than everybody else. And to empathize, both with end users and also, the other developers on your team and the designers and everything like that. I love where you're going there. I moved from working at a non profit where my job was about people, and understanding people, and helping people grow, to running a company. There's a lot more similarity than I expected between the two, because I'm still working with people and helping people grown and helping people do a good ... so I couldn't agree with you more about that and I love hearing you say that. Abed Halawi: Exactly Matt Stauffer: So, you're not the first person to say this. One of my most recent interviews, I can't remember exactly who it was, said the same thing of, "You know what, I wanted to figure out how the games work." So that's really fascinating to me, so, you got in, did you find yourself in there saying, "Oh this is amazing. I love this, this is so great." Or, did you get in there and did you have a moment of being kind of dissatisfied where you said, "Oh I thought it was going to be fun and games all the time and all I'm learning is math." What was your actual experience in those computer science classes? Abed Halawi: At first, I didn't know what to expect. I did not know what computer science was all about. So, with that in mind, and I started learning by myself on the side. Besides what I was being taught at the university. I was very interested in the field. I did not expect to learn everything all in the first day, right? So, with that expectation in mind, I started finding out that I'm good at this. It's all about recognizing patterns, right? I really did not care where I'm putting most of my effort, because I know that everything that is being taught and channeled to us as students is to orient us towards having a certain mindset, so that at some point in the future, we know where to use these techniques and methodologies. It was a bit later in my studies, maybe it was the second year of university that I've discovered that university will not teach you everything. Right? Maybe it was a little late for that, but I knew then that this is not a place that will teach you everything. But what they will do, is teach you how to think about problem solving. How to think about the computer science. And how programming works. It's just the basics and fundamentals, you don't really need to learn every computer language, and every technology out there from university. They just put you on the path and it's all up to you, in terms of where to go and how to take this further. Matt Stauffer: Yeah that's good. So, you did that. Were you having to choose to specialize in a particular type of programming and everything like that, or did you just you got a degree in software engineer or computer science and then you were out in the workplace and had to find something? What was the next big decision you had to make, after you'd made the decision to go into computer science? Abed Halawi: It was the second year also, where I joined the company where I used to work, as a support agent. You know, the regular things, tickets, answering tickets, forums and answering the phone and helping people get their job done on the platform. And at some point in there, as I was studying and working a full time job, the technical department had a certain problem they were trying to solve. I was overhearing, I wasn't very involved in their works, but as I was overhearing and it was in the kitchen where I spent most of my time- Matt Stauffer: Nice. Abed Halawi: ... I overheard this problem they were having that had to do with data storage and transferring data from a place to another. I don't really remember the details of that problem, but I remember, throwing out a word that helped them solve it. And then they were interested. So I was working on this Java project for the university and the head of the developers came into the room and saw me coding at work, which I was not supposed to do. So he asked me, "Why are you coding? This is not your job here." And I said, "Well, I enjoy this. I like to do this when I don't have anything else to do." It was then, when he asked for me to join the development team and start learning web development. It was kind of passive, the way I started learning about web development and the web technologies. But at the same time, I was enjoying doing it. Matt Stauffer: Yeah. Abed Halawi: I enjoyed programming on my free time. And after moving there, the kind of choice I had to make was which area to fill? Because they had an area that had to do with software programming, installed software programming. And they had a web application programming, which was a portal that involved all the areas of the company. So this was the administration interface of everything that everyone does in the company. It was going through a revamp. And I had the chance to join the team who was doing this revamp, and I did not know anything about web development. So I started learning there. Right? It was very tough. That's the least I can say, because back then, I don't remember, there wasn't much courses online to learn from. It was mostly either books or CDs that I'm not proud to say this, but we had to get the cracked version, or the pirated versions of those, so that we can learn. This was basically my transition from being a support agent to starting to work in development. From there on, it was a regular journey where I continued exploring this realm of technologies. So sort of a front end development, doing a little bit of JavaScript here and there. It was, JQuery was booming, at the time. So I started learning that. I was very interested in animations, on ... so it was some kind of an interest between design and implementation of things. I like to see things move on an interface. Matt Stauffer: Yeah. Abed Halawi: With JQuery, I had the chance to do it with very easy instructions. That was the catch for me to say, "Well, I'm glad I chose this major. I'm glad that I'm here today. That's definitely how I'd like to spend my time." Matt Stauffer: Nice. That's very cool. So you were still in school when you were doing all this stuff? Wow. Abed Halawi: Yes. Basically I- Matt Stauffer: Did you sleep? Abed Halawi: ... graduated ... I don't remember doing that no. Matt Stauffer: Sorry what were you saying about graduating? Abed Halawi: Yeah, so basically computer science to study it here, it takes three years, maybe four, with the regular courses. But it too me five plus, because I was working full time so I started understanding that work will teach me much more about practicality than the university will. But still, I was very interested in topics that were given at the university that had to do mostly with organizing work, anything that's related to diagrams, planning, software engineering, and how to organize the work. There was many non tech courses that I was interested in as well, that has to do with management too. So I was learning a bit of both types of programming. It was high level where I learned the web stuff, and it was low level, where I learned the theories and everything that had to do with how a computer works, behind the curtains. It was very interesting. And then I graduated after five years, with three years experience, full time. Which was at the time was, I was very happy to have done that. It was one of the best choices I've ever made. Matt Stauffer: Okay. And so, what was the road from there to being employee number one at your current start up? Was there a lot of different jobs in between there? Abed Halawi: No not much, actually. There was one failed start up that I founded in the university. They had this program where they opened what they called the innovation center. It was a room for people who would like to build their ideas in there. They bring some students together. And if one of these ideas make it, through certain specified competition that they do across universities here, you have to make it for at least the first three positions. If you did they would invest, not money, but they would invest in helping you push this further. Matt Stauffer: Cool. Abed Halawi: Which is what you need at the time, right? As a student that's all you need, a place to apply the work, and an idea to put all the code in place. And that's the first thing after the first job. Then there was a job for a year where I also did a lot of web programming. I learned a lot of Linux there, because I was handling also system administration. Matt Stauffer: Okay. Abed Halawi: And then, after that, I was here where I am today. It was interesting because when you're joining a start up, there's merely any guarantee that this is going to work. Matt Stauffer: Right. Abed Halawi: There's merely an idea based on a certain gap in the market. And I can easily say that this has been almost six years. It will be six years in October. And I can easily say that we've pivoted a lot through out these six years, and it's been the best six years I've ever had. From personal and technical, it wasn't only technical, because when I first started there I was the only developer, and most of my time I was just coding. But then things started to grow. And as a company it started to scale. At the beginning we were doing services, so with services you get exposed to a variety of types of projects. There were mobile projects, there were web projects, and there were things in between as well. So this variety created a lot of needs for the team to grow. As the team grew, my role expanded as well. So I had to occupy a larger gap in the team, and cover not only technical and coding, but it was mostly organization and management to take over. This was a real, I don't know what's the biggest word than challenge. I would say more than a challenge. Because, as a developer all you like to be doing and spending your time doing is coding. But then, if you code and not know where this code is going, at some point these things get lost. So we need to organize things. And what's interesting is this led to creating the Lucid Architecture, because as much as there was chaos in the development process that we were implementing at the time, we had this huge need to organize things, not only from personal and communicational perspective, but also in the code itself. We had so many projects running at the same time and every time we switched between the project and another, it felt like going from one country to another. It felt like you were looking at something that's red and then you're looking at something that's yellow, and then that's white and then that's black. It's a huge difference between those. So, this was the inception of Lucid, where it tries and makes sure that all these projects are normalized. Matt Stauffer: So you felt some kind of chaos, you're switching contexts a lot, and the contexts were different enough that it felt too chaotic and you had to relearn each one. So you created something that applies more of a standardization across projects than what MVC provides. You said, "Now when I entered a new project, and obviously it's much more complicated than this but, I know that every single web request will be serviced by a single feature or job, basically." And you were trying to make it such that on every project it uses the same architecture. Abed Halawi: Exactly. Matt Stauffer: Have you had the opportunity to use it on a pretty significant diversity of projects, or is it still something pretty new for you? Abed Halawi: We're currently using it, so we are implementing microservices, and with microservices, each service we have is a Laravel installation of the Lucid Architecture itself. We currently have around 48 services running at the same time, so you can easily say that we've implemented Lucid in 48 projects. Matt Stauffer: Right. Abed Halawi: So far and they're in production- Matt Stauffer: Are those 48 all serving the same primary product, which is the influencer related stuff, or is it a whole bunch of different products that are all offered to influencers? Abed Halawi: These 48 services are in the same product. Matt Stauffer: Okay. Abed Halawi: It's the SAS platform that we're building. On the side we have some side projects that we use internally, that they're also based on Lucid. I would count two or three are currently running, and they are all in production in life. Matt Stauffer: I am going to ask- Abed Halawi: So we're pretty confident- Matt Stauffer: No, no, you're good. It's a little bit of lag. I'm going to ask you a few questions about Lucid. I can tell you're confident, I can see it in your face and hear it in what you're saying. So, since every single controller method, all it does is it just serves one of these features. A feature is then meant to specifically parse the request, which I assume it gets out of the application container, and also return results. Is it safe to say that a feature, or maybe a job, let's say a feature for now, is the same as a controller method in terms of its scope, in that it takes an HTTP request, and returns and HTTP response? Abed Halawi: It is exactly that. Matt Stauffer: Okay, so, it's obviously more complicated, but the simplest way to think about it is, when you're thinking about those 200 line long controller methods, pull that thing out and make it a class. That's the first step. Abed Halawi: One class. Matt Stauffer: Yeah, so it's very interesting because I gave a talk at Laracon US that talked about, among other things, quite a few code patterns for how to simplify your 200 line long controller methods. I didn't talk about Lucid, but I talked about things you can extract, so that those things in there are pulled out into individual classes. What I kind of recommended more at that point was, well here's a way to simplify the response part, using a custom HTTP response, or something like that. Here's a way to simplify the input part, by using custom HTTP requests, or something like that. Here's a way to customize the database queries, using repositories or whatever else. So I'm super interested to take a look at this and try it out. Are there any open source projects that are using Lucid? Abed Halawi: I'm not aware of any. An open source project as in a full Lucid project that is currently operating and is online with it? Matt Stauffer: Yeah, like if somebody wanted to go see what it looked like, to use an actual functioning application using Lucid? Abed Halawi: There's definitely an example that is on the Github repo. There is work being put into having video tutorials that can teach Lucid in depth. But having a Lucid project online as an open source means, basically that you're exposing the whole project, so that's interesting thought. I'd definitely like to go in something like that. Matt Stauffer: At Titan, we have a whole bunch of ideas that would never make any money. But we just like to provide them as a service, and so we open source their code. So if you one say, "You know what I'd really like? I'd like a website that does X, Y, and Z for me." And you know only 500 people would use it. And those 500 people would never pay any money for it. Or, maybe they'd pay $10 a month for it, but it's not actually worth trying to do all the marketing. Maybe that might be an opportunity for you guys to actually have a real functioning website, that has real users, that has to service real user requests and everything is completely transparent. Because I think that's one of the most interesting ways to have these conversations, and to expose our internal ideas to the world around us. And really let them up to the light of criticism outside of our own organization. We have some ideas at Titan that sound good, until they get exposed to the outside air. And I'm not saying that's going to happen with Lucid, but that is something that has been super valuable for us. Abed Halawi: I would love if that would happen, actually. That's a lovely idea. I'll definitely invest into that. Matt Stauffer: Cool. Well if I ever have an idea I'll throw one your way. But I would say that would be a good selling point for you guys in Lucid to be able to have something like that, that people can really see. This isn't the Lucid interview, as much as I'm interested in these things, so tell me a little bit about your time working with start up. You said when you got started there, you did client services, what I assume by that is you were a consultancy, people hired you to build products for them. So I have a couple questions. The first question I want to ask is, what changes happened to your text stack over the years? When did you come across Laravel? And what aspects of Laravel made you most interested in using Laravel when you decided to use it? Abed Halawi: I first started using Laravel when it was Laravel Three, version three- Matt Stauffer: That's been a while man. Abed Halawi: Yeah, that's a long while. What's interesting is that the project that we built back then was shot down a few months ago, so it was still running until today. That's what makes it, yeah, makes it very interesting. The thing that got me about Laravel was, I can easily say it's the documentation at the beginning. When you read the documentation, you literally understand how much potential this framework has, and how much you can open up and build on top of that. It's easy to start with. We started this project, it took us two, three months and we were up with an administration interface for multiple websites that we had for different clients. That was when we first started Laravel. The text stack back then we Laravel, MySQL database with regular Apache web server, and later on we had this project where it was a publishing platform. This was the first pivot in the business model, so we stopped doing services and then we shifted into building our publishing platform. And with that, there was also ideas about user generated content, and actions that users can take on content published by celebrities. From our services that we've done, we've built a lot of the user network of celebrities that are A class in our region. And from there, we thought, let's build a platform and join them all together where they can have official news and posts that can also integrate with social media, and have people join that platform as well. This is where the first search for a database that can really mimic what the social network would be in data. That was where we discovered Neo4j. This is where we started building the outcome, so that we can build that platform, and we did, for a while and then we figured, that's not really the gap in the business. We were just doing that because we thought it was the point of entry into the entertainment business. But then we also pivoted that into a SaaS, a platform where we can gather data from social media, because if it was for marketing it was booming these days. Especially in the region, it came a little late than we predicted. So we knew this was coming very soon. We thought why not build a platform that can bridge all of this. This was the second shift. This was also the shift from a monolith, a single application, single code base, into microservices, which was a completely different set of challenges that we were facing. Things that we took for granted, like networks, and connections, and discovery services knowing about each other, and communicating between applications. This was taken for granted in a monolith because you don't really have these problems. But once we shifted to microservices, a huge new set of challenges just popped up. We never thought we would have these. And we had a lot of trouble getting around with these tools because we were not experienced in that area. So we had to learn a lot before we could do it, as we do it today. I wouldn't say it's the right way- Matt Stauffer: Sure, sure. Abed Halawi: ... it's just we're doing it and it's working right? Matt Stauffer: Yeah. I hear that. We're getting close to time and I want to make sure that I've asked all the questions I had. Oh, tell me a little bit about Lebanon, and tell me a little bit about Lebanon as a developers, and tell me about Lebanon as a Laravel developer. Abed Halawi: All right, so Lebanon in general, is this small country that you can barely see on the map, let alone Beirut, if you were able to spot that on the map. So it's a very small country, but it's faced a lot of political stuff happening, going around, wars and internal civil wars and then people not liking each other politically et cetera. So this is all going on, even though all of this is happening, the tech community managed to ... well the start up and entrepreneurship communities managed to rise from all of this that was happening. There are certain areas in Beirut where they are dedicated to provide as much as they can, have the humanities to run any idea you have, you can rent, just like any accelerator, or an incubator program. There's plenty of these here today where we can rent a small desk and do whatever you have to do from there. Internet connection was a huge problem, it's becoming much better now a days. If this was to happen a couple of years ago, we maybe couldn't have done this at all. Due to the internet connection, but now a days it's become much different. As a developer, there's plenty of talent in here. We enjoy sharing the knowledge, sharing everything we can get from abroad and from here, from each other. The only problem is that there isn't much people in here. So, it's a double edged sword, right? Everyone knows everybody, but it's the same people that they always see at the events. You don't really get to ... you know this networking time, that you get in conferences, you don't really get to network. We know each other. We try to go abroad for these, more than doing it locally. But at the same time, when we were first starting, there was no community. We did not feel that there's this connection, this circle of people that are trying to build something together. Build a hub of knowledge, hub of experience that they can share among each other. But now, what we're trying to do is tighten the, or strengthen the connections between these people so we can build the more full circle that can incubate everyone in the community as much as possible. And show whoever is starting to get into the technology or development that there is a place for them here. We don't really need to go and work abroad, we can do it from here. We're trying our best to do that. As a Laravel developer, there's plenty of people who are using Laravel nowadays. Matt Stauffer: Okay. Abed Halawi: We gather, we talk a lot about what we do, differently in Laravel, and we talk a lot about how eloquent it is ... exactly. And the way that we can write code and we exchange a lot. We try to provide a lot of open source to each other, open source libraries, and tell each other, well I've written this small script, why don't you use it? Because we know each other, we know what we're working on, right? If we find a common interest, one of us would contribute that and provide it to the rest. So it's a very small community I would say, but it's very interesting because it's still sustaining. For almost six years now, it is sustaining and is growing. Matt Stauffer: That's really cool. Abed Halawi: So I find it, yeah, I find it really cool here to have, I mean for anyone who knows Lebanon and knows how many people there is here. To find this, that's amazing. That's all you need. You don't really need to have much more than this. The only issue in here, is scale. We cannot apply what we work on at scale. Matt Stauffer: Got it. Abed Halawi: And we cannot scale what we work on unless it's provided internationally. And to go international from here, it is really tough, unless it's a branch of an international company that is working here, but provides the business from abroad. It is really not much room for you to scale, compared to other places. That's the only drawback. Matt Stauffer: I did not realize how small it is, because Beirut has a similar population to the very small feeling town that I live in. And I used to live in Chicago, which has, I think it's two and a half million people. And Lebanon entirely has six million people. So I now understand what you're talking about, scale wise. Abed Halawi: Exactly. Matt Stauffer: How far of a drive ... I assume Beirut is kind of like the technical center. Are people coming into Beirut for a lot of meet ups and stuff like that? Is that even that far of a drive? Abed Halawi: It's not far. I mean, it's relatively far, because of the traffic, it is way too far man. But if you were to just measure the numbers you would say, well that's, to you, that's not even a drive. It's just a walk. Matt Stauffer: What's the furthest somebody comes into Beirut for a meet up or a conference who lives in Lebanon? Abed Halawi: No, they do. They do, they do come from- Matt Stauffer: Furthest drive, is it an hour, is it 30 minutes is it 5 hours? What's it look like? Abed Halawi: Five hours? You would be in a different country. Matt Stauffer: That's what I thought. Abed Halawi: But- Matt Stauffer: It's a couple hours max. Abed Halawi: ... it's a couple of hours drive. Matt Stauffer: Okay. Abed Halawi: Well, what's interesting is that we have this, an institution, a small institution called SE Factory. SE standing for Software Engineering Factory, which where they teach Laravel to graduating students. Matt Stauffer: Really? That's really cool. Abed Halawi: Yeah. It is. The more interesting thing about this is that people come to Beirut to study this, on a daily basis from 9:00 in the morning until 7:00 at night, and going over two hours drive from their country towns. Matt Stauffer: Wow. Abed Halawi: Yeah, it's a long drive and you have no idea how draining to energy it is to go through all this traffic on a daily basis, to be able to learn this. Matt Stauffer: That's the first group I've ever heard of that is teaching Laravel as a part of a code school. I'll ask you for the link later and I'll put it in the show notes for everybody. SE Factory. That's really fascinating. Okay. Abed Halawi: It is. Matt Stauffer: I've one last question for you, and that is, what is the best book that you have ever read. It doesn't have to be about programming, just a book across the board. Abed Halawi: Oh yeah, that's a very interesting question because my favorite book is the one that was given to me by the Laravel community when I went to speak at Laracon, we had a dinner, before that. They gave us all books, and it was Godel Escher Bach, which is the book that bridges so many topics. It's between art, and science, mainly and music of course. This is a book that really manifests how I like to think about technology nowadays. Again, it's not about just coding. It's more than that. It's about understanding, well there's a lot of creativity in there to be put. There's a lot of potential and opportunity for someone to expend and to put their all into this and make something out of it. It's endless. The way that these areas were immersed together in this book is fascinating. You just get to see that philosophy, music, and science, they're all in the same place. And how they bridge and share the same fundamentals in terms of creativity, it was very interesting. Matt Stauffer: I'm reading through the preview on Amazon right now, and it's definitely triggering some ... I studied English Literature in school, there's a lot of philosophy in there, but I was as a technologist while I was there. It's definitely, just reading through some of the basic intro stuff here I'm going okay, this is both scary and exciting in seeing those things. But this is super intellectual though. Abed Halawi: It is. Matt Stauffer: At least it looks like it is, okay yeah. Abed Halawi: Yeah and you would feel, after you read this book you would feel like wow, that's a lot that's happening. I'm in a field that's much bigger than I thought it was. It's not the infinite statements that I've written. It's much more than that. That's what makes it more interesting. Matt Stauffer: This is fascinating. Okay, well I'm putting a link to the book in the show notes. It's Godel Escher Bach The Golden Braid, or A Golden Braid or something like that. Abed Halawi: Yes. Matt Stauffer: An Internal Golden Braid. Abed Halawi: An Internal Golden Braid. Matt Stauffer: I will link that in the show notes. Well thank you, I'm really happy. I'm very pleasantly surprised that it was not a programming book, and that was very good. Well we're past time, so I have to cut, which I hate doing, but I have to do. So if people want to follow you or if there's any other last thing you want to shout out or something like that, how do you want people to kind of, what's their one take away? Should they follow you on Twitter? Should they go try out some product? What do you want them to do? Abed Halawi: Sure, so on Twitter, that's one. On Github, that's two and it's the same identity all over the place. It's Mulkave, that's the username that I use everywhere. So if you look up Mulkave on Google, you'll get all my contact mediums and everywhere. There's also the tech blog of Vinelab, where you can find the introduction to also Lucid and stuff we do at work here. Which could be interesting also to look at. Matt Stauffer: Okay. And I'll link all those in the show notes. I do have to ask, what is Mulkave? Abed Halawi: Oh, well, I told you I was into gaming when I was young and there was this game, about vampires. Matt Stauffer: Okay. Abed Halawi: And there was this clan of vampires that are intellectual they're called the Malkavian. I found the introduction of this clan, and the people in this clan, to be very much matching my personality and character, so I thought well, I'll just choose that. One day I had to choose a user name, and so I was like Mulkave, whatever [crosstalk 00:51:18]- Matt Stauffer: The best user names are ones where you know that forever you're going to be able to get it on any social network no matter what. So I like it. Abed Halawi: Exactly. Matt Stauffer: Awesome. Well, I really appreciate you taking your time to talk to me. Abed Halawi: Thank you very much. Matt Stauffer: People who don't know, we have never met before, and I asked around, I said hey I want to meet people in different communities, so Abed was recommended to me and we had a chat a couple weeks ago. I said yeah, this is definitely someone I want to talk to, and it was a total pleasure. I really appreciate it and thanks for your time man. Abed Halawi: Thank you very much for having me on this podcast, I really appreciate your time as well. Thank you. Matt Stauffer: (music)
Jake and Michael discuss all the latest Laravel releases, tutorials, and happenings in the community.
Jake and Michael discuss all the latest Laravel releases, tutorials, and happenings in the community.
In the crazy unusual summer heat in Sweden, we found somewhat cool spots to do a summer episode. We talk about Laracon US 2018, mostly Laravel Nova. We touch on some SOLID stuff and finally reveal what the "little yellow" (lille gula) we've teased about is.
Jake and Michael discuss all the latest Laravel releases, tutorials, and happenings in the community.
Michael and Jake return just in time to talk about the upcoming secret Laravel project, Nova, Laracon US 2018, static site hosting, and more!
Are you heading to Laracon US 2018 in Chicago? We’ll see you there! Brian Hogg and Justin Buchanan join Dan and Margaret to talk baseball, food, museums, and the conference we’re all excited to check out. Rumour has it, the first 50 people to attend Colin DeCarlo’s “Design Patterns with Laravel” talk will get something special.
Interview with Samantha Geitz, Senior Developer at Tighten Logo Samantha's React series on the Tighten blog React preset Doejo Wordpress VIP Automattic PackBack PackBack on Shark Tank Editing sponsored by Larajobs Transcription sponsored by Tighten Matt Stauffer: Welcome back to the Laravel Podcast, season three. This is the first time we'll be talking to a member of the Tighten team, senior developer Samantha Geitz. Stay tuned. Matt Stauffer: All right, welcome back to the Laravel Podcast, season three. Like I mentioned in the intro, for the first time ever, I have dipped into the local pool, because I think that the people who work at Tighten are great, because otherwise, they wouldn't work at Tighten. I think they're all fantastic, but I've been trying to avoid nepotism, and if you're not familiar with the concept of nepotism, it's when somebody basically makes their whole ... their family and friends in power, so basically Donald Trump personified. That's nepotism, so I've been trying to not be a nepotist, but at the same time, I mean, there's great people who deserve interviewing. Matt Stauffer: I figure we're going to start with Samantha Geitz, who is one of our two senior developers; Samantha and Keith are our senior developers, and you may have heard of Samantha before, but before I go into her backstory and who she is and what she's about, the first question I always ask everybody is, when you meet a random person in the store, how do you tell people what it is that you do? Samantha Geitz: There was a really long period of time where I said, "Well, I'm a software engineer," because it sounded really fancy and I kind of needed that validation. Matt Stauffer: Right. Samantha Geitz: I've gone back to "I'm a developer," and they ask what that means, and I say, "I build websites, and some of which you've probably used," and I list them off, and usually they kind of glaze over about halfway through, and/or say, "Oh, my company's hiring. Do you use .NET? You should come work for me." Matt Stauffer: Right. Samantha Geitz: I've steered away from software engineer, unless I'm talking to a real engineer, because they get really mad and it's hilarious. Like, "You haven't taken certification." Matt Stauffer: Basically whatever trolls the best. I tell people I make websites, which drives my wife nuts, because she's like, "You don't make websites, you run a company." I'm like, "I don't like telling people that when I first meet them, because then it sets certain expectations." The more that people underestimate me when they meet me, the happier I am. Samantha Geitz: I was going to say I guess it's true- Matt Stauffer: Oh, go ahead. Samantha Geitz: I actually don't make very many websites for Tighten anymore, I'm a PM/therapist/wrangler. I do a lot of hand-holding, talk about feelings a lot. It's a great job. Matt Stauffer: That is basically what we do at Tighten. We just use code as the excuse for that. Samantha Geitz: We talk about feelings a lot at Tighten. Matt Stauffer: Yeah, yeah. Okay, Samantha first came onto the scene, when I knew who she was, when she was speaking at Laracon US a couple years ago in Louisville. I don't even know what year it was, 2015 or 2016, 2015, something like that? Samantha Geitz: 2015. Matt Stauffer: And speaking about microservices. Samantha Geitz: It was the new hotness at the time. Taylor introduced it as the most anticipated talk at Laracon right before I walked on stage, and I was like, "Ooh. No pressure." Matt Stauffer: No pressure, and the funny thing is I don't think you've done any microservice work since you've started at Tighten, right? Or have you? Samantha Geitz: I have not. No, but you also hate microservices. I'm surprised you hired me after that. Matt Stauffer: I hate them a little bit, yeah. Samantha Geitz: Yes, we like this girl's ideas. Matt Stauffer: Yeah, well ... What we liked was the way that you think. That's not necessarily the microservice aspect. Not saying there's nothing good about microservices ever, but it's not ... they're overblown a little. But anyway, you gave that talk. Everyone said, "Wow, who's this Samantha Geitz, she's great." Soon after we open up a job posting, you apply. It was great. That's not the point of this story, but now you're a senior developer, like you mentioned. Day-by-day you write some code, you review some code, you write blog posts a lot. You wrote a three part React series, that has basically taken the internet by storm since it existed, which you keep updating and I'll put a link to that in the show notes. You are one of the lead React thinking people in the Laravel world. You're the one who contributed the React preset to Laravel. That's one area you're known a little bit. Matt Stauffer: If you haven't heard of Samantha before, go read a couple of her blog posts on the Tighten blog. Go check out the React preset. Go check out a React series. Even if you know React already, it's a really good broad level introduction. That stuffs all great, but that's not what this podcast is about. This podcast is about people. Matt Stauffer: The next question I always ask everybody is, when was the first time that you interacted with a computer, and tell me about it. Samantha Geitz: Well my dad had a computer science background. When I was really young, like five maybe, we were using Logo to build tic, tac, toe and obviously I was not writing much of the code at age five, but I sat with him when he did it and it sparked an interest, but as I grew up, I always thought computer science was A, for boys, B, involved a lot of math and even though I'm technically good at math, I did well on the GRE in math, I just thought I was bad at math and I can go into all the feminist reasons about that on Twitter if anyone's interested, we don't need to spend the whole podcast. I want to get on my platform and talk about it. Matt Stauffer: Right. Samantha Geitz: I didn't really take computer science seriously as a career. I had built some websites and stuff in high school in Joomla. I'm dating myself here, but my last semester of my English Literature degree, and fun fact, if people don't know, both Matt and Dan are also English majors, so Tighten's got a very strong liberal arts background. Matt Stauffer: It's true. Samantha Geitz: I took a computer science course as an elective because it was literally the only thing that fit into my schedule and I was the only woman in the class and walked in. I immediately got picked out by this professor, who was a very nice man, but also this old Eastern European man. Caught me after the first day and said, "Oh, if you need extra help let me know." And within three weeks I was tutoring a quarter of the class. Samantha Geitz: Well I had realized by that point, because my background was in English Literature but I wanted to be an English teacher and got through all of my English Literature course work and then started the education component and said, "Oh, no. I hate teenagers. This is going to be awful." Yeah, when I took that computer science course, I said, "Oh, cool. So this is what I want to do when I grow up." Went back to grad school and got a masters in information science and I guess the rest we will probably cover in future questions here. Matt Stauffer: We will, but I have so many questions. I have so many questions. Your dad, computer science. You're five years old, making tick tac toe in what? Samantha Geitz: Logo. It's a programming language where you move a turtle around the screen. Matt Stauffer: Logo. Samantha Geitz: I think it's like Scratch. This was almost 25 years ago. Matt Stauffer: Oh okay. Samantha Geitz: I couldn't tell you a lot of the specifics. Matt Stauffer: Yeah. It's just funny. This is the first time anybody's ever mentioned something I've never even heard of before, programming language wise. Okay, but it was focused on kids learning? Samantha Geitz: I think so yeah. I know my dad had probably C and basic and I don't even know what. He's now trying to learn Laravel. I have two brothers who are Laravel developers and my dad has decided he wants to get into that life too. We have a Slack channel where he posts questions and it's fun. Matt Stauffer: That's awesome. Tell me that he has a copy of my book, please? Samantha Geitz: He does not ... No, he does. Matt Stauffer: I will mail him one. Samantha Geitz: It's in a PDF. I sent him a PDF. Matt Stauffer: Okay I was going to say, I will mail him one. Samantha Geitz: Sign it. Matt Stauffer: Jeez. Okay. Yeah, definitely. Okay, you did Logo. Was there much computing? Were you on Instant Messenger and stuff like that in between that time and when you were in college? Or were you not a computer person during that time? Samantha Geitz: Oh, I was PC gaming master race from a very, very young age. Matt Stauffer: Okay, so you've been sitting on ... Yeah, you totally skipped that part of it. Let's talk about that. Samantha Geitz: That's how I win typing challenges. Yeah, no. I had a computer in my room from the time I was in eighth grade. Yeah. Oh, I got into all sorts of shenanigans in Instant Messenger and stuff. I was 10, cat fishing people. Matt Stauffer: Oh my goodness. I didn't even know what that word meant until college. Samantha Geitz: ASL, 18 female California and I'm 10 years old. Matt Stauffer: Oh my God. Samantha Geitz: This is a family friendly podcast so we don't need to get into that. Matt Stauffer: There you go, we'll just keep it there. Cat fishing. Go Google it, it's a type of fish and it is a ... nevermind, I'm not even going to go there. Matt Stauffer: Playing video games, did you build your rigs? Computers? Samantha Geitz: Oh yeah. Still do. Matt Stauffer: Still do? I didn't know that. Samantha Geitz: Have you not seen this. Matt Stauffer: I have not seen this. Samantha Geitz: I'm turning my camera so Matt can see my rig. Look at that bad boy with a cat on it. Matt Stauffer: You should take a picture of it without a cat hanging ... or with the cat hanging over it so we can put a link in the podcast. In the show notes. Samantha Geitz: I've got the clear panel on the side so you can see ... Yeah, I've got some good hardware in there too. I've had a $900 graphics card in there. Matt Stauffer: Geez. Okay, you learned that stuff from your dad. Computer science. You cat fished people when you're 10 years old. You built your own PC's and you're playing video games. Was there anything formal before you went into college? Was there anything outside of you doing it on your own, or was this more like you had the interest and you did all the stuff? Obviously you said at age 10 you had interest access, or was this bulletin board services? Samantha Geitz: I did have internet access and yeah, I would be on various forums and stuff, but when I was 15 I think, I also, English background, dabble in writing, surprise, surprise. I ran a writing community website that I built on Joomla, I don't wonder what form software I used. Simple core maybe. Matt Stauffer: Okay. Samantha Geitz: It was completely hacked together. There was a little bit of PHP, but it was a lot of just customizing templates and stuff, which for me was a very different thing than, "I'm going to go get a computer science degree and do the calculus I guess, because that's what computer science is." Right? Matt Stauffer: Right. Well and that was my next question actually, is at what point did you actually write a line of web based codes? You mentioned you did Logo, so you had coding from age five, but when do you actually write web code? Samantha Geitz: That would have been high school. Matt Stauffer: Okay. Samantha Geitz: It was probably undergrad years. Matt Stauffer: There's no classes for it. You were just view sourcing around on the internet and figuring it out as you went? Samantha Geitz: Yeah, it was a lot of, "I'm done loading this template and making it look the way I want it to look and I don't really know what I'm doing." I was not doing anything too complex. Matt Stauffer: Right, just FTPing it up to some kind of general shared host? Samantha Geitz: Yeah, it was all FTP. Matt Stauffer: Okay, all right. Samantha Geitz: Very much hacking my around. I did not have a solid grasp on it where if someone could have probably paid me and gotten good work out of it. At our peak we had about, for the writing website, maybe 250 active members. Matt Stauffer: Nice. Samantha Geitz: It wasn't too small time for someone who was 15. Matt Stauffer: Yeah, speaking of people paying you. What was the first dollar you made making websites, or making any code actually for that matter? Samantha Geitz: That would have been in grad school. I did some freelance work because I very quickly realized that my grad program, we did some programming stuff but it was Flash in 2012. Matt Stauffer: Right. Samantha Geitz: I very quickly figured out that I was not going to be learning the sort of things I could go get a web development job for. I was working when I started grad school in admissions at the University of Missouri Graduate School and trying to do that and full time masters program, and self-teach was just too much. I took a risk and quit my job and just made a living for the rest of grad school freelancing. That would have been ... I think my first client paid me three grand for a pretty complex WordPress site. Matt Stauffer: Yeah, I was going to ask was tech stack were you doing most of that freelancing in? Mainly WordPress? Samantha Geitz: It was pretty much all WordPress in the freelancing and then I was self-teaching Ruby on Rails. Matt Stauffer: Did you do the front ends of those or did you use templates mainly? Samantha Geitz: I did a lot of child themes so I used Genesis or something and then build themes based off of that. Matt Stauffer: Yeah, okay. You had at least front end capability. You probably knew CSS and jQuery, JavaScript all that stuff by that point? Samantha Geitz: Yup. Matt Stauffer: Okay. Then Ruby on Rails. Tell us that journey. Samantha Geitz: Laravel, if it existed at the time was not well known. I mean this would have probably been Laravel 2. Matt Stauffer: Yeah. Samantha Geitz: Basically I was just looking into, okay, I wanted to build web applications. I very quickly figured out the limits of WordPress and I don't know. Ruby on Rails was hotness then, so I built myself a personal blog site just to learn it. I don't think anyone has ever paid me to write Ruby on Rails code. Matt Stauffer: Okay. Samantha Geitz: But it gave me decent MVC background and my first job, I was at ... I was just about to finish grad school and I was at the University of Missouri and I was back up at Chicago at a Ruby meetup and there was an open bar that was sponsored by, gosh I don't even remember. One of the API companies, so I met this guy who said, "Oh yeah, My company's hiring and we do Rails." And I was like, "Okay, cool." Samantha Geitz: He got me this interview and got the job and then they told me I would be doing WordPress. It's like, "Oh okay. That's fine. It's not really what I want to be doing." But they said eventually they'll move me over to a more of a MVC stack and I proceeded to do WordPress for the next year and a half. Matt Stauffer: Yeah. Samantha Geitz: But we landed a client who was going to not be great for WordPress so I was looking into Laravel at the time, because I had a really strong PHP background. Hadn't done Rails in a while, and that was right ... That was Laravel 3, because Laravel 4 was released somewhere in the middle of that project and we upgraded. Yeah, that was how I got into Laravel. Was just wishing I could do Ruby on Rails and I've got this WordPress background so I know PHP, so I guess this is what we're doing now. Matt Stauffer: Right. Was the clients, I don't know if you remember, it's been a while, but was the client's tech stack such where if you had been a super accomplished Ruby developer they would have signed on, or would they prefer PHP as well at that point? Samantha Geitz: Are you talking about at the last agency that I worked at? Matt Stauffer: That one company where you discovered Laravel 3. Samantha Geitz: They had been ... Matt Stauffer: Do you remember? Samantha Geitz: They had been pitched on a WordPress site, because ... The company I worked at, which I don't think technically even exists anymore, it's called Dojo. They were a very small number of ... It's called WordPress VIP agency. WordPress VIP definitely still exists. It's actually a fantastic service, but it's basically automatic. Who's the company who does WordPress. It's their premium hosting and support solution. I think it starts ... Then it was $3,500 a month. Samantha Geitz: You had sites like Pandora with their entire advertising platform was built on it. I think Time Magazine. We did a lot of work for Tribune. I actually got a lot of enterprise WordPress experience, just because they wanted ... There's only 10 shops in the world who did it. Matt Stauffer: That actually do that kind of work. Samantha Geitz: The problem was we just pitched WordPress for everything and when it's something that doesn't really fit into that posts and pages paradigm, and they wanted all sorts of crazy relationships between entities and stuff, so I steered them away from that and I had a lot of flexibility in the stack I could use, so I had been looking to Laravel a little bit, and said, "I'm going to learn it." And I used that project to learn it. Matt Stauffer: Yeah, yeah, yeah. Samantha Geitz: It was pre Laracasts too. I think. Matt Stauffer: I could be wrong, but I believe that Laracasts came out during 4, but I could be wrong. I've got to go look that up later. Samantha Geitz: I used Dayle Rees' book to learn it. Matt Stauffer: Yeah, there you go. Samantha Geitz: It was called Code Bright I think. Matt Stauffer: Code something. Samantha Geitz: Whatever the Laravel 3 one. Matt Stauffer: Yeah exactly. Samantha Geitz: That was how I learned Laravel. Matt Stauffer: Nice. Yeah, that's how I learned it too, and then eventually Jeffrey. All right at that point ... I was trying to think. There was a couple of questions rolling around. I had rolling around about prior to that. I'm trying to think about your background. Matt Stauffer: You had got ... did you finish your undergrad degree in English before you went to do the CS? Okay. I'm sorry, she nodded. Samantha Geitz: Yeah, it was just an elective. I had some elective I had to take to graduate. I was working full time at Best Buy and just was the only thing that slotted into my schedule. Matt Stauffer: Yeah. Samantha Geitz: I was like, "Okay. I'm not sure how this is going to go because I haven't taken math in five years." Matt Stauffer: Yeah, turns out. Samantha Geitz: Clearly it worked out. Matt Stauffer: Turns out. Okay you worked, you're doing WordPress. You did a little bit of Laravel 3, what was the next transition from there. Samantha Geitz: Okay, I don't want to do WordPress anymore, I know Laravel know, so I got a job at this start up called PackBack. Who are still around. They are a Shark Tank funded start-up in Chicago. Mark Cuban's on their board. Matt Stauffer: Aye-oh. Samantha Geitz: Yeah. Matt Stauffer: You can see them on YouTube right? I feel like I saw that at some point. Samantha Geitz: Probably. Matt Stauffer: Their episode. Samantha Geitz: Yeah, I got a job working there and pretty specifically as a back end developer, because their front end stack was Angular and the big Laravel project I'd done for the previous agency, we had a ton of ... it ended up being a very complicated Angular set up and people hear me talk about Angular PTSD and that's why. It was just a single page application that should not have been a single page application. It was just a lot of Angular. Samantha Geitz: Yeah, I pretty much did strictly API development for the next year and a half after that. It was all Laravel and it was microservices, and that's how I got really pumped about that idea, which also meant my front end chops took a nose dive, which is a big part of the reason I ended up learning React. It's like, all right, I need to get back into this world. Matt Stauffer: Get back into it. Yeah. Samantha Geitz: We don't have API developers at Tighten. Matt Stauffer: Yeah. No, everybody does everything. Let's talk about your work there a little bit. I think everyone has a pretty good sense of the value of single page apps in API first. Just to recap real quick for anybody who hasn't heard these pitches. API first basically means build the API, then build a JavaScript single page app that consumes that API. Then when you need to build a mobile app it'll magically be fast and easy and quick, because you already have an API that works. There's definitely some true promise there. Matt Stauffer: One of the things we've talked about a lot lately at Tighten, over the last year is as someone ... I'm a little bit of an old head developer where I'm just like, "Hey, you know what? This is the way I've been doing it for x number of years. I want to keep doing it." But I wanted to leave space for us to try those things. The SPA's and the API first stuff like that. We've definitely seen some of the pain points of microservices. Some of the pain points of SPAs and stuff like that. Matt Stauffer: I would say the bigger your team, the bigger the company, the bigger your needs, the more likely the mobile needs, the more likely that you will find the API first and the SPAs to be worth the costs they introduce. I would assume that where you were, would have been one of the places where that's just a clear win. I don't want to dig too much into their intellectual property or anything like that, but you mentioned that an SPA may end up being a little tough in some context. Without revealing any of their secrets or anything like that, is there anything you can talk about that helps you understand when you think an SPA is or is not the right fit? Are there any signs? Anything like that that helps you really think through that? Samantha Geitz: I feel like where I've gone on it is, yeah, if you know you're going to have a lot ... I say you know, and one of the things about working with a start-up is you hope. You hope you're going to grow, you hope you're going to be handling a lot of traffic and stuff, and I think a lot of companies end up doing a lot of premature optimization based on that. Samantha Geitz: Compared to a situation in which you're refactoring a monolith and it makes sense to break off some asynchronous tasks into a microservice. That's a place I would definitely reach for it now. Samantha Geitz: Single page applications that have a lot of views and very complicated authentication and authorization requirements, my preferred way now is to have a Laravel app with Vue or React components where you're utilizing a lot of server side stuff, and a lot of out of the box authentication things and then just the really interactive UI things that makes sense to have JavaScript that's where you have ... I have found that to be easiest personally. I think a single page application, if it's really a single page can be great. Samantha Geitz: I think a single page application where you're trying to have some very complicated web application with multiple pages, gets complicated. There are routers and stuff that can help you handle it and I can see the argument for using it, but I have always found that the overhead is a lot more than using something like Laravel or Rails with server side stuff. Matt Stauffer: Yeah, it's interesting. Samantha Geitz: You don't have to worry about someone going into a console and messing around and seeing encrypted things. I don't know. Matt Stauffer: Yeah, it's interesting you mentioned the single page because single page app ... Theoretically the single page is referring to the fact that it's a single page that doesn't get navigated away from, but like you mentioned, single page apps are a lot less complicated when they don't have to handle I guess what you'd say like theoretical multiple pages that are served by that one page. You could say how many URLs does it serve? If that single pages serves a single URL your complexities going to a lot lower than if that single page serves multiple URLs using a router. Samantha Geitz: Yeah, not to say that you should never have multiple views in a single page application, because of course that's silly, but if you have a Laravel app with 30 controllers that all have all these routes and stuff, and you're trying to do that in the context of a single page application, can you do it? Sure. Is it going to be a lot more code and overhead than if you did it service side? Yes. Absolutely. Matt Stauffer: The question is do the pros outweigh the cons in that context? Sometimes the assumption can be well it's the new thing and eventually we can use it therefore yes, but you've got to realize the cons. Caleb's been talking about it a lot this recently because he lived in microservice land for a while, so he was becoming a little bit of the captain of the cons of microservices. I'll have to ask him about that another time. I think that you are ... obviously you know microservices, but you also know full stack routing JavaScript, all this stuff, super, super, super well. Matt Stauffer: You gave a talk about microservices. It's funny, Chris Fidao gave a talk about hexagonal architecture and as far as I know doesn't do it at all right now. You gave a talk about microservices and obviously I haven't assigned you to any projects in the microservices sense, but I know that you do side stuff. If you were doing a side project, do you default monolith right now, and if so, can you tell me one or two really clear signs that tells you to ... Regardless of SPA versus anything else. One or two clear signs that makes you want to pole servers out. Samantha Geitz: Yeah, I can actually give a concrete example from the last six months. A friend and I were working on basically ... Call it LinkedIn for professional gamers. We realized specifically for this game Overwatch which more recently has ... It's called Overwatch League which almost is like a professional sports franchise model and these were selling for 15 million dollars. Where it's like the Houston Outlaws. Matt Stauffer: That's a crazy number. Samantha Geitz: Yeah, I mean there was a lot of money floating around the scene and these professional players, there was a discord chat room in which these coaches and owners for these 15 million dollar teams would be scrolling through players looking for teams. So we're like oh, there's an opportunity here. Matt Stauffer: Yeah. Samantha Geitz: We basically built an app to hook professional players up with teams and one of the things we wanted to do to keep people coming back was to integrate their Twitter and Twitch stuff and Twitch specifically doesn't have any web hooks or anything where it's like, "Oh, this new thing is on Twitch, we hit your app." We had to pole it. Matt Stauffer: Yeah. Samantha Geitz: It was just this process I was constantly running in the background and basically I built some logic into the main app to figure out who needed to be refreshed, because obviously if someone is streaming, you want to refresh them more often, so when they're offline they're no longer showing. Matt Stauffer: Yeah, yeah. Samantha Geitz: The actual thing that was hitting the Twitch API was a totally separate microservice just because it was this process that was constantly running and I didn't want that load on my regular server. Matt Stauffer: It's funny. That's my exact same use case is that when I'm finding myself in a place where I'm interacting with a third party server that doesn't present the data I want or in the timeline that I want or takes too much load, that's the first thing I want to do, is I build the API I want, and then I make that API do all the work of getting the data into that shape or whatever. I like that. Samantha Geitz: Yeah, anything that you would have to run asynchronously and could put a lot of strain on your server and you want to make sure that ... I would reach for a microservice before I'd start getting into crazy load balancing stuff for infrastructure because I think it's pretty easy to just build something that does a thing. You can swap it out easily if you need to. Matt Stauffer: Yeah. Samantha Geitz: But would I build a separate microservice for users? Probably not. Just to have it different. Matt Stauffer: Okay. Your day job is at Tighten. We talk about what you do there. You also speak at conferences and you also blog. Even though you don't love teenagers you did end up teaching. Tell me, who is your most common audience that you're thinking about when you're giving a talk, and what are your most and least favorite things about giving conference talks? Samantha Geitz: I gave a talk a couple of weeks ago at Erie Day of Code and I literally had a slide where I made assumptions about the audience and one of them was that they're white males. It was a feelings talk about actually design patterns and microservices and crazy architecture. Looking into the reasons that people use that. Matt Stauffer: Interesting. Samantha Geitz: I feel like a lot of it is imposter syndrome where you feel like people on Twitter get very opinionated about software and say things like, "Why are you putting models in your controllers? You should have a repository for this." Just get really dogmatic about it. You get to the point where you can build anything, even if that's just in a way where you just have very basic MVC and you start learning more about design patterns and you just want to apply them to everything because you have this knowledge that's so exciting, and also are you going to be judged if you don't. Samantha Geitz: I would like to start speaking at more women in tech spaces, but I'm very aware whenever I'm in front of an audience that it's mostly white guys in the 25 to 35 age range. Matt Stauffer: Yeah. Samantha Geitz: I mean that's generally the audience I'm aware of. I do hate public speaking through. I'm very introverted despite my personality on Twitter and getting up in front of a crowd and speaking is very, very overwhelming for me sometimes. Matt Stauffer: What's your best trick for when you're preparing to give a talk to help either reduce your nerves or prepare in a way that would make you feel more confident or something like that? Samantha Geitz: I just don't over prepare and I get up there and just almost treat it like a conversation. I've been told I'm a very conversational speaker. I feel like if I over rehearse I will get very stilted. I also give myself permission to use a little profanity if that's ... Matt Stauffer: Yeah. Samantha Geitz: Or make jokes if those are there. Sooner or later I'm going to make a very off color joke in a very public place and it's going to get me into trouble, but it hasn't really happened yet. Matt Stauffer: So far, so good. Samantha Geitz: So far, so good. It's one of those things I just muscle through and it's gotten better over the course of my career. I told Matt at my last review in November I think, that that was my goal for 2018 was to get back out there and give a bunch of talks and not let my stagefright overwhelm me and I'm two in and Laracon coming up in July, so when you give me my review next week Matt ... Matt Stauffer: Hopefully we'll look positively on that. You told me the thing that you like the least which is public speaking. What do you like the most about giving conference talks? Samantha Geitz: Clearly the Twitter fame. When you see that follower count tick up. It is the Twitter fame. I'm trying to think of another ... it's like, no. Matt Stauffer: That's true. That's okay. Samantha Geitz: It's fun getting up there and doing a good job and knowing that I conquered my fear of public speaking and didn't ruin my career. Matt Stauffer: Yeah. Samantha Geitz: I just gave a React workshop at PeersConf and it was pretty small. I think it was maybe 15, 20 people and so I had a lot of space to go around and work with people one-on-one and get people excited about this technology that I'm really excited about and that was cool too. Just getting that really face-to-face time, compared to being on stage and talking at 800 people, most of whom are probably just screwing around on their laptops anyway. Matt Stauffer: Yeah. Samantha Geitz: I had a lot of people come up to me after my white boy feelings talk at Eerie Day of Code too and say, "Oh actually that really resonated with me. That yes, I was there in my career too and I understand that impostor syndrome is a thing for men that isn't talked about." Matt Stauffer: Yeah. Giving people permission to experience the things they're experiencing and language for understanding what it is. Samantha Geitz: Something we talk a lot about a Tighten and it's something that's talked a lot about in various women in tech circles, but I feel like tech as a whole, we don't talk a lot about mental health issues, we don't talk a lot about impostor syndrome and the fact that everyone experiences and if you don't you probably have horrible Dunning-Kruger and you're a lost cause. Samantha Geitz: One of the things I had in my slide that I'm going to assume about you is A, anyone at that conference is very smart and cares about writing good code. Matt Stauffer: Right. Samantha Geitz: Because you're not going to conferences if you don't care, but also that you're aware of that fact for everybody else in the room. You know that everyone else in tech is smart and is trying to do a good job and you compare yourself to that bar and that's a very intimidating thing. I think women feel it more acutely or people of colors, people who are more outside of the mainstream, but white guys feel it too and it's something that's just not discussed. I think to the determent of all of us. Matt Stauffer: I think that's really helpful. Especially a lot of conversations that certain around understanding the diversity of experiences, especially a sentence that says, "Women and people of color experience this more." I think a lot of people instantly hear that you're going to be telling white guys that, "Oh well, we have it really easy." I think it's really helpful to hear, I think for everybody to hear someone say, "Women and people of color have it especially tough, but white guys, nobody's talking about the fact that you experience this thing as well." And it's not just white guys. It's men that aren't white, or white people that aren't men, but the more ... Samantha Geitz: Yeah, non binary, trans. Matt Stauffer: But by that I mean the more normative. My white male, heterosexual, Christian, blah, blah, blah American. The less likely you tend to feel in these kind of conversations that there's a space where you actually have valid experiences, valid pains, valid difficulties, and there's a lot we can say about that that this is not the podcast for, but I think one of the things I really appreciate is that in a context where you are explicitly saying, "Hey, it can be harder in these contexts to be a woman or a person of color, or whoever else, that does not mean that other people aren't having this experience. That does not mean that people with privilege or however you want to talk about it, are not also having impostor syndrome issues, and sometimes it's actually less approved for white guys to talk about these things. Matt Stauffer: I think I'm really grateful that you as not a white guy are giving people that permission to feel that, the language for that and everything. That's super cool. Samantha Geitz: I mean ultimately the main takeaway of the talk about reading other people's code, good code or bad code is, you don't know the space they were in when they were writing it. You don't know their motivations for writing it, but it was never that they were trying to make your life miserable. Matt Stauffer: Right. Samantha Geitz: No one wrote code like, "I want the person who maintains this after me to struggle." Treat people with kindness even if you will never see them because you inherited it. You have to give them the benefit of the doubt sometimes because everyone does have those struggles in this industry. It's really tough. Matt Stauffer: That's a great point. I mean honestly, imagine the worst pressure you've ever been under during a coding session where the client was pushing you. They're rushing you and your dog just died the day before and you want to do really great work, but the client needs something tomorrow and then they cut off the contract after that, and you did your best but you aren't proud of that. Every time you interact with somebody else's code, imagine that they were in that circumstance and it's like the, "Oh okay, maybe they're not a total bumbling idiot." But maybe they weren't in ... It's like people often say, you compare other people's worst code against your best code, or whatever. The code you think you write even in your head even though it's not actually the code you write. Samantha Geitz: Exactly. Sometimes that code that you're looking at that's the bad code is your own code and you need to be able to forgive yourself for writing bad code six months ago, because you didn't know better. I mean I feel like if you're not looking at code from six months ago and saying, "WFT was I thinking?" Matt Stauffer: Yeah, yeah, you're not growing. Samantha Geitz: That means you're not improving. That's not a good thing. Matt Stauffer: Yeah. Samantha Geitz: That was a cool talk and a lot of people came up to me after and said that they enjoyed it and it resonated with them. I'm sure a lot of people were sitting there like, "This is stupid." Matt Stauffer: She's terrible. Samantha Geitz: "I am the smartest person in this room." Matt Stauffer: Right yeah. They have other problems. Samantha Geitz: They weren't picking fights with me so that's fine. Matt Stauffer: Well and that's the Twitter fame part right? If you ... not to say that we never get any benefit out of giving these talks. Sometimes you get paid, sometimes you have certain experiences, but when we're speaking at the type of conferences we're speaking at, we're not making life changing money. We're not making even pay you back for your time kind of money. We're making, "Hey, I'm going to try and minimize the cost when you just took off work for five days kind of money." Or whatever else. Samantha Geitz: Right. Matt Stauffer: There's at least an element, and I think usually a pretty large element of doing it because you want to help people, and you want people to learn and you want people to grow. In terms of the joke that you made about, "I do it for the Twitter fame." I mean what I hear there and I'm pretty sure this is what you meant was hearing the feedback from people that the work that you just put into trying to help them helped them is one of the most affirming things that you can get after a talk. You're like, "Oh, I overcame impostor syndrome and I overcame public speaking anxiety and I spent all that time preparing it and it's making the impact I wanted to make." And that makes you want to go do the thing again. Did I just read you right on that? Samantha Geitz: It is. You did. It's a very affirming experience and I do think it's very important. Whether or not you do public speaking or blogging or tech overflow or just making it publicly known on Twitter that you're available for mentorship, I think it is really important in this industry to give back and to talk about your failures and successes and to pass it along to the next generation of developers. I mean that does have normalize it I think. It helps normalize the shared experience where you see people's victories on social media and not their struggles. I'm not going to go on Twitter and say, "I had a really bad day where I was struggling with this thing and just didn't get it and I feel awful about myself right now." Or. "I dealt with this exact issue six months ago and screwed it up and it was a big deal, but I survived and here was my takeaway." Matt Stauffer: I survived. Samantha Geitz: One of the things that I've realized over my career and then working with more junior people is, sometimes I get tasked something and I have no idea how to do it, but I have the experience now to know that I've managed to figure it out every other time. Matt Stauffer: Right. Samantha Geitz: And every single other time it's been okay and a lot of my job now is just talking to our more junior developers and saying, "It'll be okay. You will figure it out. You have the team behind you. No ones going to judge you if you don't get it right on the first time. That's what code review is for and also, I did it and screwed it up this one time so if you have this bad day where you got a bad code review, it's fine." Everyone's the hardest on themselves generally I think. Matt Stauffer: Yeah, that's a good point. We're short on time, but this serves as one more question I want to ask and then we'll start rolling down a little bit. Samantha Geitz: Yeah. Matt Stauffer: You have worked for consultancies and product companies. This may be a hard question to answer, but if it's not, now that you work at a consultancy, what is the best and worst aspect of working at a consultancy relative to working at in a product company? Samantha Geitz: When I joined PackBack, they were still fairly young. They were migrating from this really gross Magneto thing to a Greenfield thing. I got the Greenfield fun, new shiny experience, but then we got to the point where we're launched and maintaining. Working at a consultancy gives you the opportunity to work with a very, very large array of projects and some of them are going to be Greenfield new and shiny and you learn new things, some of them are going to be, oh God, there's this awful legacy app and then you'll learn new things. Matt Stauffer: Right, right. Samantha Geitz: I think it's really, really easy to get a very wide diversity of experiences and that is going to make you an awesome developer and you'll be able to tackle a lot of things that come your way and see pitfalls that you wouldn't if you were just working on one platform consistently. I do love product, that's why I'll always have separate side hustles going. Especially now that I'm not day-to-day on code as much at Tighten, just so I can stay on top of the new shiny and I've never worked for a Google, or in Chicago like Groupon or Grub Hub or some of the bigger ones. I've never had that experience. All my enterprise-y stuff has been I'm developing this large WordPress site or something, or working on ... I'm one developer working on this small piece for this other company, not I'm part of this very large team in a very medium sized fish in a huge, huge, huge pond. Samantha Geitz: That's one thing I've lacked in my career and now that I work at Tighten have no desire to go seek at all. Not to say I don't have that opportunity but nah, I'm good. Matt Stauffer: All right so you just said very nice things about consultancy's. Was the worst thing snuck in there about, "Oh, I like to do product stuff?" Or is there a worse thing about working for consultancy that you can share? Samantha Geitz: I feel like if you work for a good consultancy who helps ... one of the problems with client works is they're stress tends to trickle in and become your stress or sometimes becomes a deluge and it's your stress. I mean agencies and consultancies have a very bad reputation for burning people out and working them crazy hours and crunch time and deadlines and let's plan things six months out and make this promise and then oh God, we're not going to be able to deliver. I've had both. Matt Stauffer: Yeah. Samantha Geitz: I've not so much had the latter at Tighten, but I would be very ... If Tighten shut its doors tomorrow I would probably go to a product company over another consultancy unless I really knew that stress was not going to become my stress because I just ... at this point in my life, don't want to deal with it anymore. I'm not working 60 to 80 hour weeks. I'm just not. Matt Stauffer: Yeah, I think you have to be super intentional in any company to create good working environment and the product company, when you create a good working environment it stays relatively stable, whereas with a consultancy it's your working environment plus you're working environment protecting you against any potentially problematic client working environments. There's two vectors of attack. Samantha Geitz: Right. Yeah and the clients are constantly changing and rotating probably and a lot of times they're coming to you because, "Oh, we have this massive deadline and we don't have the manpower to meet it." Or, "Our stuff is so broken and it's ... We need help." We've had a lot of people come to us, "All of our tests are failing and we just don't have the space to fix it. Please come help us." Projects like that can be really, really fun, but it's always an opportunity for stress. Matt Stauffer: Yeah, stress to sneak in. Samantha Geitz: Matt and I have a lot of conversations like, "Okay, how do we keep stress from trickling down to the developers?" Matt Stauffer: Yeah. Samantha Geitz: That's a lot of my job is just to be a shield against that. Matt Stauffer: Very cool. I will make it through a podcast one day without saying I could talk for hours. Today's not that day. I could talk for hours, but we're out of time. Is there anything that you wanted to cover that we haven't gotten a chance to talk about yet? Samantha Geitz: Oh man, I don't know. Should we plug the dev battle? When's this podcast being released? Matt Stauffer: This will be released within the next week. I've heard that some company, I don't know. Some company you might work at will deal with it, but I'm trying not to nepotize that, but if that's what you want to plug to your guests then go ahead. Samantha Geitz: Oh no. This is the Laravel podcast nepotism and feelings version for sure. Back on the React track, if you are interested in learning more about React Native specifically and/or Native tools if you care about Vue. No one listening to this podcast cares about Vue though clearly. It's Keith Damiani, who's the other senior developer and I had a dev battle about a year ago and I still think the results were bananas, but Vue was declared the winner, so we're doing a round two. Or I guess a part two with three rounds and it's the React Native versus Native Tools battle. It is called Native Tools ... Matt Stauffer: I think it's Native Script right? Samantha Geitz: Is it Native? No you're right, it's Native Script. See you can tell how much I know about this. I just literally wrote a blog post about it too. Native Script. Part one is going to be we basically just build a super basic card app. We're either going to just save it to whatever local storage or I have an API set up with predefined user authentication tokens. Samantha Geitz: Round two is authentication authorization, so trying to figure all that out and round three, because a question. We've not done a React Native project yet as a company and one of the questions Matt and Dan are always asking me is how much code reuse is possible, so if we want to build a web app can we use React Native code? Matt Stauffer: Right. Samantha Geitz: Round three is us taking those apps and then basically building a web app also and seeing how we can reuse code. We also have Caleb Porzio joining Team Vue and Daniel Coulbourne joining Team React. We've pulled the 20% time ... Matt Stauffer: 20% FM. Samantha Geitz: Yup. Pulled those guys in. Oh and the one thing I didn't mention is we don't really know these tools that well, so we're just figuring it out on the fly. Paring and ... Matt Stauffer: It's very different ... Last time it was a React developer and a Vue developer with an unknown task. Now it is you know the task but you don't know the code. It's going to be a total flip of what it was last time. Samantha Geitz: Right, we have mock ups, we have the API. Everyone knows what we're building, which oddly, even though I don't know this and once again, the internet might look at me and be like, "Oh, what is this girl doing?" It's so much less pressure. I'm okay with live coding with the expectation like, "I don't know what I'm doing. I'm figuring it out." Matt Stauffer: Right. Samantha Geitz: "If I don't figure it out, okay, you try to figure out React Native in four hours bozo." Matt Stauffer: Versus trying to pretend to be the expert and then people can criti ... yeah yeah. Samantha Geitz: Exactly, exactly. The pressure of live coding for any of y'all who haven't done it, especially in a timed battle context. Matt Stauffer: It's extreme. Samantha Geitz: Things that I do every day, I was like, "How do I do this? I need to look it up." It's hard and I'm not even sweating this one, but it is ... if it's coming out next week, it'll be this Friday, May 25th. It's battle.tighten.co we have all the info and there's a blog post coming out too. Matt Stauffer: If you listen to this after the fact, the recording will be there as well. Whether you listen to this before or after the battle still go to that same site. Samantha Geitz: Well there's going to be three rounds, so even if you miss the first round you can come and ... It's going to be on Twitch. You can smack talk. You can help us if you know anything at all about React Native or Native Script. I wanted to call it Native Tools again. Samantha Geitz: Yes, it will be a very fun time. Spicy meatball of a time. You should tune in. Matt Stauffer: I feel better about this being less nepotistic because they planned this entire thing without me even knowing it was happening, and they literally planned the first one during my son's pre-school graduation so I won't even be there. I'm going to tune in after the fact and hear how it went. I actually am disconnected from this, I promise. Samantha Geitz: You making it sound like we did it on purpose. We didn't want Matt there so we planned it during Ky's preschool. Matt Stauffer: It's not my thing that I'm pretending to not be ... I actually wasn't there for the planning so it's just going to be a nice surprise for me as well. Samantha Geitz: It'll be a nice surprise for all of us. It's going to be ... We're winging it y'all don't judge us too harshly, unless it goes well in which case, yeah, you can ... Matt Stauffer: We totally knew what we were doing. Right? Okay, anything else you want to plug or talk about or share? Samantha Geitz: Nope not really. Follow me on Twitter. Matt Stauffer: If people want to follow you, yeah, how do they follow you? Samantha Geitz: Yes, Twitter fame, I told you. It's @samanthageitz which G-E-I-T-Z I'm assuming also you probably will see my name in your little ... Matt Stauffer: Put it in the show notes, yeah. Samantha Geitz: Podcast thing. It's a lot of ... can I say, shit posting. Can you beep it out? Matt Stauffer: You can say shit posting. Samantha Geitz: Shit posting. I'm like people listen to this- Matt Stauffer: That's our cuss for the episode. Samantha Geitz: I haven't. Have you noticed I didn't Matt? I was trying really hard not to swear on the Laravel podcast. Matt Stauffer: I know I was really proud of it. Samantha Geitz: Yes. I have the filthiest mouth at Tighten. I haven't been reprimanded and I still feel like it's a thing. I also was told that I'm the bro-iest brogrammer at Tighten which is now part of my Twitter. Matt Stauffer: That is most certainly true. Samantha Geitz: Bro I would crush some code. Matt Stauffer: Right, our single cuss down at the end of the podcast. I think I'll probably let this one slip through. Samantha Geitz: Yes. Matt Stauffer: All right Samantha, this was a ton of fun as always. I loved it. Thank you so much for giving us some of your time and your story and we will all see you at the Battle for React and Vue and whatever all that stuff. Samantha Geitz: Well thank you so much for having me. Matt Stauffer: Yeah, see you later. Samantha Geitz: Bye.
Jake and Michael discuss Laracon announcements, new framework features, model caching, and more.
Recorded November 30, 2017 Topics -Buskoin -PHP: News Archive - 2017 -https://wiki.php.net/rfc/trailing-comma-function-calls -Dreaming code -“I’m thrilled to finally reveal that my secret project is bringing a Laracon to Australia!" -Laracon US 2018 is Announced - Laravel News -My Mental Health Toolbelt – Taylor Otwell – Medium -CompuServe’s forums, which still exist, are finally shutting down -Firefox Will Warn Users When Visiting Sites That Suffered a Data Breach
Jake and Michael return after a few weeks' hiatus to recap Laracon US 2017, the big reveal of Laravel Horizon, and catch up on the latest framework news.
Day 1 of Laracon US 2017 is a wrap and the after party is well underway. We grabbed a few developer friends for a quick recap of the day’s events.
In the final Laracon Sessions episode for 2017, Jake and Michael are joined by Taylor Otwell, Jeffrey Way, Matt Stauffer, and Adam Wathan to get the final word on the upcoming Laracon US conference in New York City.
Images. Where do you put them? What are they called? Thumbnails? Big ones? Ahh?!?! Links: [5.5] Allow macros to be registered using classes (in addition to closures) by sebastiaanluca · Pull Request #19782 · laravel/framework [5.5] Add Route::view() helper by brayniverse · Pull Request #19835 · laravel/framework [5.4] Make Arr::random($array, 1) return an array of one item by vlakoff · Pull Request #19826 · laravel/framework [5.5] Add Route::redirect() method by brayniverse · Pull Request #19794 · laravel/framework [5.5] [Concept] PSR-11 compliant container by deleugpn · Pull Request #19822 · laravel/framework Watch Ryan Singer - Design: Case Study from Laracon US! 54: Jonathan Reinink - Forms: The Worst Part of Web Dev | Full Stack Radio
In this episode, the crew talks about Mix, Dusk, Laracon US, package development using TestBench, GitLab, and more. Gitlab.com Database Incident Laravel from Scratch Laracon Orchestra Testbench
In this episode, the crew discusses Laracon US & EU, Laravel 5.3, Laravel's first hire, and the heart-wrenching sense of loss created by Bing Bong's death. Streamacon Laracon US videos Laracasts 5.3 series Mattstauffer.co 5.3 series Laravel news 5.3 release post What's up with Laravel Up and Running? Soft delete commit note Tighten Quicksand
LN23: In this episode, we talk about last weeks Laracon, some of our favorite talks, and the new Laravel News.
LN22: A special "Laracon" edition of the podcast. In this episode, we chat with Taylor Otwell, Evan You, Adam Wathan, and Chris Fidao about their talks at Laracon, projects they're working on, getting the most out of the conference and more.
In this episode, Jacob and Michael talk about the upcoming Laracon US in Louisville, Kentucky and share their thoughts on Adam Wathan's recently released Refactoring to Collections book.
In this episode, the crew discusses the releases of Valet and Echo, Laracon US 2016, Laravel 5.3, and their favorite nut. Valet docs Homebrew Event Broadcasting Laravel Echo Pusher
A live recording from Laracon US in Louisville, Kentucky.