The Single Responsibility Principle is a pain in the ass. You're trying to get something done, and don't have a lot of time, and you'd like to keep all the moving parts in front of you. So put it all in one class, or better, yet, one method.
Thursday, August 30, 2012
Thursday, August 9, 2012
An Evening with @Sitecorejohn
The Professional Sitecore Development book tour made a stop in Boston last night, and John West had quite a story to tell.
Tuesday, July 17, 2012
Hitting Scott Guthrie's Laptop
I had the opportunity to take in some of today's AspConf, including Scott Guthrie's keynote demo of Azure. I can't help feeling that something significant is happening.
Monday, June 18, 2012
The Mikkelsen Component Model
I recently worked through Jens Mikkelsen's excellent series on building a Sitecore site. In his article on architecture, he makes an argument that the classic N-Tier approach of separate presentation, business, and data layers is not well suited to Sitecore development:
Thursday, April 5, 2012
A Sitecore Magic Show
It's always worth catching the Joe Henriques show. He can make a demo dazzle, and he makes a compelling case for Sitecore's engagement functionality. Wednesday's tour de force at the New England Sitecore Users Group was no exception. The head spins at the amount of information presented.
Wednesday, March 21, 2012
A Day in the TDD Zone
What makes a great day of test driven development?
- A good plan. This is going in my business layer, that is going in my data layer, and I'm not going to think about it just yet. Let's wrap it in an interface and set it aside for a bit.
- Good tools. NUnit of course, and a good mock suite. Moq was rocking for me--built around lambda expressions, it makes dynamically created objects obey intellisense. Pretty nifty. And ReSharper is wonderful, letting you define methods and classes in your tests, and then Alt-Enter them into existence. Control-U+Control-U to rerun your last test, and a nice 100% code coverage report for the class under test when your done.
Monday, March 19, 2012
Looking at LINQ
I've been digging through the discussion of LINQ in the Albahari brothers' C# 4.0 in a Nutshell: The Definitive Reference, and it has cleared up a number of points for me:
- At a compiler level, LINQ is a series of transformations done to expressions that begin with FROM and end with SELECT or GROUP BY. These transformations turn free text queries into extension methods. For example, var query = from A in aList select A.ToUpper() is transformed by the compiler into var query = aList.Select(a => a.ToUpper()). But, and this is a key point, the implementation of the methods is not determined. You determine the implementation by the namespaces you include; you could write your own implementation of Select, Where, etc.
Wednesday, February 15, 2012
Sitecore Data Reuse Talk
Here's my talk today on Sitecore data reuse options:
The slides can be viewed or downloaded here.
Tuesday, February 14, 2012
Sitecore Data Reuse Links
I will be presenting a talk on Data Reuse for the Sitecore Users Virtual Group tomorrow, Wednesday February 15 at Noon Eastern time. I'll be reviewing the options that Sitecore offers for data reuse: aliases, proxies, clones, wildcards, and pipeline handlers. I'll
post a link to a video when it is available; in the meantime, I thought it would be useful to
post the "Further Reading" links here:
Saturday, February 11, 2012
Some validation weirdness with Office Core
This one had me stumped for a bit. I'm putting together some walkthroughs with Office Core on Sitecore 6.4.1 build 5, and whenever I tried to publish, I would get stopped in my tracks by the following validation error:
Subscribe to:
Posts (Atom)