How Climate Change is Destroying Crops / / No Comments Carbon Brief has analyzed global media reports to identify where and how extreme weather events have destroyed crops over the past two years. In How Extreme Weather is Destroying Crops Around the World, Carbon Brief has mapped this analysis, highlighting 100 instances of crops being lost to heat, drought, floods, and other extreme weather events in 2023-24.The colors of the 100 markers on the Maps Mania… more → Posted in: Interactive Maps Tagged with: Change, Climate, Crops, Destroying
Building a File Search Script in BoxLang / / No Comments My initial blog post on BoxLang used a simple script example to demonstrate how the language can be used to build shell script type utilities and it got me thinking about other ways I could use BoxLang for my own personal tools. A little over three years ago, I blogged about a Python script I built to perform searches, locally, against my blog. My blog content comes from near seven thousand Markdown files and while I’ve got a good client-side search feature, I was curious what I could from the terminal. That script did two things: Index each of the thousands of Markdown files by reading in the content and parsing the filename into a date and path value Taking search input and checking... more → Posted in: JavaScript Tagged with: BoxLang, building, file, Script, search
Building a Web App with BoxLang / / No Comments I’ve been building web apps for thirty years now, which frankly is kind of scary to see explicitly spelled out. For a large chunk of that time I built web apps using an application server, ColdFusion, where my templates would dynamically output HTML (or other formats like JSON) to return to the browser. For my non-ColdFusion readers out there, you can just replace ColdFusion with PHP or ASP and you get the basic idea. Most recently, I’ve spent a lot less time on the server and more on the front-end, but I kept coming back from time to time. Earlier this year I looked at building a simple blog in the Python-based Flask framework. I thought it would be a good exercise to try something... more → Posted in: JavaScript Tagged with: BoxLang, building
The Gulf of Kleptocracy / / No Comments Apple Maps has joined Google Maps in kowtowing to the maggot infestation of U.S. geopolitical policy. This means you might want to bookmark OpenStreetMap, Bing Maps or Mapquest, – who now seem to be the only interactive map providers still interested in maintaining geographical accuracy.As well as continuing to use the correct place-name label for the “Gulf of Mexico,” MapQuest has also Maps Mania… more → Posted in: Interactive Maps Tagged with: Gulf, Kleptocracy
Using Intl.DurationFormat for Localized Durations / / No Comments Last year I had the opportunity to give a talk on the web platform’s Intl specification. This made me incredibly happy because in preparing for the presentation, I discovered so many cool features and capabilities of the spec that I had no idea existed. Almost a year ago, I wrote up a blog post on Intl.RelativeTimeFormat, talking about how the API was easy to use, but perhaps a bit difficult when dealing when determining the best values to use when formatting dynamic dates. Today, I’m going to turn my attention to a related spec, Intl.DurationFormat The Basics The DurationFormat API works like so: Given a locale (defaulting to the browser’s locale) Given a set of values representing... more → Posted in: JavaScript Tagged with: Durations, Intl.DurationFormat, Localized, using
What If Asteroid 2024 YR4 Hit Your Town? / / No Comments According to NASA, Asteroid 2024 YR4 has a 2.3% chance of impacting Earth on December 22, 2032. The asteroid is estimated to be between 40 to 90 meters (130 to 300 feet) in diameter.If you want to know what damage Asteroid 2024 YR4 might cause if it lands in your backyard, you can use Neal.Fun’s Asteroid Launcher to find out.According to Neal.Fun’s Asteroid Launcher, if a 200-foot diameter rock Maps Mania… more → Posted in: Interactive Maps Tagged with: 2024, Asteroid, Town
Building Serverless Lambda Functions with BoxLang / / No Comments I’ve been a fan of serverless for quite some time. My introduction to it was OpenWhisk, way back in 2016. It’s been appealing to me for a long time as an easy way to deploy lightweight services quickly. As much as I’ve been a fan of the technology, I’ve yet to really embrace Amazon’s Lambda product. I’ve played with it a bit off and on in the past, but it always felt incredibly overwhelming. Netlify Functions, Pipedream, and Cloudflare Workers have been my main tools for serverless just because of how simple they are. That being said, the last few days I’ve been playing with BoxLang on AWS and thought I’d share my experience. The Basics So let’s... more → Posted in: JavaScript Tagged with: BoxLang, building, Functions, Lambda, Serverless
Introducing BoxLang – Scripting for the JVM / / No Comments The last week or so I’ve been playing with a new language, which honestly is one of the most fun things I get to do. BoxLang is a dynamic scripting language that runs on the JVM although you don’t really need to know a thing about Java to make use of it. It’s currently in beta and moving towards an official 1.0 release, but you can absolutely kick the tires on it now (as I have!) and I thought I’d share a bit about what I’m doing with it. BoxLang is open source and free, with the company behind it, Ortus Solutions, offering professional services on top. If you come from the ColdFusion world, you know Ortus has been around a while and has created a huge amount of... more → Posted in: JavaScript Tagged with: BoxLang, Introducing, Scripting