Hi there!

This is a corrected version of the previous newsletter I sent where I forgot to add this intro and a few links:

Welcome to the 153rd freek.dev newsletter!

Hopefully you're enjoying the summer (and it's not too hot in your place of the world).
You're getting my newsletter a little bit earlier than usual as I'm off for some holiday and I don't plan to be on my Mac too much.

At Spatie, a lot of things are happening. We're working on a total redesign for Flare, which we'll launch in autumn. We're also making big progress with Mailcoach Cloud, the hosted version of Mailcoach. We're currently testing with a select group of beta users. I've also moved my newsletter over to Mailcoach Cloud, and this very mail you're reading has been sent via our new service. We expect to launch Mailcoach Cloud in September.

The three first links in this newsletter are about packages that we've released recently, and they are all used in the Mailcoach Cloud codebase.

Without further ado, here are some interesting links for you to check out!

⭐️ Add comments to SQL queries made by Laravel
This one can add comments to SQL queries. These comments allow you to easily pinpoint the origin of a query when looking at your query log.

⭐️ Encrypting Laravel Eloquent models with CipherSweet
We've just released laravel-ciphersweet. This package is a wrapper over CipherSweet, which allows you to easily use it with Laravel's Eloquent models.

⭐️ Introducing our new Laravel Options package
When developing web applications, you probably encounter a lot of places where someone needs to select one or more options in a select or multi-select. These select boxes always need a list of options with labels and values. In one of our projects, we had options being generated in lots of places.…

Effective immutability with PHPStan
Did you know that DateImmutable isn't really immutable?

Auto-Refresh Livewire Components While Keeping States With Vite
Let's check out how we can improve working with Livewire and Vite together, by using the Vite Livewire Plugin by Fabio Ivona.

What is complexity? Write Better Laravel, Part 1
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.

New composer audit Command and security audits in Composer 2.4
Composer 2.4 features scanning the installed and new packages for known security vulnerabilities.

Statements Vs. Expressions in JavaScript
In this blog post, Josh Comeau shares some of the epiphanies he's had about this distinction, and how you can use this information in day-to-day work.

How to install PHP 8.2 RC on Mac
PHP 8.2 is scheduled to be released on the 24th of Nov, 2022. Of course, meanwhile, you may test the new features, syntax changes, and other improvements in your local environment.

Things You Should Know About Databases
Let's explain the two most important topics when working with RDBMSs: indexes and transactions.

Why DRY is the most over-rated programming principle
DRY is just like every other principle out there - it has its place, but it's best taken in moderation.

My Wonderful HTML Email Workflow
Lots of things to be learned in this detailed post by Josh Comeau

An Engineer’s Best Tips for Writing Documentation Devs Love
Some good tips for writing effictive, human-friendly documentation.



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


SingleStoreDB Driver for Laravel (submitted by Aaron Francis)

Replay: Laravel middleware for idempotency (submitted by Ari)

Using Laravel Vite with Bootstrap and Sass (submitted by David Torras)

Machine Learning With Laravel And AWS Personalize Part 1 (submitted by Robert Mellett)

How I made my blog multi-lingual (submitted by Yoeri)

How To Prepare For A Technical Interview (submitted by axr)


Old posts

Here are a couple of links from a while ago!

12 Tips For Better Live Coding

Opinion-driven design

How to render markdown with perfectly highlighted code snippets

Design patterns for modernizing legacy code bases

Getting started with Laravel Spotlight

Source diving Laravel Artisan Dispatchable

Source diving Laravel Google Fonts

Introducing Laravel Google Fonts

PHP version stats: July, 2021

The case for partials and pipes in PHP

Organizing Miscellaneous Utility Functions



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