It's been a few days since the 2019 Sitecore Hackathon came to a close and now that I've caught up on some sleep I wanted to write a little about my experience going through it.

For starters, I was part of Team Hack Pack. My fellow team mates were Alexa Livezey and Alessandro Faniuolo. We all work together at Velir.

Leading up to the hackathon we had a little planning meeting where we just brain stormed any and all ideas we were interested in working on. Even though we didn't know the categories, we wanted to come out of that session with some things to think about so if the announced categories just happened to align with one of our ideas, we would be in pretty good shape. (Spoiler: that didn't happen.) We did come up with some good ideas for snacks though, that definitely did happen.

Directly before the hackathon, we all met in the office and went out to get some pizza at Flatbread Company and just relax before everything kicked off. Our team doesn't work together on a daily basis so it was great catching up with both of them.

Then 7PM EST hit and we received the kick off email. None of our ideas that we thought of matched any of the requirements. We spent a little over an hour brainstorming an idea and then we stumbled across one that we fell in love with and the whole team knew instantly it was the right idea.

Our full original idea was we would use Universal Tracker inside of Sitecore Content Editor to track content authors ribbon bar usage and then populate a toolbar of most used buttons for editors to easily access their "Most Popular" buttons.

After coming up with that idea, we put together a list of things we knew we needed to do but were unsure if we were able to actually do them, such as:

  • Can we track a click inside of Sitecore Content Editor?
    Turns out, the answer here is yes. We were able to inject a custom javascript file into Content Editor and track user clicks.
  • Can we build a ribbon dynamically?
    Fortunately, Sitecore already has one built in custom ribbon type. The "My Buttons" provided a blue print on how we could build out our own custom ribbon and create custom sourcing to fit our needs.
  • Can we install Universal Tracker and make use of it?
    We thought so. We were able to install it and push events to it using the SDK, but in the end, we didn't end up leveraging it. There were some good resources about Universal Tracker (ie: here) and of course, the install guide. We ultimately couldn't get our events to process though, and that was perfectly okay.

It was okay because we knew our core idea was a ribbon and we ultimately decided the mechanism for capturing and processing that data was really irrelevant. We spent a while trying to make it work but then made the call to switch approaches. We would come up with a custom way to process the data and we if we had time at the end to revisit Universal Tracker, then we would (Spoiler: we didn't have enough time, there's never enough time.) We just knew we had to complete and ship something.

We had some extremely productive bursts of progress. It was a roller coaster. It seemed like right when we were all about to fall asleep, we would turn a corner and were able to get a new feature working to keep us moving forward.

We also received a lot of support from some of the people we work with at Velir as well. People stopped by to make sure we were all still functioning. People baked us custom cup cakes. People sent us chocolate covered espresso beans. It was great.

We came out of the hackathon happy with how our module turned out and that we were able to accomplish our objective, even if we were unable to use every technology we wanted to originally.

Popular tools powered by user activity
The default view after the module is first installed

Overall, it was a really fun experience and will definitely be open to participating in next years hackathon. I had some real quality sleep after everything was through. Being awake for 40 hours straight will do that to you.

Looking forward to seeing all of the results of the hackathon!