2020 Wrap Up

There is no denying that this year has been one of the most challenging on record and that’s been no different for myself. At the beginning of the year, I started with the best intentions of growing the business but come March it was pretty obvious that things were going to be a little more difficult than we imagined.

The year began with an office move. Moving is super stressful, it’s amazing how much “stuff” you can accumulate over some ten years so sorting this and moving it plus the logistics of setting up our network and I.T, new phone system etc. Settling into the new environment was particular difficult for me personally.

The first three months were very much business as usual and in January I had the pleasure of featuring on my first Podcast, which you can read more about and watch/listen here. https://maplerockdesign.co.uk/blog/how-to-code-well-podcast

🏠 Working from home #

On March 18th the time came to work from home which meant moving office again, getting everything setup so we could both work remotely and the first time in my life where I’ve worked solo from home. So how have I found this?

I’m still undecided – some days it’s fine and others it is a real struggle. My biggest issue is living in a one bed flat my office is also my space to relax in an evening. I’m basically living at work – having a separate space to shut off would be a much better arrangement.

I also really miss the office environment it’s nice to have someone to talk to break up the day. I’ve spent many weeks this year working 9-5 with no one to talk to, it's been a pretty lonely experience (talking over Zoom is not the same though Big Orange Heart's Friday Open Chats have been super helpful for me some weeks). It’s also nice when you get to stuck to chat through your problems especially when coding. I’m a big fan of “rubber duck debugging” except with real people in place of a duck – they don’t need to be uber technical for this to work – just chatting through your problems can help you get to the bottom of the issue, much like life in general 🤷

I have been forcing myself to go for a walk most days but there is no denying it’s been a mental challenge when everyday feels like the same routine and you only have yourself for company. I can only hope that 2021 I can get back into the office at least for a few days a week and start socialising again.

🛠 Laravel #

80% of my development time is spent working on our Laravel projects, of which we have three plus the company site. Our website had an upgrade in Laravel version, additionally the design and front end were refreshed (https://maplerockdesign.co.uk/blog/new-website-for-2020).

I’ve added functionality to the charity site that we develop and maintain as they’ve had to adapt to the challenges of the pandemic – adding the ability to sell gift vouchers, for users to pay via donation instead of a fixed price.

I also inherited a Laravel site which involved my first experiences working Elastic search which was somewhat of a challenge to get my head around. It’s certainly interesting to see how other people work, most of the time I can see ways that the code could be improved.

✅ Testing #

I’ve spent a chunk of my time earlier in the year learning how to properly test. Thanks to Confident Laravel which gave me most of the ideas/concepts of what was required I picked things up fairly quickly. This is something that I’ve wanted to learn for many years. I am very much a “die and dump” developer and now that I am building bigger more business critical systems I can certainly see the benefits of having a set of proper tests. My only regret is that I didn’t learn this sooner in my career. Where possible I’m trying to implement tests for key processes within our existing sites. An example being the checkout process for one of our custom ecommerce solutions.

📝 Content Management Systems #

The world of the content management systems is a pretty exciting one especially with the rise in the use of static site generators. I’ve added two new systems to my skillset this year and continue to use WordPress.

Eleventy: I’ve now got two client sites that are built with Eleventy so I’ve certainly expanded my understanding of how best to work with this fantastic tool. The first project was a campaign site accompanied with a custom HTML email campaign. Though the site has now expanded to be much bigger than initially briefed. Eleventy has done a great job for the first revision, but I am looking at options to convert to WordPress although Netlify CMS may be an option? The second project is a small site that we manage the content on, so Eleventy is a perfect fit for this.

Statamic: I’ve been looking for something that can be dropped into existing Laravel projects for a while now and with the release of version 3 of Statamic this became possible. Previously I’ve built pretty basic systems for clients to manage their own content and I’ve never been happy with this offering. Statamic seems like a great fit so far, it can handle the majority of the content management without the need for us to create our own – I can then concentrate on the more complex elements of sites using the Laravel framework.

WordPress: WordPress has taken a bit of back seat this year, that’s not to say I’m still not keeping up to date with the WordPress world. I still assist where I can with the local Cheltenham WordPress meetup (though Elliott still very much does most of the organising). I am really missing in person meetups and was gutted when WordPress EU in Porto was cancelled. I’ve also helped a major U.K charity with a child theme, built a landing page for an existing client and inherited a custom plugin which is pretty wild in its approach. In April I did my first online talk "Headless WordPress with Laravel". This was a little daunting and I was super nervous before hand but I think it was ok and it was well received. I can't find a recorded version but you see the slides here

🖍 CSS #

I have a love hate relation with CSS. 98% love – but some days it leaves me weeping into my keyboard. I’d like to think I’m pretty good at it, but I certainly still have battles even after 20 years 🤷 2020 has been a year of experimenting with the modern aspects of CSS. I’ve been using variables and calc much more, clamp for font sizes, and much more stuff with grid. For some reason adjacent siblings/general sibling/:not selectors have never been on my radar until earlier in the year and they’ve certainly helped me improve the way that I style sites.
https://developer.mozilla.org/en-US/docs/Web/CSS/Adjacent_sibling_combinator
https://developer.mozilla.org/en-US/docs/Web/CSS/General_sibling_combinator
https://developer.mozilla.org/en-US/docs/Web/CSS/:not

ps. I might experiment with Tailwind next year 💨

📊 Fathom #

I just last night installed Fathom onto our company site. I looked at it earlier in the year but decided against it (not sure why). Initial impressions are good so we’ll see where this goes – the less we can use Google the better right?

⌚️ Timing #

One of the best things I’ve done this year (thanks for the recommendation Elliott Richmond) is to install Timing on my machine. Keeping an up to date and more importantly an accurate timesheet has always been a struggle. We’re not into accounting for every minute but it’s super useful to accurately see how long projects are taking vs how long we have quoted for. It’s certainly highlighted some areas that I could improve on in terms of accurately quoting for work… most things take longer than expected. Though a “productivity” score of 76% is ok with me!

I’ve not done half as much design/artwork than I would normally do this year. I do really miss this side of things. It’s certainly a lot easier working with flat designs than with the endless possibilities that front end development brings to the table.

On a personal note; my running has improved significantly this coupled with my daily walk means I’ve managed to keep my weight and mental health in check. I’ve also rediscovered my love for drag racing. I spent my childhood weekends with my dad at the track before weekend jobs/college/university got in the way. So after some twenty years I returned to the track helping with my dad’s 66 Chevy Nova (now running consistent 9.4’s @ 140mph). Exciting news being that all going to plan we will be contesting a full season in 2021 with Lee Huxley driving.

I’m now taking a much needed two week break for Christmas to recharge my batteries as I’m exhausted especially in terms of getting up each day and writing code. Finally I’m not sure who is going to read this article but it’s has been cathartic to write, most days I have my own internal battles that I haven’t done enough/aren’t working hard enough. But when you summarise what you’ve done through the year it all adds up. I’m certainly a better developer than I was at the start of the year.

2021 is so tough to plan for, I do have a list of things I’d like to improve within the business but I’m keeping these close to my chest. My aim for this year was to make it through to the end of the year which we have managed to do. I imagine 2021 is going to be similar to this year, at least the early months but hopefully the later months will be much better for all – who knows!

Finally if you think Maple Rock can help you with your project requirements in 2021 let me know – maplerockdesign.co.uk // @richard_Bell