Mapping the Light: Sunrise & Sunset / / No Comments Sunrise and Sunset is an interactive map that displays the sunrise and sunset times for any location on Earth, for any day of the year. It also visualizes the sun’s altitude throughout the seasons.By moving the white dot around the calendar ring, you can change the date to view how daylight hours shift across the year. A yellow curve tracks the sun’s altitude above the horizon from dawn to Maps Mania… more → Posted in: Interactive Maps Tagged with: Light, Mapping, Sunrise, Sunset
Links For You (7/5/26) / / No Comments In my last links post, I hinted that I may have some good news on the job front, and if you follow me on LinkedIn you already know that I’ve signed on to my next gig. Tomorrow morning I’ll share on here (and on LI) details about the new gig, but I am beyond excited about this new job. With that out of the way, how about some happy links for what’s going to be a really dang good week? JavaScript in the Shadows As one of the new proposals for JavaScript, the ShadowRealm API is pretty interesting. It allows for the creation of a realm, or in my mind, an environment, with JavaScript that is 100% disconnected from the main environment of your browser window. Mat Marquis gives a great... more → Posted in: JavaScript Tagged with: 7/5/26, links
Rainbow Nation / / No Comments The New York Times has published An American Mosaic, an interactive map visualising the self-identified ancestry of Americans using data from the U.S. Census Bureau’s American Community Survey. The map is accompanied by an article which explores how today’s America reflects centuries of immigration and migration.The map uses colour to show the dominant ancestry in each census tract, drawing on Maps Mania… more → Posted in: Interactive Maps Tagged with: Nation, Rainbow
Building Custom Form Selection Boxes – Working on Accessibility / / No Comments Whenever I find myself needing to update a previous blog post, I either correct it inline and add a small note on top, for small tweaks, or write a whole new piece for larger changes. My last blog post talked about how to use CSS to style a "block" such that it acted like a form radio button. When I worked on that demo, I was a bit worried about accessibility. I did one quick check with an online tool, and thought I was ok. I was not. When I shared my post on LinkedIn, Kevin Bonett shared this feedback with me: I would argue that, despite using correct semantic HTML, the “custom” radio buttons are inaccessible. If you’re a sighted keyboard user, how will you know... more → Posted in: JavaScript Tagged with: accessibility, Boxes, building, custom, form, Selection, working
Building Custom Form Selection Blocks – no JS, all CSS / / No Comments I apologize for what may be a slightly misleading title. The topic for this post is something I’ve had on my list of things to explore for some time now, and while I wait for the new job to start, I’ve found myself with time to kill. Let me explain what I’m talking about and hopefully it will make a bit more sense. You are, dear reader, familiar with form controls and how to build forms both big and small. One type of user interface I’ve seen from time to time is the ability to select an item where the "item" is an arbitrary block of code. What do I mean by that? Typically a choice element in a form is either a select, checkbox, or radio set. But I’ve seen... more → Posted in: JavaScript Tagged with: Blocks, building, custom, form, Selection
Geographical Overlords / / No Comments This morning I listened to the song Geographical Overlord by MastaMic and Titus Chan. What immediately grabbed my attention was that the song’s lyrics are a series of questions and statements that might be found in a school geography exam about Hong Kong, e.g.,”Is Lion Rock higher than Fei Ngo Shan?Is Tai Mo Shan higher than Phoenix Mountain?…Gascoigne Road to Hung Hom Tunnel is incredibly Maps Mania… more → Posted in: Interactive Maps Tagged with: Geographical, Overlords
Use AI to not use AI (as much) / / No Comments This squarely falls into the "everyone probably knows this but it didn’t click with me right away" category so please feel free to laugh at my ignorance, but it’s something I realized over the past few months, and as I just used this technique this morning, I figured I’d share it on the blog. The idea is simple – it’s trivial to ask a Gen AI tool to do something for you – and depending on the ask, may work great. But what I realized a few months back, especially in regards to having AI parse data, is that you can also use the opportunity to generate a tool (like a Python or Node script) so you don’t need to return to the AI tool again. This... more → Posted in: JavaScript Tagged with: Much
This is Not Normal / / No Comments In the UK, the hottest June day on record has been broken three days in a row. And it’s not just the UK experiencing unprecedented levels of heat. France, Switzerland, Spain, Germany, Belgium and the Netherlands have also recorded their highest-ever June temperatures in the past week.You can get a sense of the scale of the heat dome currently sitting over Europe with the European Heat Maps Mania… more → Posted in: Interactive Maps Tagged with: Normal, this