Skip to content

Sponsor: Do you build complex software systems? See how NServiceBus makes it easier to design, build, and manage software systems that use message queues to achieve loose coupling. Get started for free.

Learn more about Software Architecture & Design.
Join thousands of developers getting weekly updates to increase your understanding of software architecture and design concepts.


Follow @CodeOpinion

Derek Comartin

Automating Builds with Cake (C# Make)

I’ve used various build systems for compiling, testing and deploying .NET based applications. TFS, VSTS, AppVeyor, TeamCity have had one thing in common. They all contained the configuration of my build, test and deploy pipeline in their system with no way to extract it. Build as Code Removing the build steps out of your build system and turning into code has two major benefits to me: Build Anywhere: Once you have a build script, you should be able to execute and build it anywhere.  No longer are you relying on the build server and it’s build steps which are specific to that… Read More »Automating Builds with Cake (C# Make)

Web API: Resource Model isn’t your Data Model

I was recently reminded of some troubles I had awhile ago which were caused by exposing my data model. This tweet by Mike Amundsen brought up some thoughts that I had yet to share, and why I now suggest that you don’t expose your data model. remember, when designing your #WebAPI, your data model is not your object model is not your resource model is not your message model #API360 — Mike Amundsen (@mamund) August 21, 2016 OData A good illustration of the above is with how you see most examples of using OData with .NET and Entity Framework. The problem lies… Read More »Web API: Resource Model isn’t your Data Model

.NET CLI Basics

I started looking at the .NET Core CLI (Command Line Interface) a bit more over past couple weeks and figured I’d put together a blog and video covering the basics. I’m intentionally covering only the basics because the CLI is currently at “Preview 2” and is not yet RTM. Also, since we know the project.json is being eliminated before RTM, I didn’t want to dig into aspects like multi targeting different platforms and frameworks since that requires the project.json. Video Walk Through I’ve created a short video which explains everything this post will, so if you prefer video walk through this… Read More ».NET CLI Basics