Over on Brush Ninja I’ve been working on a free embeddable drawing app called Paint Ninja. If you’ve ever used Procreate or the classic MS Paint from the ’90s, you’ll feel right at home with this.A Fun Creative ToolBrush Ninja...
INP stands for Interaction to Next Paint. It measures the time between a user interaction, like a click, and when something happens on the page, such as rendering or painting. A shorter INP means a faster and more responsive site.Late...
My friend Alex Denning recently asked me to write some bits about TimThumb for an article he was putting together.The main purpose of TimThumb was to dynamically resize images on websites, making it easier for web developers to manage their...
Someone recently pointed out my post on new computer software (from 2007 😳) and going through it I realized how much things have changed in computer software. Previously, I was on Windows, and I’ve now switched to Mac, but that’s...
I recently needed to create my first custom element - a custom color picker. I wanted to improve the color picker feature on Brush Ninja however I couldn’t find an existing solution that met my needs so I decided to...
I am thrilled to share with you the exciting journey behind my latest creation - a free web based drawing app that will unleash your artistic potential. Inspired by popular drawing apps like Microsoft Paint and Procreate on iOS, this...
I recently encountered a frustrating issue while using flexbox for a 2 column layout on Brush Ninja. One column could have any width, while the other had a fixed width for a skyscraper advert. However, I faced a problem where...
In writing about creativity and AI recently, I started reflecting on my own creative process. While I love making things, I’ve always questioned whether or not I’m truly creative. However, I’ve come to realize that my creativity stems from gathering...
I recently read a tweet claiming that in just a few months, individuals would be able to create Pixar-level movies on their home computers using artificial intelligence (AI). While this idea may sound exciting, the reality is that it’s not...
I’ve been thinking a lot about how I develop projects and what makes my projects uniquely mine. As of November 2023, I have four sites that I am actively working on: Binary Moon, Brush Ninja, Ninja Puzzles, and WPBriefs. Despite...
As a solo developer, I often find myself seeking ways to optimize my code without the luxury of pair programming. That’s where ChatGPT comes in handy. In this blog post, I’ll share my experience of using ChatGPT to improve the...
I recently made ElementalCSS, my CSS framework/library, public. I created a website and added it to a Github repository. It was an exciting step for me as a developer, and I was thrilled to see people taking an interest in...
When I first started in web design (in the late 90’s), there was a lot of emphasis on learning about file formats, file naming conventions, and other technical aspects that don’t seem to be talked about these days. It’s easy...
Last week, I took on the challenge of creating a country flags game for Brush Ninja using Reef.js. It was an interesting project, and I shared my process in the blog post. Today, I am pleased to announce that the...
When I build things for the web, I prefer using vanilla JavaScript as much as possible. However, for more complex projects, I also like to use Reef.js. The Brush Ninja animated gif maker is built with Reef.js, as are the...
As a parent, I’m always on the lookout for fun and educational tools to help my 7-year-old son improve his skills. One of his current obsessions is computers, so I decided to create something specifically tailored to his interests -...
I was updating WPBriefs the other day and noticed something exciting - the most recent episode happened to be the 100th! It’s amazing to think how far this podcast has come since its humble beginnings. As I write this, we’re...
I run a whole stack of websites, and as the number keeps growing, I was finding it harder to manage them all; so I decided to make a central control panel to manage them all efficiently. In this blog post,...
Today I received an unsolicited email from a website called FestingerVault. They had created a WordPress account on their website using my email address, even though I had never heard of them before.But it didn’t stop there. Shortly after that,...
As I have gotten older, I have realized that caring less about what people think has brought me a great sense of freedom. In the past, I used to follow all the latest trends in tech, constantly trying to keep...
The other day, I mentioned that I am using AI to help with my blogging. But it’s not what you might think. The AI isn’t writing the posts in their entirety. I still want the content to reflect my own...