365 Days In Umbraco

tagged with Community Contribution

This article is a reflection upon my 2023 through the lens of Umbraco, a word I'd only heard occasionally before then

#notacult

1. The Photo

It started with this photo:

Richard looking into the camera. Behind him, a computer screen features similar images of Carl Sargunar and Lee Kelleher

A selfie of Richard Jackson, featuring Carl Sargunar and Lee Kelleher, from Umbraco Community Day, January 19th 2023

This photo, taken as part of this thread, taken as part of Umbraco Community Day, January 19th 2023, was my true introduction to Umbraco. This comically unphotogenic shot of yours truly, posted as part of a social media train/competition would result in both a free ticket to Umbraco UK Festival 2023 and also, more significantly, a remarkably warm reception from hosts Callum Whyte & Poornima Nayar. You can watch the video here. For someone who's previous experience with the community had been largely through the medium of Using Twitter Too Much, this was a somewhat special moment.

For context, I'm someone who, after a career as a professional musician, has recently moved into Computer Science via an MSc. Computing course at Cardiff University, the results of which are still pending at time of writing! I was, and still am, gripped with a constant, underlying anxiety towards making up for lost time. July 2022 saw the start of my first developer position, a placement as a cloud software engineer with Nightingale HQ, and my first real experience with .NET outside of using Unity for game development. With this drive to speedrun a tech career, I made a concerted effort to seek out and identify the various tech communities in the Cardiff/Bristol/South West area. It was at my first .NET South West meet-up in late 2022 that I encountered and then introduced myself to Carl Sargunar, who has been a constant beacon of support and general awesomeness ever since - the fact that he was speaking at Umbraco Community Day was the reason I attended!

I can't remember why I decided to look into Umbraco properly - all I knew at the time was that it was a CMS, and that people I liked and respected liked and respected it. So, with the aforementioned affliction of Using Twitter Too Much, I decided to make a thread about my initial Umbraco experience, and was struck with how active the community was on there (there'll be many a thesis written around social media platform fragmentation in 2023, mark my blog). I even made my first pull request to the documentation - that PR got lost somewhere (clearly I Did Not PR Hard Enough) and had to be redone, but the genuine warmth I felt from the online interactions was the first of many green flags.

Umbraco Community Day lead to Umbraco Spark. Umbraco Spark lead to DDD South West (my first tech talk - .NET, Azure & Umbraco: The First Twelve Months). After DDD I was invited to speak at Umbraco London. Umbraco London lead to UmBristol, which lead to .NET Cardiff, which lead to UmbraCymru. I was also delighted to be offered the chance to attend CODECABIN23, and even made my MSc. Computing dissertation into an Umbraco migration project for my employers Nightingale HQ. And yes, I attended Umbraco UK Festival 2023 with the ticket my photo provided.

So yes, it's all Carl's fault.

2. Community-Driven Development

Over the past year, as I become evermore aware of the breadth and depth of the computer science field, I increasingly see value in a "pick a technology, any technology" mindset. In the age of Everything Everywhere All At Once one of the strongest defenses against overwhelm and decision paralysis is curation. Deadlines are pretty handy too. When people ask me how to get into Computer Science my current advice is "focus on one thing, get good at that, move onto the next thing, repeat", a sentiment embodied in the Ron Swanson quote "Never Half-Ass Two Things, Whole-Ass One Thing".

This has lead me to pursue a somewhat "community first" approach to Umbraco - start with the community, then learn the technology. This statement leads to a strange blend of feelings, leaving something of a imposter-syndrome infused flavour in my mouth, with self-doubt largely following two lines of questioning:

  1. Shouldn't I be better at using this software?
  2. Is my one skill just "showing up to stuff"?

To the former I tell myself "be patient", to the latter I say "be present" - and both of these defenses are supported by a strong community of good people. With good people I can take my time, gradually chipping away at the learning process, knowing that the journey is one many others (who I think highly of) have gone through before, and there's many a helping hand (flashback to the hands scene in Labyrinth). And with good people, I'll be welcomed at events regardless of my own skill-set, which then encourages me to attend, which then allows me to watch talks, even to just be proximal to conversations, slowly gathering knowledge through osmosis and environment alone.

A formative memory of mine was attending Umbraco Spark's hackathon with a terrifyingly low baseline of knowledge. To manage expections I felt it only appropriate to declare this inexperience in a comment on the event's Meetup group:

A comment from Umbraco Spark 2023's hackathon Meetup page, saying: "Looking forward to this! I am INCREDIBLY inexperienced but polite and eager to be helpful:)"

A screenshot of a comment from Umbraco Spark 2023's hackathon Meetup page

It was at this event that I first met the wonder that is Community Cultivator Lotte Pitcher who basically said how much they appreciated my comment - this made me feel welcome and set the tone for, pretty much, every future interaction I've had with the community. I've been as open-hearted as I can be and that's been matched with levels on consistency which often baffles some of my contemporaries.

Writing this article, as I am, warmly ensconced within a Cardiff-based duvet, I can't remember exactly what Lotte said, but am reminded of these words from Maya Angelou: "I've learned that people will forget what you said, people will forget what you did, but people will never forget how you made them feel".

(There's also the Neil Gaiman idea that getting work is based on three elements - "Being nice, be punctual, being good at what you do" - and making sure you focus on at least two of them. I reflect on how true this has been for me regularly.)

I feel my own approach to Umbraco has been one of community-driven development (hey it's the name of the section). This year I have focused on understanding the people, attending events, being present. As the year went on I started making gradual efforts towards actual Umbraco usage, the culmination being my own MSc. Computing dissertation project, which largely boiled down to using the Content Service to create block list editor content and crying over dev-ops.

But fundamentally, my most valued learning this year has been of people's names, opinions, lives and outlooks. The technology can wait.

3. New Year's Resolutions

So, with the first 365 days done, what of days 366-731? And yes, 2024 is a leap year, I wish Ja Rule a happy birthday.

My main goal for 2024 is to develop a more technical understanding of Umbraco. Much of my output this year has been autobiographical, or process-oriented, without necessarily engaging directly with interesting ways to utilise interesting technology. Writing this article as both .NET Conf and Microsoft Inspire close out (in one of the strangest scheduling decisions I've ever seen) the platform upon which Umbraco itself is built continues to evolve and change, and that in itself is fascinating enough. The fact that Umbraco is looking to change substantially over the next twelve months means that the appetite for community understanding and support will be voracious, with the work going into Bellisima itself necessitating much onboarding and transparency.

To that end, I'll be renewing my peacock vow in the name of supporting those who are looking to follow similar steps to my own this year. That could well be in creating my own blogs or videos, or engaging more in creating and supporting online user groups and meetups - there's always space for ideas like setting up an eight-week "Let's all make something" challenge could be fun, with regular meetings/servers for support and accountability (an idea I came up with while writing this sentence. The joys of authorship). The need for supportive resources has never been more necessary than during times of flux (i.e. every single day in tech, but even more so every day. Cumulative flux? Is that a thing? Naming it makes it real). If those supportive resources are built upon a supportive community? High fives all round.

I've even started making videos about concepts which past me has struggled with but, at the point of recording, current me has a decent understanding of, to help future me, who is so very forgetful. Consider it self-help material. If that helps anyone else? Bonus.

Ultimately, all of these experiences, all of these opinions, all of these stories, people and memories, started with a photo, wrapped in warmth, kindness, and being friendly.

Thank you,

Rich

p.s. I fully support Dylan Beattie's assertion that Umbraco devs should adopt the moniker of "Umbracolytes".