Context Engineering: What Your AI Assistant Sees Matters More Than What You Ask
Most of the advice I’ve seen about getting good code out of AI assistants like Claude Code is about writing better prompts. In my experience, that stopped being the main lever a while ago. What matters...
View ArticleHow to Estimate Software Development Time: A 6-Step Framework for Engineering...
Most software timeline estimates fail for the same reason: they present a single confident number instead of a defensible range with a confidence interval, so the first surprise makes the whole...
View ArticleThe Shift Toward Local AI: A Developer’s Perspective
TL;DR: Why on-premise model hosting is feasible: Token costs are climbing fast and quotas are tightening Model access isn’t guaranteed, since providers can restrict or pull models with little notice...
View ArticleBuilding a React Component Library for Next.js with Storybook
In my last post, Implementing GitHub OAuth with NextAuth.js, we set up a standard single sign on flow with GitHub OAuth in NextAuth.js. This article assumes that you have followed along with that...
View ArticleFrom 38 Seconds to 1.5: A Claude Code Performance Win
TL;DR: A slow web page with 3,850 checkboxes was taking 38 seconds to load. By collaborating with Claude Code, I shifted from server-side rendering to a client-side approach, cutting load times to 1.5...
View ArticleAI in Coding: Using ChatGPT and Copilot to Build JavaScript Animations
I started programming on a Commodore 64 and my dad’s IBM XT, experimenting with trigonometry-based animations in Supermon 64 assembler, Advanced BASIC, and Turbo Pascal. Back then, code was shared...
View ArticleFrom Relic to Relevance: COBOL’s 88-Level Fields for Modern Coders
Remember when everything was going to be on the blockchain? It feels so long ago. Fast forward a few years, and now it’s nearly impossible to avoid the pressure to apply AI to everything. While some AI...
View ArticleLong-Running Workflows Made Simple with C# + Azure Durable Functions
It’s common to face challenges around long-running workflows, state management, and resiliency when you’re building cloud-native applications. Traditional approaches like background services or message...
View ArticleWhy Mobile App Deployment Stops So Many Developers (And How To Beat It)
For us developers, getting a mobile app ready is only half the battle. The real challenge starts when it’s time to deploy it. You’ve built a great mobile app, tested it locally, and even proudly demoed...
View ArticleHTMX in Action: How to Build a Lightweight Signup Form
Creating dynamic, responsive web forms doesn’t have to be complicated. With HTMX, you can build a seamless signup form using just a few HTML enhancements. In this blog, I’m going to show how to make a...
View ArticleUsing .NET MAUI to Create a Google Maps App
.NET Multi-platform App UI (.NET MAUI) is Microsoft’s evolution of cross-platform development, enabling you to build native applications for Android, iOS, macOS, and Windows using a single shared...
View ArticleYour Keyboard as an Output Device?
Though we don’t really see as many of them as we used to, they are still with us. One helps indicate if a 10-key is in number or cursor mode. Another helps show when we use capital letters without...
View ArticleDockerizing an MSSQL Server: Unlocking Flexibility
Docker is a pretty magical tool that streamlines server and environment setup while helping to eliminate the operating system and software version variables. It’s one of the best ways to mitigate the...
View ArticleFlutter Essentials: Strategies for Collapsible Text in Flutter
As a mobile developer, I have had to create a lot of listing pages. The content, styling, and layout may all differ, but structurally, they are the same. When I first started using Flutter, I was...
View ArticleJavaScript Monorepos in 2024: Legit or Sus?
I’ve been developing JavaScript through all of the major existential changes we’ve had. Browser wars? I remember those. Trying to make a complex application before Firebug? Oh yeah, tell me about it....
View ArticleSetting Up an LDAP Server Instance on AWS
This blog describes the basics of what it takes to get an existing LDAP server moved from the PV virtualization type to HVM. I encountered this situation personally while working for a client earlier...
View ArticleHarnessing the Javascript Spread Operator
The toolset of the JavaScript developer is ever-evolving and ever-changing. Array manipulation saw dramatic improvements in usability, utility, and readability with the release of the ECMAScript 6...
View ArticleTesting the Current Date/Time in Spring and Java
How often in Java services do we need to use the current date and time? Most of us would agree we use it quite often. Many times, we may want to record when an event happened, such as logging in,...
View ArticleBuilding a Productivity Mansion: Microsoft 365 Planner
Alright, Innovator! I see you’ve been using Microsoft 365 Planner, and it’s like you’ve started building your productivity mansion. As someone who’s been through the process, I’d love to help you add...
View ArticleMultiple Emulators with VS Code
Recently, I was joking with some team members, trying my best to get someone to develop a VS Code plugin for me that would allow VS Code to simultaneously connect to multiple Android emulators. I was...
View Article