Author Archives: Jimmy Bogard

About Jimmy Bogard

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.

Put your controllers on a diet: a survey

Previous posts in this series: Redux Defactoring In the last post, I removed all the abstractions and layers from my application in order to provide a better view on what my next steps should be. This is like climbing to … Continue reading 

Posted in Architecture, ASP.NET MVC, Design | 9 Comments

Put your controllers on a diet: defactoring

Posts in this series: Redux Defactoring Before getting to far in refactoring my controller, I want to spend a little bit of time doing some defactoring, removing abstractions and such until I can see the entire amount of non-framework code … Continue reading 

Posted in ASP.NET MVC | 34 Comments

Put your controllers on a diet: redux

A few years back, I put together a talk on putting your controllers on a diet using  variety of techniques and extension points inside MVC. Well, a lot has changed in four years, and with the lessons learned from the … Continue reading 

Posted in ASP.NET MVC | 9 Comments

Evolutionary architecture boundaries

At Headspring, we’re fairly obstinate in our approach in evolving a system’s design and architecture over time. As a consulting company, we get to see a LOT of different codebases, and while it may be selection bias, we are generally … Continue reading 

Posted in Architecture, Design | 3 Comments

Scaling lessons learned–from 0 to 15 million users

The bulk of my time in the last three or so years at Headspring has been building and architecting a loyalty reward system (think Best Buy Reward Zone). I’ve worked on Very Large Systems before, Fortune 50 e-commerce sites, but … Continue reading 

Posted in Architecture | 11 Comments

Curbing long tail design

One of the perks of my job (and talking to a lot of folks) is that I get to see a lot of people’s actual code. Not gists, blog examples, or GitHub playgrounds, but real, actual, production code. Some code … Continue reading 

Posted in Architecture, Design | 21 Comments

Test styles and avoiding setup/teardown

Curious about NSpec, Amir Rajan posted a challenge that posited that NSpec can make your tests cleaner. The results are summarized here: https://gist.github.com/amirrajan/6701522 One thing that is in stark contrast with my tests: https://gist.github.com/jbogard/6690905 And the others is that I … Continue reading 

Posted in TDD, Testing | 3 Comments

Perception is Reality–The state of OSS in .NET

A response to Amir Rajan’s post that .NET OSS is DOA. The history of OSS in .NET is a long and winding road. It involves many different champions in the community, many different teams in Microsoft, and a very interesting … Continue reading 

Posted in Community, OSS | 31 Comments

AutoMapper 3.0, Portable Class Libraries and PlatformNotSupportedException

One of the major additions of AutoMapper 3.0 is the support of multiple frameworks through Portable Class Libraries. A Portable Class Library (PCL) allows a library developer to easily target multiple frameworks, as Scott Hanselman pointed on in a blog … Continue reading 

Posted in AutoMapper | 15 Comments

AutoMapper 3.0 released

AutoMapper had Silverlight 4 support a while back, but it was a huge pain to keep up. In this release, I converted AutoMapper to a Portable Class Library, with supported platforms: .NET 4 and higher Silverlight 4 and higher Windows … Continue reading 

Posted in AutoMapper | 33 Comments