Talks on caching strategies…
We’ve been doing (and will be doing) some talks around the Twin Cities on Microsoft’s “AppFabric Caching” technology – a distributed cache not unlike the open-source memcached library.
What has this to do with agile? Well, we’ve found that it can address a core component of agile teams – the desirability of being self-sufficient and avoiding the bottleneck of scarce experts.
Let me explain: For projects/products that reach sufficient scale, when a database is present, it becomes the bottleneck for performance. This often leads to the need for That Guy With Awesome SQL Chops to come to the rescue. After sufficient time/energy/dollars, your application is performant – but you may have had some intermediate pain, and the data layer (including stored procedures) may have taken a hit in terms of maintainability. You may now need an expert to touch that code in the future.
For some classes of data, however, a good caching solution can eliminate all that. A cache that can scale to large volumes of data (by being distributed across a cluster of machines) and yet presents itself as a unified cache logically (so that you have a single place to invalidate cache items) will allow you to tackle a broader class of problems than simple per-node caches.
So, if your team has a good caching solution in the tool belt, you’ll be more agile – able to reach greater scalability while staying self-sufficient.
You can catch this talk on May 20th (Microsoft’s Connected System User Group) or June 8th (Twin Cities Developer Guild.) Slides are available here.

