If you've ever ran a big migration in Laravel before you might know there are a lot of things that can go wrong. Processes go out of memory, migrations crashing half way through leaving some data unmigrated, rollbacks going wrong, etc... Let's see how we can avoid all of the above when creating a somewhat more advanced migration.Read more
In the past few weeks my friends and I spent quite literally day and night on Discord's voice chat. This inevitably brought back some good memories from the Summer nights we spent playing games and chatting away on TeamSpeak. And even though Discord is pretty great, there's one TeamSpeak feature missing to complete the nostalgia trip: the obnoxious voice notifications. Let's bring them back. User joined your channel
Scheduler is a tiny shell script to run Laravel's scheduler every 60 seconds, without having to configure any CRON jobs.
Over the years I've read a lot of interesting posts about speeding up PHPUnit. The last one being a pretty good summary by Laravel News (link in article). Remarkably, there's one trick that wasn't mentioned in any of these articles. I swear this is not clickbait.
Over the last few days we've had a couple of issues with Imagick and processing PDFs on our servers. As it turns out, these issues are caused by automatic security updates. Let's look into the issue and its solution.
Lately, a lot of cool shell aliases and functions have been posted on Twitter. I've decided to join in on the fun and create a shell function for something I do about 5 times per day: setting up an existing Laravel project.
I feel like programmers are often as good at breaking things as they are at fixing things. Part of the thought process of programming anything new is figuring out its flaws, weaknesses and possible exploitations. As a web developer, I often find myself applying the same thought process to everything I see and read about online. Including Laravel's May Mayhem blog contest.
If you've ever worked on any medium sized API I'm sure you quickly discovered a lot of frequently occurring patterns. Parsing the query string, retrieving necessary models, filtering, sorting, adding pagination and finally encoding the data as JSON. Creating a new endpoint quickly becomes an exhausting chore of making the same decisions repeatedly. To make some of these decisions for us, we built our latest package: laravel-query-builder.