Moby Disk Consulting
Software Development, Training & Consulting
William Garrison - mobydisk at mobydisk daht com

Software Development Articles

In this section you will find home-grown tips, tricks, and tools to help in every-day software development.

Tidying C# code
updated: 2011-09-11

I created a macro that automatically aligns variable declarations for readability. Example:

      private int          _numberOfSharks; // Does not include dolphins
      private double       _watts;          // Power of each laser    
      private List<string> _sharkNames;

SQL Server and related
updated: 2011-02-19

How to restore access to a SQL Server if you are administrator who has been locked-out

Some fun with WPF
updated: 2010-03-12

Explore creating rounded progress bars in WPF, then combine it with 2D effects to turn it into a very HOT WPF control.

List of all exceptions and delegates in the .NET Framework
updated: 2011-12-22

I wanted a list of all .NET exceptions, which was later updated to include all .NET delegates as well.

Keyboard support in Visual Studio .NET

If you are new to Microsoft Visual Studio .NET and are having trouble with the new keyboard shortcuts, you aren't the only one. Check out my .NET keyboard shortcuts list. It also serves as a starting point for learning how to use the new scripting tools.


I've started compiling a list of hints and tips as I go along. You can look at my tips on C++ or my tips on Visual Studio .NET, which includes ASP.NET as well.

Threads programming

While working on several cross-platform libraries, I created a tutorial on programming using POSIX threads on Linux. This is an introduction for someone new to threading in general, or experienced with Windows threads but not POSIX threads.


In college, I wrote a paper on Near Minimal Perfect Hashing which compares various types of hash tables, including a perfect hash.