Day Two! This was a full day of sessions. If you're interested in what sessions I attended on day one, you can check it out here.
10x Your Sitecore Development
This was quite the presentation by Mark Cassidy. I had seen that he has given this presentation at some user groups and I was really looking forward to seeing it myself. It did not disappoint.
During the presentation Mark had a time lapse of a full Sitecore site that he built out by sticking to a set of core principles which really allowed him to accelerate his development.
He argued that by sticking to these principles and trying to only leverage core Sitecore functionality, which has been stable for the last 10 years, we can decrease the learning curve for newer developers and increase productivity. He then showed that he was able to back port his solution all the way back to the first Sitecore 6x version that supported MVC with only very minor code changes to show how stable core functionality is.
Wheels on the Rebus Go Queue, Queue, Queue
Pete Navarra gave an extremely interactive talk about Sitecore message queues.
While queues aren’t the most exciting subject, Pete had every single person in the audience participating by transforming groups of people in the audience into queues.
Pete asked for volunteers to act as the producer and transport roles. It was effective. He showed an example use case as his demo site where he processed email bounce events using the service bus.
All of the code that he demoed during his presentation is here. I was recently looking for a full example of using the message bus so this will be a great reference in the future.
16 Tools for Your Sitecore Tool Belt
Jeff L'Heureux delivered a presentation that covered 16 (plus one bonus!) tools for Sitecore.
Number one was Sitecore Instance Manager (SIM), which I’ve used in the past. What I didn’t know though is that it can do a lot more then just install Sitecore sites. It can do process management, install Mongo for you on your local machine, and more.
There were a lot of tools and features I was unaware of. Here are some of the tools that I'll be checking out in the near future:
- Sitecore Extensions - I won't lie, I'm not big on browser extensions. I currently have zero enabled in Chrome... but I might have to make an exception for this one. It adds the current database name to the Sitecore header so you it's more noticeable and hopefully will prevent you from changing content in the web database. It also includes a Resharper style command window to execute Sitecore commands.
- pipeline.debug - Uhh.. yes. A module that allows you to debug and see actual values of properties in Sitecore pipelines. This should come in handy in the future. I've previously overridden certain pipeline classes just to be able to debug/examine values that are being passed in.
The full list of tools from the presentation are available here.
Continuing the trend with “all things JSS,” I attended the JSS roundtable discussion. During this session people were able to talk with the JSS team about anything and everything. People discussed what they were doing with JSS and some of the things they were running into as they were working with it.
Towards the end of the session, the group discussed Umbrella for Sitecore JSS which was released by Macaw Interactive. There's a lot in this repository but it includes a Typescript example for Sitecore JSS and a tool for syncing content from Sitecore to your Sitecore JSS data directory, which could come in handy if the content of your application has changed after you've already deployed it to Sitecore.
Measure, if you want to go faster
For the last breakout of day two, I attended Jeremy Davis' presentation on Sitecore performance. He discussed techniques for uncovering performance issues in Sitecore solutions.
I really liked his usage of the Visual Studio diagnostics for performing the profiling a Sitecore site. I’ve relied on dotTrace in the past so it was great to see some of that same functionality is now built into Visual Studio.
Jeremy also showed the Sitecore Debugger which can be useful for seeing how many items a rendering is retrieving as well as individual rendering execution time.
I really liked how he structured his presentation with embedded videos that he described as they played. It made the presentation flow really nicely and prevented having to switch between Visual Studio and PowerPoint whenever we talked about a debugging technique.
We released JSS, you'll never guess what happened next
First off, some SXA features will now be supported. They demoed creating an SXA site, setting some deployment properties and deploying a disconnected JSS application to it.
The second big feature that was announced was support for Sitecore Forms, including multistep forms. Kam showed a form that had some conditional logic as well as both client and server-side validation. I'm very excited for this functionality.
Finally, support is being added for a remote rendering host. Currently Sitecore itself is responsible for spinning up Node.js to render your site. This new functionality allows you to move Node.js anywhere (including a different server), which can be scaled out in environments that require this. It was also discussed how this can be used to enable SitecoreJSS development without the need for Windows.
Sitecore 9.2 The Hidden Bits
Sitecore 9.2 is on the way! Pieter Brinkman gave an update about some of the new things we can expect to see in the next release of Sitecore.
Some of the new features include better robot detection, including fixes for personalization rules that were triggered by bots. YAML is now going to be the default serialization format for Sitecore. Hedgehog TDS is going to be supporting this format from Day 1. There is also a new personalization reporting dashboard that can show you the active personalization and all related details on your site.
I really enjoyed all of the talks that I attended on day two. Overall, SUGCON was a really great experience and I'm glad I was able to attend and deliver my presentation. Looking forward to Symposium!