My Sitecore SUGCON 2023 Takeaways – Day 2

> DAY ONE - If you haven't read about Day One you can read it here.

SUGCON DAY 2

IMG_0478

The 2nd Day of SUGCON started bright an early so after a quick breakfast and cup of tea at the hotel I headed down to the first session I’d planned to see.

Rob’s session is one of the key sessions I really didn’t want to miss this year. A few clients I’ve spoken to recently (and other Sitecore Dev’s I’ve chatted to at SUGCON so far) are facing this challenge:

‘How do we move to XM Cloud from XP and what do we need to consider?’

– so I was keen to learn from Rob’s experiences.

Migrating advanced Sitecore implementations to XM Cloud – Rob Habraken

rob-xm-cloud-banner

Rob started with telling us the differences with XM Cloud and explaining how publishing works differently (given you publish to the Edge):

IMG_0638
IMG_0640

Rob then shared a typical XP implementation diagram and showed how XP Differs as integrations and functionality is moved into the head application:

IMG_0642

He then discussed what is included and not included in XM Cloud in detail. Martin shared some similar slides the day before, but I think these were a little clearer so I didn’t include them in the previous post:

IMG_0644
IMG_0645

This was also a pretty cool comparison of XP vs XM Cloud equivalent features:

IMG_0646

Rob then discussed the Migration approach to XM Cloud. There was a lot of really useful info here about things to consider and how to get your project prepared for the migration and how to tackle it:

IMG_0648
IMG_0649
IMG_0650
IMG_0652

IMG_0653

Next up was the the different development approaches and workflow. I’ve talked about these before but I didn’t know much about option 3 at all. I guess most Sitecore developers (especially in a small team) will use option 1, but option 3 is a really good approach for being able to use local content for your development without having to push it to XM Cloud:
IMG_0654
IMG_0655
IMG_0656
IMG_0657

Rob then went on to explain in detail about how Content Resolvers don’t work if they are dynamic and only static ones do. It’s possible to use some out of the box ones or implement your own GraphQL Content Resolver:

IMG_0659
IMG_0662
IMG_0663
IMG_0664

This is an example of Bread crumbs in XM Cloud and a GraphQL search query:

IMG_0666

IMG_0667

Rob finished his talk with a summary of the benefits of XM Cloud. The shift in Development domain and thinking is the tricky part for a lot of Sitecore Developers I feel:
IMG_0668

 

Rendering your data in headless – 101 different ways
– Mike Edwards

mike-headless-banner

I’ve known Mike for a number of years now and he’s always an good speaker so I was looking forward to Mike sharing his learnings from his headless journey.

IMG_0673
IMG_0674

Mike started by lamenting how things used to be easy in the World of MVC and server-side development and then with all the JQuery and JS frameworks things became pretty bloated.

Things have moved on a lot now in FE development though and there are now many different options for building Headless websites in Sitecore, some of these I’m aware of or have experimented with – Others I’ve not heard of, such as ‘Island Architecture’.

IMG_0674
IMG_0676
IMG_0677
IMG_0678

SPAs bring their own set of problems in terms of page load times and indexability so Mike went into Hydration and Partial Hydration techniques and approaches that try to solve these issues:

IMG_0679
IMG_0680

Then Mike explained more about Partial Hydration examples and Island Architecture. Island Architecture lets you create your web app with pure HTML and CSS for all the static content but then add in regions/placeholders of dynamic content to support interactive ‘islands’ of content. Given the rest of the page is static it downloads really quickly and is available to use faster.

IMG_0681
IMG_0683

Mike then covered Resumability, Edge/Serverless and tools such as Storybook and Hydration Payload.

IMG_0684
IMG_0685
IMG_0686
IMG_0687

There are some Challenges and limitations which need to be re-address:

IMG_0689
IMG_0690
IMG_0692
IMG_0693

Finally Mike ended with saying that this is the future and we need to embrace the new world.
IMG_0694

It was a really interesting talk and gave me a lot to think about and research further. The following talks were 15 minute lightning talks until lunch.

Leverage Sitecore Connect for Sitecore CDP – Sarah O’Reilly

IMG_0695

I’d heard a fair bit about Connect but I’ve not really seen much about how it actually works. So I was looking forward to this session

Sarah took us through an example of using Connect to import user segment data from CDP into Google Ads.

IMG_0696 IMG_0703

Once the export was setup to build from CDP the steps were then configured in Connect to sync to Google Ads:
IMG_0712
IMG_0714

There are tons of Apps supported and different recipes defined and it was impressive to see the options for building logic such as if statements / for loops data mapping and manipulation all within Connect.

IMG_0709

This was an insightful session and really interesting to see how it works. I can see how it could be used to help with migrating to XM Cloud from XP or another CMS platform.

Sitecore components explained for your marketers – Ugo Quaisse

The next session was about the Sitecore Components builder in Pages in XM Cloud. I’ve heard a bit about this but not seen much of it in detail. I was hoping to see a full demo of it. I guess at the session was only 15 minutes there wasn’t time, but I still learned quite a bit about how it works.

IMG_0715
IMG_0716
IMG_0717
IMG_0719

The Component Builder can be used without any development or code required at all. First Themes are setup with colours, fonts and breakpoints configured.

Then datasources are setup and mapped from either a url or json or GraphQL.

IMG_0720

Then the components ‘look and feel’ – layout, dimensions and sizing can be configured in the Builder. This looks pretty neat. Then versioning and publishing is setup for the Component.

IMG_0721

IMG_0722

Lastly some details were shared around the benefits for digital creatives, it’s possible to get Sites built very quickly and easily using Components Builder.

IMG_0723
IMG_0724
IMG_0726
IMG_0727

 

Leveraging XM Cloud APIs and Webhooks to powerup integrations – Ramkumar Dhinakaran & Elakkuvan Rajamani

IMG_0740

After lunch it was time for another session, this time on Webhooks. The use-case here was the XM Cloud Lighthouse Integration which would do an automated quality check of pages using Webhooks and report on it.

IMG_0731

IMG_0742
IMG_0745

Depending on the integration required it might not be best to use a Webhook:
IMG_0756
IMG_0758

Quite a lot of detail was shared with how this all works and integrates.

IMG_0735
IMG_0736
IMG_0737
IMG_0747

There were some links and takeaways shared at the end.

IMG_0763

 

Sitecore Search: Real case PoC – Sebastian Winslow & Jesper Balle

IMG_0766

The 2nd to last session for the day was on the Sitecore search (based on Discover) which I was keen to learn about more as I didn’t know much about how it worked.

IMG_0770
IMG_0772
IMG_0773

CEC looks pretty powerful and can be used to manage search, performance is key and widgets can be configured for search and catalog:

IMG_0774
IMG_0776
IMG_0778
IMG_0779

Some dev resources and admin info were shared:

IMG_0780
IMG_0782

The use case for search was a property Site. There is still some features that need to be built.

IMG_0783
IMG_0785
IMG_0789
IMG_0790

Some info was then provided on Triggers to get the content, Request and document extractors to process and manipulate the content.

IMG_0791
IMG_0792
IMG_0793
IMG_0794

Search API endpoints, results response, API Explorer and ability to refine the widgets.

IMG_0796
IMG_0798
IMG_0799
IMG_0801

It’s early days and the search SDK is still not there yet but it’s coming. Be careful with how much content you try and index when testing but there are some significant benefits to using it.

IMG_0803
IMG_0805

This was a really informative session and gave me all the info I was looking for about how to go about implementing search.

Experiences with Content Hub One – Journey of relaunching our Usergroup website – Katharina Luger & Christian Hahn

IMG_0807

Then it was time for my last session of the day on how the Sitecore User Group Germany rebuilt their site as an SPA using Content Hub One.

The slide below was probably the simplest comparison I saw all SUCON of the differences between XM Cloud and Content Hub One.

IMG_0808
IMG_0811
IMG_0816
IMG_0818

There are 7 Steps to component creation:

IMG_0821
IMG_0822
IMG_0823
IMG_0824
IMG_0825
IMG_0826
IMG_0828

Lastly there were some challenges faced.

IMG_0831

This was a really great session and I’m looking forward to working with Content Hub One in the future.

Virtual Closing Keynote by Scott Hanselman

IMG_0833

There was then an really entertaining and insightful talk from Scott Hanselman. He had some great advice, wisdom and stories to tell to us and I think everyone in the room was pretty captivated by his talk.

IMG_0848

With that it was the end of SUCON 2023, there was a big round of applause for all the organisers. These events take a hell of a lot of organising and a real commitment from everyone involved.

 

IMG_0855

It was time to go and have a few beers and reflect on what was a another brilliant SUGCON.

IMG_0862
Hopefully this is useful info for anyone that couldn’t attend this year or had too many beers and forgot what they learned :-).

My Sitecore SUGCON 2023 Takeaways – Day 1

sugcon-2023-banner

I’ve just got back from and awesome weekend in Malaga at Sitecore SUGCON 2023. If you are not aware of what it is, it’s the developer conference organised by the Community each year to bring Sitecore Developers together in Europe. I’ve been to quite a few SUGCONs over the years but I think this has been one of the best. The talks were really interesting and it was great to catch-up with everyone in the Sitecore Community.

I arrived late on Wednesday at the rather impressive Melia near Malaga – right next to the beach. I’ve certainly been to worse locations for conferences. More venue’s like this for future SUGCONs please Sitecore :-).

pool-banner

The roof top bar was particularly special – but there was some learning to do before I would be able to enjoy the pool.

> DAY TWO - you can read about Day Two here.

Day 1

I had a fairly clear idea of the talks I wanted to see and I managed to stick to it pretty well.

Opening Keynote – Steve Tzikakis and Dave O’Flanagan

dave-banner

The following day after a late breakfast I went to register and then to see Dave O’Flanagan kick off the conference and introduce Steve.

Steve couldn’t attend so was on Video link and he explained that given the Economy downturn innovations such as ChatGPT would be key for diversifying product offerings, Steve then hinted that something was in the works with an integration of ChatGPT with Sitecore.

Many companies such as SAP and Oracle have slowed down to adapt to SaaS and Headless; while Sitecore have grown a lot over the past few years. He said that Sitecore has outgrown Adobe for the past 6 quarters with around 20% growth, Sitecore are 2nd place in industry rankings and aim to catch Adobe.

steve-banner

There is an healthy 16% R&D investment and Steve set out his ambitious target of going from 40,000 Sitecore developers to 100,000 in the market. He said that he felt the tough part (moving to SaaS and creating/integrating new SaaS platforms) was now over and Sitecore are ready to move forwards. Sitecore intend to lead by innovation and partners and developers need to be onboard to continue investment and growth.

IMG_0511

Dave then took back the stage and stated that Sitecore want to lead with Composable DXP and be the best in the market. He also confirmed that DXP is not going anywhere and 10.4 is currently in the works. There are clients who are restricted geographically with what they can do with SaaS or the want full control of their data and platform so there is still a place for self-hosting with DXP.

IMG_0507

Then Dave his us with a bit of very welcome honesty. He said that the SaaS products that Sitecore have procured/integrated and built over the past couple of years are now in a good place but he acknowledged that the documentation, marketing, information on migration and features is not great and Sitecore are going to work on this ASAP. This was great to hear as I think that there is some confusion right now for current customers and potential new customers with all of the different SaaS offerings and XP/XM. I feel It’s quite tricky to understand and the messaging from Sitecore needs improving, especially around the migration path to SaaS.

IMG_0522

Dave went on to say that there are no new product announcements this SUGCON, instead Sitecore will slow down and help customers understand the new products better and explain how to migrate to them. It was good to hear that Sitecore understand there are many customers heavily invested in XP and that it’s not that easy for them to just jump ship to SaaS and that they want to know more about how they can help customers with this journey.

The discussion then turned to the Content, Engagement and Commerce clouds and the work Sitecore have done here with huge investment, especially in Content Cloud – of which XM Cloud is key part and is getting better by the day.

IMG_0510

Content Hub 1 is Sitecore’s answer to a full headless CMS and they will work on integrating it into XM Cloud to allow you to pull content into XM Cloud seamlessly. Content Hub 4.3 is the last version of Content Hub and all customers are now updated.

IMG_0512

Search is a new SaaS offering from Sitecore, it is developed on top of Discover (a SaaS platform Sitecore purchased, originally called Reflektion). It has now been developed further and is able to search all content and is powered by AI. I would learn more about this at sessions later in SUGCON.

IMG_0513

When looking at the cost of XM Cloud customers need to consider the TCO of their existing XP/XM (or other DXP platform) and not just the licence, hosting and development costs. I think it’s true that many clients probably don’t consider the ongoing maintenance costs of Azure Infrastructure / AKS / Solr / Redis etc and the cost and complexity of Upgrades, Security patches and so forth. Not to mention the cost of DevOps/Build Pipelines and other services. When you add this all up the cost may be around the same or a bit cheaper. One of the challenges here I think is different budgets in organisations that traditionally just pay for the hosting or licence etc so this may be something to navigate when it comes to the new world of SaaS.

IMG_0515

Dave then went on to talk about XM Cloud a bit further and that they do know there are challenges without having an CD instance anymore in XM Cloud (these are instead replaced by Edge Servers – experience edge which just returns the items via the layout service or GraphQL). He said that it is something they are trying to resolve and will look to the Community so potential solutions to this. This sounds interesting so I’ll be keen to follow this idea further and see where it goes.

IMG_0516

He mentioned the impressive looking Component Builder in Pages (which I also attended a session on later at SUCON). Dave also discussed that Forms in XM Cloud is something they are working on currently; they have recognised it’s very important and are listening. This is a bit of a gap in the XM Cloud offering at the moment and some clients won’t be keen to use a 3rd-party option for this, so it’s good to hear this is in progress.

IMG_0518

Another interesting statement Dave made was that the feedback from front-end developers was that JSS is Complex and not something they really want to learn, it has a lot of complexity baked in which some feel is not needed. Therefore, Sitecore are looking at how they can simplify this. I wasn’t exactly sure what was meant by this (I’ll try and find out more) but reducing complexity and barriers to entry is generally a good thing I feel.

IMG_0519

Finally Dave discussed Sitecore Connect which is one of Sitecore’s most recent SaaS offerings which allows SaaS products to be integrated via a low code / no code approach.

IMG_0524

Dave mentioned connect recipes will be provided to help customers to move to SaaS and these could be taken and customised to fit your requirements. I’d seen a bit on this and how it works from other Sitecore Developers such as this great post by Jeremy Davis. However, I was looking forward to learning more about how it all works later at SUGCON.

IMG_0525

Life at the Edge with Vercel and Next.js – Javi Velasco

IMG_0534

Next up was a partner talk from Vercel about their platform and different offerings. Javi explained how customers expect a lot more now in 2023 (faster, more dynamic & personalised) and the pandemic effectively jump technology advancements and expectations forward by two years to 2025.

He talked about how computing and innovations in compilers has improved vastly in recent years and how Edge workers can now execute code extremely fast providing similar performance to Static Page Generation as well as Edge Middleware.

IMG_0533

I’ve not used Vercel yet but I’ve heard good things about it and Next.js (which they also created) and I know that Sitecore partner with them for XM Cloud so it was interesting to learn more about it all.

Accelerate website builds with Headless SXA and XM Cloud – Martin Miles

IMG_0541

We then needed to select our talks for the afternoon. I decided to pick Martin Miles’s talk about XM Cloud and while I’ve learned a fair bit about XM Cloud in the past 4 or 5 months and spoken on it at both the Manchester and Columbus SUGs I still learned a lot from Martin’s talk.

I know Martin plans to share his slides on his blog and the slides are very detailed. So I’ve tried to pick out some key slides which I thought were really useful or had important information that I hadn’t really seen detailed elsewhere.

Auto update and upgrade information & Licensing model:

IMG_0547

IMG_0548

Some additional limitations I wasn’t aware of:

IMG_0549

Further architecture details:

IMG_0550

More details about Webhook event handlers:

IMG_0551

Some GraphQL details and limitations:

IMG_0552

More authentication and authorisation details:

IMG_0554

Some more details on Embedded Personalisation & Analytics from CDP:

IMG_0563

IMG_0564

Docker development details:

IMG_0565

Sitecore CLI details:

IMG_0567

XM Cloud folder structure, files and folders overview:

IMG_0568

I hadn’t really though about how XM Cloud deploys items but it makes sense it uses Items as Resource Files:

IMG_0570

SPE usage in XM Cloud:

IMG_0571

Some useful developer tips and tricks:

IMG_0573

Some really useful migration details for headless solutions:

IMG_0574

Two different MVC migration routes:

IMG_0575

Lastly some really useful Headless SXA details:

IMG_0577

IMG_0578

IMG_0579

Once Martin share his talk I’ll link it here as there was lots more information that was useful.

SXA MVC & Headless SXA – a MOVING tale… – Jason Wilkerson

IMG_0582

I’ve known Jason for quite a while and he’s always an entertaining speaker so I was looking forward to this one. It didn’t disappoint and Jason started with a story about Hipster developers…

IMG_0584

Being an predominantly back-end/c#/.Net developer and coming from the Microsoft stack I can really relate to this too. All this new-fangled hipster FE/Headless development is kind of ‘mind boggling’ and a big shift in thinking for those of us who’ve been around since the WebForms (or in my case classic ASP days).

IMG_0583

I’ve done some React development with Sitecore and the JSS Training course but I’m still not 100% comfortable with the shift yet.

IMG_0585

Jason’s talk was great as he showed us how you would go about building an example ‘Spotlight’ component in Class SXA/MVC and how that differs when building an JSS Headless component in React.

Here are a couple of slides from building the MVC Component, I think this is pretty well understood by most Sitecore Devs:

IMG_0587

IMG_0590

IMG_0589

There were some learnings that Json Shared with us around the differences with doing this for JSS instead:

IMG_0597

IMG_0598

IMG_0599

IMG_0601

IMG_0602

The rendering variants setup is quite different for MVC:

IMG_0607

Then the JSS variant, this looks quite a nice approach:

IMG_0609

IMG_0612

There are limitations of JSS Renderings which are that the search component of SXA are not available, also if your using SSG then you can’t use forms. There are also personalisation restrictions too:

IMG_0615

IMG_0616

IMG_0618

Lastly Jason also had some training links he shared for those new to this and need to know a good place to start.

IMG_0619

XM Cloud and Content Hub ONE Battle Royale – Rick Bauer & Richard Seal

The final session of the day for me was Rick and Richards talk which was positioned as a battle between the two platforms. It made for a pretty fast-paced and entertaining talk.

Pretty much all the info was on the slides so I’m going to just drop them all below:

IMG_0620

IMG_0621

IMG_0622

IMG_0623

IMG_0624

IMG_0625

IMG_0626

IMG_0627

IMG_0628

IMG_0629

IMG_0630

At the end there was an final summary that confirmed that XM Cloud and Content Hub one are different products and are positioned separately in the market to meet different requirements:

IMG_0632

End of Day 1

It was then time for Dinner, catching up with friends from the Sitecore Community and the MVP awards ceremony. Unfortunately the MPV awards had got stuck in Customs again (despite Tamas’s best efforts) but we got a few photos and there was an entertaining performance from Rodrigo and Sebastian and also the quiz; followed by a few well earned beers.

Fr_WawlXwAEc5-d

IMG_0634

You can read about what I learned on day two here.

What I’m looking forward to seeing at SUGCON 2023

sugcon-2023-banner-hotel

I’m really looking forward to SUGCON 2023 in Malaga in a couple of days time and have decided I’d take an more in-depth look at the conference sessions.

At previous SUGCON’s I’ve generally planned the talks I want to go to on the plane flight over, so this time I thought I’d try and do so up-front and share my thoughts on why.

Bear in mind that I’m a Sitecore Developer and Consultant so I naturally lean towards more technical tracks. You can find the full agenda here and you can read more about the sessions here.

Thursday

After the Opening Keynote by Steve Tzikakis and Dave O’Flanagan and the other initial sessions we need to decide on which of the parallel talks to attend. As usual there are a few clashes here, but these are my selections for the rest of the day:

Selected Talk Title Rationale Notable Alternative
3:10 pm – 3:55 pm
Martin Miles
Accelerate website builds with Headless SXA and XM Cloud
Martin has been Blogging a lot on XM Cloud over the past year and has a lot of Knowledge to share so I’m really keen to learn more about how to build headless websites with Headless SXA and XM Cloud and what Martin has learned from doing so. Andy Cohen
Innovations in Deploy
4:40 pm – 5:25 pm
Jason Wilkerson
SXA MVC & Headless SXA – a MOVING tale…
 Jason is always a really engaging speaker and I’m intrigued to know more about transitioning MVC-based SXA sites to a headless implementation of SXA. Thomas Stern
Hacking Sitecore
5:30 pm – 6:15 pm
Rick Bauer

Richard Seal
XM Cloud and Content Hub ONE Battle Royale
This sounds like and interesting session and having learnt a fair bit about XMCloud recently I’d like to know more about Content Hub ONE and how it compares. Vasiliy Fomichev
Crafting rock-solid secure composable Sitecore SaaS-based applications

Friday

There is an Content Hub ONE – Insights session to start the day but these are my choices for the rest of it. The first talk selection was a tough one!:

Selected Talk Title Rationale Notable Alternative
9:50 am – 10:35 am
Rob Habraken
Migrating advanced Sitecore implementations to XM Cloud
I feel this is a must-attend session for any Sitecore developer who might be working on projects that plan to move to XMCloud from XP/XM. Kiran Patil
Sheetal Jain
Upgrade path for a Monolithic Developer to a Composable Developer
11:15 am – 12:00 pm
Mike Edwards
Rendering your data in headless – 101 different ways
Mike will no doubt have a lot of knowledge to share on Headless so I’m interested to learn more about the different rendering patterns and pros and cons of each approach. Bart Plasmeijer
Keep the door open when transforming from Sitecore XM to composable DXP using XM Cloud!
12:10 pm – 12:25 pm
Chris Sulham
Grappling with the Many Heads of Headless
I’m interested to hear more about the considerations for headless and benefits and drawbacks to each. Mark Lowe
A Road Trip to Composable Canyon
12:30 pm – 12:45 pm
Sarah O’Reilly
Leverage Sitecore Connect for Sitecore CDP
I don’t know very much about Sitecore Connect yet (other than that it’s based on Workato) so I’m keen to learn more about it and how it works. Himadri Chakrabarti
What is Flexibility Over Features Philosophy in Sitecore OrderCloud Architecture
12:50 pm – 1:05 pm
Kingsley Hibbert
Mathew Evans
DevOps Composability in a Composable World
This session sounds very informative and not something I’ve really considered too much. Nicky Vadera
Using External Components in Content Hub 4.2
2:20 pm – 3:05 pm
Ramkumar Dhinakaran
Elakkuvan Rajamani
Leveraging XM Cloud APIs and Webhooks to powerup integrations
 Webhooks are a new feature in XMCloud and Sitecore 10.3 so it will be cool to see some examples of these in action. Daniela Militaru
Katharina Luger
Women in Sitecore Roundtable
3:15 pm – 4:00 pm
Sebastian Winslow
Jesper Balle
Sitecore Search: Real case PoC
 Search is tricky in a Headless world so I’m looking forward to learning about potential solutions and approaches to different search. Sebastian Winter
Sitecore Components in Action

Hope everyone who’s going enjoys SUGCON and hopefully I’ll see some of you there.

SUGCON 2022 Thoughts and Takeaways

SUGCON-2022-header

It’s been 3 years Since the last ‘In-Person’ SUGCON in London 2019, so I was really looking forward to going to Budapest to learn some new Sitecore things and catch up with Sitecore Developers and friends from across the world. I’ve been to Budapest for a weekend once before and It’s a beautiful city.

After a long flight with a change at Amsterdam I arrived at the Conference centre in Budapest pretty late but immediately bumped into a bunch of people I know from the Sitecore Community. After a drink in the bar it was time to hit the sack ready for the first day of SUGCON.

Day 1.

Steve Tzikakis – Opening Keynote

There was a notable excitement in the room as Tamas opened up SUGCON to much applause welcomed everyone and introduced Steve Tzikakis to the stage.

Steve seemed genuinely happy to be at SUGCON and have the opportunity to talk to the Sitecore Developer Community. He hit us with some Stats about the platform. Apparently there are 2,200 Sitecorians and the last two years have bought about the biggest changes in Sitecore’s 21 year history.

IMG_0525

Things have accelerated forwards in Digital during the pandemic and Sitecore has taken advantage of this by investing huge amounts of Money on the platform and employees. The have doubled their spend on R&D and doubled the number of employees across the organisation, 60% of staff have only been at Sitecore a year or less!. Innovation is key for Sitecore to gain an competitive edge and to claim the number 1 spot so they have spent 22% of their revenue on R&D.

IMG_0530

Steve shared an impressive Side of well known brands that now user Sitecore and talked about how Sitecore want to grow the platform to 3,000 customers but without increasing their service offering. Instead they want to do this by enabling partners to deliver better and more quickly on a Modern Mar-tech stack that has flexible, headless Commerce, CDP and Content integrated together with the best interface for the task at hand, this all sounds good to me.

Anyone that has not been living in a Jam Jar for the past two years will have noticed that Sitecore spent a whole lot of money procuring a number of platforms over the last 24 months or so. These are: Content Hub (Stylelabs), Boxever, MooSend, Four41 and Reflektion.

IMG_0533

These products all bring a number of functions to Sitecore that it is currently missing, whilst also having some overlap with what XP already offers. So I was interested to see what’s happened with these acquisitions and what the plans are for them going forwards. Next up was Dave ‘O Flanagan to talk more in-depth about some of this.

Dave ‘O Flanagan – Re-Imagining the DXP

IMG_0537

Dave opened by explaining how his Son caught COVID over lock-down and went from an average FIFA player to an Expert after isolating in his room with his PlayStation for 10 days and playing it non stop. This demonstrates that things have accelerated extremely fast during the pandemic and Sitecore has had to adapt to this change quickly.

IMG_0547

Dave discussed how Sitecore are invested in cloud first and that they have shifted their position to not try and sell customers the whole Sitecore stack but just the parts they really need by focusing on speed, flexibility, relevance and agility.

The following slide regarding where Sitecore is today was interesting:
IMG_0551

And here is the future Roadmap for Sitecore for 2022:
IMG_0553One element of this is the XM Cloud offering, this will be a headless architecture which is cloud-ready, with site layout and page management, analytics, personalisation and testing, executed at the edge.
IMG_0567

IMG_0574

Next, Content Hub Headless was introduced, this looks really interesting. Essentially an light-weight headless CMS built on top of Content Hub.

IMG_0568

Dave then handed over to Andy Cohen to show us more about XM Cloud.

Andy Cohen – XM Cloud

Andy opened up by Telling us what XM Cloud is:

IMG_0577

And also what is isn’t:
IMG_0581

Next Andy introduced XM Cloud deploy and attempted an live deployment.

IMG_0583

Andy had a few technical issues (as is often the way with complex live demos) but he managed to deploy Sitecore using Cloud deploy in Just over 5 minutes! That’s pretty impressive from an empty environment in the cloud.

IMG_0590

Akshay Sura & Kamruz Jaman- What it means to be a Sitecore Architect in the Composable DXP world

Next up for me was fellow Sitecore MVP’s Akshay and Kamrus sharing all the knowledge they have learned on working with Composable DXPs.

IMG_0594

These guys have spent a lot of time working with Composable DXPs with Sitecore and other vendors over the past few years and they really have a lot of useful knowledge to share.IMG_0596

One of the key messages was that a different approach is required with Composable.

IMG_0599

A lot of Solutions already involve a many integrations, however they are likely not as decoupled as they should be.
IMG_0600

A key thing that was mentioned it is not a one-size fits all approach and there are advantages as well as disadvantages.
IMG_0601

IMG_0602(1)

Here is an overview of a typical Composable DXP Solution.

IMG_0605

The approach should be based around the architecture and business strategy and not just the technical solution.

IMG_0606

It was also interesting to see the different in development cycle for Typical Sitecover Development vs Composable.

IMG_0607

As you can see the phases can be overlapped much more to allow Sites to be delivered much faster and therefore new features to be built sooner.

IMG_0610

One thing to get your head around is that a lot of Composable systems don’t have visual editor for the web or any channel so this is one of the trade-offs and things to adjust to.

IMG_0611

The session finished with some slides that helped answer some questions that most .Net developers must have asked themselves in the past few years. It’s good to see we are not redundant :-).

4-com-dev

This session was very useful for anyone who has not stepped into the Composable world yet, I really appreciated the honestly too.

Thomas Desmond – Flexible Static: Static Site Personalization at the Edge

This session looked interesting and after the previous talk I thought it would be good to learn more about what can be done with Edge Functions and the like.

IMG_0619

One of the trade-offs of Static Sites is obviously the loss of Personalisation due to it.. err ..being static. Rehydration allows for personalisation to be done on the edge.

IMG_0621

Some examples of data available at the edge:
IMG_0624

Sitecore Personalize can be used to get user data and display a personalised version of the page to the user.
IMG_0630

The middleware functions do this look pretty powerful. I’m going to add this to my list of things to experiment with over the next few months.IMG_0627

Martin Miles – The mastery of Sitecore Upgrades

I know Martin from the Sitecore Community and when I heard he was doing a talk on upgrades I knew it would be one I’d be attending. Upgrades might not be the most exciting of subjects but if you’ve done a few Sitecore Upgrade like me your always looking for any tips and tools for your arsenal to make them easier.

IMG_0633

Martin shared a ton of really useful information in his talk. I’m going to pick out some of the key ones only here as there are far too many useful ones to share and Martin Blogged about it the other day and shared his full slides.

Two different approaches to upgrades:
IMG_0636

Stages of an upgrade and estimating it:
IMG_0638

The need for being able to roll back attempted upgrade steps bit by bit:
IMG_0643

Tip 1:
IMG_0656

Tip 2:

IMG_0658

This was one of the most time consuming issues I had with my last Sitecore upgrade :-(.
IMG_0664

Those DLLs that have been removed changed will need re-writing/updating:
IMG_0683

I blogged about Items as resources at the end of last year but if you upgrade to 10.1 or newer then the upgrade is simplified as the default Sitecore databases are empty now.
IMG_0686

End Of Day 1

And with that Day One at the conference came to an end. It was time for Dinner, the Awards ceremony, Quiz and Drinks.

Later I went into Budapest with some friends from the Sitecore community to  explore and have a few drinks. If you’ve not been to Budapest before the Ruin Bars were pretty cool.

IMG_0701

Scooters back from the pub were kind of entertaining.

IMG_0714

Day 2

After breakfast I headed down to the first session of the day that I wanted to catch.

Himadri Chakrabarti – Frontend First Architecture for Headless CMS

IMG_0721

Himadri’s session was an interesting lightning talk on how to create a decoupled architecture using front-end.

IMG_0723

I’d not really thought about IOC from the perspective of front-end so it was cool to see how this works with Next.js and typescript and how TSyringe can be used to integrate with a Headless CMS and switch between them.

IMG_0725

Useful links from this session:
IMG_0726

Ronald van der Plas – Content Hub Scripting as a Professional

My next Lightning talk was on Content Hub Scripting. I’ve not really done much with Content hub yet so I was interested in finding out more.

IMG_0729

We were shown how the built-in C# scripting capability works and it’s limitations but also how to work-around these with the CLI.

IMG_0736
The Content Hub CLI support a number of operations and can be run from the command line.
IMG_0739
Core Commands
IMG_0740

Environment Setup. This allows developers to sync scripts between Content Hub and their local machine and to run unit tests too.

IMG_0743

Corey Smith – Stop Worrying and Love the HttpClient

The last lightning Talk was by fellow MVP Corey. He’d hit this issue with the HttpClient causing issues with socket exceptions on nearly every client project he’s worked on and wanted to share his learnings.

IMG_0745

If you’ve ever done this on a Sitecore 8.2 – 9u2 project then your basically doing it wrong:

IMG_0753

This is how you should be doing it. The important bit is the Connection Lease Timeout.
IMG_0754

This is how you would use the Client Accessor:

IMG_0750

For Site 9.1 and beyond there is a slightly different approach which you should use.
IMG_0751

IMG_0752

 

Rodrigo Peplau – CDP & Personalize for Sitecore XP fanatics

After lunch I decided to go to Rodrigo’s session on CDP & Personalize as I’ve read a lot about Boxever / Sitecore CDP but I’ve not used it yet.

IMG_0757

Rodrigo did a great job of drawing comparisons with Site XP during his talk, calling out similar features we are comfortable with.
IMG_0759

IMG_0760

Concepts such as Personalisation and MV Testing and their counterpart in CDP were explained with examples.

IMG_0761

An overview of how to integrate with CDP and Personalise was given.
IMG_0764

The Boxever JavaScript looked pretty straight forward to integrate and powerful too.

IMG_0767

Sending events to Sitecore CDP using the JavaScript works as follows:

IMG_0768

Contacts are Guests in CDP
IMG_0773

Decision Models are used to create business logic in the CDP
IMG_0774

This was a nice comparison of Variants in CDP vs Variations in XP
IMG_0785

Audiences can be targeted with Personalize in a number of different ways
IMG_0789

All in all this was a really insightful session and helped me better understand how CDP works and what you can do with it.

Marc Ramer – Sitecore Discover – real-time intelligence for product search and merchandising

After a break I attended a session on Sitecore’s Search Platform acquisition (Reflektion). I’ve heard very little about this since it was purchased so was intrigued to learn more.

IMG_0804

We saw a live demo of Sitecore Discover in action on a website selling products.

IMG_0806

We were then shown the API details

IMG_0812

The Customer Engagement Console also seems to have a lot of powerful options

IMG_0814

Here are some analytics showing in the Console.IMG_0815

There are also a lot of Implementation options to pick from.

 

IMG_0821

We were also given some info on the Discover SDK

IMG_0822

Jake Hookom and Roger Connolly – Detailed Product Roadmap – Closing keynote

It was now time for the final session where we found out what was on the Roadmap for Sitecore from Jake and Roger.

IMG_0827

There was a lot of cool information (and surprises) in this session so I’ll share some of the key slides on XM Cloud, Sitecore Pages, Sitecore Components, Composable from any datasource!, Webhooks and the main Roadmap too.

IMG_0830

Sitecore Manager Looks interesting

IMG_0834

Sitecore pages will be in XM Cloud and looks impressive.

IMG_0835

IMG_0836

XM Cloud Personalisation

IMG_0838

Personalisation on the Edge in XM Cloud

IMG_0842

Sitecore Components in XM Cloud

IMG_0845

This slide was a Game changer, Sitecore allowing data sources from Competitor CMS platforms such as Contentful and Kentico. Who’d have though this would every happen a few years ago.

IMG_0847

Awesome Roadmap around APIs

IMG_0849

Event Webhooks allow extensibility in an Composable world.

IMG_0850

IMG_0851

Here is the detailed 2022 Roadmap (Borrowed from Twitter as my photo has poor contrast):

0-sitecore-roadmap

Closing

And with that the first In-Person SUGCON in 3 years was over and it was time to head to the airport for my flight home.
It was a very enjoyable SUGCON where I learn a lot and got to catch-up with a lot of friends and people I know in the Sitecore Community. Well done to all the organisers on putting together such a awesome event and to all the speakers for the great talks. There is certainly a lot to digest and mull over here, but the future looks bright and (dare I say) exciting for Sitecore developers in 2022.

IMG_0860

 

Sitecore SUGCON 2018

Estrel
I’ve just come back from SUGCON 2018 in Berlin and I think it was the best one I’ve been to yet. It was my third time attending the Sitecore User Group Conference (a conference for the Sitecore Community organised by the Sitecore Community). This year I was lucky enough to be going as a first-time MVP and would be collecting my award during the conference.

I arrived early to see a bit of Berlin on the Sunday and catch up with some friends, colleagues and other Sitecore Devs and MVPs and before I knew it it was time for SUGCON to start.

sky

It kicked off with some fancy lights and music and Peter Brinkman with the opening Keynote explaining how large SUGCON has grown since it started in 2016, there were 600 attendees this year!.

There was a lot to take in over the 1.5 days so before I forget it all I’ve summarized below some key learning’s from my two days at SUGCON 2018.

Day 1

Opening Keynote – Pieter Brinkman

welcome

    • There will be two major Sitecore releases every 6 months and (spring & fall) which will contain new features and functionality
    • Updates / Patch releases will only contain fixes and not features/breaking changes.
    • Releases will be a full delivery including code, training and documentation

Sitecore releases

Great news for all Sitecore developers and customers who have been frustrated with this in the past.

Commerce + IoT In Powerful Ways – Jason Wilkerson & Richard Seal

Next up was well known MVPs Jason Wikerson and Richard Seal who created a fictional SitecoreLand complete with wristbands to access the park to demonstrate how IoT can be used with Sitecore .

IoT

    • Previously this was only possible by building most of the functionality yourself buy it is now possible out of the box with xConnect + and IoT Hub and IoT Listener.

IoT

  • Store the least amount of data you need to achieve what you want to do for your customers.
  • With SXA, Experience Commerce, xConnect, EXM, xDB and Marketing automation you now have all the tools you need to create these kind of experiences for customers with Sitecore. Your imagination is the only limitation.

Impressive stuff and a real show-case for what’s possible with Sitecore. Speaking to Jason afterwards he said it took longer to Photoshop in the memes of Longtime MVP Jeremy Davis who got trolled hard in the talk. This wasn’t to be the only time today either :-).

Jeremy

Uber-modern Apis For Sitecore – Kam Figy

Kam has been building the CLI for JSS and underlying APIs and took us through some of these focusing heavily on GraphQL.

graph API explorer

  • GraphQL is:
    • Strongly Typed
    • Queries only the specific fields you need (no overfetching)
    • The response matches the query (so you know what you are getting)
    • Is discover-able
    • Batches queries and catches and returns errors
  • Kam demo’ed an app he’d built that used GraphQL and mimic’s the database browser in Sitecore.

jss browser

  • It’s possible to extend the GraphQL API using Query Extenders and add additional fields. These are than patched in using config.

extender

links

All-in-all some interesting stuff to experiment with here, since I’ve playing about with JSS too this is something I plan to look at in more detail.

Sitecore XDB & GDPR Applied – Rob Habraken

gdpr

Rob opened by saying this was a dull subject. That it may be but it is also a very hot topic and something many clients need to implement very soon so this was a very insightful session for me.

sitecore gdpr

  • Sitecore 9 has GDPR features out of the box and Sitecore 8.2 Update 7  will also have them.
  • 6 Steps to follow to implement GDPR With Sitecore:

IMG_1529

IMG_1532

IMG_1536

IMG_1540

IMG_1542

IMG_1548

Azure Round Table – Tamas Varga

The final session I attended was an Azure Round Table where there were some really good insights from those who have used Sitecore Azure:

Azure

  • Using the provided Azure ARM Templates is a good start but can I can be limiting as time progresses so creating your own is the way to go eventually.
  • There can be problems with CSS and JSS not being published yet when swapping between servers.
  • Testing an Azure Sitecore setup on a development environment and keeping costs down can be a challenge. MSDN provides free credits for subscribers.
  • If using Azure the advice is to move to Sitecore 9.x if you can first as that will make things much easier.

Awards, Quiz & Drinks

At the end of Day 1 I had the privilege of going on-stage and picking up my MVP award with the other 2018 MVPs. I’d seen the MVPs collect their awards in previous years but didn’t think I’d be joining them this year, I felt very proud to be sat alongside everyone. Obviously a few beers were enjoyed afterwards to celebrate.

mvps

Day 2

Sitecore Install Extensions In Action – Robert Senktas

I hadn’t heard of SIX before but having had some experience of using SIF when installing Sitecore 9 this looked interesting.

IMG_1562

  • SIX has a number of powerful features that make it superior to SIF and it support storing sensitive data in Azure Keyvault:

IMG_1564

SIX

  • An early GUI was demo’ed that runs on top of SIX and allowed an Octopus style management of the install process.

softserve

This all looks pretty cool and definitely something I’m going to look into further.

White Hat Hackers Guide To The Internet – Mikkel Ole Romer

IMG_1576

This was the most packed break-out room I saw over the two days.  Mikkel showed some simple Hacking Techniques he’d tried on a list of Sitecore Solutions and the results were quite worrying.

  • He showed us some simple hack’s he’d tried:

IMG_1577

IMG_1580

IMG_1581

  • The results of the test were a little worrying…

IMG_1582 IMG_1584 IMG_1585This session was a bit of an eye opener to say the least. Check your Sitecore installs configuration and patches folks!

 Sitecore & The Blockchain – Jason Bert

Since I have some Bitcoin & Ripple and I’m interested in Crypto and the application of Blockchain technology this seemed like a talk I wouldn’t want to miss.

blockchain

  • Jason used a number of technologies to store the details of a ticket purchase on the Etherium Blockchain.

IMG_1594

IMG_1595

  • Jason used a local Etherium Blockchain testing tool called Ganache but in the real-world this could be slow and potentially costly.

IMG_1596

This was an interesting talk that certainly makes you think about how these technologies could be used in future.

From Forms to Riches – Kamruz Jaman & Mike Reynolds

IMG_1598

Having talked to Kam a bit about what he was going to discuss I was looking forward to a bit of a deep-dive into the new Sitecore 9 forms module and thats exactly what we got.

IMG_1600

  • The metrics stuff and interface looks pretty cool.

IMG_1602

IMG_1605 IMG_1606 IMG_1607

  • We were also shown how to create a custom field and data encryption was discussed.
  • But there is some functionality missing as it’s an first release. If you need to you could build some of this yourself.

IMG_1617

Latest Goodnesss JSS – Alex Shyba & Adam Weber

Having presented a talk on JSS at the Sitecore Sessions in Manchester recently I had a good idea about most of this talk but there was still some really great stuff to see and hear. I got to speak to Alex and Adam in person too and they were really helpful.

jss

IMG_1624

IMG_1625

Rendering level JavaScript was what I was really interested in seeing. This is JSS Components running along-side MVC ones in the same page!.

IMG_1629

It was really cool to see this in action. I’ll be trying this out as soon as I get chance.

IMG_1631

IMG_1633

IMG_1637

IMG_1640

Time to go home

After a few words of thanks to the organisers and attendees for an fantastic SUGCON it was time to head home….After a few more drinks of course.

IMG_1642

What did I get out of SUGCON?

This year I was determined to do more networking and spend time talking to people in the Sitecore Community who I’ve spoke to on-line but never/rarely met. I certainly learnt a great deal from the sessions too but getting to chat to fellow MVPs, Developers, Sitecore Employees who I’ve known online for sometime but not met was my favorite takeaway from the past couple of days. If you didn’t make it this year and are thinking of going next year then I’d highly recommend you get your tickets booked for SUGCON 2019 in London on the 4th & 5th of April. You won’t regret it.

My Sitecore MVP 2018 Journey So Far

Back in late January I was fortunate enough to be awarded Sitecore Technology MVP 2018. For anyone in the Sitecore Community this is a great privilege as there are only 208 Technology MVP’s worldwide and 20 in the UK.

Sitecore_MVP_logo_Technology_2018

I hadn’t got round to writing on my Blog about it at the time so I thought it would be good to talk about my experience so far this year as an MVP and also what my plans are for this year.

Every year, the Sitecore MVP Awards honour individuals with a passion for sharing their knowledge and expertise through active participation in online and offline Sitecore communities.

Sitecore has an fantastic community of developers who really try and help one another out both online and offline and share their knowledge and expertise whenever they can.

If you want to see the full list of Sitecore MVPs for 2018 you can see it here: https://mvp.sitecore.net/MVPs/2018

As an MVP there are a number of benefits; such as getting to give feedback to Sitecore on things they are working on, access to additional resources and Community Groups and gaining early knowledge of future releases & features coming out of Sitecore HQ.

How Do I Become an MVP?

I’ve seen this asked a few times on Twitter, Slack and Stack Exchange etc and I think the consensus is that you shouldn’t aim to become an Sitecore MVP but should instead try and get involved in the Sitecore Community as much as possible.

Share what you learn on a Blog,  get involved in Sitecore Stack Exchange (SSE) by posting both questions and answers, join in on Sitecore Slack anad get involved in your local Sitecore User Group. Maybe do a presentation or two and share your learnings and expertise.

This is a great post on SSE from Mark Cassidy with more ideas of how you can get involved in the Sitecore Community: https://sitecore.stackexchange.com/questions/1689/how-can-i-connect-with-the-sitecore-community.

By getting involved in the Community like this if you feel you’ve contributed enough you can nominate yourself (usually in November) and ask others to recommend you too.

You can read more about the MVP program here: https://mvp.sitecore.net/become-an-mvp

There is also an excellent SSE post here about becoming an MVP by Tamas Varga (who is an Technical Evangelist at Sitecore and works on the MVP Team): https://sitecore.stackexchange.com/questions/5796/how-to-become-a-sitecore-mvp

My Plans For 2018 as an MVP

Since becoming an MVP I’ve tried to continue being active in the Community and have written some useful blog posts on Installing Sitecore 9 Update 1 and Getting Started with JSS.

Part 2 of working with Sitecore JSS is coming up soon and I’ll be giving a talk on this at the next Manchester meetup along with 2 talks from other Sitecore MVPs:

The Sitecore Sessions

London, GB
226 Members

The Sitecore Sessions are a group of events, up and down the country, with an aim of catering for what we hear the community want to know more about.We have been, and contin…

Check out this Meetup Group →

 

I’m planning on giving an overview of installing JSS. I’ll then be going into more detail on and getting up and running and building components. Hopefully this will be one of a number of presentations I’ll get to do this year.

I’m also hoping to build my first Sitecore Module and share it on the Marketplace this year. I’ve got a few interesting ideas so watch this space.

I’m really looking forward to learning more about Sitecore 9 and catching up with the Sitecore Community & other Sitecore MVPs at SUGCON in Berlin next month and the MVP Summit at Symposium later this year.

Lastly I wanted to say thanks to Sitecore and the great Community for recognising my contributions and particularly the MVPs and Sitecore staff that recommended me (you know who you are :-)).

 

My thoughts on SUGCON 2016 – Day 2

badgeThere was an early start for Day 2 (especially after a late-ish night involving a few strong Danish Beers), but I knew there were some intriguing talks today so didn’t want to miss anything.

You can read about Day 1 here if you missed it.

The first session that caught my interest was Nick Wesselmans talk on how Active Commerce use SIM, Powershell, Octopus Deploy and Azure to automate product builds.

Using SIM, Powershell, Octopus Deploy and Azure to automate product builds.

Nick gave an overview of how they created a PowerShell wrapper for SIM to automate Sitecore instances for product builds for their Active Commerce product.

IMG_5762

He also talked about how they use Sitecore Power Shell Extensions (SPE) to do things like automate publishing, rebuild the links database and initialise Sitecore Zip package builds. I’ve experimented with SPE but I’ve not used it in anger and this has given me ideas for how I might use it more on current or future projects.

IMG_5764

Finally, he talked about their use of Octopus for deployment of packages and invoking PowerShell scripts and Azure IaaS and Azure Blob Storage and AzCopy which is used for quickly spinning up VMs for hosting the product build and test environments. I liked the idea of these being scripted to only run during business hours.

IMG_5768

The Active Commerce team also use Bamboo for their build server (but are thinking of moving to Team City). Nick showed us that their build pipeline looks like this:

IMG_5773

It was nice to see some familiar approaches here, albeit with different tools in some instances and some new ideas too.

You Me and Sitecore MVC

After a short break Kern Herskind delivered and entertaining (and Circus themed) presentation on Sitecore MVC. He even rode a unicycle at the end!

IMG_5777

Kern gave a general overview on MVC for those not familiar with the concepts and then how Sitecore MVC works and whats available out of the box. Not much of this was new to me but it was good get a refresher anyway.

Then Kern talked through some of the downfalls of Sitecore MVC and how he has gone about solving them. Things like renderings not being able to alter any HTML that is rendered prior to them being rendered and multiple form posting issues.

IMG_5781

IMG_5782

IMG_5783

We then go a sneaky peak of what coming up for Sitecore MVC, such as abstract base classes and better ServiceLocator and DI support:

IMG_5869-3

IMG_5873

Kern finished by talking about the future of Sitecore MVC and expectations for the future.

IMG_5787

Good to see better documentation and closing feature gaps on the list of improvements.

IMG_5788

The key message here being that Sitecore MVC is going to continue to be the preferred UI Framework.

Hedgehog then did a quick talk on their TDS product and helped to answer the question a lot of developers might have, “why should I pay for TDS instead of using Unicorn”.  The answer is probably in these two slides, maybe go and show them to your Boss :-).

IMG_5791

Essentially it does a lot more besides just syncing items between sitecore instances:

IMG_5792

I haven’t used it but I’ve head good things about it from other Sitecore Developers.

After lunch (which was excellent by the way) I opted to attend two talks on Sitecore Habitat. One by Ruud Van Falier called Introducing Sitecore Habitat and the 2nd by Anders Laub on Practical Habitat: Embrace the Architecture.

Introducing Sitecore Habitat

For those who don’t know what Habit is, it is an Architecture approach for Sitecore development and is designed to give best practice guidance on how to structure your Sitecore projects. I have taken a look at it a few times but not really used it and the feedback from other Sitecore developers I’d spoken to was that it was quite complicated, so I was interested in finding out more about it.

Ruud was presenting to a packed room with quite a few developers stood up at the back, obviously as keen as me to know more. He started with the basic concepts of Habitat, explaining how all modules are self-contained and that there should be no communication that goes upwards between modules.

IMG_5796

He also explained the the 3 layers of Habitat: Foundation, Features, Projects.

layers

Ruud then discussed examples of elements that might live in these layers and how the dependencies flows downwards.

IMG_5806

He then showed the technology stack, which are probably familiar tools to most of you. Sitecore 8.2,  MVC,  Dynamic Placeholders, Unicorn, Bootstrap, JQuery, Sass and Gulp.

A run-through of the Habitat solution structure then followed and an explanation of the different build tasks used.

build

There was then a more in-depth explanation regarding Modules:

IMG_5816

IMG_5818

IMG_5820

And then more detail on layers:

IMG_5822

IMG_5828

IMG_5832

IMG_5834

Finally, a pros and cons slide and questions:
IMG_5836

Ruud was honest about the fact that Habitat is in the early stages and is changing every day, he also said it’s not meant to be taken as a ‘Boiler Plate’ for Sitecore solutions – more a guideline. However, I left the session will a lot of things to investigate further and will definitely be taking a closer look at Habitat and how some of It’s concepts can be applied to the projects I am working on.

Practical Habitat: Embrace the Architecture

With my appetite now whetted for Habitat I went straight to the next session on embracing the architecture.

Anders talk started with a general discussion around Architecture and then moved to Habitat and why Pentia use it as an architecture for their solution:

IMG_5837

He then dived into a demo of their solution and explained how it differs to the default Habitat setup. I have a video of this somewhere which I’ll try and add here when I get a minute.

He then discussed a few foundation modules they have created and how it really works well for them as an approach.

IMG_5840

Anders took some tough questions from the crowd well (such as the number of projects in Habitat – which is many) and I think by the end of the session most of the room will be taking another look at Habitat.

Ladies and gentlemen start your testing.

Testing in Sitecore can be notoriously difficult and for some Sitecore developers this means that unit and integration tests that involve the Sitecore context or items are sometimes skipped.  I was interested to see if Alastair had some other ways to implement testing and I wasn’t disappointed :-).

IMG_5844

Alastair Deneys ran us through 4 ways in which to Unit test with Sitecore. The first was an interesting one and was to essentially install Sitecore in your application and then run the tests from an asp.net web page test runner.

The 2nd and 3rd were to add a minimal or full Sitecore config files and the Sitecore dlls you need to your nunit test project and run It. This worked pretty well but as Alastair said, isn’t proper unit testing as it’s using real data.

The 4th was to use FakeDb to mock the Sitecore items you need to run your tests. I’d heard about FakeDb before but not used it so it was nice to see an example of how this is done.

IMG_5855

Alastair also showed us how Sitecore.LiveTesting can be used to spin up an instance of Sitecore in a container in the background to test against.

IMG_5856

IMG_5863

It was a bit slow but seemed really cool and definitely something I’m going to experiment with.

IMG_5868

The key message here was, whatever you do make sure you create tests and don’t get hung up on if they are real unit tests or actually integration tests.

Sadly it was now time to head to get our flight home so I missed out on the last talk of the day by Martina Welander on refactoring doc.sitecore.net, hopefully I can find it on Google Hangout.

SUGCON was a great experience and It has given me a whole lot of ideas and things to look into for current and future Sitecore projects. Thanks to the Sitecore Community and the sponsors for putting on the event.

My only regret is not having chance to chat to any of the MVPs who have been so helpful on Slack and on their blogs, but I’ll definitely be back next year so I’ll buy you a beer or two then instead.

Till next time.

IMG_5878

My thoughts on SUGCON 2016 – Day 1

SUGCON Venue

I was lucky enough to arrive at my very first SUGCON a day early and see at bit of the Copenhagen. It’s beautiful, everyone is very friendly and the food and beer is impeccable, if you get chance to go then you definitely should.

 

Opening Keynote

Day 1 of SUGCON kicked off on Monday afternoon with an opening Keynote from Lars Nielsen (Sitecore Co-Founder & Chief Development Officer). This was to prove one of the most intriguing presentations of the conference as Lars revealed a number of new features coming in Sitecore 8.2.

8.2

One bug-bear for a lot of Sitecore clients is the upgrade process, Lars assured us that in 8.2 (using the Express Migration Tool) this is going to be much easier and won’t involve upgrading in multiple steps (as is currently the case) and that is should be possible to move from 6.5 > 8.2 in one automated step. This is great news for those running 6.5 and 7 solutions as it should make the process a whole lot easier and quicker.

Lars then followed this with an overview of 8.3 features (sorry It’s blury):

8.3

The most interesting for me (and clients I work with) was the Webforms for Marketers is going to be removed in 8.3 and replaced by an out of the box module, which will look something like this:

forms

This looks a whole lot better than WFFM which as most Sitecore developers know can be a pain to customise and is pretty clunky to use.

This was reflected by the attendees as there was a round of applause from the room when this was announced. It will work in the experience editor allowing in-place editing – just like other Sitecore components, so content editors should find the experience simpler and more intuitive. There will be integrations with automation plans too:

forms2

In summary these are the Roadmap themes:

roadmap

This was a great start with lots of useful info about the future releases coming up!.

 

Serialise all the things with Unicorn

Next up was Kam Figy, an MVP at Connective DX and the lead developer of Unicorn – a tool for serializing your Sitecore Items to disk so you can check them in to source control alongside your code.

unicorn

Kam ran through a demo of Unicorn 3 which I’ve already used, but it was nice to see a full demo and find out more information about other options the we could potentially make use of.

He then showed us a project he’d done for the Sitecore hack-a-thon, which allows unicorn to sync Roles and Users as well as Items. This could be useful for future projects and is now available in Unicorn 3.2 (https://www.nuget.org/packages/Unicorn).

sync

Kam’s talk was entertaining and he managed to handle the slightly awkward Hedgehog vs Unicorn questions afterwards pretty well too :-).

 

After a short break the talks split off into different tracks for the rest of the afternoon and I went with these 3:
Atomic Design Talk by Tim Braga, Design Patterns by Mike Reynolds and then Building Large Scale Sitecore solutions by Mike Edwards.

Atom Design to the MAX

Tim talked through the different approaches to building Sitecore Sites and then explained why instead of just going down to component level (as most Sitecore developers do) his team now breaking every element of a component down further into Atoms and making these separate renderings.

atomic

This allows for more control over functionality, layout and personalisation/testing on a more granular level – e.g. A/B testing on just a single button. Below is an example of this for the Hero that Collette created:

hero

There were however some performance issues found though with Experience Editor and it does add time for development, testing and content entry. Tim went over the pros and cons and what they have carried out to try and work-around some of them:

proscons

I like some of the concepts but I’m not yet convinced this is the way to go for most Sitecore builds, unless there really is call for this level of control.

 

Design Patterns

I wasn’t sure what to expect with this talk but I was a bit surprised to see it was less Sitecore focused and more around Design patterns and their usage in programming in general.

design patterns

Still it was good to see examples of their usage with Sitecore from Mike and the pros and cons of each approach.

pattern

 

Building Large Sitecore Solutions

This talk by Mike Edwards was really good. Mike gave and overview of the infrastructure and architecture of Sitecore solutions as they grow and require more CD servers and xDB provisioning.

scale

He talked about blue/green deployments and the importance of trying to have zero downtime for client sites during deployments. He also discussed load balancing strategies and the pros and cons of the different approaches.

blue-green

I’ve had first-hand experience of doing this for a few clients and it’s good to see some of the ideas we’ve used re-enforced by Mike, such as having two web databases in place so that one can be used for deployment whilst the other is live.

The architecture with xDB included looks pretty crazy but this demonstrates the number of servers and considerations involved with xDB:

xDB

After this (and a short talk by Coveo regarding their Search product) it was time to drink beer, eat food 🙂 and chat to some other Sitecore people.

There were also awards given out for the Sitecore MVPs (well done guys) and a Sitecore quiz with beer to be won.

All in all a great first day and some really informative sessions. I was really looking forward to Day 2.