Diary

All my blog posts & notes, chronologically ordered from now back in time.

  1. 2024 (13)

      October

      1. 4th Bulk create populated Google Docs from a Google Spreadsheet

      September

      1. 23rd Fixing a failing Docker layer

      August

      1. 12th A summary of TYPO3 Developer Days 2024
      2. 3rd TYPO3 Developer Days 2024: Day 3 - 3rd August 2024
      3. 2nd TYPO3 Developer Days 2024: Day 2 - 2nd August 2024
      4. 1st TYPO3 Developer Days 2024: Day 1 - 1st August 2024

      May

      1. 8th Run unit tests in Playwright

      March

      1. 28th How to install only NPM dev dependencies
      2. 27th Scanning your code with Bearer; a Gitlab compatible SAST
      3. 19th Validate a JSON API with Playwright & JSON Schema

      February

      1. 12th Testing the frontend of a TYPO3 project
      2. 9th Tweetback
      3. 4th Composer Best Practices for TYPO3

  2. 2023 (27)

      December

      1. 31st 2023 In Review
      2. 14th Frameworks, Tools and Utility meta-packages for quicker configuration

      November

      1. 29th Accessing iframe content and JavaScript variables from Puppeteer
      2. 23rd Login with Puppeteer and re-use cookies for another window

      October

      1. 3rd Get your Pocket Casts data using the unofficial API and PHP
      2. 1st A release process for our NPM and Composer packages

      September

      1. 7th Building and Pushing Docker images using Github Actions

      August

      1. 10th PHP Ternary and null coalescing operators
      2. 6th Build different images with multi-stage Docker builds
      3. 3rd Install private composer packages with CI and Deployer

      July

      1. 16th Open Door Meetings - How I can bother my colleagues without interrupting them
      2. 12th Docker image with Node, PHP and Composer

      May

      1. 13th The UPCOMING.md file in our packages and extensions
      2. 9th NPM Install without modifying the package-lock.json
      3. 6th The End of the Social Network School Year

      March

      1. 24th Post to Slack from Gitlab CI
      2. 16th Setting up Gitlab Advanced search
      3. 11th Migrating Gitlab packages from object store to local
      4. 5th Find a troublesome commit with Git Bisect
      5. 1st Deploying a Docker image to a remote private registry with Gitlab CI

      February

      1. 22nd Reset a git repository back to origin
      2. 19th Writing more evergreen blog post topics is hard
      3. 16th Take your 11ty build from 1 second to 2 minutes by generating OG images
      4. 7th Server tools - htop and apache server status

      January

      1. 17th Why I miss the limitations of CD players
      2. 14th Adding Tina CMS to 11ty
      3. 5th Be Code Agnostic

  3. 2022 (18)

      December

      1. 31st 2022 In Review
      2. 10th Turn any page into a JSON API with Cloudflare Workers

      November

      1. 19th How to delete a Git branch
      2. 17th Use MinIO to cache Gitlab assets and leverage distributed runner caching
      3. 11th Build and push a Docker image to a private registry with Gitlab CI

      October

      1. 20th Creating Backend Layouts with TYPO3 CMS to build better looking pages for Liquid Light

      September

      1. 25th Return a Zip file in Node with a Netlify function
      2. 22nd Merge request conventions for less cognitive load

      August

      1. 27th Programmatically Commit to Gitlab via Node.js
      2. 16th Love Film & Cinema

      July

      1. 29th Add Netlify CMS to an existing 11ty site
      2. 22nd Version constraints in JSON files

      June

      1. 10th Upgrading 11ty from 0.12 to 1.0
      2. 8th How I improved the speed of Docker builds in Gitlab CI

      May

      1. 30th Creating a Docusaurus docker image for consistent rendering of your documentation
      2. 20th New Apple computer set up
      3. 13th Add custom repositories for composer to pull from

      February

      1. 11th Creating a multi-stage Docker build to make your images smaller

  4. 2021 (28)

      December

      1. 31st 2021 In Review
      2. 11th Using a private Docker registry with Gitlab CI

      October

      1. 21st Use env files and variables to keep sensitive information out of your TYPO3 project for Liquid Light

      September

      1. 15th Build and release Composer packages using a self-hosted Gitlab

      August

      1. 23rd Upload an image to Cloudinary using the Node SDK
      2. 9th Quickly clone a git repository without the history

      July

      1. 26th Making an 11ty collection from a remote XML file
      2. 12th Create an 11ty collection from any RSS feed

      June

      1. 28th Creating an 11ty collection from a JSON API
      2. 28th Incremental updates don't win awards for Liquid Light
      3. 21st The cleanest way of handling user authentication with Nuxt.js

      May

      1. 31st Building Ale House Rock with 11ty
      2. 17th Accessing 11ty filters within data files to keep your code DRY
      3. 3rd Using a few lines of PHP to programmatically upload an image to Cloudinary

      April

      1. 19th Get your Eleventy Site into the real world using a hosting provider like Netlify or Git pages
      2. 15th 11ty Utils - an NPM Package
      3. 15th Using the TYPO3 redirects module to ensure your visitors don't end up at a dead-end for Liquid Light
      4. 12th Build an 11ty calendar to list all your posts
      5. 6th My 2021 writing schedule
      6. 5th Using Cloudflare workers to publish your scheduled 11ty posts
      7. 2nd Side Project Imposter Syndrome

      March

      1. 22nd Automatically deploying your Lumen App with PHP Deployer (and zero downtime) so you don't have to manually do it
      2. 8th How to migrate your Gitlab instance to a new server

      February

      1. 22nd Socket RSS - The Gleefreshing answer to your Doomscrolling habits
      2. 15th Compiling your front-end assets with Laravel Mix while your 11ty site builds, so you don't have to switch between processes
      3. 1st How to set up and use Laravel Mix with your project

      January

      1. 18th Setting up a custom domain with Netlify with Cloudflare SSL
      2. 14th Making sure you're not doing everything at work

  5. 2020 (15)

      December

      1. 31st 2020 In Review

      November

      1. 20th What is a server? for Liquid Light

      October

      1. 7th Converting Behind the Source to 11ty
      2. 5th Setting up Homebrew, NPM and Eleventy on a fresh mac

      September

      1. 15th Composer - creating a private package to include your own PHP class

      July

      1. 22nd Getting a Slack helper running with Netlify: Part 2
      2. 20th Getting a Slack helper running with Netlify: Part 1
      3. 5th Useful command line MySQL commands

      May

      1. 28th The Git Commit Hash

      April

      1. 20th Why should you consider Cloudflare for your website? for Liquid Light
      2. 19th What are the different SSL modes on Cloudflare?
      3. 16th Setting up Tiny Tiny RSS to collate feeds
      4. 15th Mikestreety's New Clothes

      March

      1. 5th Using Cloudflare Workers to set a cookie based on a GET parameter or path

      February

      1. 26th What are Cloud Functions, Cloudflare Workers and Serverless?

  6. 2019 (12)

      December

      1. 31st 2019 In Review
      2. 10th How do you deal with designers who design without any thought? for Liquid Light

      November

      1. 11th How to become device agnostic and what it means for your data for Liquid Light

      August

      1. 22nd email.subscribeto - a newsletter database

      July

      1. 31st The Real World of Web Development

      June

      1. 20th Getting started with Xen - setting up virtual machines
      2. 20th Linux Debian user commands

      May

      1. 3rd Build your own "share this" component

      April

      1. 20th How to use fetch in JavaScript to GET or POST data

      March

      1. 28th Using a post-merge git hook to clean up old branches for Liquid Light

      February

      1. 14th Developing websites locally with Docker
      2. 4th Newsletters for Front-end Developers - 2019 edition

  7. 2018 (10)

      December

      1. 31st 2018 in review

      November

      1. 17th Xbox One vs PlayStation 4

      October

      1. 18th Music obsessions
      2. 18th Using Vue.js with a Lumen powered API for Liquid Light

      August

      1. 13th Uses
      2. 7th How to filter an array of objects based on a secondary array in JavaScript

      April

      1. 16th Mike builds a bike

      March

      1. 19th Why we're not dropping Slack for Google Hangouts Chat...yet. for Liquid Light
      2. 12th Backup Gitlab data locally
      3. 8th How I wrote a book; the writing process from one of our Developers for Liquid Light

  8. 2017 (24)

      December

      1. 31st 2017 in review
      2. 18th Introduction to Vuex Part 2 - implementation (video)
      3. 18th Introduction to Vuex Part 1 - managing state, storage and sharing data between components

      November

      1. 8th Filters in Vue.js: What are they, how do you use them, and how do you make them? (video)

      October

      1. 26th Vue.js: Using dynamic and static attributes and props with components and HTML elements (video)
      2. 25th Schema - what is it and how do I use it? for Liquid Light
      3. 21st Using props for accessing URL parameters within components with Vue Router (video)
      4. 13th Vue: Using localStorage with Vuex store

      September

      1. 18th How can I verify my Google Event Tracking is working? for Liquid Light
      2. 5th Change ownership of all folders and subfolders or files

      August

      1. 15th Navigation drop-downs. Should they be hover or click? for Liquid Light
      2. 10th Damaged version of macOS

      July

      1. 26th People are cyclists - a community hub
      2. 23rd Don't require password for sudo commands as non-root user
      3. 3rd SCSS Reverse direction

      June

      1. 22nd How I kicked a millennial habit
      2. 14th The Digital Bucket List for People in the Web

      May

      1. 19th Find folders on a linux server that do not have a file
      2. 18th Render Conf 30th March 2017 - A review for Liquid Light
      3. 15th Rarely handy Git commands
      4. 10th HTML 5 collapsable information - works in a Github/Gitlab issue
      5. 3rd Multiple transition delays

      April

      1. 26th CSS Custom Properties - everyday applications

      March

      1. 13th How can I score 100 on Google PageSpeed Insights? for Liquid Light

  9. 2016 (19)

      December

      1. 15th What's new in Feefo v3? for Liquid Light
      2. 12th "HD" cheap action cam - you get what you pay for

      November

      1. 17th Find and remove vendor prefixes in your CSS using Regex
      2. 3rd Building a Vue v2 JS app using Vue-router for Liquid Light

      October

      1. 23rd Set up a new Virtual Private Server (VPS)

      August

      1. 2nd How we use Trello to keep track of our marketing schedule for Liquid Light

      July

      1. 13th Using lego to build a device lab for Liquid Light

      May

      1. 27th 12 favourite atom tips and shortcuts to improve your workflow for Sitepoint
      2. 20th CSS frameworks and why you should make one
      3. 4th Creating a custom Mailchimp template with layout variations for Liquid Light
      4. 4th Small code snippets for Alligator.io

      April

      1. 20th Making Craft CMS work with Prism JS using pre and code blocks
      2. 11th Newsletters for Front-end developers

      March

      1. 22nd How do I update to Gulp 4? for Liquid Light
      2. 6th Download files via command line
      3. 4th Get background image information if element has a one in jQuery

      February

      1. 15th Raspberry Pi: what is it and why do i need one? for Liquid Light

      January

      1. 29th My Dream: Multi-room audio with Chromecast and central music server
      2. 25th YouTube videos vs self-hosted: Which one is better for you? for Liquid Light

  10. 2015 (13)

      December

      1. 10th Building a 3D printer - tips, hints and links
      2. 3rd Let's drop IE8 for Liquid Light

      November

      1. 2nd Responsive Typography in SCSS for Liquid Light

      October

      1. 11th Use a Raspberry Pi with multiple WiFi networks

      September

      1. 25th Making a filming, photographing, auto-tweeting bot

      June

      1. 17th Export Locko to 1Password
      2. 17th Raspberry Pi Timelapse
      3. 4th The Arduino Uno and a Mac

      April

      1. 30th Using Slack to Improve Team Communication for Liquid Light
      2. 13th Setting Up Your Raspberry Pi for Input and Output
      3. 1st Hacking with a Raspberry Pi: An Introduction

      March

      1. 10th Git for Beginners: An Overview and Basic Workflow for Liquid Light

      February

      1. 12th Filtering Tables with jQuery

  11. 2014 (17)

      December

      1. 15th HTML Newsletters - Design Considerations for Liquid Light
      2. 3rd PHP Classes - Explained

      November

      1. 11th Creating SVG Sprites using Gulp and Sass for Liquid Light

      September

      1. 22nd My Local Bike Shop in Brighton

      August

      1. 7th Working with SVGs in Sprites for Liquid Light

      July

      1. 25th Hovélo - a new Hove-based cycling group

      June

      1. 19th 10 moments I hate about cycling
      2. 10th Remaking the Sass News Newsletter
      3. 6th Make Anchor CMS work with its files elsewhere

      May

      1. 22nd Advanced Gulp File
      2. 13th Ignoring libraries in git
      3. 8th Bower

      March

      1. 24th An Introduction to CSS Preprocessors
      2. 17th A basic SCSS compilation gulpfile.js

      February

      1. 23rd Sass Rule Layout
      2. 18th Be a Better Road User
      3. 4th From Less to Sass

  12. 2013 (11)

      October

      1. 23rd A placeholder mixin - for Less and Scss
      2. 19th Compiling Less on the Command Line
      3. 19th Git tab autocomplete

      July

      1. 29th Trailwalker 2013

      June

      1. 3rd My Media Centre Solution

      May

      1. 22nd Forget-me-not
      2. 18th Wordpress - Pulling An Archive
      3. 13th Points

      February

      1. 21st A world without the web
      2. 15th Starting Afresh, Starting Anew

      January

      1. 3rd Setting up a local development server for 12 Devs of Christmas

  13. 2012 (18)

      November

      1. 11th Sass - Hidden Gems

      August

      1. 29th Start Your Own Event for .net magazine

      July

      1. 19th I hate road cycling
      2. 11th Future of Web Design - May 2012 - Day 1

      June

      1. 30th ratio - a mikestreety app
      2. 23rd Domains - Pitfalls and Propagation

      May

      1. 18th #PHPFED - Variables
      2. 16th I bloody love twitter
      3. 10th #PHPFED - Includes
      4. 9th Points Brighton - The Aftermath
      5. 6th PHP for Front-End Devs; The Story
      6. 5th Github for PC and setting up a local testing environment

      February

      1. 29th Points mean Pixels
      2. 26th Dahon Vitesse Speed D7
      3. 16th My Favourite 5 Books - A smashing story
      4. 7th HTML5 - Explained. Briefly
      5. 4th The Commute: The Rant

      January

      1. 24th It's My Way or the Highway. Not.

  14. 2011 (7)

      May

      1. 19th Chilly's Dip

      March

      1. 16th Public Relations
      2. 10th Limit Items (e.g. News posts)

      February

      1. 21st Redirect to one central domain - htaccess
      2. 16th Get an 'Even' Class
      3. 14th Giving something a 'Last' Class
      4. 4th Using PHP to get the dimensions of an image

  15. 2010 (7)

      November

      1. 17th Creating a HTML Email

      October

      1. 5th Designing for Mobile

      June

      1. 25th Wiitar: Combining the Wiimote, MAX/MSP and Mainstage
      2. 2nd The next step...

      April

      1. 22nd Twitter; Twettle
      2. 21st Twitter; Twintergration
      3. 20th Covers and Remixes

  16. 2009 (4)

      January

      1. 29th Geeks
      2. 28th To Know or Not To Know
      3. 27th Thoughts...
      4. 25th CSS - The basics