Page 4

  • Running up the worlds (formerly) steepest street

    Tuesday, September 15, 2020
    🕑2 minute read
    On the 15th of July 2019, Ffordd Pen Llech became the Guinness world record holder for the steepest street in the world at 37.5%. The road is fairly infamous amongst cyclists as a hill climb (although it's actually a 1 way road - downhill). It starts behin...

  • React - Memo

    Friday, July 24, 2020
    🕑6 minute read
    Memoization is used to speed up applications by remembering the results of "expensive" function calls and calculations, so that they don't need to be recalculated again when the inputs have not changed. For example, if I ask you to calculate the results o...

  • Hooking into Gatsby's navigation changes

    Sunday, July 19, 2020
    🕑1 minute read
    On my site there is a toggling navigation menu. But when I toggle it open and then click a link it stays open. This is not right - it should close when you change location. Let's fix it using some really simple hooks in a few minutes. First lets see what w...

  • Running WordPress on Docker

    Tuesday, July 14, 2020
    🕑2 minute read
    WordPress runs on a variety of platforms, but last time I was developing I was using a MAMP stack - Mac Apache MySQL & PHP. It's been a while since I was working on WordPress sites and I no longer have MAMP installed on my machine, however I do have Docker...

  • Create Playwright tests in jest

    Thursday, July 2, 2020
    🕑2 minute read
    This is a brief guide into setting up Playwright so that it integrates with your existing Jest testing suite. The aim is to get you using Playwright quickly and easily so that you can test the frontend of your web applications. Playwright is an incredibly ...

  • What are JavaScript closures?

    Thursday, May 28, 2020
    🕑3 minute read
    Closures are a way to retain a local variable's privacy, but allow it to be accessible in a global scope. JavaScript has global variables and local variables. Global variables are accessible to everything in your application. Local variables are only acce...

  • Understanding JavaScript scope

    Monday, May 18, 2020
    🕑3 minute read
    Scope refers to which functions, variables and objects other functions, variables and objects are able to access when an application is run. It can seem confusing at first, but with a slightly strange example I will try and explain the basics unsing castle...

  • Working remotely (from home) - COVID enforced

    Friday, May 1, 2020
    🕑5 minute read
    COVID-19 has changed things completely. In a matter of days I have switched from being in an office every day to being at home 24/7. It's not typical WFH, but it does contain a large proportion of the WFH experience. I want to breakdown and understand the ...

  • Designing a running training plan

    Thursday, November 7, 2019
    🕑5 minute read
    I like to run. I run a lot, and I've found myself running every day of the week with little focus on what I want to achieve. Every day is the same 4-8km with a longer run on a Sunday. It's quite hard to progress myself, and measure my progress when I've be...

  • Theming Slack using a message

    Friday, February 15, 2019
    🕑1 minute read
    The Slack (desktop) client allows you to create your own themes. But did you know that you can also set the theme via a message. Simply send a message with the contents being 8 comma separated hex codes. You don't have to send the message to anybody either...

  • Getting to grips with CSS Grids

    Saturday, October 6, 2018
    🕑7 minute read
    Grids are the latest layout model to join the CSS spec after flex. Like flex, grids open up a whole new world of layout possibilities that will make every web developer's life a whole lot easier. Unlike flex, grids allow you to use more than one dimension ...