Improving Artisan commands original
In this small blog post, I'd like to give you a couple of tips to make your Artisan commands better.
In this small blog post, I'd like to give you a couple of tips to make your Artisan commands better.
On the Tideways blog, Benjamin Eberlei explains PHPs garbage collection internals.
It's helpful to have a broad understanding of how garbage collection works in PHP, along with how you can interact with it so that you can create high performing applications.
Read more [tideways.com]
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.
"Freek’s newsletter is one of the best ways to stay updated with the Laravel and PHP ecosystem. It consistently highlights useful packages, tools, and ideas from the community, especially the amazing work coming from Spatie. As a Laravel developer building SaaS and web platforms, I find it extremely helpful to discover practical tools and insights that improve my development workflow."
At Laracon AU, Jason McCreary gave an excellen talk on how to create maintainable Laravel apps. On his blog he published a written down version of the talk.
Being the author of BaseCode and creator of Shift gives me a unique insight into writing Laravel applications. I combined 20 years of writing code with supporting over 20,000 Laravel upgrades into 10 tips for crafting maintainable Laravel applications.
Read more [jasonmccreary.me]
My colleague Seb lists a few very good actionale tips that help you maintaining open source software.
In the 4.5 years I’ve been a developer at Spatie, over 200 packages have been built and released by our team. I’ve done quite some authoring and maintenance over the years, and I’d like to share 8 actionable tips on writing and maintaining open source software without going insane.
Read more [sebastiandedeyne.com]
Confused by DNS Records? A, CNAME, ALIAS...
— Chris Achard (@chrisachard) October 28, 2019
Me too ?
Let's change that! (cheatsheet at the end)
? DNS Record crash course for web developers ?
Read more [twitter.com]
For a couple of projects I needed to read and write a couple of very large Excel and CSV files. I didn't find a good package that does this so I decided to create one myself. Under the hood it uses generators, so memory usage will remain low, even when working with large files.
In this blogpost I'd like to walk you through spatie/simple-excel.
A couple of days ago my colleague Brent published a blogpost on Domain Oriented Laravel. In short, he makes the case for organising your code around business concepts or features. That might sound very "heavy" or daunting, but it's actually for easy to get started with.
In this short video I explain how you can use PhpStorm to refactor your code. Make up your own mind if you need this in your projects.
Adam Wathan explain how can avoid re-rendering the entire UI everytime you click a link in Next.js
Next.js is such a wonderfully productive development experience and produces such incredibly fast websites that I just refused to believe it had to be this way. So I spent a few weeks researching, asking questions, and experimenting, and came up with these four patterns for persistent layouts in Next.js applications.
Read more [adamwathan.me]
After tweeting out a screenshot, it often get questions around which editor, font or color scheme I'm using. Instead of replying to those questions individually I've decided to just write down the settings and apps that I'm using.
Tim MacDonald shares an interesting technique.
Action scopes are...well...just query scopes really, but instead of filtering they take an action. It's just a random name I've given them to differentiate them from regular filtering based query scopes in my projects.
Read more [timacdonald.me]
? When calling a function, #PHP will first look for one in the current namespace before calling the global one. pic.twitter.com/qYh6o9eypZ
— Freek Van der Herten (@freekmurze) October 17, 2019
Read more [twitter.com]
When using PHP, you've probably used DocBlocks. They can be used to add additional information that can't be inferred by looking at the source code alone. DocBlocks can be used by IDEs, like PhpStorm, to improve autocomplete suggestions.
In this blogpost, I'd like to highlight a not so well known DocBlock: mixin.
Don't try to manage your colleagues too much.
Employees want to be managed by people who empower them, not manage every bit of their day. The better you get at hitting the right balance between oversight and autonomy, the more likely you are to win long-term fans who will advocate for you as your career progresses.
Read more [forge.medium.com]
Not adding an API until absolutely necessary lets us keep our model internal and lets us iterate as needed.
— Matthieu Napoli (@matthieunapoli) October 10, 2019
Read more [twitter.com]
When the void typehint was introduced in PHP 7.1. There was some debate about it. Some people wondered if it is beneficial to type nothing? I was one of them. Meanwhile, I changed my opinion on it. In this short post, I'd like to give you a small example where I think void shines.
A little piece of code I write often enough to mention. Pretty elegant IMO ? pic.twitter.com/F56izKw3hW
— Caleb Porzio (@calebporzio) October 9, 2019
Read more [twitter.com]
Mathias Hansen shares how API response time data is used at Geocodio and how to work with this kind of data in MySQL.
The API is the backbone of our business, so over the years we have continously worked to improve and ensure consistent performance. We look at many parameters such as uptime and error rates, but one of the key metrics is API response time. This is how we use this data.
Read more [www.codemonkey.io]
Atymic (real name unknown to me), a developer hailing from Sydnex, wrote a blogpost on how he managed to get PHP running in the browser via WebAssembly.
I'm sure you've come across plenty of sites that use javascript on the front end, but what about using PHP as a client side language? How, you ask? Since PHP is C based, it's actually possible to compile a version that's able to run inside your web browser using web assembly.
Read more [atymic.dev]
Recently we released a new small package called laravel-rate-limited-job-middleware. As the name implies, this package can be used to limit how many times a job may be executed in a given amount of time.
In this short blog post, I'd like to introduce the package to you.