I joined @resonatecoop yesterday. I never signed up for any music streaming until now, because they're all clearly scams preying on both listeners and artists: Listeners have. . . Read more
Blog
CSS Naked Day 2020
If the site looks broken, it's not. It's my website without CSS!
I love that this reset is so small and doesn't try to completely crush the default styles of browsers. Also, I join the entire webdev community in. . . Read more
Scott Jehl reminds us what the ideals of all websites should be. Read more
Offline Content list using microformats
Build rich, informative offline content lists using the structured data in your microformatted HTML.
<picture> with prefers-color-scheme media query
Another way to adapt your media to dark mode.
Progressive Web Apps for all Drupal sites
Announcing a new Drupal module that enhances your existing site with drop-in support for Progressive Web App functionality.
Moving to Matomo
To eliminate third-party tracking on my website I have transitioned off Google Analytics and am now using Matomo.
Receiving Webmentions
I've moved exclusively to Webmentions instead of using a more traditional commenting system. Respond to this entry by linking to it from your own website!
Collecting Brave Rewards on GitHub Pages
A guide to verify your USER.github.io domain with Brave Creators.
Enhancing HTML with Service Worker Cache
Using the Service Worker offline cache to progressively enhance static content.
Brave Rewards
Brave offers a new compensation model for web publishing. Instead of relying on third-party advertising, sites can be paid directly by visitors using digital currency.
Getting started with Bare Conductive TouchBoard
Learning how to program Arduino in the open. This time I'm learning how to use the Bare Conductive TouchBoard Pro kit.
Building an automated greenhouse with Arduino
Learning to program Arduino in the open. Building a small, automated greenhouse using sensors and hobbyist-grade electronic components.
Display temperature and humidity data on an LCD
Learning to program Arduino in the open. Showing real-time temperature and humidity data on a liquid crystal display.
Powering NeoPixels with Johnny Five and Socket.io
Learning to program Arduino in the open. This experiment involved the Johnny Five platform and Socket.io, allowing me to power an Adafruit NeoPixel from my pet project bustashape.
Using Johnny Five to power NeoPixels
Learning to program Arduino in the open. This experiment involved the Johnny Five platform, allowing me to power an Adafruit NeoPixel with JavaScript.
Arduino analog signals and input smoothing
Stabilize inconsistent analog input signals with input smoothing. Some basic math operations help us collect more reliable data.
LilyPad Arduino LED Biking Jacket
Using the LilyPad Arduino to build a LED turn-signal system into a jacket, increasing night time safety for bicyclists.
Arduino soil moisture sensor
Learning how to program Arduino in the open. This experiment involved a soil moisture sensor and an Arduino Uno.
LilyPad Arduino LED Purse
Learning how to program Arduino in the open. This project used the LilyPad Arduino to decorate a purse with LEDs.
Debugging Arduino sensors with the Serial Plotter
Learning how to program Arduino in the open. This experiment involved a light sensor and Arduino IDE's Serial Plotter.
LilyPad Arduino and light sensors
Learning how to program Arduino in the open. This experiment involved a light sensor and pulse width modulation.
Using CSS to animate border-radius
A fun little technique to add depth and subtlety to your design.
CSS Transforms Level 2: shorthand properties
A preview of an upcoming web standard that lets you use a shorter, more reliable syntax for simple CSS Transforms.
Displaying a user's offline content list
Learn how to display a list of user-saved articles when they return to your website while offline.
Practical uses for the Physical Web
A few practical uses for Physical Web beacons that can benefit regular people.
Collaborative art powered by web sockets
A tech overview of my side project for creating art on the web.
Debug non-secure localhost with a proxy
Certain new features of the Web Platform require a secure origin, complicating local development and testing. Use a network proxy to make testing localhost on real devices easy!
Offline Content with Service Worker
Learn how to add content to the Service Worker cache at the request of the visitor, then serve it offline.
Vetenskapsfestivalen Göteborg 2016
I had the pleasure of participating in Vetenskapsfestivalen Göteborg 2016 (Vetfest for short). Afra and I took part in an installation centering around bustashape, a site we're. . . Read more