Skip to main content

Posts

Find Uncached Sitecore Components

Sitecore recommends caching the HTML of renderings wherever it's practical to do so. Here's a quick SQL script to find View Renderings and Controller Renderings that are not marked as cacheable.
Recent posts

Helix Smells - Fat Project

This post describes the  Fat Project  Helix Smell. It's part of a series documenting some of the common pitfalls of Sitecore development when following the Helix architecture.

Helix Smells - Unearned Foundation Status

This post describes how to spot and improve a Helix module that exhibits  Unearned Foundation Status . It's part of a  series documenting Helix Smells - some of the common pitfalls of Sitecore development when following the Helix architecture.

Fat Foundation

This post describes how to spot and resolve a Fat Foundation module. It's part of a series documenting Helix Smells - some of the common pitfalls of Sitecore development when following the Helix architecture.

Helix Smells

"Helix Smell" is the term I use for a sign that there might be a problem within a Sitecore Helix implementation. Each Helix smell has a name and definition. I hope this will provide Sitecore developers with a common vocabulary for discussing issues in their Helix solutions.

Sitecore Helix Distilled

It seems like a lot of Sitecore developers struggle with Helix, finding it more of a hindrance than a benefit. Perhaps Sitecore have been too prescriptive in their documentation. Maybe the Habitat example site overwhelms people. Whatever the reasons, I don't think it needs to be that way. If you distill Helix down to its essence, you'll find a collection of 6 architectural principles that were originally codified by Robert C Martin. They're known as the ' Principles of Package and Component Design ' and they're not too difficult to grasp. That said, the language he uses can get pretty complex. So here's my attempt to translate the principles for new Helix developers. Coupling The first 3 principles focus on managing dependencies within your system. Broadly speaking, they help you decide which Helix layer your code should be added to. Stable Foundation / Volatile Project Every Foundation module will probably have lots of dependent Feature/Project