About Me
I'm a technical architect with Headspring in Austin, TX. I focus on DDD, distributed systems, and any other acronym-centric design/architecture/methodology. I created AutoMapper and am a co-author of the ASP.NET MVC in Action books.
Upcoming Talks
-
Recent Posts
Recent Comments
- jbogard on Eventual consistency in REST APIs
- Srdjan on Eventual consistency in REST APIs
- DDD Validation | C#Net on Entity validation with visitors and extension methods
- Scott Banwart's Blog › Distributed Weekly 207 on Saga patterns: wrap up
- Scott Banwart's Blog › Distributed Weekly 207 on Eventual consistency in REST APIs
Archives
- May 2013 (4)
- April 2013 (1)
- March 2013 (6)
- February 2013 (2)
- January 2013 (2)
- December 2012 (3)
- November 2012 (6)
- October 2012 (7)
- September 2012 (3)
- August 2012 (6)
- July 2012 (5)
- June 2012 (3)
- May 2012 (3)
- April 2012 (3)
- March 2012 (8)
- February 2012 (5)
- January 2012 (5)
- December 2011 (3)
- November 2011 (6)
- October 2011 (4)
- September 2011 (6)
- August 2011 (8)
- July 2011 (3)
- June 2011 (4)
- May 2011 (8)
- April 2011 (6)
- March 2011 (3)
- February 2011 (7)
- January 2011 (6)
- December 2010 (4)
- November 2010 (2)
- October 2010 (1)
- September 2010 (7)
- August 2010 (6)
- July 2010 (4)
- June 2010 (7)
- May 2010 (9)
- April 2010 (8)
- March 2010 (5)
- February 2010 (4)
- January 2010 (9)
- December 2009 (9)
- November 2009 (5)
- October 2009 (8)
- September 2009 (8)
- August 2009 (8)
- July 2009 (11)
- June 2009 (10)
- May 2009 (11)
- April 2009 (10)
- March 2009 (9)
- February 2009 (12)
- January 2009 (10)
- December 2008 (8)
- November 2008 (14)
- October 2008 (11)
- September 2008 (10)
- August 2008 (12)
- July 2008 (11)
- June 2008 (11)
- May 2008 (15)
- April 2008 (10)
- March 2008 (15)
- February 2008 (13)
- January 2008 (19)
- December 2007 (9)
- November 2007 (17)
- October 2007 (23)
- September 2007 (10)
- August 2007 (11)
- July 2007 (11)
- June 2007 (9)
- May 2007 (14)
- April 2007 (7)
Categories
- Agile (53)
- ALT.NET (1)
- altnetconf (3)
- Architecture (13)
- ASP.NET (11)
- ASP.NET MVC (46)
- ASP.NET MVC in Action (1)
- ASP.NET Web API (2)
- Austin Code Camp (2)
- Austin DDD Book Club (2)
- AutoMapper (31)
- BDD (8)
- Behave# (6)
- Behavior-Driven Development (5)
- C# (70)
- Code smells (2)
- Community (6)
- Continuous Improvement (3)
- Continuous Integration (7)
- CQRS (3)
- Dependency Injection (9)
- Design (19)
- Distributed Systems (3)
- Domain Driven Design (2)
- Domain-Driven Design (50)
- Entity Framework (2)
- git (15)
- HTML5 (1)
- JavaScript (4)
- Legacy Code (11)
- LINQ (10)
- LINQ to SQL (5)
- Mercurial (9)
- Messaging (8)
- Misc (50)
- MonoRail (4)
- MSBuild (1)
- MVC (1)
- NBehave (3)
- NFJS (1)
- NHibernate (10)
- NServiceBus (18)
- OO (2)
- OSS (1)
- PabloTV (1)
- Patterns (8)
- People (4)
- Personal (2)
- Presentations (1)
- Process (3)
- PTOM (1)
- Rails (3)
- Rant (31)
- Refactoring (22)
- REST (2)
- Rhino Mocks (1)
- Ruby (3)
- SOA (8)
- SQL (4)
- StructureMap (9)
- TDD (32)
- Team Build (6)
- Testing (25)
- TFS (2)
- Tools (36)
- Uncategorized (7)
- VSTS (7)
- WCF (5)
Meta
Monthly Archives: August 2008
One of those days
I had one of those days the other day. Not quite a case of the Mondays, but one where I thought maybe I should just go home and start over. If you’re trying to get this test to pass: [Test] … Continue reading
Posted in Rant
4 Comments
Strategies and discriminators in NHibernate
I recently posted about enumeration classes, and how I like to use them as a sort of “Enumerations with behavior”. Not every enumeration should be replaced with a class, but that pattern helps quite a bit when I find a … Continue reading
Posted in NHibernate, Patterns
14 Comments
Parameter lists in NHibernate
Occasionally I need to return a set of entites that match a collection of parameters. In SQL, I would use the “IN” clause, then manually create each parameter in ADO.NET. With NHibernate, that’s not necessary anymore. NHibernate has built-in capabilities … Continue reading
Posted in NHibernate
10 Comments
Services in Domain-Driven Design
Services are first-class citizens of the domain model. When concepts of the model would distort any Entity or Value Object, a Service is appropriate. From Evans’ DDD, a good Service has these characteristics: The operation relates to a domain concept … Continue reading
Posted in Domain-Driven Design
18 Comments
DDD, Repositories and ORMs
One of the confusing aspects of those new to DDD is the concept of a Repository. From Fowler’s Patterns of Enterprise Application Architecture, a Repository: Mediates between the domain and data mapping layers using a collection-like interface for accessing domain … Continue reading
Posted in Domain-Driven Design
28 Comments
On good design and defining success
This is for the most part a reaction to conversations on design: Testability in .Net Design and Testability Good Design is not Subjective Believe it or not, I largely agree with all of these posts. The conversation originally started around … Continue reading
Posted in Agile, Design
2 Comments
Convention, configuration and WCF
Convention is something that’s fairly lacking in WCF. Here’s what I’d like to do: [ServiceContract] public interface ICustomerSearch { Customer FindCustomerByName(string name); } public class Customer { public string Name { get; set; } public CustomerType Type { get; set; … Continue reading
Posted in WCF
7 Comments
Austin DDD Book Club wrapped up
The last Austin DDD Book Club meeting came and went today, finishing up with the last couple of chapters in Evans’ excellent Domain-Driven Design book (covering Chapter 17, Bringing the Strategy Together and the Conclusion). I want to thank our … Continue reading
Posted in Austin DDD Book Club, Domain-Driven Design
4 Comments
Deferred execution gotchas
I was trying to be clever the other day and try to chain assertions on an array: [Test] public void This_does_not_work() { var items = new[] {1, 2, 3, 4, 5}; items .Each(x => x.ShouldBeLessThan(0)) .Each(x => x.ShouldBeGreaterThan(10)); } I … Continue reading
Posted in C#, LINQ
2 Comments
Enumeration classes
A question came up on the ALT.NET message board asking whether Value Objects should be used across service boundaries. Of course, the conversation took several detours, eventually coming to the question, “what do you do about enumerations crossing service boundaries.” … Continue reading
Posted in C#, Domain-Driven Design
43 Comments
