Writing
Thoughts on JavaScript, runtimes, compilers, developer tooling, and engineering leadership.
All Posts
Chatting with an old friend
C++ Pointers for JavaScript/TypeScript Developers
Understanding pointers in C++ is a great way to deepen your understanding of programming. Here's a guide to help you get started.
My first year living in London
JavaScript format number
This is the best way to modify your JavaScript format number. Add decimals or commas to a long number for currencies or units.
Musings on Developer Relations
Interested in becoming a developer relations engineer or doing developer advocacy? Here are my thoughts four months in as well as my predictions for devrel in 2022.
GitHub find which PR deleted a file
How can you find which GitHub PR deleted a file in your repository? Using a git command and a special GitHub link you can find when the file was deleted.
Chasing accurate analytics: Server-side vs client-side analytics
Have you ever wondered if you should be using server-side or client-side analytics? Let's compare them across accuraccy, performance and ease.
Human Partner: How AI and Assistive Technology is Making Humans More Productive
A Content Security Policy for Google Analytics
How to add custom headers to Eleventy with Cloudflare Pages
Cloudflare pages just announced support for custom headers. Here's how to add them to your Eleventy site.
I minted (and sold) my first NFT
I spent the weekend learning about NFTs. What is minting? How do they work? How to safely buy NFTs? Here are my findings.
Chrome DevTools Console Drawer
Here are six cool things you can do with the Console Drawer inside the Chrome DevTools.
JavaScript math methods I never knew existed
Introduction to cryptocurrencies
How to join Developer DAO
Switching to DevRel from Engineering
Here are some random thoughts I've had about making the transition from product engineering to developer relations
On Interviewing...
The age of the devtool startup
React Aria - A better approach to design systems
Exciting movement in JavaScript tooling
Wasted real estate: Blog homepage design
Your blogs homepage is your one shot to make a good impression. Why are so few people making the most of it?
On leaving a great job
A bit of personal news. Today is my last day at Adobe.
Best online node js editor
jquery vs node.js
The JavaScript ecosystem can be confusing! Let's compare two technologies that often get confused! What is the difference between jquery vs node.js?
Stable Node Versions
How to find the latest stable node versions and what does stable or long term support actually mean
Get React Version
How to get react version from any app running React.js. React actually exposes the version in the core object.
How to update node js
Want to learn how to update node js? This guide will show you how no matter which tool you used to install node.js in the first place!
JavaScript if else syntax
Learn the syntax for doing JavaScript if else statements. If you're looking for if, else, else-if syntax this is for you.
Increase Gatsby performance with Webpack Bundle Analyzer
Learn how to use Gatsby, webpack-bundle-analyzer, npm and the Chrome DevTools to increase the performance of your site!
Setting up Gatsby Webmentions on your site
Learn how to display Webmentions from your favorite social networks on your Gatsby site
Webmention playground
Introduction to async JavaScript
All I wanted was pretty links
Improving my content diet
I made a political twitter account for a week
Compiler Resources
Best blog designs I want to steal everything from
Choosing a blogging platform: Gatsby vs. Wordpress vs. 11ty
Patreon layoffs seem cruel
Avoid Rendering Empty Content with font-display: swap
Working with people who are smarter than you
10 years is a long time
Suspend a React Component from the DevTools
A weird login flow
My first month as a remote worker
Outages and blame culture
Managing Immutable State with Object Spread
Compiled vs. Interpreted Languages
Numbering a list with CSS!
Eleventy has me feeling more connected with my website
Easier Type Safety in JavaScript Classes
Writing a Babel plugin to convert arrow functions to function expressions
Getting Started with ASTs
Lighthouse Error: Content is not sized correctly for the viewport
Add a Service Worker to Jekyll blog on GitHub Pages
I need to refresh my blog!
Staying Mostly Safe Online
With massive hacks everywhere, its more important than ever to learn how to stay safe online.