1. SXA Optimized Layout

    Performance has been a common pain point in recent Sitecore projects, particularly when using SXA. The increased popularity of Lighthouse has made finding performance issues significantly easier. Furthermore, by attaching a simple quantitative value, it has also made comparisons and goal-setting straightforward. With vanilla SXA sites I’ve tested recently, they all start out in the 30-40/100 range which is generally considered a failing grade. While this can be a never-ending topic, particularly if your goal is to reach the upper 90’s, controlling the way your scripts and assets are loaded onto the page is almost always required. …


  2. Sitecore Content Serialization With Code Generation

    A bit over a year ago Sitecore released version 10.0. Amongst a long list of updates, the largest one which caught my eye was the addition of SCS (Sitecore Content Serialization) which was released as an alternate option to TDS or Unicorn. This caught my eye mainly because I hoped it would offer a better, easier solution to serialization and codegen out of the box. After implementing a solution based off this technology in the months directly after the release and maintaining the solution for over a year, lets take a look back at what we implemented and how it stacks up. * This information is all from Sitecore 10.0. Updates may have come out in the time since then, and I will happily correct anything if notified. …


  3. Sitecore 9 View Precompilation

    Timeouts, 502’s, coffee breaks. All these things inevitably happen when deploying to an Azure PAAS Sitecore instance, and while coffee is always appreciated, there’s a limit. The amount of time that can be spent waiting for the site to come back up destroys testing efficiency, and may also frustrate clients. There are a few things you can do to improve this performance including upgrading to premium tier app services and switching to two SQL elastic pools (one for core/master/web, one for all other databases), but the largest impact by far comes from precompiling views. …


  4. Creating A Custom SXA Compliant Rendering

    Now that we’ve explored the building blocks of creating SXA components without touching any code, what if for some reason you absolutely cannot create your component with rendering variants? In that case, we still have the option of writing custom components from scratch, it just takes a few more steps than it traditionally would. Let’s take a look at how we would do this by creating the hero component again, but as a custom rendering. …


  5. Using NVelocity Templates With SXA

    Now that we’ve seen how to render multilists using reference items, and we’ve also seen the amount of extra markup it creates, lets take a look at the other option for generating more complex markup within rendering variants: NVelocity templates. Before we begin though, there are a few important points I’d like to note. …


  6. Displaying Multilists In Rendering Variants

    In the previous rendering customization post, we went over a very simple hero rendering with only two basic fields. What if we wanted to make this rendering more complex though? Say we want to add some CTA buttons, how would we go about doing that with rendering variants? Let’s take a look at our options. …


  7. Customizing Your Cloned Rendering

    Now that we have our own custom cloned rendering, it’s time to actually make it look how we want it to. The first step in doing this would be to head over to the auto-created template and adjust the fields as needed. Following through with the previous post, we will be continuing to create a basic Hero component, for which we will only need two fields: a background image field and a title field. …


  8. Cloning An SXA Rendering

    Our adventure begins directly after the successful installation of SXA 1.8. While we could take a look at what SXA offers out of the box, as a developer, I always find that getting my hands dirty allows me to learn the fastest. With that in mind, we’re going to go ahead and create a new Hero rendering. This rendering (for now) will be a simple image spanning the width of the viewport with a title field. …


  9. Why Does Everyone Clone Promo?

    If you’ve done any custom SXA development, you’ll know that the first step to creating a custom rendering is to clone the promo component. What’s so special about the Promo? you may be asking yourself, and I’m here to tell you. To best understand why, we’ll take a look at what the Promo view looks like. …


  10. The SXA Way | Series Intro

    What does ‘The SXA Way’ even mean?. Great question! As I was beginning development with SXA, I noticed everyone referencing The SXA Way, but I never actually understood what that means. No coding? How is that even possible! The thing about SXA though, is that once you understand how it works, you realize how easy it is. Getting to that point, however, proves to be easier said than done. …



My name is Olivier McNicoll

My Profile Photo

I am a Canadian-American Computer Engineer currently living in New Hampshire. I moved to Boston in 2012 to attend Northeastern University and only recently left to get closer to my passions. I was a rower in college and have a passion for mountain biking and hiking.

I am currently a Lead Sitecore Developer at Productive Edge, hence the Sitecore blog found on this site. You can usually find me looking for more challenges and new problems to solve.

What will you find here?

Do you ever find yourself googling trivial questions like How to undo git commit, never mind the fact you’ve done it 100 times before? This blog is a bit like that, chronicling small nuggets of information I find myself looking back for over and over again. Really it’s to use as my own source of knowledge, but hopefully you can prosper from it as well! All of the content on this blog is from my own experiences and opinions. If you have anything to add to any subject, feel free to start a discourse or reach out directly! If I have something wrong I'd definitely prefer to fix it and spread good knowledge.

What won't you find here?

Most of the interesting things I do in my day-to-day tasks revolve around the actual development of features. As such, most if not all of the examples here will be focused on development environments and you will not find many articles relating to deployment configurations or other production difficulties.