Thursday 2 May 2019

SUGCON Europe 2019

I attended the SUGCON event in 2019 and thought I'd jot down my thoughts on the various presentations I went to as well as some overall thoughts about the conference in general. I have a lot more to say about the talks I attended on day 2 for some reason, maybe the talks were structured that way, maybe I had just had more coffee. Below are my breakdowns for both days and then my thoughts on a few things in general.

Day 1

Opening Keynote - DevOps

Donovan Brown
I think I'm just old and stuck in my ways but I'm not really on-board with the whole devops thing. I prefer to spend my time thinking about, architecting, and building good Sitecore solutions, I don't consider spending hours writing scripts to automate copying files and executing command-line scripts I found on the internet and trust aren't doing anything bad, as being a particularly good use of my time (I've been doing Sitecore for over 10 years, but I've been arrogant my whole life :) ). That aside you can't help but get caught up in Donovan's passion for the topic, however I wish his talk covered some Sitecore-specific issues and scenarios. I appreciate this is probably just a generic talk he gives to a lot of different audiences, but from all of the Azure and devops type talks I heard they all seem to focus on how easy it is to destroy everything you have then build it up from scratch. That's cool and all....but how does that help me with live site deploys where I can't destroy the databases?

Sitecore Host Plug-In architecture

Kieran Marron & Stephen Pope
Again I feel old and out of touch. I've never even used .net core never mind "Host". I have no idea what Host is, why or how to use it. That's my fault, not the fault of the people giving this talk but none of it meant anything to me. Now will you kids get off my lawn!

Taming the Marketing Automation Engine

Nick Hills
I've tinkered with (struggled with?) the old Silverlight version of the campaign manager so it was good to see the updated version in action. I think it's a good, powerful idea so I'm glad to see it wasn't just abandoned due to issues with the front-end technology.

Helix Mutations and Changing Habitat

Nick Wesselman
I have some experience with Helix and it was good to see that the things I have had issues with are things other people have had issues with as well (yay, I'm not crazy) and that Sitecore are dedicated to addressing them. We heard that there will be more concrete examples of various website scenarios and how those scenarios can be implemented with Helix architecture. I think a little bit of extra guidance to help sites get off the ground is an excellent idea as it builds on the documentation and the theory.

Sitecore Helix Discussion

This was a free-form break-out discussion regarding Helix where I found out that not everyone thinks examples to get sites off the ground is a good idea, but it takes all sorts :)

Day 2

10X your Sitecore development

Mark Cassidy
In this talk Mark covered developing Sitecore at a more "basic" level, and as a backdrop to his talk the screens ran a time-lapse screen-cap video of him creating a basic Sitecore website up and running from the initial download through to implementing a basic off-the-shelf bootstrap theme to implementing a suite of basic components you see on most websites. I'm not sure how much the video can be trusted as I never once saw him look on stackoverflow :)

The gist of this demonstration was that if you don't over-engineer things then you can actually get code up and running in fairly short order. I do agree with the general premise and I even actually implement some of the things he talked about; I'm a firm believer in using the Sitecore API, I write my own object mapping code too. I dislike this idea of using all of these frameworks and add-ons and things you've got from github or the marketplace or whatever. I'm not a caveman who enjoys reinventing the wheel, but seriously how much effort is writing your own mapping code vs using an auto-mapper? How much effort is using the Sitecore API rather than trying to get something like Glass Mapper to do the same thing? I find myself even more militant about these things when I'm dealing with a project that has a lot of new Sitecore developers on it. After all, how can you learn the Sitecore framework and systems if you use all of these abstractions that hide the inner workings from you? Isn't that one of the reasons everyone hated webforms?

Whilst I agreed with some of the things Mark talked about, I also felt that some of the things he said weren't particularly realistic (or even desirable) in the real world (writing a whole website without showing it to the client even once? #SomeoneHatesAgile :) ). As he said himself though, he wasn't telling you this is how you should do things, he is just trying to get you to think about how much engineering you are doing and if it is actually adding value.

The wheels on the rebus go queue, queue, queue

Pete Navarra
I've used MSMQ in both Sitecore and non-Sitecore applications (I was sending ADODB.Recordset objects over MSMQ in COM+ on Windows 2000. I R Old) so I was interested to see how message queuing was making its way to Sitecore natively. The talk started with a fairly lengthy physical demonstration about message queuing which, while engaging, I didn't feel spoke to the audience. It meant that the first half of the talk was basically explaining what a message queue is and what advantages it has. We're developers...we already know. I was wondering if the second half of the talk was teaching grandma how to suck eggs :)

It wasn't though, it was a practical demonstration of implementing a message queue, and I can't say strongly enough how much I appreciated actual working code. A lot of the talks were more general and abstract so getting into the guts of how it worked was great for me, this is the stuff I want to know.

The takeaway for me was that it was basically an abstracted pattern that allowed us to implement our own message queues for implementing our own process flows. One thing I did find quite strange was that we started the talk slagging off the existing Event Queue table. We were then shown an implementation of the new message queue system using Rebus....which worked the exact same way as the Event Queue that was being criticised. You give it a connection string to the database, it writes the messages in a table in the database, the consumers read that data...how is that any different from the Event Queue? It wasn't explained how multiple services can connect to the same queue to read the same messages, however I'm not sure if that is actually a feature (the Event Queue supports this), I'll have to do some further research on it.

Automated Personalisation measurement

Chris Nash, Niels Kuhnel
This covered something that is admittedly missing from Sitecore "for free", but not missing per se. The concept of this demonstration is that you can know when a personalisation option has been surfaced on the website, but not know if the call to action was activated. So if I show an info box for Widgets as the user has been browsing the Widget category, but as a marketer I have no way of knowing if you've clicked on that call to action. Well....only if I haven't written any code to capture this. If I was interested in this data then I would register on the target page that the action was clicked on, or I would capture this event via an ajax call. I have actually done both, whichever method best suits the situation. It appeared to me that this presentation was on an extension to Sitecore that simply gave you this functionality "for free". Yeah....it's automatically attaching a click event to a link, it's not as radical a concept as they were trying to make out.

Sitecore 9 Architecture 101

Thomas Eldblom
I wasn't sure what would be included in this or how in-depth it would be, but it was mainly a discussion of how various functions have been moved out of the Sitecore kernel and implemented as micro services instead. Not having a massive amount of hands-on experience with Sitecore 9.x I actually found this talk to be quite informative and helpful, but if you had more experience with the latest Sitecore versions you might not have found it as informative as I did.

UC4CX Designing a website for personalisation

Alison Sainsbury
This talk was really an advert to get you to download the white paper. They discussed what was in the white paper but the talk itself was very thin on any actual practical detail. At the risk of sounding facetious, it sounded to me that their new idea was basically to give more focus to personalisation than you would normally. Again, I haven't read the white paper so that might be a gross simplification, but that's the impression I got.

My feelings about this also harked back to the Mark Cassidy talk earlier on in the day in as much as it's all well and good someone standing on a platform telling us to consider personalisation upfront and from the beginning, but quite often the client wants you to spend time getting the website running so they can get value, and the "cool things" like personalisation are often relegated to later stages of the project cycle. You can argue the toss about this with the client, but ultimately it's going to be their call and if you can't convince them to invest in personalisation from the start then you need to shoehorn it in after the site is live. You know, the same way we do right now. You have to be pragmatic.

I feel like I might have to defend myself a little here as a Sitecore architect, but when I architect sites the two things that are constantly on my mind are multi-lingual and personalisation. Any time a solution for literally anything is being discussed I ask myself; "Will this support multi-lingual?" and "Will this support personalisation?" Even if the client has never indicated they want multi-lingual or personalisation, if something isn't done in a "Sitecore way" and won't support multi-lingual or personalisation for when they change their mind, then I'm not interested in implementing it as a solution. So I guess I'm kind of already on the wavelength of what this talk was trying to achieve, but as I said you do have to be pragmatic too, you can't just be idealistic.

SIF in advanced scenarios

Robert Senktas
I've said a few things about devops above, so again I got nothing from this talk, this is the only talk I regretted attending, I could have gone to something else. Again that's my fault entirely, nothing to do with Robert who was as knowledgeable as he was passionate, but teaching me about SIF is like teaching a cannibal about Quorn.

We released JSS, you'll never guess what happened next

Adam Weber & Kam Figy
Again this talk had me feeling a little out of the loop. I have no idea what JSS is, why you would use it, or what SXA is or why you would use it. I was googling on my phone to try and find out as the talk was happening, but....yeah....kinda seems like a solution looking for a problem. Again I can only apologise if that is a gross misunderstanding on my part, but I've been doing Sitecore for ten years and never once thought that I needed nodejs, webstack (or whatever it was called), react, reams of JSON and js just so my forms and renderings do exactly what they did before I ever used JSS. I just don't see the value. Sorry.

Building a stronger business story for your SC machine learning pilot

Amanda Shiga
Ok, this one was pretty niche, but maybe that's just me projecting. Machine Leaning is a little bit ahead of the curve for me personally...I still struggle to get content editors to not add marques and blinking text to RTE fields and to not add 100 images on a carousel; accurately estimating what other products the user would most likely want to buy is way down on my list of priorities.

Obviously it's cool tech, it's fascinating to many and I do see the value, but over my head for now. I found this talk a little strangely positioned in the agenda as well. Again I might just be projecting but it wouldn't surprise me if a lot of people in the audience felt the same, and to have quite a niche, dry subject (sorry!) as the last "proper" talk of the last day....

Sitecore 9.2 the hidden bits

Pieter Brinkman
This was a summary of a few things that are coming up for Sitecore 9.2 such as dropping support for Lucene, splitting search into a micro service etc, and again I found this talk to be informative and interesting. Given I had had three hours' sleep in the last 70 hours, that was no mean feat.

Politics

Ok, this is a negative section (not the final section, so please stay tuned) but I'm a walking Catchphrase game; I see it I say it, and I think this needs to be called out.

I could go into specifics here but I'm not going to, I don't want to focus on individuals as that wouldn't be fair. My issue isn't with any one thing, or any one person, it was with a group of things that added up to...well...it's a Sitecore conference, we build websites. Why can't we stick to that? What was with all of the identity politics? It was totally unnecessary and left a bad taste in my mouth. It didn't ruin the conference for me but it was there as some horrible undercurrent. Is SUGCON 2020 going to feature talks from Antifa?

Please drop the politics, I just want to build good websites.

General

A lot of the talks were just basic introductions to various topics and technologies, there weren't many deep-dives but given the time that talks had that is understandable. My main takeaway from the conference was literally a list of things I had to look into. Some were things I had heard of but didn't know they were a big deal, some were things completely new to me. But my eyes were opened to a lot of things that I recognised I didn't know enough about and that I had to research further, I felt it has helped guide me onto the same path that others are already on and that is important for me going forward so that we all end up at the same place.

Guess I should add some boring logistics stuff. The venue was fine, the rooms were great. I felt the main room was especially well done - it was a wide room and rather than one massive screen in the middle that people on the sides would struggle to see, there were four screens evenly spaced so you could see what was happening no matter where you were in the room. It's such a small thing, but something I was particularly appreciative of.

I enjoyed the bottomless refreshments, the staff were all great, things just ran at a really high level. It's one of those things that if you get it wrong you hear all about it, but if you do well people don't even notice you're doing anything in the first place. I found the meals a little hectic though. When it came to lunch, or the evening meal it was bodies and trays everywhere...it was half school dinners, half prison chow time (I once did ten years for killing a man who insisted we use "var" everywhere). I actually ate outside of the venue to get away from the chaos, get some fresh air and catch up with some fellow devs in a more peaceful environment.

Is it a tech conference? Is it a social conference? It's my first SUGCON so I would say possibly more social than tech? I ran into people I haven't worked with in almost a decade. I ran into people from my last job, and the one before that, and the one before that, and the one before that. I ran into multiple people I've worked with that live in different countries. I met people I've only ever seen on the other side of a Skype session. I came for the tech stuff as that's my jam, but wow is this Sitecore community a small one :)

No comments:

Post a Comment