Hi, welcome to my website.

I'm a software development consultant by trade. I focus primarily in Microsoft .NET and Python though I've worked in other languages on various platforms. I specialize in object-oriented design, clean code/architecture and agile processes. I've been doing this for nearly thirty years so you can likely leverage a thing or two from my experience. I can't say I've seen it all, but I've seen a lot, more than you can imagine, the good the bad and the ugly and I know how avoid it and how to fix it. I have great passion and a lot of experience refactoring poorly structured code that brings project managers and business to their knees through a lack of predictability. Test me in this! I also tutor/mentor, some pro bono, so reach out if there's any interest in any of this.

You'll find that most of the content here is related to software development, but I'm also an electric guitar enthusiast so you might find some content on that topic as well.

Best Regards,
Chuck


Recent Posts ...


Generative AI Funny Number 1

September 26, 2024

I have a tutoring student I'm working with to help them understand how to transition a standalone web application into a distributed application using cloud services. Typically, I do a lot of preparation, have a good amount of code ready to execute, and then review the source code with the student to explain the rationale behind the design, the chosen code structure, etc. However, I'm trying to shift from demos and extensive talking to more pair programming. There are things that can only be

more ...

.NET Rocks Modular Monoliths with Clean Architecture Before Microservices

September 17, 2024

A great .NET podcast and interview of Steve Smith. .

Be sure to check out Steve's article "Clean Architecture Sucks" . If you find that it does "suck" then you're not doing it right and therefore not reaping it's benefits.

While I

more ...

Info World's (Wrong) Best practices for handling exceptions in CSharp

August 31, 2024

In general I find articles on InfoWorld interesting, informative, etc. but I rather disagree with "never" statements in their recent article Best practices for handling exceptions in C# . I say this based on 30 years of development in many languages, across many platforms, though the bulk on Windows. (I've been doing Windows development since Windows 3.0 when you started Windows from DOS.)

more ...

CoPilot Code Generation More Productive in Vim than IDE's

August 03, 2024

I've been a Microsoft Developer for a long time. Given that, I've spent the majority of my time doing development in some sort of integrated development environment or IDE geared towards that; e.g. Borland C++, Visual C++, Visual Basic, Visual Interdev, Visual Studio, Visual Studio with Resharper, and more recently JetBrain IDE's like Rider. In addition to the typical Microsoft languages of C, C++, VB/VB.NET, J++ and C#, I've also spent a good amount of time with Python and Java/J2EE

more ...

A recipe for understanding MediatR for Vertical Slice Architecture

July 30, 2024

We're going to use Jimmy Bogard's "vertical slice architecture" version of the Microsoft's Contoso University application to try gain some understanding of what MediatR might be able to do for us. The application references the MediatR Nuget packages, but just using the Nuget package doesn't really give us the same insight that stepping through the source code does. So were going replace NuGet packages with source and debug to see what we can learn.

Here's the steps to setup for

more ...

Software Architecture Trends and First Principles

July 28, 2024

During my recent studies on microservice architecture I've stumbled upon the notion of "vertical slice architecture". I first ran across it in some reference to Gary Woodfinde's post "How to Implement Vertical Slice Architecture" and then later back to its source in "Vertical Slice Architecture" by Jimmy Bogard . This led me to vertical slice architecture examples

more ...

Where Do I Begin Software Development And Guitar Stuff Of Course

June 15, 2024

So my first blog post on my new site. Where to begin?

Well I really have few interests, but anyone that knows me knows that I'm interested in software development, of which I've spent nearly 30 years doing - so I'd like to think I know a bit about it, and, ... electric guitar. I've been playing guitar even longer that I've been building software, but that has a very different kind of learning curve to it so I'm not going to make any claims there. Monday is NGD. NGD? Well that means

more ...
<< 1 of 1 >>