- May 12, 2013: MVVM async progress meter example using the Task Parallel Library
- February 16, 2013: DDD: Questions around ubiquitous language
- September 23, 2012: So you want a rollback script?
- August 22, 2012: App.net: 12,000 evangelists and counting
- August 15, 2012: Dogfooding: how to build a great API
- August 12, 2012: Extracting files from an SVN repository backup
- June 21, 2012: Another argument in favour of TDD
- June 17, 2012: Running Mocha browser tests in TeamCity
- May 9, 2012: Deferring starts with Castle’s StartableFacility
- April 30, 2012: Recording the git commit hash in your assembly with TeamCity
- April 28, 2012: Parallel vs serial javascript async tests
- April 2, 2012: Turning a case sensitive string into a non-case sensitive string
- March 15, 2012: Mini book review: Recipes With Backbone
- March 10, 2012: Returning camelCase JSON from ASP.NET Web API
- March 8, 2012: RavenDB Includes – much simpler than you think
- March 7, 2012: Yet another reason to love REST
- March 6, 2012: Quick-and-dirty unique constraints in Raven DB
- February 29, 2012: Fast empty Raven DB sandbox databases for unit tests
- December 30, 2011: Object-oriented basics: single object or collection scope?
- December 18, 2011: Subscribing to NuGet package updates via RSS
- November 1, 2011: Protocol Buffers DataReader Extensions for .NET
- October 1, 2011: Failing the tube test
- August 22, 2011: SqlDropDatabase, SqlCreateDatabase MSBuild tasks
- May 14, 2011: Fragmented integration tests – aka the questionable value zone
- April 22, 2011: NHibernate session management and WCF, redux
- April 21, 2011: Strange CLR behavior
- February 9, 2011: The road to automated database deployment
- December 8, 2010: The Fat ViewModel
- December 7, 2010: IIS vs a Windows Service: some important considerations
- November 30, 2010: How to lose customers through bad UX
- August 20, 2010: Deployment readiness
- August 17, 2010: One NHibernate session per WCF operation, the easy way
- August 16, 2010: Merge redundant assemblies
- August 12, 2010: Powershell to recursively strip C# regions from files
- August 10, 2010: Watch out for weaselly recruitment agents
- June 25, 2010: Exception handling no-no’s
- June 24, 2010: Background event handling in Prism
- June 17, 2010: Brownfield CQRS part 4 – Command Dispatcher
- June 16, 2010: Brownfield CQRS part 3 – Queries, Parameters and Results
- June 16, 2010: Brownfield CQRS part 2 – Command Handlers
- June 15, 2010: Brownfield CQRS part 1 – Commands
- June 15, 2010: DDD eXchange 2010 highlights
- May 29, 2010: My new developement machine – Windows 7 SSD MacBook Pro
- May 13, 2010: TestFixture attribute – just because R# doesn’t care, doesn’t mean you shouldn’t
- May 6, 2010: libcheck – quick and dirty assembly compatibility debugging
- April 21, 2010: Mandatory overloads
- April 19, 2010: Do you produce useful exception messages?
- April 18, 2010: A dangerous DDD misconception: one-sided ubiquitous language
- April 17, 2010: Try not to call your objects DTOs
- April 8, 2010: Guard Methods
- April 2, 2010: If you want people to use your extension methods…
- April 1, 2010: Access invocation arguments when returning a value with Rhino Mocks
- March 31, 2010: Label your services!
- March 30, 2010: Reactive Extensions and Prism: LINQ to your Event Aggregator
- March 29, 2010: Back to basics: What is state?
- March 27, 2010: Null Object pattern for a WPF ComboBox’s deselected value
- March 17, 2010: Factory Factory pattern: easier than using a container
- March 16, 2010: NDesk.Options: getopt for C#
- March 4, 2010: Pair programming: Keyboard ninja? Maybe you should drive
- February 10, 2010: Correctness vs Robustness
- January 18, 2010: Announcement: I’m moving to London!
- December 28, 2009: Semantic CSS grid layout with LESS
- December 10, 2009: Domain-Driven Documentation
- December 6, 2009: jQuery: checkboxes that remember their original state
- December 3, 2009: Why most software projects fail
- November 26, 2009: Stick to the paradigm (even if it sucks)
- November 25, 2009: DDD: making the Time Period concept explicit
- November 20, 2009: The trouble with soft delete
- November 10, 2009: Powershell script to find orphan stored procedures
- October 31, 2009: Unit tests for private methods are a code smell
- October 26, 2009: Domain model refactoring: replace query with composition
- October 22, 2009: Repositories don’t have save methods
- October 22, 2009: Syntax for renaming a foreign key with sp_rename
- October 18, 2009: Domain-Driven Design and OOP: friction = traction
- October 15, 2009: SQL Notifications: not very practical for large data sets
- October 14, 2009: Life inside an Aggregate Root, part 2
- October 13, 2009: Life inside an Aggregate Root, part 1
- October 9, 2009: NHibernate.Caches.SysCache2: don’t forget to call SqlDependency.Start()
- October 7, 2009: A wee test helper for setting private ID fields
- September 29, 2009: Architectural examples: how does your app fit together?
- September 29, 2009: RSS: What I’m reading
- September 24, 2009: Duct-tape programmers ship… once
- September 24, 2009: Slides from my Domain Driven Design 101 talk
- September 17, 2009: Domain Driven Design 101 talk next Wednesday
- September 16, 2009: Increase font size, get to the point quicker
- September 12, 2009: Make NHibernate and Enterprise Library play nice together
- September 6, 2009: I can’t decide if this is an application service, or a domain service!
- September 4, 2009: SOLID ugly code
- August 31, 2009: Using NUnit to check domain event handlers are registered
- August 26, 2009: Law of Demeter is easy to spot when you need extra mocks
- August 24, 2009: Does your Visual Studio run slow?
- August 22, 2009: Three reasons why a unit test might fail
- August 19, 2009: ASP.NET MVC, TDD and Fluent Validation
- August 18, 2009: ASP.NET MVC, TDD and AutoMapper
- August 8, 2009: Real-life DDD: organise code by responsibility layers, not repositories and services
- August 6, 2009: ASB’s new Track My Spending feature is great!
- July 28, 2009: Visual Studio: TFS or SVN?
- July 13, 2009: A programmers secret weapon: the humble to-do list
- June 25, 2009: Working too many late nights makes you socially retarded
- June 24, 2009: Hungarian notation, what do I think?
- June 18, 2009: Windows equivalents of ps and kill commands
- June 10, 2009: AutoMapper: writing a custom IValueResolver for Gravatar
- June 10, 2009: Memory leak with Enterprise Library 4 Data block and Execute Reader
- June 8, 2009: Using NUnit to check your IoC container is set up right
- June 1, 2009: Fluent Builder Pattern for classes with long-ish constructors
- May 26, 2009: Workaround for combining a factory method and Lifetime Manager with Unity
- May 20, 2009: Free Typemock Isolator licenses
- May 17, 2009: The marvel of externally-hosted javascript and CSS
- May 14, 2009: WPF: How to combine multiple assemblies into a single exe
- May 11, 2009: TDD: Helper for checking PropertyChanged event gets raised
- May 9, 2009: TDD: How to supersede a single system library call
- May 7, 2009: Mocking out AutoMapper with Dependency Injection
- May 7, 2009: Why I don’t like MSTest…
- May 2, 2009: Wanted: A kickass .NET API for CouchDB
- April 21, 2009: Spotted in the wild…
- April 17, 2009: IUnityContainerAccessor must use a static container instance
- April 12, 2009: Troubleshooting jQuery.getJSON() and Google’s GData API
- April 12, 2009: Remove content from files with Powershell
- March 21, 2009: DDD and C# language semantics
- March 19, 2009: Import your Outlook auto-complete contacts into LinkedIn
- March 2, 2009: Domain entities vs presentation model objects, part 2: mapping
- February 28, 2009: Domain entities vs presentation model objects
- February 22, 2009: Let’s kill Internet Explorer 6
- February 12, 2009: How to lose traction on a personal software project
- February 6, 2009: Deployment and source-control-friendly database versioning scripts
- January 31, 2009: Automatically log all INSERT, UPDATE and DELETE commands on a table in SQL Server
- January 29, 2009: Refactoring insight: should I really have a separate domain service for that, or is it the responsibility of an existing entity?
- January 26, 2009: Capture the output from a Scheduled Task
- January 21, 2009: Refactoring insight: repositories gone wild!
- January 20, 2009: Refactoring insight: base project for .NET domain-driven design applications
- January 20, 2009: Refactoring insight: simple foreign key cleanup or a domain service?
- January 19, 2009: IRepository: one size does not fit all
- January 13, 2009: Cargo-cult commenting
- December 22, 2008: Entity validation and LINQ: Using yield return to optimize IsValid over a list of broken rules
- December 21, 2008: Back to basics: exception handling in .NET
- December 21, 2008: Find missing foreign/primary keys in SQL Server
- November 23, 2008: Back to basics: good source control check-in habits
- November 2, 2008: Best practice DDD/TDD ASP.NET MVC example applications
- October 13, 2008: Are your applications ‘legacy code’ before they even hit production?
- September 29, 2008: Getting SQL Server 2008 database projects in VS 2008 SP1
- September 26, 2008: Gallio, the framework-agnostic test runner for .NET
- September 17, 2008: Passing a list of values into a stored procedure with XML
- August 30, 2008: More nested XML with SQL Server: n-level tree recursion
- August 26, 2008: Nested FOR XML results with SQL Server’s PATH mode
- August 17, 2008: Strategies for resource-based 404 errors in ASP.NET MVC
- August 14, 2008: When your Woosh modem dies, take the battery out
- August 12, 2008: SP1 for Visual Studio 2008, .NET 3.5 and TFS 2008
- August 9, 2008: Three common ASP.NET MVC URL routing issues
- August 2, 2008: Are your ASP.NET MVC URLs consistent?
- July 29, 2008: I’m now an MCPD: Enterprise Applications Developer
- July 28, 2008: Upgrading your jail-broken 1.1.4 iPhone to 2.0 firmware
- June 8, 2008: Boost: How do I write a unit test for a signal?
- June 1, 2008: Using the Boost Unit Test Framework with Xcode 3
- May 31, 2008: Is the 80 character line limit still relevant?
- April 29, 2008: The finer points of .NET DirectoryServices
- March 27, 2008: Visual Studio 2008 Code Metrics
- March 19, 2008: Keep track of your Internet browsing at work with 8aweek
- March 10, 2008: A bad name for a method
- March 9, 2008: St9exception with libstdc++
- February 3, 2008: Improved error reporting patch for BNC 2.9.4
- February 2, 2008: Fix annoying quote key behaviour in Windows
- December 28, 2007: T-SQL equality operator ignores trailing spaces
- December 16, 2007: Troubleshooting Windows module dependencies
- December 8, 2007: Agile: convincing stakeholders
- December 4, 2007: BarCamp Agile Wellington
- November 21, 2007: Coding conventions and non-standard standards
- November 20, 2007: Implementing access control in a tiered application
- November 18, 2007: A new website on a new domain
- November 15, 2007: Adding GMail’s Archive button to Microsoft Outlook 2007
- July 2, 2007: If it ain’t broke, don’t fix it
- April 19, 2007: Generating documentation with Doxygen
- April 10, 2007: Short-circuit evaluation in VB.NET
- April 9, 2007: Windows Integrated Authentication in ScrewTurn Wiki
- April 8, 2007: Generating a Makefile from Xcode