MrMoto9000's avatar

MrMoto9000 wrote a reply+100 XP

3w ago

Interesting take! I think those are good words of wisdom although the complexity you discuss I think would have been handled for you if you'd chosen React, Vue or Svelte. Laravel has starter kits for each of those, and they handle all the connection between through FE/BE for you automatically through Inertia.

MrMoto9000's avatar

MrMoto9000 wrote a reply+100 XP

2mos ago

This is outdated. Laravel 12+ now support PHP 8.5

MrMoto9000's avatar

MrMoto9000 wrote a reply+100 XP

2mos ago

That Pest dependency is controlled by Laravel, so the OP is right

MrMoto9000's avatar

MrMoto9000 wrote a comment+100 XP

2mos ago

This is gross

MrMoto9000's avatar

MrMoto9000 liked a comment+100 XP

2mos ago

Great series so far, waiting on the next video.

Just a comment, I don't like that we need to pass the $username and $password in our Database class, I want something like including it in our database config so that it's streamlined.

'database' => [
    'host' => 'localhost',
    'port' => '3306',
    'dbname' => 'php_for_beginners',
    'user' => 'root',
    'password' => '',
    'charset' => 'utf8mb4',
]

But this will introduce an error because the new PDO accepts 4 parameters, and now we're not passing the $username and $password there.

$this->connection = new PDO($dsn, $username, $password, [
    PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
]);
MrMoto9000's avatar

MrMoto9000 wrote a comment+100 XP

2mos ago

Agh, you skipped an important bit here. You moved your DB config to another file but the connection strings are still hardcoded and not environment dependant. That could easily confuse a viewer when you talk about the need for different connections strings depending on the environment. Hmm!

MrMoto9000's avatar

MrMoto9000 wrote a comment+100 XP

2mos ago

I wish I'd had this series 20 years ago. It's such an incredible foundation for any PHP developer. Well done, Jeffrey!

MrMoto9000's avatar

MrMoto9000 wrote a comment+100 XP

2mos ago

It took me a while to understand that the "next big thing" is actually tomorrow's forgotten tech 90% of the time. Chasing the new thing is what the makers of new tools and tech want you to do... but it's a waste of your time and bad for your projects. Don't do it!

MrMoto9000's avatar

MrMoto9000 wrote a comment+100 XP

2mos ago

This was posted to the Laravel Discord a few days ago:

"i was hired by some company for a contract, they had some inhouse hospital management CRUD in symfony, like over-engineered stuff with many layers modules etc. pretty huge codebase like 10 yrs in existence. they gave me some tickets - i just pasted tickets in cursor for sonnet and commited what it proposed 😄 never bothered to actually learn the system 😄"

This is what "agentic coding" looks like in the wild.

MrMoto9000's avatar

MrMoto9000 wrote a comment+100 XP

2mos ago

I wish I could see this supposed wonderful change that happened in December 2025, because I just tried Claude and it still gave me an Eloquent query that didn't run. It still just told me that the way to get my static assets to be cached in the browser was through middleware (and when I pointed out that static assets are served directly by the server, not via Laravel, it agreed it had been wrong).

They were the first two questions I'd asked an LLM in 2026... and both answers were wrong. I don't get it.

It's just not quicker for me to rewrite badly-written or over-engineered code.

I just don't feel comfortable pasting something into my codebase that I don't fully understand and just crossing my fingers and hoping.

That's not coding, it's driving while blindfolded.

And it's just not good to rely on a machine to do your thinking for you. You will get lazy. You will stop being analytical. You will become a worse developer.

And when things break... you won't be able to fix them.

Finally, nothing compares to a good teacher. Nothing. And AI just is nowhere near as good a teacher as someone like Jeffrey Way.

I'm sorry AI has crushed your business, Jeffrey, but I believe we'll all be back... eventually ❤️

MrMoto9000's avatar

MrMoto9000 wrote a reply+100 XP

3mos ago

Ignoring the stupid answer by the AI, this is a great question. Laravel Breeze is still very much relevant. Don't include technology that you don't need, and most projects do not need fully fledged JS frameworks (or Livewire).

MrMoto9000's avatar

MrMoto9000 liked a comment+100 XP

5mos ago

@Sinnbeck It is effectively JSON in that a simple string is valid JSON. Unfortunately the @json helper passes the data through htmlspecialchars, and so results in the same inappropriate escaping.