Granular interfaces
As a system evolves, abstractions should arise from current needs, not future possibilities.
Read more [sebastiandedeyne.com]
All my posts about architecture.
As a system evolves, abstractions should arise from current needs, not future possibilities.
Read more [sebastiandedeyne.com]
– arunas.dev - submitted by Arunas
You'll learn the difference between "tactical" and "strategic" programming, and why choosing the right approach is important in the long run.
Read more [arunas.dev]
Join 9,500+ smart developers
Get my monthly newsletter with what I learn from running Spatie, building Oh Dear, and maintaining 300+ open source packages. Practical takes on Laravel, PHP, and AI that you can actually use.
No spam. Unsubscribe anytime. You can also follow me on X.
"As a Laravel developer, this is the one newsletter I most look forward to. Freek has a talent for distilling packages or techniques down to something immediately useful - one tip can save you hours and even weeks. It's concise and practical and highly relevant."
– arunas.dev - submitted by Arunas
Before we learn strategies for better software design, we must understand our enemy - complexity. Let’s define complexity, how to spot it, and what causes it.
Read more [arunas.dev]
Dave Calnan has been using Remix in production for about 6 months now and has decided to add a Laravel backend to the stack. Here's what he's learned from the process.
Read more [davecalnan.blog]
Laravel gives you the flexibility to choose the structure of controllers yourself, which is both a blessing and a curse. You won't find any recommendations in the official Laravel docs, so let's try to discuss various options, based on one specific example.
Read more [laravel-news.com]
– www.juststeveking.uk - submitted by Steve McDougall
In Laravel 5.1 the Command Bus was replaced with Dispatchable Jobs, we can still use them but let us also look at how to add a Command Bus.
Read more [www.juststeveking.uk]
– www.juststeveking.uk - submitted by Steve McDougall
In a typical Laravel application we are very used to doing things in a certain way, by the book as they say. However there comes a point in the applications lifetime that it is going to be easier to start looking to split this code into Domains so that we can logically group our code.
Read more [www.juststeveking.uk]
– doeken.org - submitted by Doeke Norg
The Middleware Pattern allows you to easily change the input and output of an action; one layer at a time.
Read more [doeken.org]
Shawn McCool shares some interesting thoughts on how things should be named.
Read more [shawnmc.cool]
The use of a message envelope has many benefits for the design of your application. It allows you to carry system information, nicely separated from domain information, in a generic way.
Read more [blog.frankdejonge.nl]
Event-driven systems come in all sorts of shapes and sizes. The obvious commonality is; they all use events to communicate information. These events come in many shapes and sizes, and determining what goes into an event has an immense impact on the design of your system.
Read more [blog.frankdejonge.nl]
Validation takes on many shapes and forms. In this post, Frank walks you through all the possibilities.
Read more [blog.frankdejonge.nl]
Matthias Noback shares some considerations on when you could rely on PSR abstractions
Read more [matthiasnoback.nl]
Here's the recording of an excellent talk by Matthias Noback given at Socrates.
I'm thrilled to announce that our premium course Event Sourcing in Laravel has just launched.
If you ever wanted to get started with event sourcing, this is the course for you. It contains a beautifully designed ebook, two hours worth of videos, and a demo Laravel app containing an event-sourced shopping cart.
Event sourcing isn't an all or nothing approach. Even if your project doesn't need the full power of event sourcing, you can still benefit from knowing and implementing best practices from the event sourcing world.
We're offering a 20% launch discount for the next two weeks to celebrate this release.
In this stream, you can see my colleague Brent and I launch the course, and answer questions from the audience.
In this stream my colleague Brent and I continued our conversation about the foundations of event sourcing. This time we showed a shopping cart that we've built using Laravel and event sourcing.
If you're interested in learning more about event sourcing, be sure to check out our upcoming course on using event sourcing in Laravel.
Let's dive into some of the design considerations you might make when designing abstractions that reach over a network.
Read more [blog.frankdejonge.nl]
My colleague Brent and I are currently preparing a premium course on event sourcing in Laravel. In this stream, we explained the foundations, shared some thoughs on some of the concept, and answered questions from the audience.
Event sourcing is about storing changes, instead of their result. It's those changes that make up the final state of a project.
Read more [stitcher.io]
Here's an excerpt from Event Sourcing in Laravel, an premium course by Spatie launching later this year.
Read more [event-sourcing-laravel.com]