It is hard to believe it has been a month since we were all at Sitecore’s annual symposium in Las Vegas. Since returning from the show, I have had the chance to review Sitecore 9 and I have to say, there are quite a few things to be excited about. This blog post will give you my take on a dozen changes you will want to take note of in Sitecore 9. A few of the more noteworthy changes deserve a deeper dive and will be covered in depth in future blog posts.
1. Sitecore Installation Framework(SIF)
Sitecore joins the dark side of The Force releasing the new Sitecore Installation Framework(SIF).
Sitecore Installation Framework (SIF) is a new powershell installation framework. SIF switches gears on how Sitecore is currently installed. If you are used to installing Sitecore using Sitecore SIM, you will have to get used to performing a few extra steps.
One of the main changes is that it now requires SSL and SOLR. Because SOLR is now the default Content Search provider, there are a few extra steps you will need to take into account.
If you are looking for SIF-less options, there are several available and include step-by-step tutorials. If you choose to follow the official installation process, I recommend that you take a look at the Installation Guide and check page 35. Specifically, section 5.2 (Install Sitecore XP) which contains a Powershell script. Running this script will take care of most things for you and will actually save you a lot of time.
Here is a great video tutorial covering setup instructions.
2. Config Layers
Sitecore has redefined the way configuration files are loaded. Now the configuration files are loaded and organized in layers. Under the App_Config folder you will now see a new file called Layers.config which contains the load order. This addresses the issue in previous versions of adding zzz or xxx to the file names since configuration files used to follow alphabetic order. This change will make a big difference in organization, especially with custom configurations.
Now Sitecore has 4 layers that are always loaded in the following order:
1- Sitecore Configuration Files
2- Module Configuration Files
3- Custom Configuration Files (that’s normally your customizations to Sitecore)
4- Environment Configurations (CI, QA, PROD specifics)
Here is a screenshot of an example Layers.config file which demonstrates the 4 layers:
3. Dynamic Placeholders
That’s right! Dynamic Placeholders are finally supported out of the box with Sitecore 9. This was probably one of the most requested features. Fortunately, the developer community produced modules that helped when working with Dynamic Placeholders, but it was about time that this feature was incorporated into the product.
xConnect is brand new. It is one of the main features available in Sitecore 9. If you are wondering what xConnect is, you can think of it as a new layer added to link your xDB with other client services. It is an API which enables connectivity of your xDB with sources like Salesforce or Microsoft Dynamic. I’ll write a more lengthy post covering this topic in greater detail soon.
5. Sitecore Cortex
Think of Sitecore Cortex as an Intelligent Marketing Assistant available on Sitecore Experience Cloud. It uses Machine Learning techniques to analyze large volumes of data. This in turn allows you to increase the value and relevance of the customer experience; content personalization is one such example.
6. Hello JSS
7. Marketing Automation
As mentioned below, Marketing Automation is a new tool available in Sitecore 9 that was built using Speak 3. With the Marketing Automation application, you can create and edit automated marketing campaigns using a very neat drag and drop interface.
The Old Web Forms for marketers are going away folks. It is still supported on Sitecore 9.0 version but it will be deprecated in version 9.1.
The new Forms module in Sitecore 9 was built from the ground up. It has a completely redesigned UI with drag and drop functionality that supports multi-steps and building forms out of templates. This is really promising and you can checkout how to use this new form in this video.
9. Speak 3
First of all, SPEAK 3 is completely different from SPEAK. This is a strategic shift for Sitecore. Sitecore is moving away from proprietary UI Framework (a.k.a Speak) to a commodity based UI Framework (Angular First). What that means is that Speak 3 are angular applications. They can run independent of Sitecore. The idea behind Speak 3 is to make Sitecore and new Angular Applications easier to use. I know many of you will really appreciate this change. This is now the recommended method for building custom modules/tools within Sitecore. The new Marketing Automation tool was built using Speak 3.
More information on Speak 3 can be found here.
10. Content Search
Solr is now the default content search provider. Yes, you read it correctly! Lucene served us well and bravely for a while, but it was time for this switch to happen. Lucene is still supported for standalone products but is neither supported nor recommended to be used in production environments.
If you use Sitecore Azure PaaS you can also use Azure Search.
11. Federated Authentication Support
Historically, Sitecore used the ASP.NET membership provider to perform authentication and authorization. Now there is a new option on the table: using the Federated Authentication model which enables you to use third-party providers (like Facebook, Twitter, Google, etc) to authenticate your users.
12. Horizon – coming soon in release 9.1
Probably the most exciting feature presented during the closing Symposium Keynote was the Horizon preview. While it isn’t available in Sitecore 9, it is slated for a future release, possibly Sitecore 9.1. Horizon is an intuitive, easy to use, drag and drop interface that will eventually replace the Experience Editor. As Neils Handberg showed us during the keynote, “you will always be one click away from getting the real-time insights you need when you need them.” This is promising folks!
Well, that’s my take on a dozen noteworthy changes to Sitecore 9.0. Keep an eye out for my next post when I will tackle the topic of xConnect in greater detail.
Until next time – Diego