Robb is an independent creative developer from South Wales who loves helping organisations turn exciting ideas into complex, creative products. Sometimes, he also writes in the third person.
There’s a word in the Welsh language that you might have come across, part of that wonderful class of words that defy direct one-to-one translation into English: Hiraeth . Broadly speaking, hiraeth is a deep sense of longing for some other time, people or place where you felt at home. It has been described as the lingering presence of absence; not really nostalgia, but a sort of gnawing, idealised…
In the last couple of years I have developed a complicated relationship with my phone. Whether it's scrolling past an endless wall of hate on Twitter or feeling my mood buckle under the weight of every TikTok or Reel that I push skywards, the tiny computer in my pocket has started to feel a bit like that box from Dune – there's nothing but pain in there. Increasingly though, it's not just "in…
The web industry is full to the brim with tales of side-projects that grew into successful businesses and, like many of us, I'll often find myself tinkering away on an idea or three after I've finished with my day-job. Whilst it's definitely an enticing prospect, working on a side-project is not always sunshine and Lambos though – sometimes they just don't work out. If you're reading this, there's…
For the past few years I've tried to do a little retrospective post on the year that was. This year, inspired by the endless "such-and-such wrapped" tracking-data-as-entertainment emails that I've been getting, I'm going to mix up the format a bit and throw in an extra rundown of some of the media I enjoyed this year. So, let's go. Here's my 2023 Wrapped (replete with overly-excitable subheadings)…
It's finally happened – with the release of Firefox 121.0 :has() has landed in all browsers (though writing " :has() has" is sadly no less awkward). In celebration, I thought it a good time to share one of my favourite practical uses of :has() so far – scroll locks. Imagine that you need to open a modal window, or flyout menu. To prevent from losing the user's place in the page whilst that modal…
Recently, as I started getting back into photography I read something that stuck with me (though sadly the source didn't). To paraphrase: If you were able to take a great photo on a camera from 1979 then that same camera can still take a great photo today. New and shiny tech may make certain things easier, but a good photo is a good photo. Ultimately, the viewer won't give a shit which camera you…
Before he retired, my dad was an electrical and diagnostic engineer. In short, he dedicated most of his adult life to designing and building lasers and laser equipment – everything from laser-tag through to guidance systems for those massive drills that dig rail tunnels. After dad passed away, I stumbled across a box in my parent's garage containing prototypes and product specimens for many of the…
I've been thinking about my approach to frontend a lot recently and an analogy that comes up pretty consistently when talking about building user interfaces is that the frontend development process should be like efficiently assembling a model from Lego bricks . With the web industry's shift towards agile, feature-focused methodologies and componentisation, this analogy certainly makes sense. To…
It's been a little while since I did a year in review post, so let's get that out of the way first. For all the wild unknowns of 2020 , 2021 was a landmark year but for, sadly, all the wrong reasons. In September '21, I lost my dad . Just over a month later, my partner lost her wonderful step-dad. Come the end of the year, and in the shadow of that combined grief, my drive to talk about literally…
To my surprise this website was recently nominated for the "Personal Website of the Year" award at Jamstack Conf 2022 ! To be nominated as a finalist in this category, both by a public vote and alongside two seriously creative websites from John Beresford and Lynn Fisher , is a real honour. I wanted to write a quick post to say a huge thank you to anyone and everyone who nominated or voted for…
I might be understating it a bit, but WebGL is a big deal. You only need to spend five minutes on one of the many design awards sites to see site-after-site fully leaning into the power of canvas . Tools like threejs make it easier to harness the power of 3D and GLSL shaders and, with that, a whole new level of visual effects. This got me thinking though; why let JS have all the fun? With…
The web has a diverse global audience and the websites and apps we build have to cater towards a wide range of languages, scripts and dialects. Developing for multiple languages isn't as simple as bashing the text onto the page though. As developers, we need to take extra care to present multi-lingual content in the most natural way possible. Fortunately, HTML and CSS present us with a few options…
Lately, it seems like Go (or sometimes, Golang) is having a bit of a moment. Developed by Google, Go has been around for just over a decade now but over the last year it seems to have been steadily gaining in popularity on social media and Github. Given its versatility, It's perhaps easy to understand why - Go has been used for everything from CLI tools to building high-profile devops software…
Holy. Shit. Let's get it out of the way - 2020 has been a prize dickhead . Like many of you I started the year with plans . I was going to learn X, Y and Z. I was going be more active with the industry on Twitter. I was going to work on my side-project and, after taking nowhere near enough holiday in 2019, I was going to travel more. Sufficed to say, that is not the year I had. I was fortunate to…
Imagine that you're building a website and you need all links to a particular type of content to open in a modal. On top of that, you would also like a nice transition animation to play whenever the user moves in and out of that content type. Working with a framework like React or Vue, there are a number of clientside routers and components available to help transition between different pages of…
As with so many things these days, it starts with clickbait. "17 tricks to running a digital agency" was, for the most part, the same kind of unremarkable listicle that surfaces on Twitter from time to time. You know the sort - it keeps things light, you chuckle at a few zingers about office-dogs, exposed piping and wall-mounted fixies. You hit retweet and carry on with the day. This time though,…
It's been a wild ride since I first tweeted about Synthwave '84. The support has been amazing and I'd like to start by saying thanks everyone who has shared or used the theme since the last release. Particularly, I'd like to thank you all for battling through the less than ideal installation process. It's been a bumpy road but it's been truly great to see so many people enjoying the theme. Neon…
Today is something of a milestone. For the first time in a long while, I have a new website. I'm not talking about a holding page, or link to a resumé, but an actual honest-to-goodness home on the internet. More importantly than that, I have a personal blog for the first time ever. It's been a while coming. As a freelancer your website can often be the first impression your prospective clients…
Do you remember that endless summer back in '84? Cruising down the ocean-highway with the top down, the wind in our hair and heads buzzing with neon dreams? No, I don't remember it either, but with this experimental theme we can go there. This colour scheme is influenced by the music and the cover artwork of modern Synthwave bands like FM-84, Timecop 1983 and The Midnight. By association, that…