The Laravel Podcast brings you Laravel and PHP development news and discussion. Season 5 consists of Matt Stauffer interviewing the creators of the most popular packages in the Laravel ecosystem.
Similar Podcasts
The Rabbit Hole: The Definitive Developer's Podcast
Welcome to The Rabbit Hole, the definitive developers podcast. If you are a software developer or technology leader looking to stay on top of the latest news in the software development world, or just want to learn actionable tactics to improve your day-to-day job performance, this podcast is for you.
PHPUgly
The podcast your mother warned you about. Ramblings of a few overworked PHP Developers. We discuss everything, from the challenges and excitement of running our small business and development shop the DiegoDev Group, to general day to day coding projects, to anything geek related or any other tech topics.
Hosted By @shocm, @realrideout, and @johncongdon.
Become a Patron!
The Laracasts Snippet
The Laracasts snippet, each episode, offers a single thought on some aspect of web development.
Authorization and Authentication, with Joseph Silber
Joseph on twitter - https://twitter.com/joseph_silberJoseph's Blog - https://josephsilber.com/postsJoseph on the Laravel Meetup about collections - https://youtu.be/ajDwUNfKu48?t=140Joseph on GitHub - https://github.com/josephsilberSome of Joseph's contributions to Laravel - https://github.com/laravel/framework/pulls?q=is%3Apr+author%3AJosephSilber+is%3AclosedGetting the Current User in a Laravel Controller Constructor - https://josephsilber.com/posts/2017/01/23/getting-current-user-in-laravel-controller-constructorPassword Hasing - https://www.wired.com/2016/06/hacker-lexicon-password-hashing/APP_KEY and you - https://tighten.co/blog/app-key-and-you/Rainbow table (attack) - https://en.wikipedia.org/wiki/Rainbow_tableMD5 Hash - https://en.wikipedia.org/wiki/MD5Laravel hashing docs - https://laravel.com/docs/hashingPSR-2 - https://www.php-fig.org/psr/psr-2/Laravel Socialite - https://laravel.com/docs/socialiteLaravel Passport - https://laravel.com/docs/passportLaravel Spark - https://spark.laravel.com/Bouncer - https://github.com/JosephSilber/bouncer/blob/master/readme.mdOriginal "Psalm 23" by Bentzion Shenker (Hebrew) - https://m.youtube.com/watch?v=KzMCqt57qmoModern Rendition of "Psalm 23" by Shuly Natan (Hebrew) - https://m.youtube.com/watch?v=sMwo4ubRTic"The Gates of Tears" by Avraham Fried (Hebrew, some English) - https://m.youtube.com/watch?v=vikoSGBcsCo"The Engagement" by Michoel Schnitzler (Yiddish) - https://m.youtube.com/watch?v=dAVEiKIegCg“Unity” by MBD (English) - https://m.youtube.com/watch?v=vTHakspnkWA“Going Home” acapella by Beri Weber (mostly no lyrics, some Yiddish) - https://m.youtube.com/watch?v=ftSXISHvbrY“Charasho” by Benny Friedman (English, some Russian) - https://m.youtube.com/watch?v=acTT862craE Episode SponsorshipTranscription sponsored byLarajobsEditing sponsored byTighten
Migrations, Factories, and Seeding, with John Bonaccorsi
John on Twitter (https://twitter.com/imjohnbon)Laravel Docs on Migration (https://laravel.com/docs/7.x/migrations)Laravel Docs on Factories (https://laravel.com/docs/7.x/packages#factories)Laravel Docs on Seeding (https://laravel.com/docs/7.x/seeding)Twenty Percent Time Podcast: Class Based Model Factories (https://twentypercenttime.simplecast.com/episodes/john-bonaccorsi-class-based-model-factories)Laracasts: Improve Test Arrangements with Factory Classes (https://laracasts.com/series/build-a-laravel-app-with-tdd/episodes/17)Blog Post on Class-Based model Factories (https://tighten.co/blog/tidy-up-your-tests-with-class-based-model-factories/)Tighten on Twitter (https://twitter.com/tightenco)Tighten's Blog (https://tighten.co/blog/)Fantasy BB (https://fantasybb.com/)Avatar: The Last Airbender (https://en.wikipedia.org/wiki/Avatar:_The_Last_Airbender)Laravel 8 Model Factory Classes (https://laravel.com/docs/8.x/releases#laravel-8) Episode SponsorshipTranscription sponsored by LarajobsEditing sponsored by Tighten
Eloquent and the Query Builder, with Jonathan Reinink
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
Debugging and Monitoring, with Jonty Behr
Jonty’s Twitter - https://twitter.com/jontybehrCodeigniter - https://codeigniter.comMettle - https://mettle.io/Laravel Live UK - https://laravellive.uk/PaperTrail - https://papertrail.com/Understand.io - https://understand.io/Xdebug - http://xdebug.org/Bugsnag - https://bugsnag.com/ELK Stack - https://www.elastic.co/what-is/elk-stackTICK stack - https://www.thoughtworks.com/radar/platforms/tick-stackMatt’s live stream with Derick - https://www.youtube.com/watch?v=iloCjuqMdKULaravel discord channel - https://t.co/4fjanVoFIE?amp=1Send Portal - https://sendportal.io/Charity Majors and Observability - https://hub.packtpub.com/honeycomb-ceo-charity-majors-discusses-observability-and-dealing-with-the-coming-armageddon-of-complexity-interview/ Transcription sponsored byLarajobsEditing sponsored byTighten
Routing and Blade, with Caleb Porzio
Caleb on Twitter: https://twitter.com/calebporzioLivewire: https://laravel-livewire.com/Alpine: https://github.com/alpinejs/alpine/Sticker pack: https://stickers.calebporzio.com/Sushi: https://github.com/calebporzio/sushi/Tighten: https://tighten.co/Laravel Blade: https://laravel.com/docs/7.x/bladeTwig: https://twig.symfony.com/@overwrite answers for Blade: https://www.reddit.com/r/laravel/comments/3om7p3/missing_from_the_blade_docs_show_overwrite_append/cvypt9h/YouTube teachers: TraversyLivewire screencasts: https://laravel-livewire.com/screencasts/installationTALLStack: https://tallstack.dev/Make VS Code Awesome: https://makevscodeawesome.com/ Episode SponsorshipTranscription sponsored by LarajobsEditing sponsored byTighten
Local Environment with Valet, Homestead, and Docker, with Chris Brown, Jose Soto, Joe Ferguson
Chris’s Twitter: https://twitter.com/DrByteZCJoses’ Twitter: https://twitter.com/josecanhelpJoe’s Twitter: https://twitter.com/JoePFergusonValet: https://laravel.com/docs/7.x/valetHomestead: https://laravel.com/docs/7.x/homesteadDocker: https://www.docker.com/Laradock: https://laradock.io/Vessel: https://vessel.shippingdocker.com/Jose on Twenty Percent Time: https://twentypercenttime.simplecast.com/episodes/jose-soto-docker-for-local-development-P7pz7_EJJose on Laracasts: https://laracasts.com/series/guest-spotlight/episodes/2Jose's Docker Site: https://daytodaydocker.com/Valet Diagnoses Command: https://github.com/laravel/valet/issues/936HyperV: https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/about/VirtualBox: https://www.virtualbox.org/VMWare: https://www.vmware.com/ Episode SponsorshipTranscription sponsored by LarajobsEditing sponsored byTighten
Object Oriented Programming, with Alena Holligan
Lorna Jane Mitchell: https://lornajane.net/Craig Dennis - Java: https://teamtreehouse.com/craigsdennisLumen Learning: https://lumenlearning.com/Some treehouse courses from Alena: https://teamtreehouse.com/alenaholliganLate static bindings, w/r/t self and static: https://www.php.net/manual/en/language.oop5.late-static-bindings.phpHeadcanon: https://www.urbandictionary.com/define.php?term=headcanonSketchings on GitHub: https://github.com/sketchingsAlena Holligan on Twitter: https://twitter.com/alenaholligan Episode SponsorshipTranscription sponsored by LarajobsEditing sponsored byTighten
Getting Good with Git, with Gemma Anible
Gemma on twitter: https://twitter.com/ellothethGemma on Mastodon: https://mastodon.technology/@ellothethGemma’s web site: https://ramblinations.com/Gemma on YouTube: Navigate your git repository: https://www.youtube.com/watch?v=QeABW6OU1GgWonderProxy: https://wonderproxy.com/CVS: https://nongnu.org/cvs/Subversion: https://subversion.apache.org/Washington, DC legal code: https://github.com/DCCouncil/dc-law-xmlSolo TV show: https://en.wikipedia.org/wiki/Solo_(TV_series)Felicity Kendal: https://en.wikipedia.org/wiki/Felicity_KendalEffervescent: https://www.thefreedictionary.com/effervescentThe Ars Technica article where I read about it: https://arstechnica.com/tech-policy/2018/11/how-i-changed-the-law-with-a-github-pull-request/TortoiseSVN (https://tortoisesvn.net/) and TortoiseGit (https://tortoisegit.org/), both for WindowsGit fast forwards: https://confluence.atlassian.com/bitbucket/git-fast-forwards-and-branch-management-329977726.htmlImage halfway down this blog, “The Git History Is A Graph!“: https://jqassistant.org/shadows-of-the-past-analysis-of-git-repositories/For what would be in the Git reflog on Github: https://developer.github.com/v3/activity/events/Git: https://git-scm.com/Pro Git boo: https://git-scm.com/book/en/v2Learn Git Branching: https://learngitbranching.js.org/Matt’s Git Cherry Pick article: https://mattstauffer.com/blog/how-to-merge-only-specific-commits-from-a-pull-request/Timothy Zahn’s Star Wars trilogy: https://www.goodreads.com/series/42348-star-wars-the-thrawn-trilogyMara Jade Skywalker - https://starwars.fandom.com/wiki/Mara_Jade_SkywalkerEnder’s Game - https://en.wikipedia.org/wiki/Ender's_Game Transcription sponsored by Larajobs: https://larajobs.com/Editing sponsored byTighten: https://tighten.com/
Intro to Composer, with Jordi Boggiano
TeamUp: https://www.teamup.com/Jordi's Twitter: twitter.com/seldaekComposer docs: https://getcomposer.org/doc/Private Packagist: https://packagist.com/Jordi's Composer Deep Dev talk at Laracon EU: https://www.youtube.com/watch?v=q3UfxubW_PUComposer Best Packages talk by Nils: https://www.youtube.com/watch?v=EpvihKaQyLsJordi's OSS wish list: http://seld.be/wishlistBalvenie scotch: https://www.thebalvenie.com/Transcription sponsored byLarajobsEditing sponsored byTighten
Learning & Keeping Up To Date, with Eric Barnes
Laravel News: https://laravel-news.com/Laracasts: https://laracasts.com/Laravel News Newsletter: https://laravel-news.com/newsletterEric Barnes' web site: https://ericlbarnes.com/Eric Barnes on Twitter: https://twitter.com/ericlbarnesUserScape: https://userscape.comLarajobs: https://larajobs.com/Laracon Online: https://laracon.net/Tumblr: https://tumblr.com/Popular YouTube Laravel teachersMatt's streams: https://youtube.com/mattstaufferCoder's Tape: https://www.youtube.com/channel/UCQI-Ym2rLZx52vEoqlPQMdgTraversy: https://www.youtube.com/channel/UC29ju8bIPH5as8OGnQzwJyAPopular Laravel blogsMatt Stauffer: https://mattstauffer.com/Tighten: https://tighten.co/blogLaravel Daily: https://laraveldaily.com/Freek: https://freek.dev/Adam Wathan's video coursesRefactoring to Collections: https://adamwathan.me/refactoring-to-collections/Test-Driven Laravel: https://course.testdrivenlaravel.com/News podcastsLaravel News Podcast: https://laravel-news.com/category/podcastLaravel Snippet: https://podcasts.apple.com/us/podcast/the-laravel-snippet/id1451072164Todo app tutorials in the Laravel docsLists of open source Laravel apps:https://github.com/chiraggudeawesome-laravel#codebases-for-referenceTighten open source SaaSesNovaPackages: https://github.com/tightenco/novapackagesOnramp: https://github.com/tightenco/onrampSymposium: https://github.com/tightenco/symposiumOzzie: https://github.com/tightenco/ozzieGistlog: https://github.com/tightenco/gistlogGiscus: https://github.com/tightenco/giscusLaravel: Up and Running: https://laravelupandrunning.com/Onramp: https://onramp.dev/Transcription Sponsored by LarajobsEditing Sponsored by Tighten
The Ethos of Laravel, with Taylor Otwell
Taylor on season 3 of the podcastJiro dreams of sushiTaylor asking about obsession with “pretty” code on StackExchangeSymposiumThe Laravel Snippettaylorotwell on Twitter LaraconTranscription sponsored by LarajobsEditing sponsored by Tighten
Introducing Laravel Podcast Season Four
We're back! It's a new season, and a new format: Each episode will bring a guest or guests on to talk about a single topic in the Laravel world.
Interview: Lalit Vijay, Curator of Laravel Live India and Co-Founder of StyleDotMe
An Interview with Lalit Vijay, Curator of Laravel Live India and Co-Founder ov StyleDotMe Lalit on twitter StyleDotMe Masters of Scale Reply All The Knowledge Project Inside Intercom Transcription sponsored by Larajobs Editing sponsored by Tighten Matt Stauffer: Welcome back to The Laravel Podcast, season three. Today I'm talking to Lalit Vijay, the original founder of Laravel Live India, the co-creator of some great meet-ups there, and much more, stay tuned. Matt Stauffer: Alright, welcome back to The Laravel Podcast, season three. Today I'm gonna be talking to Lalit Vijay, who is known in a lot of different ways. But interestingly, just like some of my favorite guests, a lot of you probably have never heard of him before, and a lot of you think he's the most amazing person on the planet and can't imagine why anybody wouldn't have heard of him. Matt Stauffer: And that's my favorite thing, where there's a community who knows him deeply and votes for him hundreds of times to come on the podcast. And then there's some of you who say, well who's that? So I'm excited for a new opportunity to share with you somebody who, who you didn't know about before, and afterwards, you're glad you had the chance. So first of all, introduce yourself. And when you meet somebody in the grocery store, what do you tell them that you do? Lalit Vijay: So, hi first to the whole audience of the Laravel Podcast. I have been following it, and it's a kinda great pleasure for me to be over here. Thank you Matt for that opportunity. And for me, I generally introduce myself as a backend lead and operation manager at StyleDotMe. And along with it, I curate meet-ups in India for the Laravel community because I want this thing to grow and reach to, across India in a really, really big way. Matt Stauffer: So if you meet somebody in the grocery store, and they say, what do you, and you say, oh I'm the backend lead of blah, blah, blah, StyleDotMe, do they say I don't know what that is, or because it's a product, do they more say well, I don't know what that is, but what's StyleDotMe? Are you usually able to kind of skip around the conversation of what you do by talking about what you're doing it for? Lalit Vijay: Fun fact, what happened in my day-to-day routine is since we are the founding members of our startups right, so we get really bogged up, and 80% of time may consumes with either my teammates or meeting new clients and handling the backend stuff at the company. All my grocery and all that stuff is actually delivered online so I just roll with it. Matt Stauffer: Okay, so do you go, I'm trying to think of a separate context. Do you go to the gym? Do you go to the coffee shop? Where do you actually randomly meet people who aren't in tech? Lalit Vijay: Okay so, at airports, whenever I'm traveling across India. Matt Stauffer: Perfect. Lalit Vijay: And at that point of time, I start mostly I talk around my product at StyleDotMe, what you do. And it's like we build augmented reality applications, SnapChat virtual lens or that's a business and application and then people start and then I show them the product and actually make them try it on themselves. So yeah, that's yeah. Matt Stauffer: Okay. So is StyleDotMe, will you talk about StyleDotMe because I'm sure it'll come up again. Is it more something that your primary people you're selling to is the retailer and then the retailer, Lalit Vijay: Right. Matt Stauffer: Do they get a white labeled version of it? Lalit Vijay: No. Matt Stauffer: So they're having their clients use StyleDotMe but then pick them in StyleDotMe or something. Lalit Vijay: Right, right. Matt Stauffer: Okay, got it, okay. So you said you're the backend lead. Lalit Vijay: Yes. Matt Stauffer: So what I assume is that it's a primarily mobile app that's consuming probably something Laravel-ish. What does your tech stack look like in general? Lalit Vijay: So at Laravel, we use very different like multiple stack. It's not just Laravel over there. So at StyleDotMe, the primary application runs on IRIS. And where the real, our Machine Learning model runs, and so it detects a face, it figure outs your exact ear points, your neck points and overlay the items on that. Now to make it happen, what we use is a, we use a file base for real time data communication across all the devices. What we use Laravel for is like primarily backend tasks for uploading all the inventory data, managing those inventory data and making sure that what should go live, what should not go live. So, whatever the things which our admin panel controls, this is basically in the Laravel. Apart from that, we do a lot of data processing, image processing and all that happens in Python. Matt Stauffer: Okay. Lalit Vijay: Yeah, so it's like a bit of diverse. Laravel is one sort of part of it. Matt Stauffer: Okay, and obviously I want to ask more questions about that, but usually what I want to dig into is who you are as a person. But again, like I said, since some people don't know who you are as a well-known person, I at least want to lay the groundwork a little bit. So, that's your day to day work. And you said you're a founding member of the startup, so, how much of your work is coding and how much of your work is organizational and people-related? Lalit Vijay: Okay, so that's interesting. Initially, it was a lot of coding. Matt Stauffer: Right. Lalit Vijay: Initial two years was a lot of coding time. But now, I think 80% coding and 20% operations and managing people. Matt Stauffer: Yep, yeah, totally. Okay, and then other thing that you're actually probably more known for at least in Laravel world is that you're the organizer. Are you the organizer or co-organizer? Are you the primary person? Of Laravel Live India. Lalit Vijay: So I started it, but now what I always wanted from the community is that everybody's part of it. And whoever each volunteer, each participant is actually organizer for me. So, whether it is Fahad this year, Rishalla is putting a lot of effort. So, all these people are the building blocks of the community. It's not something which I say that okay, this is what I'm doing. This is my community's doing, and they're helping me out. Matt Stauffer: I love it, that's a good attitude, man. So, you are the original founder and now one of many organizers of Laravel Live India, which is a very large, and it's in its third year now, right? Lalit Vijay: Yes. Matt Stauffer: The Laravel conference. Lalit Vijay: Yes. Matt Stauffer: So tell us a little bit about, to somebody who's never heard of it before, tell us a little bit about the conference. Lalit Vijay: Alright, so for Laravel Live, it started because it was just one reason that I didn't have enough time to visit Laravel EU or US, and I wanted those awesome speakers over here so that more Indian people can interact with them. And conferences not only just give you space for knowledge setting but also meeting new people, which helps you expand your view of the community and help you grow in very different ways. So that was the key thing, the motivation and one day I decided that someone has to do it so, why not me? So, let's do it. And then we did the first version of it, and the response was pretty good. And a few people got job via that conference. And once I heard that that helped me feel motivated further, for it that yeah someone is getting benefited out of it. That's awesome, let's do it again. And now, after two years, this year it's pretty nice now. We selected venue based on community vote. Our people selected for Mumbai for this year. And we are doing this on third of March, 2019. Matt Stauffer: Oh, that's coming soon man. Lalit Vijay: Yeah, yeah, so, we have announced our speakers. We are preparing for it, and hopefully we'll see a lot of people especially people, Freep is there. Then Nuno is there, then Rumpel is there. So, these are a few people from the community which a lot of people know. And then there are a lot of developers within India who are actively working out and, it's pretty fun to see and be part of this whole community. Matt Stauffer: Very cool. So, one of the things that I think blew a lot of folks' minds was hearing about Laravel Nigeria being as many people as it was. Do you have an estimated count of what the attendance for Laravel Live India's gonna look like this year? Lalit Vijay: It's, so this year we are for doing 150 fixed. Also a number of places expect to-- Matt Stauffer: Got it. Lalit Vijay: Yeah. Matt Stauffer: And then you also are connected to, and I don't know exactly what the story is, but a series of meet-ups as well. Could you tell us a little bit about those? Lalit Vijay: Yeah so with this, before this conference, I started it as a meet-up. And the first meet-up was Laravel Live Delhi. And that was, actually the first meet-up got only five people. Oh yeah, five people. So we started that small, and over the period of time, we have grown very much. And recently we did a meet-up in Ahmedabad. Now the first meet-up in there was an attendance of 70 people. Matt Stauffer: Wow, that's awesome. Lalit Vijay: Right, so it's the meet-up which started with five people has grown to a 70 people meet-up. And in terms of conference, we on the first year we had 60 people turn out, second year it was 110, and we are doing 150 this year. So yeah, it's going pretty good. Matt Stauffer: Now is there, in any of the areas that you're doing this, do you have a big PHP community as well that's much larger, or is Laravel kind of really the main space where any of this work is happening in terms of community organization? Lalit Vijay: So I think with Laravel Live, now the Laravel community is growing. And how I see is that it's not just Laravel community which is growing, it's actually the whole coding community growing, right. People, we need to learn new things and the whole PHP space is growing overall. The biggest event I have seen in India with PHP domain is WordCamp for the WordPress. Matt Stauffer: Yeah, that seems to be the case in most places. Lalit Vijay: Yeah, so recently it happened in Ahmedabad with over 1,000 people of audience. Matt Stauffer: Wow. So what is the biggest tech stack around you? Is it Laravel if people are doing the type of work you're doing or there are other tech stacks that more folks are focusing on? Lalit Vijay: I think I see a lot of people around me working around Python. So, Python is kind of the, and that one kind of biased with me is I work well with a lot of people who are into image processing, Machine Learning and all that stuff. So, I find people who are mostly working in that domain. And website development kind of people are like not my core sort of thing when we look at the main R&D at StyleDotMe happens on Machine Learning and image processing, which is basically either CC++ and Python. Matt Stauffer: I've got lots more questions about that, but we've got to pause because at this point in the podcast, I've got to learn about you. So, tell me a little bit about you. When was it that you first used a computer, and when did you first start realizing you were into coding? Lalit Vijay: So, in fact the first time I got an opportunity to use my computer was in my school. I think I was in grade second or yeah, I was in grade second. Matt Stauffer: Okay. Lalit Vijay: At that time, we went to school, our teacher asked us to, this is computer? And at that time, we used to have that bulky computer system with bulky monitors and all that stuff. And, so from class two to class sixth, it was just a object of fascination where whenever you go there, you love it. Matt Stauffer: Yeah. Lalit Vijay: Alright, it's something cool and what I used to do at that time is only play one game called Dave, which I remember right now. So after that, my real interest started into the computers was after class seventh. Matt Stauffer: Okay. Lalit Vijay: I started learning things, I made friends of my school teachers and then I started skipping my lunch breaks and gained experience into the computer classes. Matt Stauffer: Very cool. Lalit Vijay: So, I used to sneak into, but there was just one challenge. 'Til that point time, I didn't have access to internet. It was computer without an internet. So the place where I live is one of the like remotest place in India. Matt Stauffer: Oh really? Lalit Vijay: Yeah, so my hometown is a place called Kordoma in Chakan. And it's like surrounded by 30 kilometer of forest all around the middle of the place. Matt Stauffer: Wow. Lalit Vijay: So, finding internet connection was a big challenge. But then I actually got in touch with one person who used to tution me, and tutor for my subjects. And he got in a job at the district center of the place and they had the internet connection there. The government there had this connection. And then I kind of ask him that can I spend an hour or something on that? That gave me access to good internet connection. But after his transfer from that place, I came back to the same point, no internet access. Matt Stauffer: Right. Lalit Vijay: And during 2008 and 2009 and thereabout really I grew kind of big, I got personally an internet connection where I was getting a 2KBPS, 3KBPS kind of speed. Matt Stauffer: You're kidding. Lalit Vijay: Yeah, and I started learning from that. Matt Stauffer: That's enough for like Telnet, and that's about it. What are you gonna do with that? Lalit Vijay: Yes, so at that point, I was like super happy that I have my own internet connection having 3 Kbps of internet. In fact, I remember one incident where I used it. I had taken screenshots of when this net speed was like 6 Kbps, like yay, I got 6 Kbps of internet speed. Matt Stauffer: Did you say 2008 or 2009 was when that was happening? Lalit Vijay: Yes, yes. Matt Stauffer: That's very recent for you to have almost no functional internet. Lalit Vijay: Right because that's a really remote place in India. Matt Stauffer: Yeah. Lalit Vijay: That point I then again try to make more friends with the government people. Matt Stauffer: Right. Lalit Vijay: Got a high speed internet connection again, spent a lot of time on YouTube, and then I started building website for freelancing. And that was for me, grade, I was in high school at that time. Matt Stauffer: Okay, how'd you learn? Lalit Vijay: YouTube. Matt Stauffer: Really? Like you'd just search on YouTube for how do I make a website and people add tutorials there? Lalit Vijay: Yes, yes, and so I'm self-learner. So from my education background I'm electronics and communication engineer. Right, but coding has always been kind of fascinating. It has always been actually easy, alright. So, that was easy to us to do, so we did this. And after high school, I moved to Delhi for my engineering. Matt Stauffer: Okay. Lalit Vijay: And there, then I experienced good internet connection. Now-- Matt Stauffer: So what year was this then? Lalit Vijay: Current net speed we have in our office is one Gbps connection, and at my home I have-- Matt Stauffer: Okay, I'm sorry, I was saying what year is it, but go ahead though, what do you have at home? Lalit Vijay: Okay so currently I have a 10Mbps connection at my home so that works fine enough to me. I moved to Delhi in year 2012. Matt Stauffer: 2012, okay go it. Lalit Vijay: Yes, so four year of slow internet connection, but after 2012 I did my engineering and during my final year, I started my first startup. We ran it for two years, then moved out of that startup. Now, after that I am working on StyleDotMe from 2016. Matt Stauffer: Okay, so what was the group of people who originally started StyleDotMe? How many of you and was there any funding, or was there just a couple friends started this? What'd that story look like? Lalit Vijay: Okay, so after my first startup got set down, I was complete kind of freeze where I was thinking what next in my life right. So, after starting a company you always try to like, try to find why things happen and whatever, and I met a really awesome girl called Meghna Saraogi. And this girl individually made a small seed funding ground with very little money. I can say you something like, you can say 25 lakh rupees. It's like 30 thousand dollars. With that small money, she came from a different city to Delhi with a prototype application on which she has raised a small ground up funding. The whole team gathered over here. Our current CTO is currently a student, right. He is finally an engineering student, but-- Matt Stauffer: Wait, your current CTO or your original? Lalit Vijay: Yes. Matt Stauffer: He's still a student? Lalit Vijay: Yeah, yes, so-- Matt Stauffer: Okay. Just had to make sure I heard that correctly. Lalit Vijay: Yeah so, he's the founding team member also and he's current CTO, and he started as basically as we all started, then we started giving tags to each other and he's now CTO and I'm handling the operations. So, that guy is like, was a very bright guy. Meghna was super passionate about the product and she lead the kind of vision to the company. Akil is like really the Android developer, and he sold his first company for $100K in 2016 when he was in high school. Matt Stauffer: Okay. Lalit Vijay: And then he started to build multiple applications, around 20, 30 applications and being featured in all the good magazines, and he's doing pretty good right now with us. And he's the kinda key person in building this augmented reality application on the IRIS. Matt Stauffer: Okay so, of your team, what's the breakdown of web application developers versus machine learning type folks versus whatever else? Lalit Vijay: Alright so, at web application we have just an admin panel and I handle that. Now we have added one more developer for that and the rest, Ahkil, Dhruv, and me and Avinash co-develop for the machine learning and the Python part, and Ahkil primarily take care of iOS. Matt Stauffer: Okay cool. So one of the things that I always do when I'm gonna be interviewing somebody is I ask everybody at Tighten, do you have any questions that you have for this person? And sometimes they say oh, I've always wanted to ask them this, and sometimes it's a little bit more, you know, oh I'm just curious about this in general. So, one of the questions that someone asked was: of the folks you know in India, especially in the area around you, who do Laravel, and obviously that's not a lot of your team, but to the folks from different conferences, is it more common for people to be employed full time, or is it more common for there to be freelancers? Is there a big freelance, 'cause we're noticing that that's something that we notice to be different depending on the country. So for example, in the U.S. there's very, very few Laravel freelancers, but we've found a lot in quite a few European countries. So what's like it like in India? And obviously it's gonna be different based on the city. Lalit Vijay: Yeah I think India is a very vast country, right? Matt Stauffer: Yep. Lalit Vijay: So it's pretty different in different places. If you talk about Zanzibar and all the tier two cities, you'll find only the kind of people who are employed working on that. If you find in Dehli or Bangalore, you will find some good amount of freelancers too. Matt Stauffer: Okay, yep, and that was kind of my expectation. It's a little bit like that in the U.S., but not as much as I would've expected. There's less and less freelancers around-- Lalit Vijay: Yeah definitely, it's a challenge, it's a challenge to find good freelancers. Matt Stauffer: And one of the reasons they were asking that is what does it look like when your startup needs to grow, and you can't find enough folks to work? Are you doing training for people? What's that like for you? Lalit Vijay: So currently what we do is we hire people who have at least a year or two year of experience, and then train them based on that basis. Matt Stauffer: Yep, on the job, yep. And the benefit is they get the training, and you get someone who knows the things you want them to know, and yeah, totally understand that. Alright, so one of the things we were curious about knowing was we talked a little bit about how you got into programming, but what was it that first got you into Laravel? Lalit Vijay: So I was doing a lot of freelancing work between my high school to third year of college. So from 2010 onwards to 2013. And during that time I was working with multiple people. And it was mostly working in PHP Code and CodeIgniter. And during that time I was just searching around, saw what's coming up and one day stumbled upon this Laravel. And I just checked it out, how is it. And the first class actually didn't took off, and when I came back, I think it was version 3.8 or nine I guess that I first just liked, And I tried my hand and I felt okay, CodeIgniter is fine enough, it works good for me now. And when I got my hand again on 4.2 it was like completely changed, and it was wow, wow. This is pretty nice. And then I started moving my projects on Laravel, and I build up multiple application for a few five star hotels, for at that time I was working with, it was Ramada and Radisson, yeah, so for them I was working. So I built a few application for their internal kitchen order management system, and that's how my initial Laravel experience, in terms of real development came across. And then with every new version started loving more, because every six month you had something interesting, something nice, and the whole community started. So with CodeIgniter and the code base what I was filling from, 2011 to '14, I feel like the community was going downhill. Every year it was slowing down, slowing down, and there's nothing new coming up in the whole PHP ecosystem. And with this growing Laravel community you felt that yep, again we are getting somewhere. And actually people are talking about things, they are selling stuff and they're building. They are not stuck with one version with the same base of code, and you don't know what next going to come, right? So that excitement took me over, and I completely ditched CodeIgniter, and then I used Laravel for my first startup from scratch. That was 2014, '15, and we built the complete front end and back end on Laravel. That worked out very well for us. And I think after 4.2 they were looking back in terms of it was getting better with everything. Whenever I miss something, mostly like it was going to come in next version. Matt Stauffer: That's cool. So one of the other questions I got that I thought was really interesting was, could you think of any ways that developing Laravel applications in India, specifically with Indian audiences, is different than it might be somewhere else? Is there anything you think that folks outside of India might not know about the context or the audiences? One of the things that someone specifically mentioned, I actually talked to Marcel Plizio, and he mentioned the fact that you had said that you have to think about scale a little bit earlier sometimes, because there's so many people. So that, and anything else, are there any other aspects of developing in India that you think that other folks might not be aware of? Lalit Vijay: So the one thing which people think is, since India is a really diverse place, and there is a lot of dialects, but still the major verbal development happens in English only, and you don't really need localization. I think in going few down years from here now we will be seeing a lot of localization within the Indian community. Because a lot of new people coming on the internet, and the rate of acceleration of growth of newcomers coming on for online consumptions is really, really getting big, it's booming. And with that I think more localization will come into the play. For right now mostly it's the English, and the scale is the one reason, because you hit 10,000 users in very soon. And then. If you have 10,000 users you really don't feel like you've got anything until it's like 100,000, right? So yeah, so I think the first time I felt that was we were doing a really small activity, and I wasn't expecting that how much traffic I will get. And my systems are down, that was completely on Laravel. And the moment I saw what was the reason is my data was site down because number of requests per seconds I was handling was too high. It was like 300 requests per second. And for the activity with one influence, having I think 50,000 followers or something, make everybody bogged up on at the same time, I wasn't expecting that kind of response. So yeah, in India that happens, that you can really hit the numbers really fast. Matt Stauffer: Interesting, yeah. So are there any things that you just think of on every new project that, you know, of the folks without that context, 10,000 sign ups might be a six month goal, or a year goal for some folks, and for you you say well, I might hit that super early. Do you say oh, well here's one thing I do on every project that other folks might not have to think about, or something like that? Lalit Vijay: So with us, we always set up the system with load balancer and all the basic coordinates installation pre-loaded. And with us it has always been the case where we do, and then we start doing some out-of-the-box marketing activity. And for that specific duration, our users sort of grow 10 times, 15 times from the normal use cases, right? And that those cases you really need to be aware. But in 80% of the cases the growth is linear on developments you're not doing. With us, what happened currently is we dealing with a lot of enterprises consumers, right? And so we are currently dealing with, out of top 10 brands we are working with top five. So the moment they start, they start very small, like on few retail stores, and when they grow, your growth is going to be get like 10X once the pilot is done. So you just need to make sure that after a month, or two month you are not going to get stuck because the expansion or number of applications are running simultaneously has grown 10X. Matt Stauffer: So what kinda tools do you use to be aware of when you need to scale? What are you using for monitoring? Lalit Vijay: Okay, so currently I use AWS CloudWatch a lot to drag down all that stuff. And over here, since we had everything is enterprise consumers, we do have really on understanding, right? Because with enterprises you need to do a lot of integration and all that stuff before going live, even after the pilots. So we do know kind of base growth now we are going to have, and that's the kind of benefit of being a SAS company with B2B clients. So you have more predictability in terms of what kind of users you're going to see. Matt Stauffer: Is CloudWatch enough to give you everything that you need? Like let's say you know it's gonna happen, but you don't know, well, X number of users, what kinda resources they need. Can you get all that at CloudWatch, are you using a Blackfire, a New Relic, or an Eyewitness or something like that? Lalit Vijay: So the fun fact about us is that for us, the end people who are going to use Laravel back end is very, very limited. Currently we are just with 50 enterprises consumers, right? But they control almost 30% of the whole market's pie, right? So you exactly know the number of consumers, and they are going to sign up. So on the back end part, where the main Laravel meat is working, is really not all that traffic insane. The part where we have unpredictable kind of users is the end-consumer application which is installed in the retail stores. That is completely not on Laravel at all, that's on Firebase. And the machine learning model is within the application only, right, which we train on separate with the application. Matt Stauffer: Oh okay, so is Firebase taking the majority of that? So well the machine learning, is that running on your own servers, or is that in something like Lambda? Lalit Vijay: No, so we train our model on our own systems, and once the model is generated we separate along with the application. Matt Stauffer: Oh, okay, that makes more. Oh, so when you say the application, you mean the actual iOS application has all that embedded. Lalit Vijay: Yes, yes, yes. Matt Stauffer: Okay, so the actual calls from the front end user-facing application to the back end primarily hit Firebase? Lalit Vijay: Yes. With the Firebase even, so since we are working with retailers with a lot of different places where internet reliability is not constant, right? So we work in a way where you have offline storage of everything. So from the last point of internet connectivity you have everything there, and the application will run perfectly fine for you. The moment we got connected with a proper internet connection, we just sync the latest data for them. So number of request we've finally made to our servers is very, very, we try to limit them, because we need to make sure that it runs offline perfectly. Matt Stauffer: What is the tech stack that you're using to generate your iOS, are you using Swift, or? Lalit Vijay: No, it's a Native-C, Objective-C. Matt Stauffer: Okay, got it, I guess that makes sense since you were talking about using C and C++ for your machine learning, okay. Off the top of your head, is there one piece of technology that you predict is just gonna get huge that you're really excited about? Lalit Vijay: AR, yep. Matt Stauffer: Okay, tell me more, I mean as your average developer thinks about that, what should they be prepared to be learning and thinkin' about? Lalit Vijay: So in front-end development, I think AR will change the way currently people are solving, right? And if you see all the big players across the globe are playing and trying things to do in the right way, right? And in India what we see is all these retailers, the reason even after being a very small company in number of head counts we call, and the kind of startup we are, the kind of companies we are working with is like the biggest brand of the country, right? And the reason of that is the kind of innovation we are bringing on the table. So currently the product we have is the only product in this world which can do real-time augmented reality for the jewelers, with such high precision. So a lot of time we find that our model works better than what currently SnapChat has. And we have filed patents for that now. Matt Stauffer: That's very cool. Lalit Vijay: Yeah, so the kind of effort we are putting in in terms of building the fine product for the end consumers, and the kind of response we are getting from the end consumer is really fabulous, right? So just now imagine, today you are sitting there and you have to buy something for you wife, right? And let's say you're giving a surprise to her. What you will do? You will go to a store and you will try to see, this might look good, right? But how are you going to try on her? What we do there is you just take her picture, and put item on her. Matt Stauffer: I was just gonna ask, can I just hold a picture up in front of the camera? Lalit Vijay: Yes, yes, yes, so you just hold up a picture of her and see her wearing the jewelry which you wanted to buy for her. And then you can decide it much better. And this stuff is gradually, I see in a big way, everybody's asking us please give us the web version, but we are not doing it because the kind of quality which we are getting on the web version is not up to the mark, the kind of quality we are developing on the iOS native application, right? So I see a lot of demand in terms of AR, and every sort of company, from Amazon, to this Tiffany, to this L'Oreal Paris, all kind of beauty, jewelry, all domains are using crazily. Matt Stauffer: That's really cool. Lalit Vijay: Yeah. Matt Stauffer: Did all the work that Apple did recently to improve AR in the most recent versions, did that really make a big difference in the possibility for it to be big in the future? Lalit Vijay: We were very excited about ARKit, that that might help us a lot by reducing our work. But it didn't help it that much. It still requires a lot of work right now. The kind of output is not for the enterprises grade right now. Matt Stauffer: Got it, so you think in a couple years it might be different, but right now, for someone to do something at your level, you still have to be doing most of the work on your own. Lalit Vijay: Yes, yes, yes. Matt Stauffer: Okay, yeah. Yeah, I've definitely had that same perception. Alright, let me look at a couple of these other questions, 'cause we're runnin' short on time and I wanna make sure I get everything. If you get a day free, and all the sudden there's no work, and for some reason you can't work, the internet's down at work, whatever, what are you gonna go do with your time? Your favorite thing to do. Lalit Vijay: Okay, so I spend a lot of time while traveling or anything is listening podcast, and reading books. And if not that, then most likely I do not get enough time to spend with my girlfriend, so I do that, yeah. Matt Stauffer: If you don't mind me asking, what would your favorite thing to do with her? If time and money were no constraint, what would you wanna do? Lalit Vijay: Just sitting in a silent place with a mountain with a nice view. Matt Stauffer: Okay, I like that, cool. What are your top five podcasts? Lalit Vijay: Currently, the one which I really love is one, since I'm kind of startup guy, I spend a lot of time on Master of Scales. The other one is Laravel Podcast. So Master of Scale is from Reid Hoffman. Matt Stauffer: Okay, I didn't know he had a podcast. Lalit Vijay: Yeah, yeah, and that's a really nice podcast, especially for the startups. The kind of insights we get is really nice. And now let me just stop into my podcast. Okay, and then this is really nice. You might have heard this, Reply All. Matt Stauffer: Oh yeah, yeah, yeah. Lalit Vijay: Yeah, yeah, I love that, then there is a podcast by a company called Intercom, they have a nice podcast. Matt Stauffer: Yeah, definitely. Lalit Vijay: And then there is called The Knowledge Project, yeah. Matt Stauffer: Okay, I don't know The Knowledge Project, I'll make sure these are all linked in the show notes to everybody. But I can't believe that I didn't know that Masters of Scale existed, I'm just reading through the site and it looks really fascinating. Lalit Vijay: Yeah, it's a really nice podcast. Matt Stauffer: Okay, I think I'm gonna ask you one last question before we're done for the day. And my last question is: is there any either entrepreneur or technological person, or any startup where you say that's who I wanna be like, those are the people I look up to. Whether it's a single human being who's an entrepreneur, or a single human being who's a technologist, or we're at this startup and you say they're doin' it right. I wanna look to them for how to learn how to do it right. Lalit Vijay: I think for me, the kind of two persons to me personally. I take half trait from one person, and half from another, and I really just get inspired by both of them. One is kind of Elon Musk in terms of kind of vision he sets for himself, and another one is Mark Zuckerberg. And for him, the reason for that person is kind of, he know how to be in the business. He know how to beat the competition state out of. You have seen SnapChat, right? Matt Stauffer: Yeah, yeah, no, I get that. Yeah, he definitely knows what he's doing. I've often said, people say well why are they spending that money that way? And I says well you know what, if you've got that much fake money, you know, that's just purely based on your valuation, go do things that are gonna turn into real money. And they made some good decisions there for sure. Okay, so if somebody is super interested in everything you told us about, obviously they're gonna go check out StyleDotMe.com. I'll link it in the show notes if anybody gets lost finding it like I did. But how can they follow you, how can they keep up with you, and is there anything else you wanna plug while we're on the podcast? Lalit Vijay: So for me, I personally love to be on Twitter only. I do not tweet much, but I mostly love seeing how competition do. And the reason I do not tweet much is I really spend really little time on social media, because currently we are in a kind of growth phase of the startup, and we are very, very focused on that, and that's currently like life to us. So a lot of time goes over there. Matt Stauffer: Yep. Lalit Vijay: The next thing, people can follow me LalitVijay on Twitter handle, it's simple, it's LalitVijay. And what I wanted to know is yeah, people do check out Laravel Live India. It's really nice growing community. And if possible, just visit it and give it a try. You will love it, and I'm sure for that. Matt Stauffer: Well that's awesome. Well Lalit, thank you so much for your time, it was a total pleasure gettin' to know you a little bit, and I really do hope that I'm gonna be able to come see you guys there one day. I hear such amazing things about it that I'm lookin' forward to being able to do it one day. And thank you so much for your time today. Lalit Vijay: Sure, thank you so, and I think I will try to get you next year on Laravel Live. Matt Stauffer: Alright, fingers crossed.
Interview: Steve Schoger, Famous Designer and Co-Creator Of Lots Of Things
An interview with Steve Schoger, designer and creator or co-creator of many online tools like Tailwind and Refactoring UI and Heroicons and Zondicons. Refactoring UI book Refactoring UI website @SteveSchoger on Twitter Transcription sponsored by Larajobs Editing sponsored by Tighten Matt Stauffer: Welcome back to the Laravel podcast season three. Today, I'm going to be talking to Steve Schoger, co-creator of Refactoring UI and about 10,000 other products you probably already use. Matt Stauffer: Stay tuned. Matt Stauffer: All right, welcome back to Laravel podcast season three. It has been a minute. It's been a couple months since the last one, and we're going to roll up, finish up season three. And I let you all vote on who you wanted to hear from. So, we got three people who were at the end. And the first one is Steve Schoger, designer extraordinaire, Twitter fame, making books, and making dollars. Matt Stauffer: And Steve and I have known each other for a while. We work together at Titan for a while. I've also learned a lot about design from him. So, I'm really excited to hear not about Steve the designer quite so much, but about Steve the person. Matt Stauffer: So, first of all, Steve, the first thing I always ask everybody is first of all say hi to people, and then second of all, if you're meeting somebody in the grocery store and they ask what do you do? How do you answer that question of them? So, let's get started with that. Steve Schoger: Yeah. Sure. I usually introduce myself as my formal title. I usually say UI graphic designer. Even that's weird, because depending on where you work, my job title might be different. It's either UI graphic designer, visual designer, but I usually say like, yeah UI designer. And usually they have a clueless look on their face. I usually say I design websites. Is the easy answer. Matt Stauffer: It feels like it's a little bit of a lame answer. I say the same thing all the time. I'm like, "I make websites." Steve Schoger: I know [crosstalk 00:01:48] get all technical, but they won't get it. Matt Stauffer: Exactly. Steve Schoger: And then some people are just completely like, if I'm talking to someone older, they'll be like, "Oh, so you design books?" I'm just like, "Yeah, I do." Matt Stauffer: It's easier to say yeah and move on and by your tomatoes than actually have to answer it. Steve Schoger: Yeah this conversations over. Matt Stauffer: Yeah. My go to for a while has been I make websites, and I'm getting more and more dissatisfied with it, because I did it for a good reason. It's hard to have that conversation with those people, but then everyone's like, "oh, can you make my website for my Mom and Pop Sausage Shop." Or something like that in WordPress. And I'm like, "No. No, I'm sorry." I know some people who make websites. So, now I'm like, "I make web applications." I don't know anyway. Matt Stauffer: So, okay. So, you are right now coming off the heels of a successful launch of Refactoring UI and everybody in the entire internet heard about this thing and it's super exciting, but just a couple years ago, you were working a nine-to-five, and you had not achieved the level of Twitter fame. So, we're going to walk through that process. But before we go there, I want to learn a little bit about who makes the man who we know today. Matt Stauffer: So, where are you from originally? And when did you first get into design? Even in the earliest stages. Whether it was drawing on your wallet at age three or whatever. What are the steps you can remember that really got you to the point where you realized that design or art or creativity in general were things you might be interested in long-term? Steve Schoger: Yeah. So, to your first question. I'm from Ontario, Canada, and I'm from a city called Kitchner. Which is about a hundred kilometers outside of Toronto. And it's a population of 200,000, is the city of Kitchener, but it's this Tri-City thing. There's three cities next to each other to make one big city, which is about about half a million people. And I actually grew up on a small town outside of ... that's the city I live in now, which is Kitchener, which is a city, a small town of 200, 300 people. Matt Stauffer: Wow. Steve Schoger: Yeah and and I started getting into design, I guess, when ... kinda what you said, I started drawing when I was a little kid. I guess, my mom put this miniature horse in front of me when I was ... I can't even recall this, it was like when I was a baby almost and I'd draw it, but I could ... she acknowledged that I could draw depth. You know when people draw a horse or something, they draw a stick figure or something, but I actually drew the depth of it. Matt Stauffer: The angle of it. Steve Schoger: Yeah, exactly. And she saw, "Okay. There's Talent here." And, I guess, that's the earliest form of what I do. So, I've always been into art and when I was younger, I wanted to be an animator/ I'd watch a lot of cartoons cool stuff. And I didn't really ... when I was younger, the job I have now was not even a job. So, I never designed on the computers until I got to like ... Actually, the first time I used Photoshop was my first day of college. Matt Stauffer: Okay. Steve Schoger: Yeah. So, I'd be doing art and stuff and I'd take graphic design courses in high school, but they're not computer based graphic design. It's school, low-budget, you're working with pen and paper, and you're drawing letters and stuff. Matt Stauffer: Using rulers and all that stuff. Steve Schoger: Yeah, exactly. Matt Stauffer: Now, what was that, because your teacher said, "Oh, there's all this newfangled stuff. But we want you to know the basics." Or was it not even in the context of the newfangled stuff and they just said this is what graphic design is? Steve Schoger: Yeah. I mean, I didn't really ... I guess, that's what I thought graphic design was, and then when I got to college then I started using Photoshop, and everyone around me in the classroom got a handle on Photoshop. They already knew their way around a little bit, but the course I took, it wasn't graphic design. It was multimedia design production. So, that's everything from graphic design to to video, to a little bit of development, to even a little bit of music production, because I didn't know I wanted to do graphic design. So, I took a ... but I knew I wanted to do something in media. Matt Stauffer: Okay. So, when you went up to college, you just said, "I want to do something media-related." And you were still trying to figure out what exactly, so you just tried a lot of different classes or? Steve Schoger: Well, it was a course called multimedia design and production. All those things I just said. And yeah, I just wanted to get my hands wet with everything, and figure it out from there. I didn't know what I wanted to do when I went to college. I didn't know what I wanted my career to be, let's put it that way. Matt Stauffer: But you did have a sense that it was going to be creative and you were going to making ... So, basically was that class the full spectrum of potential careers you were thinking of that point? Steve Schoger: Yeah. Matt Stauffer: Okay it was a perfect all-in-one experience on all them. Did you come out of that class then knowing graphic design is it? Or did it still take some time to figure it out? Steve Schoger: No, no, because like, I guess, in high school, I wanted to be a rock star in high school. Matt Stauffer: Yeah. Tell me more about this. Let's pause college. Tell me more about this. Steve Schoger: Yeah, I play guitar. I picked up a Guitar when I was grade eight. So when I was 12, I guess. And I got really into it, I'd spend four hours a day. I'd come home from high school and play guitar until I went to bed. Matt Stauffer: That's amazing. All-electric or were you an acoustic as well? Steve Schoger: I started on acoustic. The way I got a guitar is my great grandma passed away and it was my inheritance. Matt Stauffer: Okay. Steve Schoger: She didn't have the guitar, but the inheritance money went towards a guitar. So, I started playing acoustic and then I always wanted an electric guitar. So, I picked one up maybe first year of high school or something like that. And that's all I did. And I played in the high school bands and stuff. I played bass guitar in the high school band and stuff. Steve Schoger: And, I mean, that was just an unrealistic dream. But when you're in high school you're just, "I'm gonna make it. I'll be ..."- Matt Stauffer: So, when you were in high school, you legitimately were interested enough in that dream that you thought, "I'm going to graduate from high school and I'm going to join a band or start a band. And I'm going to tour the world, and that's where my money's going to come from."? Steve Schoger: Yes. That's what I believed. Matt Stauffer: Because some people say that ... is kinda like the side dream. That was the dream. So, what dissuaded you from that dream? Steve Schoger: Well, my parents. They were like, "Well, you should consider going to school first, then maybe think about doing that." Matt Stauffer: Okay. Yeah. Yeah. So, they were and trying to weave them together a little. Steve Schoger: Yeah. So, even when I was in multimedia design, I still had this music industry dream in mind. So, I did the multimedia course. I graduated from that, finished it, and then there was this music industry arts program at the same college. I went to Fanshawe College in London, Ontario. And it was really hard to get into it. But I applied for it anyway, right after I graduated from multimedia, and they accepted me. So, and I'm thinking, "Well, I might not be a rock star, but I'd love to be in the music industry right? I'd love to show you music production." Steve Schoger: So, that course covered everything from music business, to just being in the studio and recording artists, and all that stuff . Still an unrealistic dream. Look at the music industry now, right? But I took that course and, I mean, that's still my hobby today. So, I don't regret taking that course. I learned a lot out of that course, but then when I finished that program, I was interning at small record labels. And they all saw the multimedia design on my resume, and that's what I ended up doing at those labels, right? I end up doing a lot of web stuff. A lot of designing little brochures and one sheets. A lot of stuff like that. Steve Schoger: So, I was doing that more and more, and I kinda enjoyed it at this point. Because I was kinda doing it for something I really enjoy doing. But I wasn't getting paid, it was all internships and stuff. Matt Stauffer: Oh. Got it. Steve Schoger: Right. And then I'm like, "Well, I got to get a job in this,." And I tried to follow my music industry path, but there was no money in it. So, I'm like, "Well, I just enjoy doing this anyway." So, this is in like 2009. So, right at the peak of the recession. It was impossible for me to get a job. I couldn't get a job anywhere, right? Steve Schoger: So, I'm thinking "Well, not a bad time for me to go back to school." And I already took multimedia, and I'm thinking "Well, what can leverage all these skills?" What can add to this? And I was thinking, maybe I'll take a look at marketing course or some kind of copywriting course. So, I took advertising and copy writing at Humber College. Steve Schoger: But, when I was in school, in that course, I spent way more time working ... I was making ads, and again in the course, I was making fake ads, right? But I spent way more time working on the creative, than actually the writing the copy. And that year I also spent a lot of time just learning web development. And I learned a little bit of this when I took multimedia, but I forgot everything I learned. So, I was real learning that stuff. And it was easy to pick up again. Matt Stauffer: Real quick. What were you learning? Was it mainly HTML and CSS? Steve Schoger: Html and CSS. Matt Stauffer: [crosstalk 00:11:20] did you get into a CMS or anything like that, or not at that point? Steve Schoger: Yeah, I learned about ... I knew about WordPress and stuff. But even that was ... it was a little too technical for me at that point too, because WordPress you can use the templates, but I really wanted to make something unique. WordPress is always just like, you got the header, the content area, and the sidebar. Ad I didn't want that. I don't want that constraint. So, I just started hand coding, and I learned about a few other CMS's at the time. I don't even know what they were called if you asked. But I tried them out, and I found one that worked for me, and I built a little blog for myself, and I would never write, at all. But that's everyone who starts a Blog and has the attention of write a post every week. And some people succeed at it and I did not. Matt Stauffer: I'm there with you buddy. Steve Schoger: Yeah. Steve Schoger: So, I was doing that. And then during this time in school, maybe in the second semester, it was a one year program, like a post grad program. And I took, in the second semester of that, I spent a lot of time ... I realized I wanted to do web design, at this point. And if I found a job before I finished school, I would have just dropped out of school, because I already had two diplomas at this point. So, it wouldn't phase me to drop out. But I couldn't find a job, but I was doing informational interviews, where I would contact the company and say "I'm not looking for a job. I just want to learn what you guys do day-to-day, and learn about the company." And I did a quite a few of those, and it was my way of networking. And you know what? I did do a little bit of like, "Oh this job. This place is hiring a designer. I'm going to ask if they want to do an informational interview." And I did it with a few companies. And one of my informational interviews turn into a job interview and they offered me a job the day later. So, that's how I got my first job. Matt Stauffer: So, tell me about the difference between an informational interview and a job interview when you know they're hiring? Was it, because you didn't think you would have the qualifications or do you think you're more likely to get in for the informational interview? What made you want to do this one type of interview versus just applying for the job? Steve Schoger: Well, if I did an informational interview, it's this ... my sister recommended that I just reach out and ask for informational interviews. And, I guess, I didn't think I was qualified for the job. So, I didn't apply for the job. And I feel like they're more likely going to have me in, if I have no intention of this Matt Stauffer: Ulterior motive. Steve Schoger: Exactly, exactly. Matt Stauffer: So, that's really interesting. Steve Schoger: I recommend anyone, I recommend to everyone does that. If you're a student in school, and you're just maybe not confident enough to go for that first job interview. Just shoot ... most people ... very few people turned me down, for an informational interview. Matt Stauffer: I mean, it makes sense. We've had a few people reach out for that. It seems so unique that I'm like "Yeah. Sure, I'll talk to you for a little bit. We can't always give you a full hour, but we'd love to chat with you a little bit about Titan." So, I hear that. That's really cool. Steve Schoger: Yeah, and I bring my portfolio in, and say "Hey, can you take a look at this and give me some feedback?" Matt Stauffer: I'm a student. I'm still learning and I'd eventually like to work at a company like this. That kind of thing? Steve Schoger: Yeah, exactly. And I was more thinking about, I was going for visual design jobs, but then I was interviewing with companies, and they're looking for UX designers, and I didn't even understand the role at that point. What the difference between a UX designer and a visual designer is. And sometimes I still don't understand the difference. Matt Stauffer: I think most people still don't get it. I still struggle. Steve Schoger: Yeah. Matt Stauffer: Okay. So that was what? 2010, 2011 at that point? Or was it- Steve Schoger: That sounds about right. So, I think, so. Yeah. Matt Stauffer: Were you married yet at that point? Steve Schoger: No, but I was dating my now wife at the time. I met her in high school. And she's my high school heartthrob, and she rejected me in high school. Matt Stauffer: Oh snap. Steve Schoger: Well, she liked me. She later confessed that she liked me, but friends and influence from that. Kind of like, "Oh no, he's gross." Matt Stauffer: He's a rock star, you don't want to be with that kind of a guy. Steve Schoger: Yeah, but then later on we connected after I graduated from Fanshawe. We were talking on MSN at the time. MSN messenger. And that's how we really started to get to know each other, and then she came to visit me a few times, then we started dating. And then I sat a year off between when I graduated from Fanshawe and Humber, and that's when I really, I also spent that year figuring out what I wanted to do, working on my web design skills. And I was just getting to know my now wife at the time. And then we moved into together when I moved to Toronto. Matt Stauffer: Okay. So, during those years in between, when you weren't in school, the reason I asked about her, I mean, first of all, I'm always curious, but also, were you living alone, working just side jobs while you figured this all out? Or what was your life situation during that time? Steve Schoger: The years between- Matt Stauffer: So, basically you got a you got a job in 2010. We're about to talk about what, I think, was the first design job that you got. So, prior to 2010, where you in school the whole time, or where there any years in there where you were - Steve Schoger: [crosstalk 00:16:52] going back and forth here, because I'm stressing out and forgetting things. There was that year between Fanshawe and Humber. And that was me just getting more familiar with Photoshop again, because I haven't touched it in a long time, getting more familiar with code. And I was living with her, but not living with her. She was still a student. And I was just living at her place. Like, I was still living with my parents, but I was just always over at her place. I brought my computer over there and we just pretty much lived together. Matt Stauffer: Were you doing freelance work at this point or? Steve Schoger: No, I was [crosstalk 00:17:26] I was just learning. I took one job that I just was not qualified to do. And I started doing it and I'm like "I can't do this." And I had to say like, "Yeah, I'm not ... sorry." Because you ... I think, the best way to like ... you just got to try, right? That's how I am with ... maybe this is a conversation for later on, but- Matt Stauffer: No no, lets do it. Steve Schoger: That's how I am with speaking. I am really uncomfortable doing public speaking, but I just force myself to do it, and now I'm doing a lot of talks this year, and I regret are doing every one of them, but it's like, "Well, I gotta do them." And I put myself in that situation, but it's like ... anyways. Steve Schoger: So, yeah. I was just working on my craft, I guess, in the in that time, right? With my girlfriend. And that's how I ... and I just bring a lot of blog posts, learning how to design. Matt Stauffer: So, in 2010, you got your first job, and it came out of an information interview. So, a couple questions around there. What was your actual job supposed to be? And at that point where you primarily thinking of yourself as a UI visual designer? Had you started thinking about any of the other aspects of design that you do today? Because today obviously you're doing interface design, but there's a lot of UX embedded in the stuff that you're working on as well. So, how did you think of yourself then? And what was the actual job that you got? Steve Schoger: So, the formal title of the role, and this is goes back to different places have different titles, but the formal title was "interactive designer." And that could be the same as UI designer at our company, visual designer at another company. So, the work I was doing there was more like ... it wasn't so much software design, which I mostly focus on now. It was more like doing websites. And just doing the creative, mostly. Matt Stauffer: So, you'd basically be the one who says "Hey, we're working for Joe's Plumbing. Here's the font that Joe likes." And you'd put together Photoshop documents. Would you also convert them or are you mainly delivering fat Photoshop documents to web developers, and then moving on? Steve Schoger: Yeah. I remember when ... So, going back to the informational interview I had. The moment it turned into a job interview, there's that transition in that part, and I got all excited. He asked if I code. And I knew a little bit of code. I coded enough to build my own personal website, and that's all he wanted to know. He saw my website. He saw that it's probably not the best code, but he made it. And and I didn't need to code for the job. But he liked that I coded, because it just made it easier to communicate my ideas to the developer. Matt Stauffer: And probably also, because you understood the constraints that the developers are under. One of the things I said, when we first started working with you one, of the reasons that we were excited to work with you, and we'll get to here eventually is, because you were a designer who understood that for example, you can't deliver something with an image that would theoretically have to go wider than the browser, but you didn't give us what the image should look when it goes wider than the browser, right? Like when the browser gets a little wider. It's so clear what it's like working with a print designer, who doesn't understand ... not even responsiveness necessarily, but just like, you literally can't curve a thing that way in HTML. It's literally not possible. Matt Stauffer: As someone who understands what it's like to implement something, your brain was set in a different space, I think. Steve Schoger: Yeah, I think so, because everything was print design back then. There was no responsive design. Yeah, that's for sure. And everything was ... even if you wanted to use a custom font, you embedded it as an image. So, I was a big font guy. I didn't like using just the web defaults. So, I always searched for new fonts, and I'd export that as an image. Steve Schoger: So, I did a lot of the exporting stuff. and, but then yeah, I'd usually hand that off to the front end developer. And I was, when I was working there, I was the only designer at the company. It was a small company. I think, there's eight or ten of us in total. Matt Stauffer: Was it a consultancy? That just took client work and did a design- Steve Schoger: Exactly. Matt Stauffer: Built the front end, maybe integrated CMS, deliver it, move on to the next client? Steve Schoger: Yeah, and they specialized ... they worked with a lot of media companies. So, television production companies, and I think, that was just as a result of ... they worked with one, and word of mouth and ... Matt Stauffer: Its who you know. Steve Schoger: It often works that way. Steve Schoger: Yeah. So, I was doing a lot of that stuff. Matt Stauffer: Okay. So, what was your next transition after that? I mean, did you stay at that job for a couple years and regardless, what made you want to move to something Different? Steve Schoger: Yeah. So, I was working in downtown Toronto at this point, at this company. And I worked there for two years, I think. And it was good. I liked being in a small company, but there's also part of me, "It's my first job. What else is out?" So, I was curious, and I interviewed at other companies, but then we also wanted to move back to our hometown, Kitchener, because Toronto is so expensive. By the way, I wish we bought a house in Toronto at that time, because it was- Matt Stauffer: Because now it's so different. Steve Schoger: We could have sold our house then and had no mortgage whatsoever and moved back here. But whatever. Matt Stauffer: [crosstalk 00:23:14] you could predict the future. Steve Schoger: Yeah, right. Steve Schoger: But I wanted to move back to Kitchener, Waterloo. First of all, Kitchener had this ... we have a little bit of a tech scene here. Blackberry, you know Blackberry? They put our name on the map, our city on the map. And we have at the University of Waterloo. So, a lot of trucks, a lot of engineering talent. And this created this little tech community. And I saw this from Toronto, and I was really interesting in it. But there was no design whatsoever. It was all engineers, right? And I'm thinking "I could have a huge competitive advantage if I go there. There's no designers whatsoever." And there was a company ... So, I was interviewing at a company called "Desire to learn." And they're an educational company. Matt Stauffer: I feel like I know somebody else who worked there, or did you- Steve Schoger: [crosstalk 00:24:19] it might be me. Matt Stauffer: Oh okay. Sorry. Keep going. Steve Schoger: And are you familiar with Blackboard? Matt Stauffer: Yeah. Yeah. Yeah Steve Schoger: The same kind of- Matt Stauffer: Can you give a real quick intro to anybody who hasn't heard before though? Steve Schoger: Yeah. It's e-learning software. When you go to school, it's your login portal, and that's where you can get your grades and your assignments and all that stuff. And I even used Desire to Learn when I was at Fanshawe. That was one of their first clients. And I had a friend working there and I was really interested in the company, but they never had any design either. I was their very first visual designer. Steve Schoger: But, to step back a little bit. My friend recommended I apply for this job. So, I applied for it. But at the same time, the company I was working at, we had a really low time, it was not good. And right when I got offered the job, the day later, my boss, before I even got to go into his office and say "I'm quitting." He basically said I gotta lay everyone off. We're closing the doors. Matt Stauffer: Wow. Steve Schoger: So, it was like the same day. I'm like, "Wow. Perfect." Matt Stauffer: Talk about timing. Geez. Steve Schoger: So, I had a little tweak break there, before I started my new job, because I basically I said "I have to put my two weeks notice in." Matt Stauffer: And then turns out you didn't. Steve Schoger: I think, I had a week. We were still wrapping things up and I had nothing to do. Matt Stauffer: Okay. So, you moved back, because you said Desire to Learn was in Kitchener. Steve Schoger: Yeah, moved back to Kitchener. But my wife was still working in Toronto. So, there's a little bit of ... I moved him back in with my parents that summer, is when I moved in. And Caitlin was still in Toronto, living at the place we were renting out. Steve Schoger: So, the summer we were living a little bit long distance, but I mean, we were an hour away from each other. So, I saw her on weekends and stuff. And she was interviewing locally at that time. And I started my job as Desire to Learn. And like I said, I was the first designer there, and UX was such a buzzword at this time. No company understood. They're like we need to invest in UX, but no one knew what it meant. And I worked at that company for two years. And in the two years I was there, I don't think anything I actually did saw the light of day. It was one of those situations. And it maybe has since I've left right? I've made these projects and they were sitting there, and you could work on them. But yeah. Matt Stauffer: That's tough. Steve Schoger: And right when I was leaving, they hired a ... I think, they have a good design team, now. They grew their design team since I have left them. Matt Stauffer: So, is that why you left? Because you just felt what you were doing wasn't actually- Steve Schoger: I was getting burnt out. And I was really passionate about what I was working on. Where I took my work home with me. And it was so frustrating to not have any of my work see the light of day. So, that just burnt me out. And plus, other factors were going on in my life where, we were renovating our house. And I'm not sure if you've been through a process like that, but never again. Matt Stauffer: It's definitely a second job. And it's a second, more stressful job. Steve Schoger: Yeah. So, it's just all these stressful things in my life, to the point where "Man, let's just get out of this city and let's go move to California." And I even went for a job interview in California. They flew me down and stuff, and that was kinda fun. And I didn't get the job. I think, the reason I applied for the job was because I was just depressed, and I just wanted something to change in my life. Matt Stauffer: Maybe some change will make everything better. Yeah. Steve Schoger: Yeah, right? But once I left my job at Desire to Learn, and the house was done, we finished renovating the house, everything settled down, and I felt good I didn't make that decision. Steve Schoger: So, when I left Desire to Learn, I went to an insurance company, a local insurance, well not a local, it's a Canadian insurance company. Well, do you guys have Sun Life in the states? Sun Life? Matt Stauffer: Sounds familiar, but I'm not sure. Steve Schoger: Maybe, because I've talked about it. Matt Stauffer: Probably. Steve Schoger: Yeah. So, it's an insurance company. And it's just a huge company, a huge Canadian company, thousands, tens of thousands of employees. Matt Stauffer: Are they based out of Kitchner as well? Steve Schoger: We have an office kitchener ... I say we as if I still work there. There's an office of Kitchner. I don't even know where the head office is. In Toronto, maybe. But there's offices all over Canada. Matt Stauffer: Got it. Okay. Steve Schoger: And I worked there for two years. And when I started that job, this is when I started freelancing with you guys, Titan. And it was around that same time and it's around the same time I met Adam. And I'm trying to think of a way to tell this story that has this nice, seamless, flow, but I'm trying to remember everything that happened. Matt Stauffer: So, let me let me turn it and maybe this will help you out. So, a lot of us, when we met you and Adam. So, Adam worked at Titan, I think, when I first heard about you. So, he would say "Yeah, I got these buddy that I'm working with, and we do these design things together blah blah blah." So, we just started hearing your name more and more often, and eventually he's like, "Yeah, why don't you guys, consider pulling him in for something?" So, we would and we're like "He's really great." Matt Stauffer: So, we had this idea, especially because, I actually meant to mention this to the listeners that this Kitchner, Waterloo, that whole triangle, is really weird, because there is an excessive amount of technological ... I don't know if I want to say excessive amount of talent, but I don't know. But there's an excessive number of people who do the type of work that I do in that one little space. Matt Stauffer: You're there, and Adams there, and Vehicle's there, and all these other folks are there, and every time we open up a job posting. It's a guaranteed that at least several of the qualified applicants come from this little tiny circle, out of the entire globe. This little tiny circle. Steve Schoger: Well, it's like I said, we do have this tech thing going on here, and I don't want to say it like ... people will say "Well, we're the Silicon Valley of the north." But everyone says we're the new Silicon Valley. But it's like "No, but there definitely is something going on here." Matt Stauffer: And I hear a lot of people say like, "Oh, we've got a nice little tech community." People say that about my local town here. And what they mean is "We have more than nothing." But that's not what it is where you are. There is seriously a lot of people all doing the same stuff there. Matt Stauffer: So, when I start hearing about you, what I figured was, Adam and Steve have known each other since high school, they grew up together, they live down the road from each other, they happen to be very talented, and when I've only learned pretty recently that that's not the case. So, why don't we- Steve Schoger: [crosstalk 00:31:13] no that's not true, yes. Matt Stauffer: Why don't we come at it from the angle of how did you meet Adam in the first place? Steve Schoger: Yeah. Steve Schoger: So, I met Adam, because ... I was always working on a lot of side projects. So, when I was working at Desire to Learn, I'd be working on my ... I'd spend a lot of time working with just startups, helping them out, and just getting my hands dirty, right? And a friend of mine that I went to high school with, his name's Chris Albrecht. And I always wanted to work on projects with him, but he was always busy. He had a kid at this point. He was always doing house renovations. He's one of those guys that's good at everything. He can build a house, and he's a developer, and he's just ... and you want to hate him for it. Matt Stauffer: You don't, because they're also good at being a wonderful person, but you want to hate them a little bit. Steve Schoger: And that's the problem. Yeah, you want to you want to hate him. Good at everything. But then he's just an awesome person, so you can't hate him. So, like "Well, God, man." Steve Schoger: But he took a a software development course at Conestoga College, which is a local college. And that's where I met Adam. And, I think, the two of them were the top of the class. So, Chris talked very highly of him, and he said Adam works on a lot of side projects like I do, I should connect with him. Steve Schoger: And I said, yes sure. And I just sent Adam a message on LinkedIn, and it's funny, I tweeted that recently, the the message I sent to him. It's funny when I re-read it, because I dug it up, and I re-read it. And it's not how I talk to him, at all. It's like, I'm really proper. Matt Stauffer: Yeah, I was gonna ask if it was was really formal. Steve Schoger: Yeah it was a really formal, "Hey, we should connect. I heard a lot of great things about you. I hear you're a good designer, and you're a good developer. It's a really rare combination." And now we just talk like bros. But it was funny reading that and I just said "We should meet up and grab coffee." And I just showed him some of the work I'm doing, and he showed me the stuff he's working on, and I said, "We should work on a project together, just to get a feel for each other and see what it's working with each other, and maybe about can turn into something else." Steve Schoger: And, I think, the very first thing we worked on was, he happened to be working on this Resume Builder app. Matt Stauffer: Yeah. I remember that. Steve Schoger: And I had this idea for a Resume Builder app, and I was designing one, but they're both separate projects. And we're like, "Well, we're working on the same thing. Why don't we build this together?" And we never took it seriously, right? We just wanted to get a feel of what it was like to work with each other. So, we did it, and we got it half done, and that will never see the light of day. Matt Stauffer: Right. That was enough. Steve Schoger: Yeah. Nut I did like working with them. That's what we learned about each other, right? I really like that he's got a really good sense of design, and I have that way of ... we talked about earlier that, I understand a little bit of code. So, I can communicate with him effectively. So, I think, we had that good dynamic that worked well together. Steve Schoger: And, I think, I met him ... I'm not sure if I met him when I was working at Desire to Learn or when I went to Sun Life, but ... no, I met him when I worked at Desire to Learn, because the reason I went to Sun Life, it's like I was going there because, A) it was a pay increase. So, that was nice. But I knew I was going into this big company, that was just a huge bureaucracy. Matt Stauffer: You're a cog. Steve Schoger: I'm going to be miserable there. But I went there, because this is around the same time I was talking to you guys. And I'm like, "Well, I can make this transition into freelance maybe." And you guys were my first starting point there, and what brought me to Sun Life is "Well, I'm going to work my nine to five, and when I get home from work, I'm going to turn that off. And then turning that off and then I can work on freelance projects." And that's what I was doing for you guys. Matt Stauffer: And that's the type of job you want to have, if you're going to start that transition to freelance, is the type of job where you can turn it off at the end of the day. Which, if it were your soul thing, it would be worse, because you want a job you love, but if it's the thing that's helping you transition, you actually want one that you don't love and you don't care about, that goes away. That's really interesting. Steve Schoger: I almost didn't care if I got fired. It's that kind of thing. I didn't want to get fired, because it paid the bills, but it's ... Matt Stauffer: You weren't emotionally or mentally tied to it, other than showing up and doing the things you should do to get the paycheck basically. Steve Schoger: Yeah exactly. Matt Stauffer: Huh. Okay. Steve Schoger: So, this is where you get more familiar with where I come into the picture. Matt Stauffer: Lets pretend like I don't know it. Steve Schoger: So, I'd work on a few projects with you guys, and I was also doing a few projects with Taylor. And, I think, the first thing I did for him was spark. I did the first Spark website. I did the website and I did a logo for him. And, I think, I did that before I started work with you guys, because Adam recommended me to Taylor, and then he recommended me to you guys. Steve Schoger: And I knew nothing about Laravel at this point. I only know about Laravel, because of Adam. Adam got Laravel famous. And I said, "Hey man, I come with you?" Matt Stauffer: Me too. That's hilarious. Matt Stauffer: Yeah. So, I remember that you were doing that transition stuff. When did you leave Sun Life? What was the the moment right? Steve Schoger: Because I was talking ... I did a few you projects with you guys. And then I'm not sure who suggested it first, but we basically had an arrangement. I think, it might have been you who suggested it. It doesn't matter. But you guys wanted a designer, because you never had a designer at your company. And Taylor just wanted an ongoing designer, but neither of you had enough work to fulfill a 40 hour week. Steve Schoger: So, the arrangement was, well, I do one week with Titan, one week with Taylor, and then I'd have an off week to go find any other freelance work. So, we had that arrangement worked out, and then you guys matched my salary at Sun Life. So, it felt easy going into, it was easy to convince my wife it all worked out. Steve Schoger: So, I made that leap. And that's what brought me to that thing, an I've been working with you guys for ... how long have been with you guys for now? Matt Stauffer: Has it been two years with this arrangement? Steve Schoger: It's funny. I've been with ... every job I've had has been two years. Matt Stauffer: That's it. That's your magic number. Steve Schoger: Yeah. Matt Stauffer: Yeah. I think, it's been two years. Because, I think, we did one year, and at the end of the year, we thought about it, and we re-upped it. So, it's probably been two years this way as well. Steve Schoger: Yeah, and, I mean, we're on pause right now, right? And that's ... we're talking about that shortly. Matt Stauffer: [crosstalk 00:38:17] story. Yeah. Steve Schoger: So, I was doing that, and I don't know ... next question, I guess. Matt Stauffer: Yeah. Matt Stauffer: So, I think, that worked really well, and, I think, it was really great for us. I mean, that's a curious business thing that anybody else can ask any of us more about, is that idea where Dan and I since ... Dan and I are both liberal arts Majors, with the design aesthetics, who are programmers. So, we always wanted a designer. From the earliest days of Titan, we wanted a designer, but it was hard for us to really justify at the beginning. Matt Stauffer: So, this was a really cool way to do this transition. And now we have a full-time designer, and have had Steve working with us for a while. But it took us this kind of experience to start building design into our workflows, and our ways of building. So, just anybody who's curious about that, it worked out really, really, really well, for us. Matt Stauffer: But the next part of the story was what you used in that third week. And that third week, was a combination of, I think, finding other clients, but also starting to become not just Laravel famous, but eventually just web development, broad internet famous, and then there's books and stuff like that. Matt Stauffer: So, where were you thinking? What was your approach? What was your attack? What was your mindset? What were the first steps you took to start using that time and start garnering a reputation? Steve Schoger: Yeah, I think, for the first year, I was doing a lot of ... I was just doing ... I was using the time for freelance, and I was finding new freelance clients. And I don't even remember any of the projects I did in that time, even though it was like a year ago, probably. Two years ago. But they're just a little one off things right? Steve Schoger: But it was still ... the tricky part about that thing. It's like, well, I work on a freelance project for a week, but there was more to do after working after that week ... For you and Taylor, we all had this understanding. Well, I'll be back with you in two or three weeks. But when I get a new client, it's like, well, I had to be ... Full disclosure. I have this [inaudible 00:00:28] going on, so I can work with you this week, but I won't be back with you 'til the following week. Steve Schoger: And they had a deadline, so it's like ... Well, I don't know how long I could do this for. I could only pick certain projects that last ... It was hard to find clients that worked that way. Matt Stauffer: [crosstalk 00:00:40] one week or less at any given moment. Steve Schoger: Yeah. So what I spent my time doing is just working on my personal brand, or working on little side projects, and the first project I did was Hero Patterns. That was a website for ... It's SVG background patterns. You can go on heropatterns.com and it's just a bunch of patterns that you can use for a hero background or whatever you want to use it for. I built that just as a fun project. I wanted to learn more about SVG, so that seemed like the right step, and I just wanted to add it to my portfolio and add to my personal brand. Steve Schoger: Then I released a bunch of icon sets. That's what I was doing in that time, just working on free, open-source projects. Matt Stauffer: Yeah. And those took off pretty quick. I remember seeing Hero Patterns, and I think [Zomicons 00:01:40] as well, on things like CSS Tricks. So it was pretty early on that you were releasing these things, and they were getting picked up pretty broadly. Steve Schoger: Yeah. Well, the Laravel community has certainly helped with growing my Twitter following, because it's such ... The whole community is really active on Twitter, first of all. Then I had Taylor and Adam retweeting my stuff and that really helped. Taylor had probably 50,000 followers at the time, so it all helped. I was growing my following there, and then Hero Patterns was getting posted on Product Hunt, and that really helped. Steve Schoger: From there, where does that bring us to? I was doing all these little open-source projects, and then I started doing the tips. Let's move up to that, 'cause I don't know what else ... Oh, I released another little project, Heroicons, which is like SVG icons, marketing icons ... They weren't meant for in-app experiences, but more if you go on a marketing page, and you're showing a features section. You can put the icons there and customize the colors. I thought it was a pretty interesting idea when I made it and it was a fun little thing, and I could make some money off of it. Steve Schoger: I released that and it did okay. I think I made $10,000 in the first few months, over that period. But Adam was launching his books and his courses, and they were doing insanely well. I saw him doing that and I'm thinking, at this point, I think I could maybe do a design book or something like that. I had all these ideas for what a design book could be for developers, and I was sharing these ideas with Adam. He encouraged me to build my following first. Matt Stauffer: Yeah, yeah. Steve Schoger: 'Cause that's what he did and that's what made his launches so successful. He proved that what he was making was worth it. Steve Schoger: I started doing the tips on Twitter to prove that I know what I'm talking about, and I can provide little ... Basically the tips, if you're not familiar with them, they're little bite-sized design tips. Here's a before of something that a developer might design, and here's an after of how you can improve it. It's like, take it, instant improvement, instant gratification, and they've evolved over time. Steve Schoger: The first tips, I was working on a project for you guys, let's say, and I'd take a screenshot of that project I was working on and post it and that was it. Immediately, they started doing well. People started seeing them and they were like, wow, these are pretty useful. Then they just grow and grow and grow. Steve Schoger: The tip idea, by the way, I stole the hot tip idea from Adam, 'cause he was doing hot code tips, and he stole it from Wes Bos, 'cause Wes Bos has been doing it for years. I talked to Wes Bos about that recently, and he said he stole that idea of a tip from someone else. Matt Stauffer: Really? Steve Schoger: Yeah. But he made it his own by adding the fire emoji. Matt Stauffer: Yeah, yeah. Steve Schoger: But now people think I created the fire tip and there's people copying me. It's all great. It all grows from there. Steve Schoger: Then, like I said, I was working on these projects, and I'd maybe work on something and I'd see, well, that's an interesting insight, and I'd take a screenshot of it. But then they became a higher quality thing. Well, in order to communicate this idea, I need to make this own little thing specific for this. Matt Stauffer: Compose the tweet with all the ... You made a little graphic side-by-side with all the bullet points and everything, right? Steve Schoger: Yeah, exactly. So the very first tips that I was doing, I'm just doing them and not thinking of it, and then Adam would bring in a lot of ideas. He'd share his ... This would be a cool tip for you. Matt Stauffer: Sure. Steve Schoger: Then we'd work on it together, and then they became ... with both of us working on them together, the quality went up and up and up. We'd try to make each tip better than the last, so they eventually just did really well. I think the biggest tip I posted got 13,000 likes and 3,000 retweets. Matt Stauffer: Holy crap. I knew they had gotten big but I didn't realize they'd gotten that big. Steve Schoger: That's by far the biggest one. At the beginning, they were getting ... The very first one I ever did, 40 likes. Then from there, it got 100 likes. Then it was 300 likes. I'm like, whoa. That's so big. Now today, it's like I can't post one without getting at least 2,000 likes and 300 retweets. Matt Stauffer: Geez. Go ahead. Steve Schoger: Yeah. They just spread so far. Matt Stauffer: That's awesome. Steve Schoger: The last tip I tweeted, people are hijacking the first comment, 'cause they know ... They see a little fire emoji in the tip, and they're like, first comment. Matt Stauffer: At least it's first comment, and not, do you see this? You should go to my course, blah blah blah. Steve Schoger: No, it was a friend of mine who's just joking, 'cause on the Kanye posts, people try to hijack it with their art. Matt Stauffer: Yeah. That's awesome. I wanted to point out something really quick here. I think one of the reasons that these spread so much is that, first of all, they're really high quality. You really know what you're doing. There's not a lot of people talking about it this way, and they're really easy to digest and apply. So there's one aspect. They're just really good tips, broadly, this is a really good idea. Matt Stauffer: But I think the other piece about this is that your tips ... You mentioned the fact that [inaudible 00:07:38], there was a lot of dev and not a lot of design. We have talked about this for a long time, about the Laravel community and other programming, especially back in programming communities. I have clients all the time that say, yeah, you can tell this was made by a developer, referring to something that they have that they're asking us to fix up. That means something. "You can tell this was made by a developer" means it doesn't look good, it's hard to understand. The information density is bad, the flow is not good. Matt Stauffer: There's this very big issue, with us as developers, knowing how to put stuff on the page, but not really knowing how to make it and such so that it's going to be ... not even just enjoyable, but understandable for the end user to really get the information out in a reasonable, pleasant way. Matt Stauffer: One of the things I love about your tips and a lot of your teaching is I think it reflects the fact that you do understand developers, and you do understand development, and you do know code, and you know enough developers and work with enough developers to know where our shortcomings are. You're not just putting out generic design tweets, but many of these tweets ... not all, but many of them ... are explicitly useful for people without a design background who are put in context, that because we're application developers, we need to build user interfaces. We don't know what you're doing. Matt Stauffer: I feel like a lot of basic design tips people give tend to be relatively useless to developers 'cause it's the same three things you've heard over and over again, but you really narrow in on practical design tips that help application developers. I wanted to point out that that is something I think probably comes intentionally, but also probably comes a little bit because of the specific background you do as a tech-adjacent designer, right? Steve Schoger: Yeah, and I think also, Adam's involvement too is a huge, huge- Matt Stauffer: Sure. Steve Schoger: I'm more or less the face of Refactoring UI, but it's honestly ... Adam and I are doing it ... Basically, the tips are ... From the birth of a tip idea, me and Adam will be ... Adam might point something out to me and say, this is an interesting little insight, and I'll have a sketch file of all my tips. I'll be able to either take a screenshot of something and I'll passively work on it until it best communicates the idea, and me and Adam are going back and forth at this point. Steve Schoger: Then there's the tip launch day, that we decide we're going to post ... That's a two-week process before we get ready to post it. Then me and Adam jump on a call and spend some time figuring out, how do we want to work this? How do we frame it in a way that communicates it? A lot of time gets put into these. Steve Schoger: But, yeah. Certainly, I have that kind of background that helps communicate to developers. But I don't want to discredit Adam whatsoever. Matt Stauffer: I love that. Steve Schoger: He's equally involved in that process, and he's coming with his developer point of view. Like I said, he's got a really good sense of design as well. And to be fair, some of the tips we've posted, I never even thought of them as tips, 'cause I'm so ... I have a designer mindset. Matt Stauffer: Sure, sure. But Adam was able to help you see- Steve Schoger: Yeah, exactly. Some of them ... It's like, one of the tips, for example, is offsetting a box shadow to make it appear like a light's coming from above to make it look more natural, right? Matt Stauffer: Right. Steve Schoger: And he suggested that tip, that was his idea, 'cause I never even thought of it as a tip. I'm like, I just do that. It's just second nature. I don't even think about it when I do it. Doesn't everyone do that? There's quite a few tips like that, where it's like, I never even thought of it as a tip before, as something insightful. Matt Stauffer: That's cool. One of the things that I pointed out to Adam that he does intentionally, but I don't know if everybody recognizes, is that he has a talent for ... We haven't actually said it. This is Adam Wathan, in case anybody happens to listen to this podcast and doesn't know who Adam is, which I kind of doubt. It's Adam Wathan. Matt Stauffer: He has a knack for recognizing what everybody in a particular community doesn't know, and everybody in another community might know, and then bringing the stuff that the other people know into the community where they don't know it. Refactoring to Collections, if you were to sell that book to someone in a community where they use collections pipelines for everything, they'd be like, why would I spend money for this book? But Adam understands how to bridge that information, so part of his talent, I think, is helping bridge the knowledge that you have as a talented designer and a tech-adjacent talented designer who does have a lot to offer. But he's also able to help you bridge that gap into developer mindset. So I love that you brought that point up. Steve Schoger: Yeah, I think that's very accurate. Adam's probably the best teacher I know. Him and Jeffrey Way are the really good teachers. Adam's probably one of the smartest people I know, and him and my other friend are the smartest people, I know, but the other guy that I'm speaking of is ... He was almost an astronaut. So that's who I compare Adam to. They're both completely different. He couldn't do what Adam does and Adam couldn't do what he does. Matt Stauffer: Well, you mentioned Refactoring UI. That's a perfect segue. So, hot tips was a big thing, and then you and Adam decided you guys were going to make Refactoring UI together. A lot of people have questions about that, you did just launch it. Before we talk about how it started, what did it end up being? If somebody's never gone, what is Refactoring UI right now that they can go purchase? Steve Schoger: Yeah. Refactoring UI is sort of a package. It was pitched as a book, but that takes all of the ... pitched it as a book to help developers get good at design. But we made this whole package, this whole resource for developers to help them make their designs better. So there's the book aspect, and that's probably the main component that everyone's familiar with. But then with that, we provide color palettes. So a big problem with developers is they don't know how to choose colors, so we just provide a bunch of color palettes for them. We provide a bunch of font recommendations, and there's an icon set. So it's this big package that you can go pick up. Matt Stauffer: Yeah. That totally makes sense, and it's good to know it's not just a book, 'cause I think that you guys said, what's the best way we can teach this? It's not just book, it's also resources that help you do the thing. And there's videos too, right? I think you mentioned that. Steve Schoger: Yeah, I didn't mention that. There's videos in the package. The videos are taking the ideas that are introduced in the book and applying them to a real-world example. Matt Stauffer: You tweeted out a couple of those, so if somebody wants to get a sample, they can see what that's like. I think you tweeted some. Steve Schoger: Yeah, there is a one video available you can watch. We emailed it out to the mailing list, so you can sign up and you can get that. You can also check out, if you're interested in that kind of thing, I also have a YouTube channel where I do UI breakdowns, and that's all part of it. Matt Stauffer: Okay. So we now know what it ended up being. And it just launched ... Right now, it's January 11, and it just launched a couple weeks ago- Steve Schoger: A month ago, December 11. Matt Stauffer: Okay, there you go. Steve Schoger: There you go. Matt Stauffer: When did it start, if you remember, and what were you originally thinking? Steve Schoger: Yeah. Like I said, I saw Adam get successful with all his courses and stuff, and I'm thinking, well, I could maybe do that with design for developers. So the original idea was, I was going to write a book. But I was bouncing my ideas back and forth with Adam, and it just made sense to get him involved in the project. And I think this was even before I started doing tips, I thought I was going to write a book. It only made sense to get him involved and make it a 50/50 partnership, 'cause he can bring his developer frame of mind to it, and to articulate the ideas that have much better than I could. Matt Stauffer: Yeah. At that point it was still a book. What thinking process did you guys go to when you were starting to write this book that made you realize it needed to be more than just that? Steve Schoger: Right. I think when we started working on the book, there was a few ideas in the book that ... It was too difficult to communicate in the way we were writing it, the style of writing it was. And there was a few ideas we wanted to communicate that just couldn't be communicated that way. That's when we realized we needed to make some videos attached to it. There's a few insights in the videos that you can't necessarily find in the book, 'cause maybe it's a little more hand-wavy. We like to make the book very- Matt Stauffer: Very concrete? Steve Schoger: Yeah, very concrete, where in the video, there's a few more ideas that are a little more hand-wavy. Matt Stauffer: What was the hardest part about writing this book, about this whole process for you? Steve Schoger: Making the book was a roller coaster of emotions. Matt Stauffer: Oh, yeah? Steve Schoger: Well, you've been through this, right? I think early on, we had all these ideas of what the book was going to be. We spent so much time planning, and not enough just doing it. What we realized is that we should've just started doing it and let it just unfold, right? Matt Stauffer: Right. Steve Schoger: What was the hardest part? The book is more or less a picture book. There's more pictures than there are words. I made about 300 images for the book. Matt Stauffer: Wow. Steve Schoger: And they're not just ... A lot of books will just take a real-world example, take a screenshot of it, and put it in their book. We had really specific points we wanted to communicate, so we thought the best way to do it is design a little UI for it. One of my goals with the images was to make it so ... First of all, I might design an entire UI just to communicate how to do a drop shadow. I thought it'd be cool if every image in the book is something you can go ahead and create yourself, challenge yourself to create that image in the book. And I wanted there to be a little bit of hidden gems within all the images. Steve Schoger: So it's like, oh, we're teaching you how to do a drop shadow here, or a box shadow, but I noticed in this little UI example, you had this, and I never would've thought to do that on my own. So there's a whole bunch of little hidden gems like that in images. That took a long time. Steve Schoger: The way we delegated work with the book was Adam wrote all the words. We worked on all the concepts together to figure out how we communicate these ideas, and Adam wrote all the words, and I did all the images. Matt Stauffer: Got it. Steve Schoger: Some chapters will be like ... There's 200 words, but then nine complex images. So I just couldn't do any of the writing with the amount of time I was spending on the images. Matt Stauffer: For sure. What you're saying is you did all the work and Adam just mailed it in, right? Steve Schoger: Yeah, exactly. Matt Stauffer: I'm just kidding, I'm just kidding. Steve Schoger: No, no. I couldn't have done it without ... Like I said, Adam is far better at articulating these concepts than I could've ever done. If I wrote the book myself, it would've been ... I don't want to say a failure, but it wouldn't be near as good. Matt Stauffer: Yeah. And I want to attest to the fact that I know both of these guys relatively well at this point, and they basically disappeared off the face of the planet for weeks at the end there, because they were both putting in such long days. Tell me a little bit about that time for you. Steve Schoger: Yeah. Just for the listeners, I had my thing, gig with you and Taylor, and I think I sent you guys a note at the end of September, maybe? Matt Stauffer: I think so, yeah. Steve Schoger: Is that about right? And Adam and I were passively working on the book at this point, but we realized it needed a full-time commitment. So I sent you guys a note saying, hey, I know you guys knew we were working on this book. We were getting towards ... gearing up launching this. So I sent you guys a note saying, hey, do you mind if I go on a leave, and you guys were fully understanding about it, and that was awesome. I feel like I'm in debt to you guys for that. Matt Stauffer: No, dude. Not at all. Steve Schoger: Then that was in September, and we already had a launch date in our head. We wanted to get it done before the new year. We already announced that we were going to get it launched by fall 2018, right? Matt Stauffer: Right. Steve Schoger: And then I just worked on ... We worked on the book for three months there. There was a break in between where we were both ... And you were there too ... invited to speak at Laracon Australia. Matt Stauffer: Yeah. Steve Schoger: Both Adam and I made a bit of a family vacation out of that too. We spoke at the conference, but it's like, well, going to Australia is a once in a lifetime opportunity, and our wives want to come, so we brought our whole family along. Matt Stauffer: I got to meet your families and I loved it. Steve Schoger: Yeah. That was a two-week break we had in there. Then when we got home, we realized ... We wanted to launch it at the end of November. That was the original goal. But we got back from Australia, we were like, that is impossible. There's no way to get this amount of work done in that amount of time, so we pushed it back a bit. We didn't actually have a date in mind, but we were thinking, we've gotta get it done before the new year, because if we don't get it done by ... If we didn't get it done in the week we got it done, then we probably would've postponed it to the new year. Matt Stauffer: Yeah, 'cause it was just too close to Christmas and everything's too crazy around then. Steve Schoger: Exactly, exactly. Even at the time we launched, it was a little bit ... I don't know. Yeah. And we were just ... Like you were saying, we disappeared, especially in the last week. That was ... I didn't sleep for three nights, the last three days before the launch. I was up for 72 hours. I got maybe two hours of sleep in that period. Matt Stauffer: Yeah. I saw you at the end of that period. Steve Schoger: Yeah. Matt Stauffer: [crosstalk 00:21:09] Steve Schoger: No, and I was just neglecting my family. My wife was incredible about it. She even said, hey. Would it be helpful if I go sleep at my parents' for the next few nights, just to get out of the house, and you have time to yourself? Matt Stauffer: Wow. Steve Schoger: She was incredible for that. Yeah. That was just ... I was trying to stay active on Twitter, 'cause I needed to keep promoting the book and make it look like I was still alive. But, yeah. Matt Stauffer: Because we're pretty short on time, I try to keep these under an hour and we're going to go a little bit over, I want to ask you a lot more questions, but I want to at least push on this one thing. What did it feel like to put out your first big product, and what were you doing after the launch? Now that it's been a couple weeks, how do you reflect on that experience about having done it, about the launch day ... Does this make you want to go do something like this again, or do you say never again? How do you feel about it right now? Steve Schoger: I don't think I'll ever work on a book again, for sure. But I'm all down for working on projects like this again, big product launches. They're fun. Steve Schoger: I know when Adam did his Refactoring to Collections book, it was like, he was working on that in the evenings and stuff while he was working for you guys, then he had this unexpected huge launch, and that enabled him to quit his job with you guys and pursue that stuff full-time. That was pure excitement for him. Steve Schoger: For me, the build-up to this ... There was kind of an expectation that this was going to do well based on the ... Every time we posted ... Yeah, the hype was so seeded with it. So all the excitement was almost before the launch, and then after the launch, it was kind of like ... I'll say it was incredibly successful. But that success almost hasn't even hit me yet. Matt Stauffer: Was it a little anticlimactic? It was kind of like, work, work, work, work, work, and then it's just out there and then ... Steve Schoger: Like I said, we were up for 72 hours prior to launching, and even after we launched, it was just support emails. We were working incredibly hard after the launch too. Now it's starting to settle in and it's starting to calm down a little bit, and now it's starting to feel like, wow, we did something incredible. It's not even just the success of the launch of the book and all the money it made, but it's also just ... I feel like we actually made something that is big. Matt Stauffer: Yes. Steve Schoger: I feel like the thing that we delivered to the world was ... This is really going to help people, and we really wanted to make something that is going to hold up over time. We didn't want anything that's ... We tried not to be too on-trend in the book. We want it to be really something that's going to be relevant 10 years from now, you know what I mean? Matt Stauffer: Yeah, yeah. Steve Schoger: So that was our goal. That's hard to do, but we did our best at it, I think. Matt Stauffer: I think that the best books that really tell that is when there's a book where the only irrelevance it would ever have is if the things that it teaches have become so internalized by everybody that you then read the book and go, okay, well, yeah. I already knew that. And I think that is the most likely case, if anything, of its irrelevance, is these things become known. There's a couple technical books. One is How to Make the Web Faster, I think it was called, by Steve Souders, and there's one other that I had in my mind. Oh, Adam's Refactoring to Collections book. I used to have questions in our interview process that would best be answered by a collection pipeline, and then Adam released his book, and then after about six to nine months, those questions no longer helped me figure it out 'cause everybody read the book and everybody knew the answers. Steve Schoger: Yeah, yeah. Matt Stauffer: I think if there were any irrelevance of this book or this project going forward, it would hopefully be that so many people consume it, it becomes so well-known that it's still a go-to reference book, but a lot of people say, yeah, I learned that. I like that. Steve Schoger: Yeah. We targeted the book towards developers, but it also resonated with designers. A lot of designers told me that it appealed to them ... It's kind of the back to basics, almost, for designers as well. It's not just ... It's back to basics for visual design. Everything is so hand-wavy, all the information out there. But this is like, here's some concrete knowledge on designing interfaces, doing visual design. Matt Stauffer: Yeah. Steve Schoger: Sorry, I interrupted there. You had a question. Matt Stauffer: No, no, no, that's fine. That was it. I have one big question I'm going to ask you at the end. But I asked people on Twitter what they wanted to ask you, and most of these, they're either silly or they're not appropriate for a podcast or something like that. But there are two I want to ask, just because. One of them is, how tall are you, from Johnson Paige? Steve Schoger: I'm 5' 11". Matt Stauffer: Okay, 5' 11". And one of them is what is the weirdest- Steve Schoger: Not as tall as Matt. Matt Stauffer: Not quite. Steve Schoger: Matt is much taller. Matt Stauffer: 6' 2", it's close. Another one. Aiken Roberts asked, what's the weirdest thing you put in a sandwich? Steve Schoger: I'm a pretty simple man. I don't think I put anything ... Now, there might be something weird I put on a sandwich that's Canadian and foreign to you that's normal for me, so ... Matt Stauffer: Mayonnaise on a burger or something like that? Steve Schoger: Of course I put mayonnaise on a burger. Matt Stauffer: You know that's Canadian, right? Steve Schoger: Really? Matt Stauffer: Yeah. That's super Canadian. Steve Schoger: That's a Canadian thing? No kidding. Matt Stauffer: I do it. But I remember ... I grew up in Michigan, and the first time we went up on a trip and I had McDonald's there, they put mayonnaise on it, and our minds were completely blown. Steve Schoger: No kidding. Matt Stauffer: We were like, why is there mayonnaise on a McDonald's burger? Yeah, that's Canadian. Steve Schoger: What do you guys use mayonnaise for, then? Matt Stauffer: Sandwiches, usually. But just not burgers. Steve Schoger: Okay. Matt Stauffer: I think mayonnaise and burgers are brilliant. My whole family does it. But it's not a normative American thing for sure. Steve Schoger: No kidding. So that's the weird thing I put on burgers. Matt Stauffer: There you go. Okay. Jesse asks, who is your favorite high school teacher? I guess Jesse went to high school with you. Steve Schoger: Yeah, so ... Yeah. We were talking earlier before the podcast. I went to high school with Jesse, and my name started getting more familiar in the Laravel community, and he's already in the Laravel community. He reached out to me one day saying, are you Schoger from high school? And sure enough. Matt Stauffer: That's so awesome. But I am curious, not just because I want to tickle his fancy about high school, but what ... Did you have a subject in high school that you really liked or a teacher you really liked? Steve Schoger: Yeah, my favorite teacher in high school was my art teacher. His name was Mr. Garry. Matt Stauffer: Okay, that makes sense. Steve Schoger: I think he just saw the best in me, I guess, and that's ... 'cause I was kind of a shithead in high school. I was not a good student. Matt Stauffer: You're a rock star, right? Steve Schoger: Yeah, exactly. He just saw the best in me. Matt Stauffer: That's cool. Steve Schoger: Yeah. I think he's retired now. I hope he's doing well. I ran into him a while back ... I don't think he knew my name, though. But he recognized me, and ... Matt Stauffer: That's cool. Steve Schoger: I hope he's doing all right. Matt Stauffer: The last question, other than, how can people follow you, which we'll get to in a second, is ... Let me see who it was that asked it. I should credit them. Sebastian Cozul asked, what's next? Steve Schoger: What's next? Right now, the past few weeks, I'm doing some Refactoring UI updates. Expect a few updates with that. I want to get back into YouTube videos, I want to get back into ... I'm working on a project with Taylor next month. Matt Stauffer: Oh, cool. Steve Schoger: The next thing I'm working on, the next big thing I'm working on, is I'm going to be helping Adam with Tailwind stuff, and we're going to be growing that. Matt Stauffer: Oh, cool. Steve Schoger: I'm not going to announce anything, but we've got some big stuff happening with that. Matt Stauffer: So if somebody is curious about that big stuff that's happening, how should they best follow you? Steve Schoger: You can follow me on Twitter, I'm very active on Twitter. Matt Stauffer: @steveschoger. Steve Schoger: @steveschoger, yeah, that's my handle. Matt Stauffer: You have an email list that you prefer they join right now? Steve Schoger: Yeah. You can sign up at Refactoring UI ... We have two email lists there. We have the refactoringui.com, go to that site and there's ... just to get general Refactoring UI updates. Like, if I do a YouTube video, we'll send you a note. Then there's the book email. They're two different newsletters. So if you just want updates on the book, if you want sample chapters and stuff, it's refactoringui.com/book. Matt Stauffer: Okay. But if they just want to follow what you're doing next, just refactoringui.com and sign up right there? Steve Schoger: Yeah, exactly. Matt Stauffer: Okay. Steve Schoger: I'd say the best way to keep engaged is Twitter, to be honest. Matt Stauffer: Yeah, yeah. And if there's anything else ... Or, is there anything else that you would like to say? Anything we didn't get a chance to talk about, or anything you want people to check out or anything like that that we didn't cover yet? Steve Schoger: I don't think so. We talked a lot. We've been going for almost over an hour now. Oh God. Matt Stauffer: Yeah, yeah, I think so. Yeah. All right, it's been good. Steve Schoger: You're going to have to edit this a little bit and make it down to- Matt Stauffer: No, no, man. They're going to sit through the whole thing. I don't care. They'll love it. They'll wish I had talked to you for an hour longer, just like I always do. Matt Stauffer: Well, Steve, dude, it has been a ton of fun. It's been a ton of fun knowing you as a person and being able to learn from all this stuff, but it's also been a ton of fun talking to you today. Thank you so much for your time and telling us a little bit of your story. Steve Schoger: Yes, thank you. Thank you for having me. Matt Stauffer: All right, that's it. Steve Schoger: Okay.
Interview: Abed Halawi, Tech Lead at Vinelab
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)