The story of how Google could have killed Facebook with the flick of a switch
As we near the end of this decade, and more importantly the end of the hell that was 2020, I realised two things. First, I survived catching Covid-19, and secondly that I had a good story about the...
View ArticleUploading a signed video to Cloudinary: a code example
Cloudinary is a fantastic cloud service for storing, serving and transforming images and videos. However the documentation for uploading an image or video from the browser, in a secure fashion, are...
View ArticleForwarding an email with attachments using SendGrid and Formidable
SendGrid.com is a great service for sending emails programmatically, but it also has an InboundParse feature that will call your webhook for any emails sent to your domain. It can be useful to forward...
View ArticleBuilding Countdoku, a multiplayer Sudoku Web app
tldr: I’ve built a multiplayer Sudoku game which you can play at Countdoku.app. Read on if you are interested in the technical details, (they’re cool, honest!) Many years ago I became interested in...
View ArticleKidz Fun Art – Tablet app for kids
I’ve built a fun new app for young kids, called Kidz Fun Art. Get it at https://kidzfun.art. I’m a software engineer, but far more importantly I’m the happy dad of two amazing girls, currently 4 and 6...
View ArticleReact.js: The Documentary
In mid-2022 I had a great time taking part in a documentary about the JavaScript framework ReactJS by the good people at Honeypot, along with many wonderful engineers who also played a part in its...
View ArticleReact.js: The Documentary & Q&A
In 2022 I had the great pleasure to chat with Ida Bechtle (https://twitter.com/BechtleIda) as part of a retelling of the early story of the creation of the React.js JavaScript library (I wrote about...
View ArticleUsing Bun.js as a bundler
Bun.js is a new (as of 2023) JavaScript runtime that is still very much in development, with it’s primary focus being on extreme speed. I’ve been following it for a while but until today haven’t had a...
View ArticleInstant colour fill with HTML Canvas
TLDR: Demo is at https://shaneosullivan.github.io/example-canvas-fill/ , code is at https://github.com/shaneosullivan/example-canvas-fill . The Problem When building a website or app using HTML...
View ArticleLightweight NextJS example of uploading files to Google Cloud Storage
Many years ago, back in 2018, I wrote a tiny NPM package called gcloud-storage-json-upload, which lets you authenticate with Google Cloud Storage and upload a file without needing to install any huge...
View ArticleHow to clean up after your NextJS dev server
Sometimes you need to modify files when building a web application that must be reverted before committing. In my case I’m building a Chrome extension that reads from a NextJS based web service, and...
View ArticleHow to list all files in a browser’s Origin Private File System
In case you’re working with the Origin Private File System on a browser whose dev tools don’t yet support browsing the files (all browsers as of Nov 2023, though Chrome does have an unofficial...
View ArticleQuick chicken soup recipe for sick people
Thanks to ChatGPT for this recipe with no stupid SEO in it. Total time to make: 80 minutes if you’re a normal slow chopper of vegetables (like me), 50 minutes if you’re super fast with a knife. For a...
View Article
More Pages to Explore .....