Marc Duiker

My experiences & thoughts about Azure, DevOps & personal programming projects.



Hands-on with Sitecore Helix: Anatomy of the Add-HelixModule.ps1 PowerShell script

Add-Feature PowerShell function

In my previous post I showed how I got to a solution which allows the developers in my team to create new Feature and Foundation modules with ease.

I showed the moving parts of the solution but I did not go into much detail of the most important part so that’s what I’ll do in this post. This would be particularly useful if you want to change the script yourself to match it to your needs.


Hands-on with Sitecore Helix: Using PowerShell to add a new module

PowerShell plus Visual Studio equals Sitecore Helix

Embracing Sitecore Helix

Ever since I attended Anders Laub his presentation at SUGCON Europe 2015 about component based architecture in Sitecore solutions I have been a strong advocate of these modular principles. I even went to Pentia to learn about this in full detail.

I was very happy to see that Sitecore finally got their act together and published their Helix guidelines and recommended practices on the web.

For the last half year my team is using the modular Helix style architecture with success and it’s time to share some experiences.


Blog upgrade: Post excerpts, microformats and improving performance

Time for an upgrade

I finally made some time available to work on this blog. There were a couple of things I wanted to improve since I moved to GitHub Pages/Jekyll.

  1. Better looking index page. Before todays change it was a very simple (and boring) bulleted list of links containing the date and title of individual blogposts.
  2. Improved content structure. Having a well defined content structure improves SEO.
  3. Higher performance. Faster page loads makes both users and Google happy.

Improving unit test readability: helper methods & named arguments

‘Uncle Bob’ wrote the following in Clean Code: A Handbook of Agile Software Craftsmanship:

“The ratio of time spent reading (code) versus writing is well over 10 to 1 … (therefore) making it easy to read makes it easier to write.”

So think about that when you write your next bit of code. You need to make sure your code is easily readable and understandable for others, you hardly ever write code just for yourself.


Workflow Management SPE Module

Workflow Management SPE Module

Sitecore PowerShell Extensions first encounter

Although I had heard of Sitecore PowerShell Extensions (SPE) several years ago I never used it myself until earlier this month. My interest was raised again during the Accelerated development with Sitecore PowerShell Extensions session by Adam Najmanowicz during SUGCON Europe 2016.

Right after I got back from SUGCON the project I was working on had a nice challenge. Workflows were being set on existing templates and hundreds of content items had already been created using these templates and had no workflow or workflow state set on them. We needed a way to update the content items with the workflow that was set on the Default workflow field on the updated templates.

For me this was an excellent opportunity to try SPE. I wrote a Sitecore PowerShell script to update Workflow and Workflow state fields, posted it in a gist and tweeted about it. I got in contact with Michael West and Adam Najmanowicz (the developers of SPE) who made some excellent suggestions to improve the user friendliness of the script.


Sitecore investigation: Errors installing a content package with item buckets

Bucket icon

A colleague showed me this error today in the Sitecore log:

ERROR There is no appropriate index for [item path - {GUID}]. You have to add an index crawler that will cover this item

‘I’ve never seen that!’ was my first reaction…

This issue occurred when a Sitecore zip package with content items was installed on another environment. There were quite some lines in the Sitecore log which mentioned the same error but for different item paths and GUIDS. I looked up the GUIDS on my local machine and they were all Bucket folder items with no content items in them.

Here’s an example of how that looks like (when you’ve checked the Buckets option in the View toolbar):

Item bucket with an empty bucket folder




Choosing communication tools for distributed teams

Slack

Team communication

My work at Tahzoo and the work I do for the Dutch Sitecore user group require me to do a lot of communication in distributed teams. Effective and clear communication is difficult, even more so when the team members are at different locations. Having the right tools in place helps a lot. Since there are so many communication tools out there I want to share my opinion on some of these so perhaps you can make a more informed judgment when deciding which tools to use.



Marc Duiker profile

Marc Duiker

Lead Consultant @ Xpirit

Twitter || LinkedIn || Github