My RBA colleague, David Hake*, and I had the privilege of attending the Sitecore User Group Conference (SUGCON) in New Orleans earlier this month. For an inaugural event, it was pretty amazing what the organizers pulled off. Hats off to Mike Shaw, Mike Reynolds, Akshay Sura and all of the sponsors for putting this thing together in only five months! While there were so many takeaways from that week that we could cover, David and I collaborated to create this post on our Top 5 Takeaways of SUGCON.
1. Continuous Integration, DevOps and Unit Testing
There was a lot of buzz last week around these topics and the continued maturation of incorporating a full ALM process into Sitecore projects and environments. Kern Herskind (@herskinduk) delivered a talk on the three approaches for successfully unit testing your Sitecore codebase: using Microsoft Fakes, leveraging Sitecore FakeDb or going full-bore with wrapping Sitecore API functionality in an abstraction layer. Dan Solovay (@dansolovay) focused on pure Test Driven Development with Sitecore FakeDb while Corey Caplette (@cjcaplette) talked about “…lowering the risk of change through culture, practice and tools” with DevOps.
It’s always refreshing to hear how our community is not just adopting, but embracing enterprise-level processes and concepts! It doesn’t just improve the quality of our code, it allows us to spend less time managing the mundane and spend more time engineering amazing solutions. Sitecore is listening to us too! Little by little, they are improving the testability of the platform itself by replacing static classes with factories and interfaces so we can mock it.
2. Syncing xDB and CRM data
This was one of my favorite talks of the whole conference, but mainly because it covered a topic I’m exploring right now. Martin English (@martinrenglish) delivered a talk on Extending the Experience with CRM by populating the Experience Profile with CRM data (Salesforce, Dynamics CRM or otherwise). Sitecore currently has connectors that it’s published for both Salesforce and Dynamics CRM, however these sync data with the membership database, not xDB.
Martin and the team at Arke Systems created a pluggable framework, much like Commerce Connect, by which you could keep data from the Experience Profile in xDB in sync with CRM data. Using this sync process, you can ensure that you’re “closing the loop” with a customer between sessions and across devices. Once you’ve closed this loop, you can now use relevant CRM data to individualize their experience with your brand.
What Sitecore has provided with xDB really is exciting! I plan to do a blog series on how to leverage this approach to not only optimize and nurture your users, but help them to truly engage with your brand.
3. Atomic Design
Brian Beckham (@brianbeckham), founder and CTO of Brainjocks lead a session entitled Modularity Matters: Bringing Atomic Design to Sitecore Development. The essence of atomic design is to look at web development from the perspective of conceiving and building components in their most granular form and building more sophisticated structures from that foundation. Atomic design is making a place for itself in the stable of modern web development best practices, promoting a powerful flexibility which allows ongoing site development quick to do and easy to customize when a foundation is put in place observing maximum reusability.
In the context of Sitecore, atomic design is especially empowering to content authors, giving them a way to build pages with greater independence from developers and customize experiences as the need arises, effectively raising the bar for content management as whole. The session was in large part inspired by Brad Frost, a proponent of atomic design (see his book Atomic Design at http://atomicdesign.bradfrost.com). From building conceptual “atoms”, “molecules” and “organisms” up to full blown “templates”, the value of developing from the smallest scale first cannot be overstated.
4. Federated Experience Manager (FXM)
Stephen Pope (@stephenpope), a developing contributor for Sitecore’s Federated Experience Manager (FXM), gave a talk entitled FXM: Technical Deep Dive and Development Diary on the guiding philosophy that drove the development of FXM and gave good insight into best practices for utilizing it when including analytics data from non-Sitecore sites.
5. What’s next from Sitecore
Sitecore 8.1 (due out in the coming weeks)
To quote Darren Guarnaccia, “If Content is King, Context is Queen”. Sitecore is doubling down on not only allowing you to personalize the user’s experience, but to individualize their journey through context. It’s no longer sufficient just to collect demographic data about the user, but to gather contextual data as well. New features to gather context include Device Detection, IP Geo Location (not net-new functionality, but using their native service rather than relying on third-party providers) and Venue Tracking. And, improvements to Campaign Creator, Experience Analytics and Path Analyzer will also be part of Sitecore 8.1.
Sitecore 8.2 (slated for mid-2016)
– xConnect API – This new API will allow external integration into the analytics framework of Sitecore. Think Power BI or CRM integration. Or integrations with other systems or devices like RFID readers or POS systems.
– “Express Upgrades” – enabling the ability to go from one version to another without having to step through all of the updates individually (e.g. 6.x -> 8.x in one step). I’m really curious to see this in action and how it would handle any customizations you may have made to the platform.
– Running Sitecore on Azure PaaS will be much improved! No need to install the Azure module, you’ll be able to deploy directly to Azure from Visual Studio.
As Sitecore Developers, we are excited about these upcoming releases and the continuous improvements that Sitecore is making to the platform. More to come!
*David Hake is a Senior Developer at RBA and has been a Sitecore developer for the past five years.