DotNetCurry Logo
Craig Berntson works for one of the largest mortgage companies in the US where he specializes in middleware development and helping teams get better. He has spoken at developer events across the US, Canada, and Europe for over 20 years and is a Grape City Community Influencer. Craig is the coauthor of 'Continuous Integration in .NET' available from Manning. He has been a Microsoft MVP since 1996. Craig lives in Salt Lake City, Utah. Email: dnc@craigberntson.com Twitter: @craigber.

Craig Berntson has written 16 articles, which have been read 347967 times.
Abstract: Coding guidelines are just one of the many tools developers should have available in their toolshed. By using them, you will help ensure that your code is lush, green, and vibrant.
Abstract: Using Dependency Injection and SOLID principles to ensure testable and maintainable software.
Abstract: The Interface Segregation Principle (ISP) states that interfaces should be small and should contain only those methods or properties that are effectively required. We will explore ISP in this article.
Abstract: Liskov Substitution Principle (LSP) is a SOLID principle that says that given a specific base class, any class that inherits from it, can be a substitute for the base class. We will explore LSP in this article.
Abstract: The Open-Closed Principle (OCP) in SOLID states that a Software Entity should be open for extension but closed to modification. Learn about this principle in this article.
Abstract: The Single Responsibility Principle (SRP) states that a class should do one thing and one thing only. Learn about this principle in this article.
Abstract: This article talks about Object Oriented Programming (OOP), starting with the basics.
Abstract: Code refactoring isn’t code rewriting. Refactoring is the process of restructuring existing computer code without changing its external behaviour. This Software Gardening article talks about what is refactoring, why to refactor your code and the built-in refactorings in Visual Studio.
Abstract: What is Agile Software Development? How well is Agile working for you? Where do you need to make changes? How can you make changes so that Agile works for you? This Software Gardening article analyses Agile to see what it really means.
Abstract: This article talks about applying Continuous Delivery techniques to deliver working software.
Abstract: Get started with unit testing using a simple ASP.NET MVC application. You’ll see how to setup the test and remove the database from the testing process.
Abstract: This article explains some best practices to help you improve your Software branching and merging techniques and in turn improve your code
Abstract: This article talks about continuous learning and why software developers must take responsibility for their skills and career. The author also shares some valuable resources to get you started.
Abstract: This article talks about Software Craftsmanship and what it is all about.
Abstract: We begin our discussion of Software Gardening by discussing good soil, which in our case isn’t a software development technique at all, but is dependent on project management.
Abstract: Comparing software development to constructing a building is wrong. This article discusses why construction is the wrong metaphor and that software is organic and changes in unpredictable ways