Articles

Page 5



  • Garmin Epix daily workout suggestions

    Monday, January 29, 2024
    πŸ•‘1 minute read
    πŸƒRun
    If you manage to disable the suggested workouts feature on your Garmin Watch, then there is a quick way to re-enable it. Go to your "Race calendar" > Select your event > Click start/stop button and an option for "Daily suggestions" will appear. You can c...

  • GROQ vs GraphQL

    Friday, August 4, 2023
    πŸ•‘2 minute read
    While GROQ is nominally similar to GraphQL, there are subtle differences. Here's a quick run down of the similarities and differences, so that you can understand the reasons for GROQs existence, and some of it’s use-cases, before using it yourself Both us...

  • Readonly - TypeScript Challenge Explained

    Sunday, March 12, 2023
    My solution to the Readonly TypeScript Challenge as part of my journey to Understanding the TypeScript Challenges. Given a type T, the utility should set the readonly keyword for all properties. Solution Explanation { } return an object/record type re...

  • Uses for the TypeScript β€˜as’ assertion

    Thursday, March 9, 2023
    πŸ•‘1 minute read
    In TypeScript there is a as assertion. There are two reasons for this annotation. Firstly it's a way to tell TypeScript that a value is of a certain type which differs from what is being inferred, or has already been set. Essentially, it's used to tell Ty...

  • GPX doodling - a guide

    Wednesday, November 2, 2022
    πŸ•‘3 minute read
    Recently I drew a Halloween doodle while I was out for a run. A few people asked me how I did it, so I thought that a guide would be helpful! There are a few steps to getting a good result: Picking the location Planning the doodle Creating the doodle ...

  • Create a count for related items using GROQ

    Tuesday, October 25, 2022
    🧠Tip
    I'm using the count() function of GROQ queries to display the number of posts for a tag on my tags page, but it can be used for anything that would have a varying number of items. To count items using GROQ is as simple as using the count() function. Of c...

  • 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...

  • 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...

  • Javascript best practices

    Sunday, July 10, 2016
    πŸ•‘4 minute read
    Where to put the javascript? Unless it’s essential for it to be in the head of the HTML document, place all javascript just before the closing body tag of a page. What’s essential for the head? That can vary from project to project but a rule of thumb w...

  • Changing the version of SASS in LiveReload

    Monday, July 9, 2012
    πŸ•‘2 minute read
    LiveReload is great a great tool for any web developer. One of the most useful of it's features is the ability to compile SASS on save. Unfortunately the version of SASS that is included in LiveReload isn't the latest one and it just so happened that was t...

  • Creating a chrome extension that uses jQuery to manipulate the DOM of a page

    Thursday, December 8, 2011
    πŸ•‘3 minute read
    There are plenty of tutorials and guides on how to make a Chrome extension and there are hundreds for jQuery manipulation of the DOM. There are also a few about using jQuery in a Chrome extension, but only for the popup window. There seems to be a lack of ...