freek.dev newsletter #138: generics, AWS mistakes and much more

Hi there!

Welcome to the 138th freek.dev newsletter!

You'll notice that this newsletter is written plain text. This is no accident.
I think that most people actually enjoy a non-HTML mail. Somehow, this also feels
a bit more personal to me.

Also, open en click tracking are now disabled. If used open tracking to let sponsors of
this newsletter know what the open rate of the newsletter is. Personally, I don't care
about open rate too much for this newsletter. I'm not trying to sell something, I simply
want to share knowledge.

Previously, I used click tracking to know what kind of content you are interested in. It's
very clear that most of you like technical PHP content the best, and I'll try to always include a
couple of links to that kind of blog posts.

I hope that you like these changes. Let me know what you think of this, by simply replying to this mail.
I do hope you'll enjoy this newsletter.


Announcing x-ray for Ray
Using this package, you can quickly scan source code for calls to Ray

I changed my mind about Tailwind CSS
When did you last changed your opinion on something technical?

Mistakes I've made in AWS
Here's a collection of the most commonly missed things when using AWS with Laravel Forge!

Building a PHPUnit to Pest Converter in a week
Jason McCreary explains why and how he created his cool Pest converter

Strategies for decreasing the number of queries in a Laravel app
Oh Dear is all-in-one solution to monitor your site that my buddy Mattias Geniar and I have created. It can monitoring uptime, certificates, broken links, scheduled jobs, and much more.Under the hood, Oh Dear is a large Laravel application that performs many queries all of the time. To power futureā€¦

Linking to Flare errors on your error page
We've launched a new feature that will make it easier for users of your app to report specific errors.

Fun with PHPUnit Data Providers
Data providers are a PHPUnit feature (and many testing frameworks have an equivalent) that lets you run a single test method multiple times but with different data. Larry Garflied shows some cool things you can do with them.

Monitoring Laravel Vapor metrics with Grafana Cloud
Once configured, you can see all of the metrics you need to ensure your Vapor app is healthy on one screen.

A free Alpine.js video course
In this entirely free video course, you'll learn how to use Alpine.js, a minimal JS framework that I'm using myself on a couple of projects

Source diving Pest Parallel Testing
In this stream, Luke Downing shows us around in the source code of Pest parallel plugin he created.

Glowing Background Gradient Effects with Tailwind CSS
Yet another nice video by Simon on cool things you can do with Tailwind.

Generics in PHP using PHPDocs
Generics are available since PHPStan 0.12. This posts explain what they’re all about.

How to Use a Custom Encryption Key for Encrypted Cast Model Attributes in Laravel
Laravel allows you to cast model attributes as encrypted strings1, when stored in the database. This gives you added security for any values that are sensitive (such as Personally identifiable information, PII), including complex structures such as arrays, collections, and even objects.


Community links

In this section you'll find links submitted by others.
Let me know if you did write or stumbled across a blog post, tutorial or video that might be interesting to appear in this section


Cagilo - Blade components for each project (submitted by Alexandr Chernyaev)

New In Laravel 8.60.0 - A New whereMorphedTo Method To Get Morphed Relationship Data (submitted by Ashish Dhamala)

How to use Symfony Mailer without the Symfony framework (submitted by Doeke Norg)

How to Add Color Picker Field to Laravel Nova (submitted by Sir Src)

Testing Blade components in Laravel (submitted by David Carr)

Advanced Pest setup (submitted by Jeroen van Rensen)

I'm recording the complete Laravel documentation as video screencasts, and you can join the process of building this platform. (submitted by Pascal Baljet)

Laravel Livewire update dependent select menu's on change (submitted by David Carr)


Old posts

Here are a couple of links from a while ago!

Running GitHub Actions for Certain Commit Messages

The PHP Community Synergy Initiative

Light colour schemes are better, based on science

Typing your frontend from the backend

Why and how you should monitor scheduled tasks

How to delete 900 million records in MySQL without shooting yourself in the foot

Moving 27K unique images from Spatie medialibrary local to s3 storage using Laravel Queue

How to call an overridden trait function

Contributing to an open source PHP package

Super Mario Bros. 3 in 3 minutes - World Record Speedrun Explained

Nested States in Laravel 8 Database Factories

Don't trust default timeouts

Automating the Laravel 8 schema dump using GitHub Actions

Making Time Make Sense in JavaScript

Unconventional Laravel: Custom Pipeline Classes



Did you like this newsletter?

I take a lot of time curating the right links for you. You could do me a favor by either spreading the word and letting others know about my newsletter.

Alternatively you could consider picking up one of the paid products my team and I have worked on:

All spatie products
Oh Dear
Flare

For each of the above you can use this coupon code to get a discount:
DISCOUNT-FOR-FREEK-DEV-READERS

If you have any questions, remarks or thoughts about this newsletter, simply hit reply!
Thank you so much for reading!




Freek

You are receiving this newsletter because you subscribed at https://freek.dev
Unsubcribe from this newsletter
This mail was sent using Mailcoach

Older messages

A little typo in the latest newsletter

Sunday, September 5, 2021

Hi there, My apologies for having to mail you again. It seems that I made a little typo in the previous newsletter. The link to the testing course is https://testing-laravel.com Use this coupon code to

freek.dev newsletter #137: Testing Laravel, how to install PHP 8.1 and much more!

Sunday, September 5, 2021

View email in browser This mail was sent using Mailcoach freek.dev Hi, welcome to the 137th freek.dev newsletter! Testing Laravel has been released I'm proud to share that our newest video course

Welcome to the freek.dev newsletter

Sunday, September 5, 2021

freek.dev Hi, Welcome to the freek.dev newsletter. Every two weeks you can expect some nice links to cool stuff on Laravel, PHP and JavaScript in your mailbox. To thank you for subscribing I'd like

You Might Also Like

Daily Coding Problem: Problem #1707 [Medium]

Monday, March 3, 2025

Daily Coding Problem Good morning! Here's your coding interview problem for today. This problem was asked by Facebook. In chess, the Elo rating system is used to calculate player strengths based on

Simplification Takes Courage & Perplexity introduces Comet

Monday, March 3, 2025

Elicit raises $22M Series A, Perplexity is working on an AI-powered browser, developing taste, and more in this week's issue of Creativerly. Creativerly Simplification Takes Courage &

Mapped | Which Countries Are Perceived as the Most Corrupt? 🌎

Monday, March 3, 2025

In this map, we visualize the Corruption Perceptions Index Score for countries around the world. View Online | Subscribe | Download Our App Presented by: Stay current on the latest money news that

The new tablet to beat

Monday, March 3, 2025

5 top MWC products; iPhone 16e hands-on📱; Solar-powered laptop -- ZDNET ZDNET Tech Today - US March 3, 2025 TCL Nxtpaper 11 tablet at CES The tablet that replaced my Kindle and iPad is finally getting

Import AI 402: Why NVIDIA beats AMD: vending machines vs superintelligence; harder BIG-Bench

Monday, March 3, 2025

What will machines name their first discoveries? ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏ ͏

GCP Newsletter #440

Monday, March 3, 2025

Welcome to issue #440 March 3rd, 2025 News LLM Official Blog Vertex AI Evaluate gen AI models with Vertex AI evaluation service and LLM comparator - Vertex AI evaluation service and LLM Comparator are

Apple Should Swap Out Siri with ChatGPT

Monday, March 3, 2025

Not forever, but for now. Until a new, better Siri is actually ready to roll — which may be *years* away... Apple Should Swap Out Siri with ChatGPT Not forever, but for now. Until a new, better Siri is

⚡ THN Weekly Recap: Alerts on Zero-Day Exploits, AI Breaches, and Crypto Heists

Monday, March 3, 2025

Get exclusive insights on cyber attacks—including expert analysis on zero-day exploits, AI breaches, and crypto hacks—in our free newsletter. ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌ ͏ ‌

⚙️ AI price war

Monday, March 3, 2025

Plus: The reality of LLM 'research' ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌

Post from Syncfusion Blogs on 03/03/2025

Monday, March 3, 2025

New blogs from Syncfusion ® AI-Driven Natural Language Filtering in WPF DataGrid for Smarter Data Processing By Susmitha Sundar This blog explains how to add AI-driven natural language filtering in the