Write Laravel, not PHP (feat. Aaron Francis) | 029

  Рет қаралды 13,590

Backend Banter

Backend Banter

8 ай бұрын

Lane and Aaron Francis sit down to talk about Laravel and PHP, and why everyone who uses them tends to make a lot of money. There seems to be something to avoiding the technical hype cycle and just shipping web apps that people want to use.
Learn back-end development - boot.dev
Listen on your favorite podcast player: www.backendbanter.fm
Aaron Francis' Twitter: / aarondfrancis
Aaron Francis' KZfaq: / @aarondfrancis
Aaron Francis' SQL Course: planetscale.com/learn/courses...
Learn to make Screencasts: Screencasting.com
Like & subscribe for the algo if you enjoyed the video!

Пікірлер: 61
@poggybitz513
@poggybitz513 6 ай бұрын
"Telling a fish water is weird" lmao. Aaron is super funny and very articulate. Thank you Lane for this amazing podcast.
7 ай бұрын
I'm in favor of static-typed languages like Go and Rust. However, I can say that I appreciate languages like PHP for writing scripts or some particular HTTP tasks for example instead of Javascript. The reason is that writing PHP code (v8) feels to me more succinct than writing plain JS or indentation-based languages like Python or Ruby. That is because PHP has improved a lot its syntax, performance and added support for strict typing. Francis has a nice video about PHP's built-in features enums, pattern matching, closures, etc. Although PHP is single-threaded, if you want to do multi-thread PHP stuff, you have C extensions like Swoole. Or if you are worried about performance, the compiler team is working to get a new JIT for PHP to optimize it even better in the future. So IMO PHP is fairly decent at this point, so why not give a try?
@MrHopp24
@MrHopp24 8 ай бұрын
Just downloaded Herd on Mac and got an app up and running in 10 minutes. Excited to build something with Laravel. Awesome episode!
@georgeyoung108
@georgeyoung108 5 ай бұрын
I'm thankful for the lack of "side quests" in PHP. JS is a nightmare to wade through right now as a beginner. For me, it's an easy choice. Laravel and Vue.
@gabrielbahash
@gabrielbahash Күн бұрын
Wow this debate really clarified the vs. framework discussion
@LukasRotermund
@LukasRotermund Ай бұрын
37:51 I would disagree in the sense that I use Golang not because I want to be able to handle 100,000 requests per second, which would be cool, but rather to drastically reduce CPU time and memory usage. After all, CPU time and memory are exactly what I end up paying for with cloud computing. And when Laravel advertises Severless for performance, just like JS/Node, I find that a bit dubious, because it ends up costing quite a bit when the credits are used up.
@ryanvelbon
@ryanvelbon 2 ай бұрын
Podcast about backend? Been looking for something like this for years. Subbed!
@code-island
@code-island Ай бұрын
I cant even tell how this conversation was fantastic, you both are really good speakers. Im getting comfortable with laravel ecosystem and very happy with the productivity
@rysw19
@rysw19 8 ай бұрын
My company has used PHP for a long time, and we’ll be gradually migrating new applications to go over the next few years. It might sound a little odd but they are more similar than you might think by the criteria that are most important to us. 1. Despite what the guest says, they are both “batteries included” languages. Built into both languages are utilities for dealing with JSON, SQL databases, making HTTP requests, regex, email, etc. If third-party frameworks aren’t an option for you, you can roll your own pretty easily. 2. Both value backwards compatibility. In golang they have their compatibility promise. In PHP you can get a 15 year old application running with only minor changes generally. 3. The ecosystem. This is largely a product of the first two items, but both languages do have a good ecosystem. Composer and go get are the two best package management solutions I’ve used by a pretty wide margin. Syntax, performance, programming paradigms, and even static typing obviously make some difference in how you use a programming language, but their impact for many (most?) use cases is completely overshadowed by broader concerns.
@bootdotdev
@bootdotdev 8 ай бұрын
that's super interesting actually
@DarenC
@DarenC 8 ай бұрын
Hah! I use PHP as a templating language all the time! The CMS we use is written in Java, but we used it to produce PHP scripts. 😂 None of this front controller routing stuff, just an index.php in every directory. Bish, bash, bosh, job's a good 'un!
@olivier5293
@olivier5293 12 күн бұрын
Best explanation of what really laravel is.🎉
@sentient_carbon
@sentient_carbon 7 ай бұрын
I can relate with the disgust at 51:26. I'm a big php fan, but last week I was using a standard function, array_merge, which you'd think it merges arrays, right? Here's the kicker: if you try to merge arrays with numeric keys, it actually behaves as an append! That was a fun hour.
@oliverhughes169
@oliverhughes169 13 күн бұрын
Underrated video, enjoyed this a lot
@tyu3456
@tyu3456 8 ай бұрын
Talking about frameworks in JS land - yes Next.js doesn't compare to Rails and Laravel, but there IS a JS framework that's trying to be like that - it's called Adonis. It comes with auth, database, file storage, etc. Unfortunately the community and publicity is just nowhere near other JS frameworks for some reason. There's also Nest.js, but Adonis is a lot closer to those full-featured frameworks.
@rumble1925
@rumble1925 Ай бұрын
Yup, big thumbs up for Adonis from me too. It's a great framework. They really know what they're doing in terms of developer ergonomics.
@AndreiTelteu
@AndreiTelteu 6 ай бұрын
I think of typescript as just an easier documentation tool. When I don't care `as any` is my friend, and on important stuff just type a small type declaration, no big deal. `strict: false` always
@gofullstack
@gofullstack 18 күн бұрын
54:55 I don't remember typing dollar signs when writing PHP.
@JLarky
@JLarky 7 ай бұрын
19:44 I enjoyed how he repeated "7000 engineers working on React" twice, given that React team has like 10 people and Facebook used to be 100% written in PHP 😂
@backendbanterfm
@backendbanterfm 7 ай бұрын
You want truth and facts??? Wrong pod
@kahnfatman
@kahnfatman Ай бұрын
I write "echo" whenever I create a Dockfile...
@Jacek2048
@Jacek2048 14 күн бұрын
Interesting chat, but: I don't think you guys know what static vs dynamic typing is. "We don't have huge amorphous arrays that we pass in PHP" - what? It's the exact thing I see most of the time.
@woodmanmade
@woodmanmade 8 ай бұрын
Aaron basically saying he likes types (class instances) but not the syntax TS is clunky but we use it often for the same reasons he uses classes in PHP: so we know what we're working with And JS has an unfair aversion to using classes otherwise I think it would look quite similar at the end of the day
@raenastra
@raenastra 8 ай бұрын
I think he's specifically not a fan of the structural typing in TS here
@woodmanmade
@woodmanmade 8 ай бұрын
@@raenastra perhaps. I think inferred Typing would get him a long way towards appreciating it a bit more, but i understand he prefers the structure of class instances to raw objects. Just pointing out he could prob get a lot of what he likes in TS as well (tho no Laravel of course)
@jeffreysmith9837
@jeffreysmith9837 Ай бұрын
Php for getting shit done fast. Go for performance, low cost and low maintenance.
@gofullstack
@gofullstack 18 күн бұрын
I'm making it 501 likes as a. PHP lover
@LorenzoGiovenali
@LorenzoGiovenali 9 күн бұрын
What about Symfony & Drupal?
@tarilonte
@tarilonte 9 күн бұрын
They have less money for marketing.
@IshCaudron
@IshCaudron Ай бұрын
Oh god, I do understand now: I don't know it, I don't use it, but I know it sucks because it looks like it sucks. Is this reddit?
@johnhandelaar
@johnhandelaar 2 ай бұрын
As I understand the extended failure-to-convey sequence about type-safety that never really got resolved as it relates to (eg) Laravel, the thing not being said is: in modern PHP a properly-instantiated class instance *can be a type*, and that's so much more useful than str/int/whatever nitpicky typechecking, and so easy to define in the class definition, that lower-level annoying type crap becomes unnecessary if you're actually... ya know. Working. (Yes, your description of Golang struct as being analagous to class-based typechecking is about right) All of us don't care so much about types. We care about not having type *errors*, especially hidden ones. Nitpicking cares about types and pragmatic struct/class validation cares about errors.
@riyaadhabrahams
@riyaadhabrahams 2 ай бұрын
Mm😮
@mattskov2917
@mattskov2917 8 ай бұрын
Lane said fuck
@backendbanterfm
@backendbanterfm 7 ай бұрын
hey now... true
@Zakaros1000
@Zakaros1000 Ай бұрын
hey! Don't mess with Typescript, it basically fixed Javascript. haha. Isn't Vue a library like React? Why Vue instead of a full framework like Angular which goes slowly but stable with backwards compatibilty too? I can understand the hate for React, with all those libraries updating in diferent dates, and with breaking changes in frameworks like Next. But I see Vue as something similar like React, they even have Nuxt which almost sound like Next .-. Shouldn't it be a better option Angular? which is a Complete Framework that doesn't have that many updates like React and its thirdparty libraries but it is still cool and stable. I almost see it as a equivalent to Laravel but for Frontend...
@gofullstack
@gofullstack 18 күн бұрын
5:56 I don't know a thing bout raw PHP. Is it a Framework? Or am I so dumb not to realise people use the word in place of "Vanilla" PHP? 😹😹😹
@JanJozefo
@JanJozefo 8 ай бұрын
Great episode! I got really excited when I saw it was out, but I can't help but feel a bit uncomfortable watching it because it seemed like Aaron was upset at something the whole time. Maybe it's just me. Hope everything is ok on his end.
@aarondfrancis
@aarondfrancis 8 ай бұрын
Haha really?? I'm all good! Love to banter
@JanJozefo
@JanJozefo 8 ай бұрын
@@aarondfrancis Good to hear! Yeah, I think it was the combination of the crossed arms plus the face you make when you're thinking that comes off as a bit angry. But as a PHP developer who's built a few libraries in his time, your takes on gradual typing and classes seem spot-on to me 😀
@aarondfrancis
@aarondfrancis 8 ай бұрын
@@JanJozefo ha perfect, I shall forever be self conscious about my face now 😂😂
@KonstantinosMK
@KonstantinosMK 8 ай бұрын
@@aarondfrancis I think it might be a combination of where the screen you're looking was located vs your webcam. I wouldn't go as far as calling it an angry/upset look, we're just used to seeing you more relaxed. Great talk by the way.
@razt3757
@razt3757 7 ай бұрын
49:22 he's saying TypeScript is not enforced at runtime, that's why he says "pretend types". TypeScript doesn't provide type safety, it provides type hints, and whoever disagrees better take a look at what Vite.js does. Vite.js will build your application if there are type errors, because they just gave up completely on the idea of enforcing types even at build time, they just delegate that to your IDE and your CI piplines or whatever you're using to deploy. Which makes sense, at least they're being realistic about TypeScript. On top of that there are also some pitfalls in TypeScript where it can be just wrong, specifically with arrays and union types. Just as a very simple example an Array con become a valid Array, which is nuts.
@feldinho
@feldinho 2 ай бұрын
In practice, TS uses "type erasure", and it works like Java, Python, C, and many others. Languages like C#, Rust and PHP have "reified types", where type information is integral to the objects and kept on runtime. Type erasure is okay, and was not invented by TS. It's just another way to do things.
@AHN1444
@AHN1444 13 күн бұрын
Raw PHP is perfectly fine, you can search the database in a couple of lines and create the result on the fly, no extra files, no library, no nothing, what's wrong with echo? is shameful to use it? is way cooler to have 1000 packages to do the same in other way? which they will have dependency problems? and you will be executing other persons code which could have virus?. If you have a big project is better to use a framework, I use svelte and GO lately, but I don't forget that for some cases PHP is way superior.
@purpinkn
@purpinkn 8 ай бұрын
25:28 no it wouldn't break. People just wouldn't upgrade their PHP version, like it is now anyway. That much backwards compatibility leads to bloated, buggy code. Just ask windows.
@leeboy_
@leeboy_ 8 ай бұрын
That is true to an extent… I think he was taking into consideration that most of those applications are on shared hosting and they don’t individually have full control on the servers, so breaking changes would indeed break.
@Thoer
@Thoer 27 күн бұрын
Ex-PHP dev here. Calling PHP one of the older languages still in use is just weird to hear. Also very wrong.
@anasouardini
@anasouardini Ай бұрын
44:26 me before I started using TS
@CharlesMartel829
@CharlesMartel829 2 ай бұрын
Laravel is like macOS while Next is like some Linux Distro.
@boopfer387
@boopfer387 Ай бұрын
Typescript... MS's reach into a biz they lost. I spend so much time leaning TS instead of coding, agreed hate it. Agree the pinnacle of react is over gone. Don't get it overly complex. V19 with now a compiler, so now all that pain with usememo, usecallback i can toss? nice how about Htmx, or livewire. Laravel is to me like .Net without the big prices. Host where i want not stuck with windows. I like .Net, next really? Lets jam a front end tech into this... huh?
@science_trip
@science_trip 7 ай бұрын
Write PHP not Laravel!
@DeveloperOfGames
@DeveloperOfGames Ай бұрын
imagine the day when we stop collectively glorifying incompetence and use systems languages like real programmers
@TheKaosTux
@TheKaosTux Ай бұрын
PHP Frameworks… okay… you started talking about it… Laravel? Hmm.. No.. wouldn’t touch that.. Symfony? Yeah.. better.. but.. hmm.. Flow? Definitely! Oh you don’t know Flow? Ah… that’s the problem…. And please… stop talking about Wordpress… that the worst thing that ever happened to the internet..
@TheOnlyJura
@TheOnlyJura Ай бұрын
I make fun of Javascript (and yes, typescript = javascript)
@IshCaudron
@IshCaudron Ай бұрын
So how is php today: "well, I just don't use it" PHP sucks so much that php developers "just don't use it". It reminds me of Java. it sucks so much that developers built alternative languages to use the jvm, just to avoid touching the language.
@tarilonte
@tarilonte 9 күн бұрын
Laravel is bloated, heavily opiniated and slow. It's made to sell courses, so it has a steep leaning curve and a fragmented and confusing ecosystem.
@ShadoFXPerino
@ShadoFXPerino 8 ай бұрын
Laravel is just what happens when a .NET guy gets dumped into an PHP environment and gets an allergic reaction to the templating and cruft. So why does PHP need to be redeemed, apparently against its will, when you could just use something like C# or Go, built from ground up for the "modern" MVC and routing paradigms, without the cruft? It doesn't make much sense. If I'm going through the trouble to put the
@rangingaway92
@rangingaway92 2 ай бұрын
Write PHP, not Laravel.
Maybe Programmers are Just Bad feat. Casey Muratori | 056
1:17:48
Backend Banter
Рет қаралды 60 М.
Inside Out Babies (Inside Out Animation)
00:21
FASH
Рет қаралды 17 МЛН
БИМ БАМ БУМ💥
00:14
⚡️КАН АНДРЕЙ⚡️
Рет қаралды 3,1 МЛН
Heartwarming Unity at School Event #shorts
00:19
Fabiosa Stories
Рет қаралды 23 МЛН
Laravel Pennant: first-party feature flags
14:21
Aaron Francis
Рет қаралды 16 М.
TypeScript vs Elixir: An FP Showdown with Theo Browne | 021
1:05:20
Backend Banter
Рет қаралды 20 М.
37: S-Tier Software with Taylor Otwell
1:17:18
Mostly Technical
Рет қаралды 10 М.
Rust is the WORST language to learn first feat. Teej DeVries | 042
1:09:31
What Makes A Great Developer
27:12
ThePrimeTime
Рет қаралды 165 М.
What Does “Full Stack” Mean? w/ Taylor Otwell and Ryan Florence
1:20:31
How About Tomorrow?
Рет қаралды 19 М.
Talking Go with the Go God feat. AnthonyGG | Backend Banter 055
58:26
Backend Banter
Рет қаралды 20 М.
Behind HTMX: Carson Gross on the re-Rise of Hypermedia | 024
1:11:09
Backend Banter
Рет қаралды 31 М.
Laravel Octane: supercharge your Laravel applications
8:34
Aaron Francis
Рет қаралды 36 М.
Частая ошибка геймеров? 😐 Dareu A710X
1:00
Вэйми
Рет қаралды 2,7 МЛН
НЕ БЕРУ APPLE VISION PRO!
0:37
ТЕСЛЕР
Рет қаралды 374 М.
Samsung laughing on iPhone #techbyakram
0:12
Tech by Akram
Рет қаралды 6 МЛН
Look, this is the 97th generation of the phone?
0:13
Edcers
Рет қаралды 7 МЛН