November 4th, 2017
Technical debt may be a useful metaphor for describing how bad code design undermines productivity to non-technical audiences, but it does not help in understanding the longer term problems that affect code bases.
September 20th, 2017
Agile teams spend time modelling software whether they are prepared to admit it or not. Adopting a technique like Domain Driven Design can help to make this more efficient, particularly at scale.
September 3rd, 2017
Although .Net Core does not directly support creating Windows Services there are several different ways of creating applications that can be registered and run as services.
August 14th, 2017
Refactoring describes a very specific and controlled technique for improving code. The problem is that it is often used to describe wholesale changes to code bases that should be treated as a rewrite.
July 5th, 2017
You can now write compiled Azure functions in C# with full unit test coverage, though there are a few obstacles along the way.
June 12th, 2017
Recently released toolsets for AWS Lambda and Azure Functions are finally making serverless application development available to C# developers.
May 25th, 2017
One of the more enduring problems with service integration is managing change in service interfaces. Consumer-driven contracts can help to detect breaking changes, but this visibility comes at a price.
May 16th, 2017
No self-respecting integration platform is complete without an API management story these days. Is this just a RESTful return of the enterprise service bus?
April 12th, 2017
Using Docker with .Net Core is initially straightforward, but to get beyond basic image building you will need to handle more than the simple scenarios demonstrated in quick-start guides.
April 3rd, 2017
Governance doesn’t have to be all about byzantine process and suffocating approval boards. It can be used to provide clear permission for teams to innovate.
March 10th, 2017
Although .Net Standard does provide a mechanism for sharing assemblies between .Net Core and .Net Framework applications, as ever, you’re still very much constrained by your dependencies.
February 26th, 2017
You will inevitably be pushed towards upgrading your protocol buffer messages to Proto3, particularly if you want a client that supports .Net Standard that .Net Core. This can be done, but there are a couple of speed bumps along the way.
January 28th, 2017
No architect will ever admit to being out of touch with software development. However, unless you are writing code then it’s difficult to avoid becoming an “ivory tower” or “PowerPoint” architect that can only discuss systems in the abstract.
January 7th, 2017
Event stores and event sourcing are a powerful idea, but they can be vulnerable to a number of technical and operational challenges when faced with real world complexity.
December 19th, 2016
Agile teams still need to make architecture decisions, but in supporting them architects should seek “just enough” architecture over “big design up front” and practical solutions over large-scale abstract thinking.