Practical Debugging for .NET Developers is Available!

For almost a year now, I’ve been writing a book about debugging and problem-solving in .NET. I’m pretty upset at whoever said writing a book is just like writing a series of blog posts. That was way more work than I signed up for. But it’s over now and my book Practical Debugging for .NET Developers is available. This book is all about solving bugs. I daresay say that the ability to solve difficult problems is what differentiates great engineers from good engineers.

5 Tricks You Should Know About Visual Studio’s Immediate Window

The Immediate Window looks pretty straightforward, but it hides some cool features. In this post, I’ll show you five tricks you can use with this window that you absolutely should know if you want to debug faster.

10 Essential Debugging Tools for C# .NET Development

When it comes to debugging software, tools are extremely important. Get the right tool and you extract the right information. Get the right information and you can find the root cause of the issue. Find the root cause and you've solved the bug.

Debugging ASP.NET Web Request Failures: The Complete Guide

You’re sending an HTTP request to your ASP.NET server, and out of the blue, it returns a 500 error. Now what? The error code doesn’t say too much by itself. Did a database request fail? Was there an exception? In this article we'll see how to get the most information on the error.

Debugging 3rd Party .NET Code without symbols in Visual Studio

It's not so rare to see weird things happen in 3rd party library code. Call some method and you've got a strange exception. Or an incorrect behavior or even a process crash. It sure would be nice to debug some of these issues. In this article we're going to do just that - You'll see how to debug 3rd party library code in Visual Studio.

Debugging Lock Contention Performance Issues in C# .NET

Lock contention is a state where one thread is waiting for another while trying to acquire a lock. Whatever time spent waiting for the lock is "lost" time that is wasted doing nothing and causes performance problems. In this article, you'll see how to detect lock contention problems, debug them, and find the core cause of the issue.

Logging in C# .NET Modern-day Practices: The Complete Guide

Logging is a big part of software development for many years now. This guide is a bird's eye view of modern solutions for logging in .NET space.

Debug & Catch Exceptions in Visual Studio: The Complete Guide

One of the most important concepts in modern programming is Exceptions. They were introduced in the 60's with LISP and eventually made their way to practically all modern programming languages. This article is an extensive guide to dealing with exceptions in Visual Studio.

Visual Studio Debugging Windows: Watch, Locals, Autos, Immediate, Call Stack and Threads

This tutorial is part of a series: Part 1 – Getting started with Visual Studio Debugging Part 2 – Visual Studio Debugging Tool Windows In the previous tutorial, we saw some of the basics of debugging in Visual Studio. This included Breakpoints, Navigation through code, and Investigating variables with the DataTip and QuickWatch. In this tutorial we will go over all the windows Visual Studio has for debugging.