Chris is a Software Engineer with the .NET Developer Tools Division at Red Gate. He obtained a PhD in Biology before moving into professional software development
The term 'Architecture' seems to imply a plan that you can't easily subsequently deviate from. It's true that, if you abandon software architecture, you end up with a big ball of mud, but maybe the art of software is to make change much easier by planning how to implement each feature, tackling dependency issues, splitting functionality into small discrete components and considering how they should interact with each other.… Read more
Refactoring code won't cause performance problems, right? This was the assumption when Chris Hurley and his team went out to improve some legacy code. They decided to separate the database access from business logic and standardise on Entity Framework, but when it came time to test the code using real-world workloads, unexpected performance issues appeared. Chris recounts how they discovered, investigated, and resolved these issues using ANTS Performance Profiler. … Read more
The support for asynchronous operations in .NET 4.5 has made it much easier to create easily-intelligible asynchronous methods that avoid blocking. However, async/wait isn't cost-free in terms of CPU overhead. How best to judge when to use it? Chris Hurley explains.… Read more