<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>TurtleBytes Suite Blog</title>
        <link>https://turtlebytes.com/blog</link>
        <description>Thoughts, tutorials, and insights on web development, business, and technology.</description>
        <language>en-us</language>
        <lastBuildDate>Mon, 28 Sep 2026 09:00:00 +0000</lastBuildDate>
        <atom:link href="https://turtlebytes.com/feed" rel="self" type="application/rss+xml"/>

                <item>
            <title>Querying JSON Columns in MariaDB (and How It Maps to Redis)</title>
            <link>https://turtlebytes.com/blog/querying-json-columns-in-mariadb</link>
            <guid isPermaLink="true">https://turtlebytes.com/blog/querying-json-columns-in-mariadb</guid>
            <pubDate>Mon, 28 Sep 2026 09:00:00 +0000</pubDate>
                        <author>zach2825@gmail.com (Zach Robichaud)</author>
                                    <category>Linux &amp;amp; DevOps</category>
                        <description><![CDATA[MariaDB can query inside a JSON column, but the functions differ from MySQL in ways that break ported queries. Every example here was run against MariaDB 10.11 with the real output pasted in, plus how each operation maps to RedisJSON.]]></description>
        </item>
                <item>
            <title>Beyond the Plugin: 6 Signs Your Business Has Outgrown WordPress</title>
            <link>https://turtlebytes.com/blog/beyond-the-plugin-6-signs-your-business-has-outgrown-wordpress</link>
            <guid isPermaLink="true">https://turtlebytes.com/blog/beyond-the-plugin-6-signs-your-business-has-outgrown-wordpress</guid>
            <pubDate>Mon, 21 Sep 2026 09:00:00 +0000</pubDate>
                        <author>zach2825@gmail.com (Zach Robichaud)</author>
                                    <category>Business</category>
                        <description><![CDATA[WordPress is a great starting point, but growth can expose limits. Here are six practical signs your business may need a more purpose-built platform.]]></description>
        </item>
                <item>
            <title>Custom Software vs. SaaS: When Off-the-Shelf Stops Making Sense</title>
            <link>https://turtlebytes.com/blog/custom-software-vs-saas-when-off-the-shelf-stops-making-sense</link>
            <guid isPermaLink="true">https://turtlebytes.com/blog/custom-software-vs-saas-when-off-the-shelf-stops-making-sense</guid>
            <pubDate>Mon, 14 Sep 2026 09:00:00 +0000</pubDate>
                        <author>zach2825@gmail.com (Zach Robichaud)</author>
                                    <category>Business</category>
                        <description><![CDATA[SaaS is often the right starting point, but it always comes with compromises. Learn when custom software becomes the better long-term move for growing businesses.]]></description>
        </item>
                <item>
            <title>Moving Your Website to a New Developer: What a Clean Handover Looks Like</title>
            <link>https://turtlebytes.com/blog/moving-your-website-to-a-new-developer</link>
            <guid isPermaLink="true">https://turtlebytes.com/blog/moving-your-website-to-a-new-developer</guid>
            <pubDate>Mon, 07 Sep 2026 09:00:00 +0000</pubDate>
                        <author>zach2825@gmail.com (Zach Robichaud)</author>
                                    <category>Business</category>
                        <description><![CDATA[Handovers rarely go wrong because someone refuses to cooperate. They go wrong because nobody wrote down who owns what. Here is what a clean developer handover looks like, and why owning your accounts does not mean administering them.]]></description>
        </item>
                <item>
            <title>The Laravel 13 Upgrade Passed. The Deploy Would Have Failed.</title>
            <link>https://turtlebytes.com/blog/the-laravel-13-upgrade-passed-the-deploy-would-have-failed</link>
            <guid isPermaLink="true">https://turtlebytes.com/blog/the-laravel-13-upgrade-passed-the-deploy-would-have-failed</guid>
            <pubDate>Tue, 04 Aug 2026 18:24:01 +0000</pubDate>
                        <author>zach2825@gmail.com (Zach Robichaud)</author>
                                    <category>Linux &amp;amp; DevOps</category>
                        <description><![CDATA[We moved a production app from Laravel 12 to 13 and Filament 3 to 4. The tests went green, and then we read the deploy workflow and found three problems no test could have caught: a lockfile CI was about to reject, a Node version the dependencies had outgrown, and a PHP constraint promising something impossible.]]></description>
        </item>
                <item>
            <title>Building Todizzle: A Production-Ready Checklist API with Laravel</title>
            <link>https://turtlebytes.com/blog/building-todizzle-a-production-ready-checklist-api-with-laravel</link>
            <guid isPermaLink="true">https://turtlebytes.com/blog/building-todizzle-a-production-ready-checklist-api-with-laravel</guid>
            <pubDate>Wed, 29 Apr 2026 09:10:42 +0000</pubDate>
                        <author>admin@admin.com (Super Admin)</author>
                                    <category>Technology</category>
                        <description><![CDATA[A deep dive into Todizzle - a headless checklist and task management REST API built with PHP 8.4 and Laravel 13. Covers the tech stack decisions, every feature including RFC 5545 recurrence and MCP server integration, the testing approach, and lessons learned.]]></description>
        </item>
                <item>
            <title>How We Cut Our PHP Test Suite From 4 Minutes to 40 Seconds</title>
            <link>https://turtlebytes.com/blog/fast-php-tests-sharding-sqlite-memory</link>
            <guid isPermaLink="true">https://turtlebytes.com/blog/fast-php-tests-sharding-sqlite-memory</guid>
            <pubDate>Mon, 23 Mar 2026 10:14:51 +0000</pubDate>
                        <author>zach2825@gmail.com (Zach Robichaud)</author>
                                    <description><![CDATA[Speed up your PHPUnit and Pest test suite with SQLite :memory:, parallel execution, and test sharding. Real composer scripts you can copy today.]]></description>
        </item>
                <item>
            <title>Vibe Coding Hit a Wall? We Can Help.</title>
            <link>https://turtlebytes.com/blog/vibe-coding-hit-a-wall-we-can-help</link>
            <guid isPermaLink="true">https://turtlebytes.com/blog/vibe-coding-hit-a-wall-we-can-help</guid>
            <pubDate>Tue, 17 Mar 2026 10:40:00 +0000</pubDate>
                        <author>zach2825@gmail.com (Zach Robichaud)</author>
                                    <category>Business</category>
                        <description><![CDATA[Vibe coding with AI is a great way to build fast - until something breaks and you&#039;re staring at 2,000 lines you didn&#039;t write. We help you understand what happened and get unstuck.]]></description>
        </item>
                <item>
            <title>Introducing Slack Alerts: A Fluent Block Kit Builder for Laravel</title>
            <link>https://turtlebytes.com/blog/introducing-slack-alerts-fluent-block-kit-builder-laravel</link>
            <guid isPermaLink="true">https://turtlebytes.com/blog/introducing-slack-alerts-fluent-block-kit-builder-laravel</guid>
            <pubDate>Tue, 17 Feb 2026 19:41:28 +0000</pubDate>
                        <author>zach2825@gmail.com (Zach Robichaud)</author>
                                    <category>Technology</category>
                        <description><![CDATA[We open-sourced our internal Slack notification package. Slack Alerts gives you a fluent PHP API for building rich Block Kit messages, routing to named channels, and shipping prebuilt templates for common alerts — all in a single composer require.]]></description>
        </item>
                <item>
            <title>Introducing Contact Form: A Laravel Package for Structured Contact Submissions</title>
            <link>https://turtlebytes.com/blog/introducing-contact-form-laravel-package-structured-submissions</link>
            <guid isPermaLink="true">https://turtlebytes.com/blog/introducing-contact-form-laravel-package-structured-submissions</guid>
            <pubDate>Tue, 17 Feb 2026 13:00:00 +0000</pubDate>
                        <author>zach2825@gmail.com (Zach Robichaud)</author>
                                    <category>Technology</category>
                        <description><![CDATA[A Laravel package for storing contact form submissions with a status workflow, spam metadata tracking, lifecycle timestamps, and soft deletes.]]></description>
        </item>
                <item>
            <title>Introducing Spam Guard: An Extensible Spam Detection Pipeline for Laravel</title>
            <link>https://turtlebytes.com/blog/introducing-spam-guard-extensible-spam-detection-laravel</link>
            <guid isPermaLink="true">https://turtlebytes.com/blog/introducing-spam-guard-extensible-spam-detection-laravel</guid>
            <pubDate>Tue, 17 Feb 2026 12:00:00 +0000</pubDate>
                        <author>zach2825@gmail.com (Zach Robichaud)</author>
                                    <category>Technology</category>
                        <description><![CDATA[An extensible spam detection pipeline for Laravel with scored rules, built-in heuristics, and optional database-backed learned patterns.]]></description>
        </item>
                <item>
            <title>A Simple GitHub CI/CD Pipeline + Slack Notifications (That Actually Feels Fun)</title>
            <link>https://turtlebytes.com/blog/simple-github-cicd-pipeline-with-slack-notifications</link>
            <guid isPermaLink="true">https://turtlebytes.com/blog/simple-github-cicd-pipeline-with-slack-notifications</guid>
            <pubDate>Mon, 09 Feb 2026 22:20:00 +0000</pubDate>
                        <author>zach2825@gmail.com (Zach Robichaud)</author>
                                    <category>Linux &amp;amp; DevOps</category>
                        <description><![CDATA[Set up a clean GitHub Actions CI/CD pipeline with Slack notifications for success and failure, using a practical workflow you can ship today.]]></description>
        </item>
                <item>
            <title>Topgrade Is Weirdly Magical: One Command to Update (Almost) Everything</title>
            <link>https://turtlebytes.com/blog/topgrade-is-weirdly-magical-one-command-to-update-almost-everything</link>
            <guid isPermaLink="true">https://turtlebytes.com/blog/topgrade-is-weirdly-magical-one-command-to-update-almost-everything</guid>
            <pubDate>Mon, 09 Feb 2026 22:00:00 +0000</pubDate>
                        <author>zach2825@gmail.com (Zach Robichaud)</author>
                                    <category>Linux &amp;amp; DevOps</category>
                        <description><![CDATA[Topgrade turns scattered update chores into one clean routine. Here is why it feels magical and how to use it safely on desktop and server systems.]]></description>
        </item>
                <item>
            <title>Tech Jobs Don&#039;t Just Survive Stability — They Explode</title>
            <link>https://turtlebytes.com/blog/tech-jobs-dont-just-survive-stability-they-explode</link>
            <guid isPermaLink="true">https://turtlebytes.com/blog/tech-jobs-dont-just-survive-stability-they-explode</guid>
            <pubDate>Mon, 09 Feb 2026 21:12:01 +0000</pubDate>
                        <author>zach2825@gmail.com (Zach Robichaud)</author>
                                    <category>Business</category>
                        <description><![CDATA[While many view economic stability as a time to maintain the status quo, in the tech sector, it serves as the ultimate catalyst for growth and innovation.]]></description>
        </item>
                <item>
            <title>AutoKey Power User Setup: 80+ Shortcuts for Linux Productivity</title>
            <link>https://turtlebytes.com/blog/autokey-power-user-setup-linux</link>
            <guid isPermaLink="true">https://turtlebytes.com/blog/autokey-power-user-setup-linux</guid>
            <pubDate>Tue, 20 Jan 2026 21:45:00 +0000</pubDate>
                        <author>zach2825@gmail.com (Zach Robichaud)</author>
                                    <category>Tutorials</category>
                        <description><![CDATA[Complete guide to migrating from Espanso to AutoKey on Linux, including 80+ text expansion shortcuts, smart hotkeys, and powerful productivity scripts. Learn from the gotchas and build a bulletproof setup.]]></description>
        </item>
                <item>
            <title>Building an Intelligent RGB Keyboard Lighting System for Linux</title>
            <link>https://turtlebytes.com/blog/intelligent-rgb-keyboard-lighting-linux</link>
            <guid isPermaLink="true">https://turtlebytes.com/blog/intelligent-rgb-keyboard-lighting-linux</guid>
            <pubDate>Mon, 19 Jan 2026 15:32:00 +0000</pubDate>
                        <author>zach2825@gmail.com (Zach Robichaud)</author>
                                    <category>Hardware</category>
                        <description><![CDATA[A complete bash-based system for controlling Corsair RGB keyboards on Linux. Features context-aware lighting, KDE notification integration, visual effects library, battery warnings, and build system integration. Transform your keyboard into an intelligent productivity tool.]]></description>
        </item>
                <item>
            <title>Decluttering Your Laravel Console: How to Hide Artisan Commands</title>
            <link>https://turtlebytes.com/blog/decluttering-your-laravel-console-how-to-hide-artisan-commands</link>
            <guid isPermaLink="true">https://turtlebytes.com/blog/decluttering-your-laravel-console-how-to-hide-artisan-commands</guid>
            <pubDate>Wed, 14 Jan 2026 14:08:11 +0000</pubDate>
                        <author>zach2825@gmail.com (Zach Robichaud)</author>
                                    <category>Technology</category>
                        <description><![CDATA[Laravel ships with over 100 built-in Artisan commands, making it hard to find your custom commands in the noise. Learn how to create a clean, focused command list that only shows what your team actually uses—while keeping all commands fully functional.]]></description>
        </item>
                <item>
            <title>Linux &#039;z&#039; command is a must have terminal tool</title>
            <link>https://turtlebytes.com/blog/linux-z-command-is-a-must-have-terminal-tool</link>
            <guid isPermaLink="true">https://turtlebytes.com/blog/linux-z-command-is-a-must-have-terminal-tool</guid>
            <pubDate>Mon, 12 Jan 2026 14:14:42 +0000</pubDate>
                        <author>zach2825@gmail.com (Zach Robichaud)</author>
                                    <category>Linux &amp;amp; DevOps</category>
                        <description><![CDATA[The Linux z command completely changes how you move around the terminal. Instead of typing long paths or relying on tab completion, z learns the directories you visit and lets you jump to them using short, partial names. Once you use it, going back to plain cd feels painfully slow.]]></description>
        </item>
                <item>
            <title>How Automated SSL Enhances Your Site&#039;s Protection</title>
            <link>https://turtlebytes.com/blog/how-automated-ssl-enhances-your-sites-protection</link>
            <guid isPermaLink="true">https://turtlebytes.com/blog/how-automated-ssl-enhances-your-sites-protection</guid>
            <pubDate>Tue, 29 Jul 2025 00:00:00 +0000</pubDate>
                        <author>zach2825@gmail.com (Zach Robichaud)</author>
                                    <category>Technology</category>
                        <description><![CDATA[The Tiny Padlock That Protects Your Entire Website - Why SSL/TLS, Automation, and Certificate Management Matter More Than Ever.]]></description>
        </item>
                <item>
            <title>My First Custom PC Build</title>
            <link>https://turtlebytes.com/blog/new-computer</link>
            <guid isPermaLink="true">https://turtlebytes.com/blog/new-computer</guid>
            <pubDate>Sat, 22 Aug 2020 00:00:00 +0000</pubDate>
                        <author>zach2825@gmail.com (Zach Robichaud)</author>
                                    <category>Hardware</category>
                        <description><![CDATA[My first custom PC build using AMD Ryzen, and why I finally took the plunge into building my own workstation.]]></description>
        </item>
            </channel>
</rss>
