So you’re getting ready to start a .NET Best Practices initiative at your organization and you’re looking to find a lot of specific best practices tips. You want to know: What are the .NET Framework best practices?
You can be assured that I’ve been down this road. In fact, a few readers of my book, Pro .NET Best Practices, expressed some disappointment that the book is not a collection of specific .NET best practices. And this is exactly why I decided to address this subject in today’s post.
For those that want to dig right in, follow this link to part 1, MSDN: .NET Framework Best Practices.
If you want some background, let me start with the question: Who wants to follow best practices, anyway?
The adoption of new and different practices is a central theme of Pro .NET Best Practices. I work with enough individuals, teams, and organizations to understand the issues involved with adopting best practices. Consider the four levels at which best practices are embraced:
- Individual: You or any individual adopts better practices to increase personal and professional productivity, quality, thoroughness, and overall effectiveness.
- Group: The team adopts better practices to be more industrious together, avoid problems, achieve desired results, improve interpersonal relationships, and work more effectively with other teams.
- Organization: Your company, agency, or firm adopts better practices to bring more positive outcomes to the organization, attract and retain employees, satisfy end-user expectations, and make stakeholders happy.
- Profession: Better practices are widely adopted and become generally-accepted standards, patterns, and principles that bring alignment to software development and benefit to all that follow them.
In an ideal world, best practices are quickly adopted at all four levels. However, in the real world, they can be slowly adopted by the group, resisted by the organization, embraced by one individual, not by another, or ignored altogether by everyone but you. It can be a mixed bag.
There are two key readers of this blog post that I want to identify with and help:
- Developers – As a developer, you have personal practices that make you an effective software developer. The compendium should list new and different practices that help make you a more effective developer.
- Team Leaders – As a team leader, you see the team develop software through their current practices. The compendium should list practices that help the team perform better and achieve better outcomes.
These readers are adopting at either the individual or group level.
If you are a reader who wants to bring best practices to the organization or the software development profession then I assert that you are probably not interested in the content of this compendium. Yes, you might refer a developer or team leader to the compendium, but I doubt you will find it directly relevant.
So, given this introduction, let’s look at how a collection (I like the term compendium) of specific .NET best practices might be organized.
Tags for the Compendium
Since this is a blog, tags can help others find and navigate the content. Here is a quick list of tags that come to mind:
- Coding Best Practices. For example, C#, VB.NET, T-SQL
- Toolset Best Practices. For example, Visual Studio, ReSharper, Typemock
- Platform Best Practices. For example, ASP.NET, SQL Server, SharePoint
- Architecture Best Practices. For example, Client-Server , n-Tier, CQRS
- Windows 8 Best Practices
- Engineering Fundamentals Best Practices
- Cloud Best Practices
- Phone Best Practices
- ALM (Application Lifecycle Management) Best Practices
Clearly, there are a lot of ways to slice and dice the topic of best practices; however, I will try to bring things back to the topic of the Microsoft .NET Framework.
You can find the entire Best Practices category here: http://ruthlesslyhelpful.net/category/development/best-practices/
The Power of Free
I mostly wrote Pro .NET Best Practices based on my professional experience trying to get teams and organizations to adopt .NET Framework best practices. Over the years, I have read many books, I experimented, I tried and persevered with one approach, and I tried totally new approaches. Many times I learned from others. Many times I learned by my mistakes.
Over the years and as I researched my book, I found many free, on-line sources of .NET best practices. Many are professionally written and easy to follow. In my book I was reluctant to paraphrase or repeat material, but I should have done a better job of showing people how to access the material. (The one thing I really kick myself over is that I did not use Bitly.)
So, let me start the Compendium of .NET Best Practices with some great material already available on the Internet.
Part 1: MSDN: .NET Framework Best Practices