More Effective C#: 50 Specific Ways to Improve Your C# (Effective Software Development Series)