<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><title>Isak Berglind</title><link>https://berglind.dev</link><description>Isak Berglind — notes on Laravel, PHP, testing and the web</description><language>en</language><generator>HydePHP 2.0.3</generator><lastBuildDate>Mon, 31 Aug 2026 04:21:31 +0000</lastBuildDate><atom:link href="https://berglind.dev/feed.xml" rel="self" type="application/rss+xml"/><item><title>It's all about the Action</title><description>A practical guide to single-purpose action classes in Laravel — why they make code clearer, how to name, structure and test them, and when to skip them.</description><link>https://berglind.dev/posts/all-about-the-action</link><guid>https://berglind.dev/posts/all-about-the-action</guid><pubDate>Tue, 02 Sep 2025 00:00:00 +0000</pubDate><dc:creator>Isak Berglind</dc:creator><category>php</category></item><item><title>You’re Not Alone With Your Legacy Code</title><description>Legacy code built your company and pays your salary. A case for treating the code you inherit with a little more respect.</description><link>https://berglind.dev/posts/not-alone-with-your-legacy</link><guid>https://berglind.dev/posts/not-alone-with-your-legacy</guid><pubDate>Thu, 28 Aug 2025 00:00:00 +0000</pubDate><dc:creator>Isak Berglind</dc:creator><category>legacy</category></item><item><title>Sort results in meilisearch using laravel scout</title><description>How to configure sortable attributes in Meilisearch when using Laravel Scout — the bit the docs gloss over.</description><link>https://berglind.dev/posts/sort-fields-in-meilisearch-with-scout</link><guid>https://berglind.dev/posts/sort-fields-in-meilisearch-with-scout</guid><pubDate>Wed, 23 Feb 2022 00:00:00 +0000</pubDate><dc:creator>Isak Berglind</dc:creator><category>php</category></item><item><title>Testing complex eloquent queries</title><description>Techniques for testing complex SQL and Eloquent queries in Laravel using an in-memory SQLite database and seeders.</description><link>https://berglind.dev/posts/testing_complex_eloquent_queries</link><guid>https://berglind.dev/posts/testing_complex_eloquent_queries</guid><pubDate>Sat, 18 Sep 2021 00:00:00 +0000</pubDate><dc:creator>Isak Berglind</dc:creator><category>php</category></item><item><title>Stop lying about the benefits of testing</title><description>A testing advocate pushes back on the overselling of tests: what writing tests really does, and doesn't, give you.</description><link>https://berglind.dev/posts/stop-lying-about-the-benefits-of-testing</link><guid>https://berglind.dev/posts/stop-lying-about-the-benefits-of-testing</guid><pubDate>Sun, 05 Sep 2021 00:00:00 +0000</pubDate><dc:creator>Isak Berglind</dc:creator><category>php</category></item><item><title>Change uploaded filenames in the trix editor in nova</title><description>How to slugify image filenames uploaded from the Trix editor in Laravel Nova so they're URL-safe before landing in S3.</description><link>https://berglind.dev/posts/change-trix-file-names-in-nova</link><guid>https://berglind.dev/posts/change-trix-file-names-in-nova</guid><pubDate>Sun, 04 Oct 2020 00:00:00 +0000</pubDate><dc:creator>Isak Berglind</dc:creator><category>php</category></item><item><title>How does the web work?</title><description>Part 1 of a series on what actually happens when you type a URL into your browser — starting with DNS.</description><link>https://berglind.dev/posts/how-web-works-part-1</link><guid>https://berglind.dev/posts/how-web-works-part-1</guid><pubDate>Sun, 10 May 2020 00:00:00 +0000</pubDate><dc:creator>Isak Berglind</dc:creator></item><item><title>Publish a Vue component to npm</title><description>A step-by-step walkthrough of packaging and publishing a Vue component to npm — including the parts other tutorials skip.</description><link>https://berglind.dev/posts/publish-a-vue-component-to-npm</link><guid>https://berglind.dev/posts/publish-a-vue-component-to-npm</guid><pubDate>Thu, 06 Jun 2019 00:00:00 +0000</pubDate><dc:creator>Isak Berglind</dc:creator><category>javascript</category></item><item><title>Logical or || in php vs javascript</title><description>Why the logical OR (||) operator behaves differently in JavaScript than in PHP, and what it actually returns.</description><link>https://berglind.dev/posts/logical-or-in-javascript</link><guid>https://berglind.dev/posts/logical-or-in-javascript</guid><pubDate>Sun, 10 Feb 2019 00:00:00 +0000</pubDate><dc:creator>Isak Berglind</dc:creator><category>php</category></item><item><title>Differentiate Laravel collection methods</title><description>A field guide to the trickier, similarly-named Laravel collection methods — and how to finally tell them apart.</description><link>https://berglind.dev/posts/differentiate-collection-methods</link><guid>https://berglind.dev/posts/differentiate-collection-methods</guid><pubDate>Thu, 31 May 2018 00:00:00 +0000</pubDate><dc:creator>Isak Berglind</dc:creator><category>php</category></item><item><title>?? vs ?: vs || in php</title><description>?? vs ?: vs || in PHP — what each operator actually does and how they differ, in one quick explainer.</description><link>https://berglind.dev/posts/ternary</link><guid>https://berglind.dev/posts/ternary</guid><pubDate>Mon, 23 Apr 2018 00:00:00 +0000</pubDate><dc:creator>Isak Berglind</dc:creator><category>php</category></item><item><title>Translate content on the front end</title><description>Approaches for passing your translated strings from Laravel to a front-end framework, for both SPAs and multi-page apps.</description><link>https://berglind.dev/posts/translations-on-the-front-end</link><guid>https://berglind.dev/posts/translations-on-the-front-end</guid><pubDate>Mon, 23 Apr 2018 00:00:00 +0000</pubDate><dc:creator>Isak Berglind</dc:creator><category>php</category></item><item><title>External api routes in laravel</title><description>A clean pattern for organising calls to third-party APIs in Laravel when the service doesn't ship its own SDK.</description><link>https://berglind.dev/posts/external-api-routes</link><guid>https://berglind.dev/posts/external-api-routes</guid><pubDate>Tue, 26 Sep 2017 00:00:00 +0000</pubDate><dc:creator>Isak Berglind</dc:creator><category>php</category></item></channel></rss>
