Merging multiple MP4 files into one can be useful when working with ripped DVDs, split movie parts, or recorded gameplay. On Windows, the simplest and most flexible tool for this task is FFmpeg — a powerful open-source utility that can join, convert, and manipulate video files. This guide walks you through installing FFmpeg, preparing your files, and performing a lossless merge (no quality loss…
Keep Reading →
If you're setting up a polished dev terminal experience with icons, custom fonts, and PowerShell 7 on Windows 11, here's a step-by-step guide that actually works. We'll install a Nerd Font, configure PowerShell 7 properly, and enable terminal icons in directory listings — all without pulling your hair out. If video is more your thing, check out my YouTube video on prettying up your terminal with…
Keep Reading →
I originally posted this on LinkedIn / BlueSky but I've found that it's nearly impossible to find (searching for "AI is the new offshoring" or "genAI is the new offshoring" both fail to find it) so I'm cross-posting here and adding a bit more context. Twenty years ago, the internet and improved communications led to a massive push in US corporate enterprises to outsource IT and dev efforts to far…
Keep Reading →
Generative AI tools have greatly improved in their ability to generate large amounts of code, quickly, to support software development tasks. They're fast, confident, and in some cases even creative. But they're also fallible, occasionally destructive, and always somewhat unpredictable. If you've ever used GenAI to bang out a prototype in hours instead of days, you've seen the upside. If you've…
Keep Reading →
A new major version of the Ardalis Specification library has been released. This library is used to create and compose specifications for querying data from repositories. It's a key part of the Ardalis Clean Architecture libraries and is used in many applications to help simplify querying logic and make it more testable. If your application suffers from LINQ pollution, with query logic spread…
Keep Reading →
Better late than never, as I'm writing this in late February 2025... First, here's a few links to past years in review: My 2017 Year in Review My 2018 Year in Review My 2019 Year in Review My 2020 Year in Review My 2021 Year in Review My 2022 Year in Review My 2022 Year in Review My Year in Review Post Checklist Now on to the various categories... Blogging ✍️ Blogging continues its slide into…
Keep Reading →
A developer manager recently reached out with a concern: their new QA team member was finding too many bugs, leading to frustration among developers. Overall velocity of the dev team (in terms of features being shipped) was rapidly falling. The question was, how can they reduce the number of issues being kicked back from QA without discouraging the testers from doing their job well? QA Isn't the…
Keep Reading →
This post is part of the C# Advent Calendar 2024 - check out all of the C# articles from this year! C# events are a powerful feature of the language, providing a simple mechanism for building publish-subscribe communication patterns. However, when used in ASP.NET Core applications, events can lead to subtle, hard-to-diagnose issues that can harm the reliability and scalability of your application…
Keep Reading →
When working with software development, especially in object-oriented or component-based systems, understanding the distinction between interfaces and implementations is crucial. The two terms often come up in conversations about architecture, design patterns, and coding best practices, but what do they really mean? In this post, we'll break down the difference and why it matters. YouTube What is…
Keep Reading →
As a software developer, you might spend most of your time immersed in code, solving problems, and building innovative solutions. But have you ever considered starting a blog? If you haven't, let me give you some compelling reasons why you should. This is advice I frequently give to members of my developer group coaching program at devBetter.com. Watch the Video 1. Sharpen Your Skills One of the…
Keep Reading →