Simple Charting with BoxLang / / No Comments Building a BoxLang and want to know how to do charting with it? The answer is simple… don’t! I kid! Sorry, but for many, far too many, years now I’ve argued that ColdFusion should not include a charting library. It’s a server-side language, and in my (definitely not) humble opinion, client-side code doesn’t belong there. (I’m fine not worrying about that though – I trust that team knows their clients better than I do and knows what they’re doing.) The good news (again, imo) is that BoxLang doesn’t ship with an embedded client-side charting library. That being, I can absolutely see cases where you may be building a web app in BoxLang and want... more → Posted in: JavaScript Tagged with: BoxLang, Charting, simple
The Map of Nazi Camps & Ghettos / / No Comments The USHMM Encyclopedia of Camps and Ghettos is an interactive map documenting camps, ghettos, and Nazi-run sites of persecution across Europe and North Africa. This powerful digital tool brings to life one of the most staggering realities of the Holocaust: the sheer number and geographic reach of sites where millions were imprisoned, enslaved, and murdered between 1933 and 1945. Created by Maps Mania… more → Posted in: Interactive Maps Tagged with: Camps, Ghettos, Nazi
Extracting Data from Web Pages with AgentQL and BoxLang / / No Comments I discovered AgentQL a few weeks ago and have been thinking about it quite a bit. In a nutshell, it lets you perform queries against a web page. They’ve got a simple query language that kinda reminds me of GraphQL, but simpler. So for example, consider the page you are on right now – if I wanted to get the tags, I could use this query: { tags[] } And it would return: { "tags": [ "#development", "#boxlang" ] } What if I wanted the links? I could change my query to express this: { tags[] { label url } } And then get: { "tags": [ { "label": "#development", "url":... more → Posted in: JavaScript Tagged with: AgentQL, BoxLang, data, Extracting, from, Pages
The Death of Local News / / No Comments One in three U.S. counties now has no full-time local journalist – a staggering 75% decline over the past 23 years. This collapse means communities across the country lack “even one full-time reporter to cover all of the schools, the town councils, the economic development projects, basketball games, environmental decisions, local businesses, and local events.”To document this crisis, Rebuild Maps Mania… more → Posted in: Interactive Maps Tagged with: Death, local, News
Cleaning Up My Print View with CSS Media Queries / / No Comments I don’t know why this popped into my head today, but I was thinking about the print version of this page, and others, and what steps could be done to improve the result. Specifically, I was thinking a lot about what should be hidden from the print version as it has no real meaning on paper, or in PDF. With that in mind, I did a quick test – just how well do my pages print now? You can see the result below: Honestly, I think that’s just fine! And I give a lot of credit for that to the blog design I paid for and implemented years ago. That being said, note that on page 6, the real content ends and the entire rest of the page, and all of page 7, isn’t really important.... more → Posted in: JavaScript Tagged with: Cleaning, Media, print, Queries, View
Using GenAI to Create a SDK from Sample Code / / No Comments I’ve been experimenting more and more with AI-assisted coding (not gonna call it vibe coding, even when I do), and the results have been incredibly interesting. Today, I decided to try something interesting – generating a SDK for an API. There are multiple tools out there that can convert an OpenAPI specification to an SDK (and those tools I’ve seen are pretty darn cool), but I wanted to attempt another route. Earlier this month I blogged about the new Foxit PDF APIs I’m working with. These APIs are all really simple, which is good of course, but when prepping for the release, I wanted to build code samples for every possible operation. I did so, and they’re up in... more → Posted in: JavaScript Tagged with: code, create, from, GenAI, Sample, using
Institute for Men Says Women Are Underpaid / / No Comments The American Institute for Boys and Men has released an interactive map highlighting the declining percentage of men in college enrollment and graduation. But the most striking revelation isn’t the gender gap in enrollment and graduation but the persistent earnings gap that follows. That’s right – despite women being more likely to enroll in and graduate from college, they are far more likely to Maps Mania… more → Posted in: Interactive Maps Tagged with: Institute, Says, Underpaid, Women
Creating a Calendar with BoxLang – Part Deux / / No Comments Earlier this week I posted a quick look at building a simple calendar with BoxLang, specifically an HTML one meant for a web page of course. This was a bit complex due to the needs of creating a proper HTML table, but generally I was… ok with the result. Yeah that’s nice and vague, but there’s some code I could state at and think of alternatives for nearly forever and it’s ok to just put it down and walk away. So obviously, I’m returning to it today. Specifically, how to get events on the calendar. Sample Data I started off with some sample data. Initially I thought about finding something online, perhaps a list of holidays, but I really wanted something good for... more → Posted in: JavaScript Tagged with: BoxLang, calendar, creating, Deux, part