Archives

Tue 08 August 2017
Code Smell: Time Span Embedded in Variable
Tue 27 June 2017
Testing your Composition Root
Tue 02 May 2017
Logging vs Auditing
Mon 03 April 2017
The QA Test Matrix
Wed 18 January 2017
Be Humble
Wed 11 January 2017
Convention Based Tests
Wed 04 January 2017
Finance For Software Developers
Tue 01 November 2016
DDD - Events
Tue 01 November 2016
POODR Highlights Part 2
Sat 01 October 2016
Constant Object Anti Pattern
Sat 01 October 2016
POODR Highlights Part 1
Sat 01 October 2016
The New Guy
Thu 01 September 2016
New and Shiny Things
Mon 01 August 2016
Past Mistakes - ORMs and Bounded Contexts
Mon 01 August 2016
Test Your Live System using Live Service Tests
Mon 01 August 2016
Why You Should Do Code Katas
Sun 10 July 2016
Notes on Building and Deploying Software
Fri 01 July 2016
Ten Lessons from Rewriting Software
Fri 01 July 2016
Anaemic Domain Models and Code Smells
Fri 01 July 2016
I Need to Stop Misusing Divs
Fri 01 July 2016
UI Composition Techniques for Services
Tue 14 June 2016
DDD - Bounded Contexts
Wed 01 June 2016
Given When Then Scenarios vs Test Fixtures
Sun 01 May 2016
Foreign Key Constraints and Microservices
Sun 01 May 2016
Past Mistakes - Out of Process Commands
Sun 01 May 2016
You Rarely Need Custom Exceptions
Sun 01 May 2016
Your Job Isn't to Write Code
Tue 19 April 2016
Legacy Code is Just Code
Wed 13 April 2016
Dependency Injection for Common Global Dependencies
Fri 01 April 2016
Singleton's and the Singleton Lifestyle
Fri 01 April 2016
Project Setup Tax
Fri 01 April 2016
X% of Configuration is Never Used
Wed 30 March 2016
Pulling the Plug on Date Time Parsing
Tue 01 March 2016
Best of Breed
Tue 01 March 2016
Eating your own Dog Food
Tue 01 March 2016
Write Assertions First
Mon 01 February 2016
Gaining Ten Extra Hours a Week
Mon 01 February 2016
Sproc vs ORM vs Inline vs Polyglot
Mon 01 February 2016
The N+1 Problem
Mon 01 February 2016
Why you need a Developer Diary
Wed 13 January 2016
Application Validation and Domain Validation
Fri 01 January 2016
A Lotta Architecture - A Reply to "A Little Architecture"
Fri 01 January 2016
Getting Things Done - For Software Developers
Fri 01 January 2016
Validation is not a Cross Cutting Concern
Tue 01 December 2015
ReactJS and JSHint
Tue 01 December 2015
Recommended Reading List 2015
Tue 01 December 2015
Reducing Conditional Logic to a Single Location
Tue 01 December 2015
Year in Review 2015
Sun 01 November 2015
Don't Build a Thing
Sun 01 November 2015
Pre Computation
Sun 01 November 2015
Throw Code Away
Sun 01 November 2015
You Cannot Iterate upon Architecture
Thu 01 October 2015
Abstractions in Code, Details in Metadata
Thu 01 October 2015
Coding In the Real World
Thu 01 October 2015
Header Interfaces vs Role Interfaces
Thu 01 October 2015
Set Based Design
Tue 01 September 2015
Release It - Highlights Part 1
Tue 01 September 2015
Release It - Highlights Part 2
Tue 01 September 2015
The Self Shunt - Test Doubles without a Framework
Tue 01 September 2015
Types of Test Doubles
Tue 01 September 2015
Waste: Write Less Code
Sat 01 August 2015
Loops vs Functional Programming Styles
Sat 01 August 2015
Production Code is Dirty
Sat 01 August 2015
Queue Centric Work Pattern
Sat 01 August 2015
Why I Don't Like Mocking Frameworks
Wed 01 July 2015
DRY vs Coupling in Production Code
Wed 01 July 2015
Integration Tests
Wed 01 July 2015
Static Code
Wed 01 July 2015
The Benefits of Contract Testing
Wed 01 July 2015
You Still Need Manual Tests
Mon 01 June 2015
Branch by Abstraction
Mon 01 June 2015
Do you really need a Microservice?
Mon 01 June 2015
Feature Toggles
Mon 01 June 2015
FirstOrDefault in LINQ
Fri 01 May 2015
Mob Programming
Fri 01 May 2015
Tasking in Software Development
Fri 01 May 2015
Testing Private Code
Fri 01 May 2015
Walking Skeleton
Wed 01 April 2015
Abstractions
Wed 01 April 2015
Cool URI's Don't Change
Wed 01 April 2015
CQRS - The Simplest Introduction
Wed 01 April 2015
DRY vs DAMP in Tests
Wed 01 April 2015
Getters and Setters are Evil - Redux
Wed 01 April 2015
Randomly Generated Values in Tests
Sun 01 March 2015
Dependency Elimination Principle
Sun 01 March 2015
Remote Meetings - Balancing the Act
Sun 01 March 2015
Reused Abstraction Principle
Tue 10 February 2015
Acceptance Testing need not use the Full Stack
Tue 03 February 2015
Value Object Refactoring
Sun 01 February 2015
Consistency
Sun 01 February 2015
Guard Clauses and Assertions
Thu 01 January 2015
Abstract Data Use Not Data Access
Thu 01 January 2015
Caching
Thu 01 January 2015
Recommended Reading List 2014
Thu 01 January 2015
Why Technical Blogging?
Mon 01 December 2014
A Unit is Not Always a Method or Class
Mon 01 December 2014
Factory Obsession
Mon 01 December 2014
Limit the Amount of Dependencies you Use
Mon 01 December 2014
Pair Programming vs Pairing
Mon 01 December 2014
Stop Making Everything Public
Mon 01 December 2014
Three Steps to Code Quality via TDD
Sat 01 November 2014
Dependency Injection (DI) Containers
Sat 01 November 2014
Ratcheting
Wed 01 October 2014
Characterization Tests
Wed 01 October 2014
Do it right - violate YAGNI
Wed 01 October 2014
Practice, Practice, Practice
Wed 01 October 2014
Reinvent the Wheel, Often
Mon 01 September 2014
DDD Validation
Mon 01 September 2014
Developer Diaries
Fri 01 August 2014
Program for Change
Fri 01 August 2014
Stop.Mocking.EVERYTHING
Tue 22 July 2014
Dont Tie Yourself to a Framework
Tue 01 July 2014
I Need to Stop Misusing Namespaces
Tue 01 July 2014
SOA Done Badly vs SOA Done Right
Tue 01 July 2014
The Importance of Tools
Thu 01 May 2014
Flexible Selenium Tests via Page Objects
Thu 01 May 2014
Learning Tests
Tue 01 April 2014
Design is Important
Sat 01 February 2014
TDD is a Tool
Sat 01 February 2014
The Correct Way to use var in C#
Sat 01 February 2014
Top Down vs Bottom Up
Wed 01 May 2013
The Anti If Campaign
Mon 01 April 2013
3 Years at Codeweavers
Mon 01 April 2013
Why are you not using Design by Contract?
Tue 01 January 2013
Object Calisthenics
Sat 01 December 2012
Object Discovery
Mon 01 October 2012
Codeweavers Code Retreat
Mon 01 October 2012
MVC is Broken
Mon 01 October 2012
Recommended Reading 2012
Fri 01 June 2012
The Problem with Auto Updating Browsers
Tue 01 May 2012
Achieving more Isolated Unit Testing
Thu 01 March 2012
Recursively Building a Web Service using the same Web Service
Wed 01 February 2012
Warnings as Errors
Sun 01 January 2012
Log Everything
Sun 01 January 2012
Write Unit Tests? Start deleting them
Thu 01 December 2011
6 Ways to Speed Up Selenium Tests
Thu 01 December 2011
How to Achieve More Stable End to End Tests
Sat 01 October 2011
Smalltalk Conversion mapped to C#
Sat 01 October 2011
The Best Code is Written Twice
Mon 01 August 2011
Ten Things a graduate will experience during their first year at Codeweavers
Wed 01 June 2011
Mapping Objects via TDD
Sun 01 May 2011
Unit Testing C# attributes
Fri 01 April 2011
Getters and Setters are Evil
Tue 01 March 2011
MBUnit to NUnit
Tue 01 March 2011
Mock Roles not Types
Wed 01 December 2010
Lists or Objects