My ColdFusion 2025 Hackathon Submission – QuickTracker

Earlier this month, the ColdFusion team announced a hackathon that started today, and ends Monday night. Full disclosure, when I saw the announcement, I thought that the date range is when things had to be turned in. I spent a few hours on what I’m going to share below, but when I found out that the intent was to start today, I wrapped up and stopped. My submission only took a few hours, and outside of a quick readme update today, I feel fine with my submission. And heck, it was fun to build, so I don’t really care if I win (ok, that’s a bit of a lie). With that out of the way, let me share what I created, QuickTracker.cfm. QuickTracker.cfm is based on a tool first built by... more →
Posted in: JavaScript

Using BoxLang’s Cache Services

Recently I’ve been looking at BoxLang’s Caching service, mostly because the docs were updated which made it easier to dig into it. 😉 My usual expectation for a caching service is typically a key/value system with APIs to get and set and hopefully a simple way to handle expiration. So for example, I can idealy store a cache value and an expiration values at the same time, and if I fetch it later and it’s expired, I get a nice null value back. As I said, that’s the ‘baseline’ for what I expect, so I was kind of blown away, and a bit overwhelmed honestly, with what you can do on the BoxLang platform. At a high level, here’s some of the details: Out of... more →
Posted in: JavaScript

Code Break Tomorrow – Desktop Apps with Python

Greetings, programs. Tomorrow (June 10th) at 12PM CST (Cool Standard Time), I’ll be hosting my next Code Break, "Build Desktop Apps with Python and Flet". My last two sessions covered building desktop apps with Tauri, a TypeScript/Rust platform, so I’m looking forward to playing with a Python version of the same idea. You can RSP at the link above, or watch right here: Play Video Raymond Camden… more →
Posted in: JavaScript

Links For You (6/8/25)

Welcome to another edition of my "this was supposed to be down on Saturday" biweekly list of links. Yesterday my wife and I made pretzels at home for the first time. It was a rather simple recipe that didn’t need any boiling and they came out incredible. We also watched the new Predator movie, Killer of Killers, which was quite spectacular. I definitely recommend watching it when you can. Ok, on with the links! Releative Colors in CSS CSS never ceases to amaze me, despite me knowing I’ll never be really good at it. In this article by Ahmad Shadeed, he introduces the concept of native color modifying in pure CSS. Ie, taking one base color and changing it to be lighter or... more →
Posted in: JavaScript

Working with the Mastodon API in BoxLang

So remember a long time ago (Tuesday), when I blogged about using the Bluesky API with BoxLang? As expected, I’m following that up today with a look at using the Mastodon APIs. Personally, I’m down to just two social networks, Bluesky and Mastodon. Originally I was using Mastodon a lot more, but I’ve been vibing with Bluesky more lately so I tend to check it more often. That being said, whenever I release a new blog post, I’ve got an automated process to post to both, so I thought I should cover both for BoxLang as well. Even better… I already did this in ColdFusion! Way back in October 2023, I blogged about the topic and even shared a simple ColdFusion component... more →
Posted in: JavaScript

Working with the Bluesky API in BoxLang

I’ve built multiple integrations with the Bluesky API, all making use of either the Node or Python SDK, but I thought I’d take a quick look at what it would take to build a BoxLang integration using the REST API. Turns out it’s pretty easy (with some caveats I’ll explain at the end) – here’s what I built. Authentication To authenticate, you’ll need your username and password for your account. I’m picking this up via environment variables and doing a bit of validations: BS_HANDLE = server.system.environment?.BLUESKY_HANDLE ?: ''; BS_PASSWORD = server.system.environment?.BLUESKY_PASSWORD ?: ''; if(BS_HANDLE == "" || BS_PASSWORD == "")... more →
Posted in: JavaScript

Parsing Markdown in BoxLang – Take 3

Ok, so I promise this will be my last post on using Markdown with BoxLang. At least the last one this month. 😉 I first covered the topic last month, "Parsing Markdown in BoxLang" where I demonstrated using the Flexmark Java library in BoxLang code. I then followed up with a revised edition that used BoxLang’s Java integration a bit nicer. So, those posts are still very valid, still useful for showing you how to make use of the JVM from BoxLang, and with the vast library of open-source Java stuff out there, that’s a good thing. But… you don’t need to do any of that for Markdown, because now it’s even easier! If you prefer to consume this post while listening... more →
Posted in: JavaScript

Code Break Tomorrow

Just a quick note to let my subscribers know that my next Code Break session will be tomorrow, May 19th, at 12PM CST. I plan on continuing my look at Tauri, a platform for using the web platform to build desktop apps. Depending on how much time I’ve got, I may also start playing with a Python platform as well. You can RSVP, or just watch, here: https://cfe.dev/talkshows/codebreak-05192025/. Raymond Camden… more →
Posted in: JavaScript
1 2 3 97