All Episodes

October 24, 2025 23 mins

2025-10-21 - News - Episode 243

Hosts: 
- Eric Peterson - Senior Developer at Ortus Solutions
- Jacob Beers - Senior Developer at Ortus Solutions

summary

In this episode of the Modernize or Die Podcast, Eric Peterson and Jacob Beers discuss the latest updates in ColdBox and BoxLang, including the release of ColdBox 8 and its new features, the introduction of SocketBox for WebSockets, and performance improvements in BoxLang 1.6. They also share tips and tricks for ColdBox, explore AI integration with development tools, and highlight community updates and upcoming events.

Takeaways

  • ColdBox 8 introduces significant changes and new features.
  • The new ColdBox template includes a dev container configuration.
  • SocketBox simplifies WebSocket integration in ColdFusion applications.
  • ColdBox tips can enhance debugging and email functionalities.
  • BoxLang 1.6 offers performance optimizations up to 65% faster.
  • AI integration with development tools enhances coding efficiency.
  • New modules like BX charts and BX LDAP are now available.
  • Community updates highlight performance testing in CFML.
  • Upcoming events include webinars and training sessions.
  • Hacktoberfest encourages contributions to open source projects.


Chapters

00:00 Welcome
00:17 Ortus News & BoxLang Updates
14:02 CFML Updates
18:54 Upcoming Events
22:46 Thank You

Keywords
ColdBox, BoxLang, WebSockets, AI integration, CFML, Ortus Solutions, software development, programming, podcast, technology

★ Support this podcast on Patreon ★
Mark as Played
Transcript

Episode Transcript

Available transcripts are automatically generated. Complete accuracy is not guaranteed.
(00:05):
Hello and welcome to the Modernize or Die Podcast.
Glad to have you with us today.
My name is Eric Peterson and I'm joined by Jacob Beers.
How's it going, Jacob?
Doing good, how are you?
I'm doing pretty good.
we got a good show for you today and let's jump into some Ortus news.
We got some big releases that came out in the last couple of weeks.

(00:26):
The first one is ColdBox 8 or as our blog post says, ColdBox the Ocho is here.
The Ocho.
ColdBox 8 is big.
Lots of changes in this one.
We are going to definitely send you to the blog post to read everything about it.
And then choose, you know, one, maybe two of our favorites here.

(00:46):
So, Jacob, how about you?
What is your favorite feature that came out of ColdBox 8?
My favorite feature is the new ColdBox template that we have available.
It's called the 'Modern Template' and it's got a lot of cool things in it.
My favorite part of the template is that there is a dev container configuration fileincluded.
So you can pull down the template and then immediately be running in a dev container.

(01:10):
It's pretty cool.
And for the uninitiated, like myself, a dev container would do what for you.
So a dev container configuration tells VS Code how to spin up uh like a container or aDocker compose file.
But then VS Code actually connects to the container and you work inside of the container.

(01:30):
So it's pretty cool.
get the benefits of a container, but for actual development and replicating yourenvironment and stuff.
nice.
Well, I'm gonna cheat and take two I got an honorable mention which is a co-bots eightruns on What I've affectionately dubbed BoxLang prime That prime.

(01:51):
BoxLang laying without the CFML compat .
We have a fun little graphic for it actually If you go check out the blog post so BoxLangprime is where it's .
Very excited for that
to keep pushing forward BoxLang as the standard and kind of leave some of the oldidiosyncrasies we're all used to behind.

(02:13):
But my favorite has to be the virtual thread support that's coming in with newer versionsof Java.
Just I do a lot with async things in the background and virtual threads are just the cat'smeow for that.
So very excited to start making some executors that are based on that instead of platformthreads.
So there is a lot more for ColdBox 8.

(02:33):
We are just scratching the surface, including things like BoxLang Native with a BXColdBoxmodule.
Completely revamped ColdBox CLI, kind of was mentioned with the new templates.
There's another template, kind of a default BoxLang template that you can use.
AI First development with an MCP server integration.
Our error handler whoops got upgraded with some AI help as well.

(02:58):
So there's a ton.
You can check out the documentation, see what it will take to upgrade.
There are some deprecations that have been in the past that finally got dropped in thisversion.
So definitely take a look at what changed and let us know how it goes for you.
All right, moving along, let's talk about SocketBox.
We've got a new blog post.
I know about it because I read

(03:19):
it. Hello,
WebSockets. So this is an introduction to what SocketBox is and how to uh use it in aColdFusion application or a BoxLang
application. And I've even included a little repo there that you can pull down and run theinstall script and test out locally if you're not familiar with it or you just want to get
started really
Go check that out.
That's actually going to be part of a series.
We've got two or three more blog posts that will be coming out related to that that gointo things like security, how to structure your application, some cool recipes that you

(03:47):
could use in your own app.
So definitely get started with that first one and stay along for the ride.
Awesome.
I still need to jump into this.
mean, I've been in love with WebSocket since I first saw, think it was a JC's demo at oneof the, one of the ColdFusion conferences.
And then sad that I couldn't use it in Lucee as easily, I should say.
And then SocketBox is here and I really need to use it.

(04:08):
I think his last example used SocketBox.
I just haven't got to jump into it.
So.
Yeah.
Well, now's a good time because I've done some WebSocket work with Node.js in the past,and I actually prefer SocketBox.
It was really, really easy to get set up.
And I've always had trouble with having multiple servers using WebSockets in the past, butthat problem is actually tackled head on by SocketBox.

(04:31):
So you just have to provide some configuration and all of your servers will work togetherseamlessly.
That's awesome.
I need to get in on that.
All right, we have a ColdBox tips and tricks series that's been going on.
We got two and a half tips for you.
We got two tips.
One comes in two parts.
The first one, ironically, I was looking for this the other day.
So very glad to see this was, hey, what ColdBox version am I using?

(04:53):
So if you're in CommandBox you can do a package list and see it right there.
If you're inside ColdBox you can get the ColdBox setting version.
And if you're in a module, it's injected into the variable scope as ColdBox version.
Now, why do you need that?
Well, maybe your code needs to know I'm on eight, do something differently, maybe to helpyou with debugging or in module development.

(05:14):
So there's a quick way to get the ColdBox version.
And the next two were about how to up your email game.
this time using a module using CB mail services.
So if you're out there using the CF mail tag, that's great, but you can give yourself somemore superpowers there using the CB mail services module to be able to send to different

(05:35):
locations, even the file system or just an array for testing, depending on yourenvironment or other configuration and sent to multiple different providers.
either sometimes using, you know, good old CFMail SMTP or using APIs that these serviceproviders set up like SendGrid.
So check out CBMail services and check out those two new tips in the ColdBox tips andtricks series on the Ortus blog.

(06:00):
We wanna take a minute.
Excuse me.
We want to take a minute to thank our sponsor, Ortus Solutions.
We have many services and helps that we can help you with.
I want to point you to our blog where we have a few articles that might interest some ofyou about scaling with DevOps, the hidden human factor in ColdBox fusion modernization,
and how on-demand DevOps prevents outages before they happen.

(06:22):
You can check out these case studies and articles.
and see how our team can help you in these and many more other services and situations.
Thank you, Ortus Solutions, for sponsoring this podcast.
All right, shall we jump into some BoxLang news?
Yes, we should.
All right, BoxLang 1.6 is out.
And there's lots of uh awesome stuff with this release, especially concerning performance.

(06:45):
So we've got some extreme performance optimizations, up to 65 % faster.
We've got some improved MCP dock integration, and then a new mini console framework withenhanced Red Bull experience, which...
I haven't personally tried that out, but I've heard some good things about it.
So Eric, why don't you tell me what is.
Yeah.
I was gonna say I got to try the new rebel out a bit and yeah, it's just it's justbecoming a nicer rebel, right?

(07:10):
Like kind of reminds me a little bit of the BoxLang rebel.
So I mean it's it's nice when you need to jump in and be like, wait, does this work thesame way as I remember it?
So absolutely great.
I didn't I don't know what the mini console thing is, but that that excites me so.
Yep, it's a mystery.
day, but one day CommandBox running on BoxLang We're waiting for it.

(07:30):
Come on, Brad.
one day, that would be a great release.
you were asking about my favorite, uh, part of BoxLang.
mean, it's going to be boring, but it's gotta be the performance improvements.
So for any of you that were running BoxLang and the first betas, it was super excitingbecause here's a new CF engine, but goodness, like I could send it at a test suite and

(07:51):
wait a minute for it to parse all the classes and get through.
Yeah.
Exactly.
Um, not quite that bad, but, um, I remember being able to cat the log out, you know, tellthe log and to see like, compile this class, compile this class, compile this class and
like, okay.
And now just today.

(08:12):
I spun up that new modern template with ColdBox 8 with BoxLang, started it up.
It's up in a second.
Like it's so uh impressive.
And I'm sure there's still more that we're going to be putting in there and gettingperformance out of there.
So like it's just really awesome to watch and really great work from the whole teamworking on that.

(08:32):
Yep, yep, absolutely.
Well, I'll share my favorite as well.
I think that's gonna be the VS code MCP integration.
And it's not just VS code, it's any editor that supports the model.
Luis has been going through all of our documentation and making it available as an MCP toyour favorite coding tool.
So actually, if you check out some of those blog posts, this is included in the Ochoannouncement as well as the BoxLang 1.6 announcement.

(08:59):
Those have links to documentation for different products like ColdBox or BoxLang or othermodules.
So if you're using those, definitely go attach that MCP to your editor.
and you'll get much better feedback from your AI helper assistant.
All right, so now you're going to get some questions from me because I use some AI on theside, but I've not dived into it every time I have.

(09:23):
I've been kind of disappointed.
So when you say like hooking this up, so is this like a one time thing?
Like it's like an extension like to VS code?
Like what is installing this?
Get me.
Yeah, so it's actually really easy.
If you're in VS Code and you're looking at the extension panel thing, there's now a windowat the bottom that says MCP servers.

(09:44):
And you can run a CommandBox like add MCP using the CommandBox palette.
And you basically just paste a URL into VS Code when it asks you to configure your MCP.
And then
the AI will have tools made available to it that says like, I'm looking at BoxLangdocumentation.
I am looking up stuff about the async scheduler.

(10:04):
So I'm gonna look at the documentation for async scheduler before I answer this user'squery.
And that's available on all of our docs that use Gitbook, which is basically all of them,right?
Mm-hmm.
Yeah, I think so.
And it's free.
So doing this live, if I go right now to QB, do I have to turn it on or is it already on?

(10:25):
How do I do this?
I don't see it.
OK, now I got to go look at this after the pod.
Oh, there it is.
Connect to VS code QB.
Oh, my goodness.
Got to be honest, I don't think I've ever asked a question about QB, but it's still cool.
I need to do that.
The ones I don't use that often or don't write myself.
All right.
All right.

(10:45):
We'll see.
that because I ask AI questions about QB all the time and it does a great job.
good.
That's cool.
Okay.
that makes my next foray into using AI a little bit more useful.
um I think the last one I did, I tried to ask co-pilot on GitHub to, it was an upgrade.
It was upgraded to ColdBox eight.

(11:06):
That's what it was.
I'm like for hyper upgrade this to ColdBox eight.
Add this to the matrix, do this and it's just, I just made a mess and I'm like, maybe I'mjust bad at like telling AI what to do.
That must be it.
But I just closed their poll requests and went and did it myself.
Anyway.
All right.
Thanks for that overview.
Uh, we got a few modules to tell you about few new modules, which are, let's start with BXcharts.

(11:31):
So for anybody who used CF chart,
This is what you've been waiting for in BoxLang.
You can check it out right now.
This is one of our free modules.
And in addition, there is a website.
I had it and it's gone charts.boxlang.io where you can go right now and play around withit and view examples for the charts and what you can do with it.

(11:52):
Really neat.
It looks like you would expect if you were using CF chart.
You can get started with that.
Right away.
Additionally, the BX LDAP module has been created as well for interacting with any LDAPdirectory.
BX LDAP is a premium module.
It's available exclusively to our BoxLang Plus and Plus Plus subscribers.

(12:13):
And it is a great drop-in replacement for any of the CF LDAP queries that you may havewritten before.
So that also leads perfectly into a reminder that
BoxLang right now has what we like to call our pioneer program.
If you want to get in here on the ground floor, access to all of these enterprise modules,get a team behind your conversion to BoxLang and get a nice discount on your licensing

(12:37):
plans, get ahold of us.
Tell us about you being interested in becoming a BoxLang pioneer and let's get you hookedup.
Um, I also would like to point out that if you, whatever reason, are sitting here andlike, can't believe they made LDAP a paid module.
Like you can always go build your own and you can use your own Java libraries and no one'sstopping you.
it's just, if you don't want to do all of that work and you want to appreciate that we didit for you, come grab a BoxLang plus subscription.

(13:04):
I bet it's cheaper than the time you're going to spend.
Very true.
All right, well, moving on to some community contributions.
We've got BoxLang Quick Tips, Better Web Debugging by Ray Camden.
If you haven't been following it, he's got kind of an ongoing BoxLang Quick Tips seriesthat he's doing.
And this one is related to some configuration for the BoxLang mini server that just makesdebugging a little bit easier.

(13:26):
So you should go and check that one out.
You might learn something helpful.
He mentions right in the beginning of the blog post that this was extremely useful to himand something that he wished that he would have found sooner.
So save yourself the pain that Ray Camden had to go through and learn how to configure themini server.
All right.
And then we've got another series.
This one is out on CFCast and BoxLang Academy.
This is deploying BoxLang in the cloud video series, which sounds really awesome.

(13:49):
This is led by Ortus's own Oscar Tisnado, who knows a lot about DevOps and deployment andthings like that.
So definitely go and learn from him and go and see how easy it is to launch BoxLang in thecloud.
Okay, that takes us out of our BoxLang news for the week.
Let's jump into some CFML updates from around the community.

(14:10):
The first one I wanted to look at was there was a blog post posted by James Moberg about aCSV processing speed test.
It was a very interesting result.
So he took a 250 megabyte CSV data set and processed it in a few different ways.
So used the ColdFusion 2025 CSV read or sorry, he hasn't used that yet because it's notcross platform and he has clients and use cases that go all the way back to I think CF

(14:39):
2016.
CFML, which is one of my favorite libraries, he said took, you know, 22 seconds to 120seconds, which is.
pretty big and then took an additional 50 seconds to do like an in memory query orqueries.
So maybe there's some improvements to be look at there.

(14:59):
He mentioned Java buffered read took about seven seconds and, but it would need some extralogic to process malformed CSVs and open CSV was two to 10 seconds, which was not too bad.
So, and that didn't include any
Command line tools using like C of execute.
So as always, when you're looking at performance, you gotta measure it before you decidewhat's the best tool for your job.

(15:20):
Next, we have a blog post from Ben Nadel.
He titles it normalizing query cross joins data using namespaces in ColdFusion which Iwasn't sure what that title meant until reading his blog post, which the idea here was
when you usually he says he usually grabs data from one table.
Occasionally, when you need it from another, he'll do a join, but he wants that data tocome back as an array of nested values.

(15:45):
Right?
So if he was in this case, grabbing, um, homes and shares together, he wants to see thoseall nested in structs.
So he comes up with kind of a naming scheme and to do that and then process that.
Um, so you can check out that blog post to see kind of how that works.

(16:05):
You can also check out, uh, quick to see how it does it for you.
and exactly kind of this way without you having to name the columns in any certain way.
Sorry, I had to throw that out there.
Some real-time follow-up James is in the chat here and he mentioned he has done some ofthe CF 2025 tests, but also the Command line tools are executing in sub seconds That's not

(16:29):
how you'd say that they're executing in less than a second instead of multiple seconds, soLooks like if performance is really your your key here.
You're gonna want to use a Command line tool and process it that way
So thanks for that, James.
Yep, and would definitely be interesting to see how BoxLang stands up with those numbers.
Do we have, I know we have a BX spreadsheet.

(16:49):
Does it do CSVs or is that meant for something else?
That's a good question.
I'm not actually sure.
go look at that.
Well, while you are doing that, I will share about another blog post from Ben Nadel.
So this one is titled, 'Functions for Coalescing Values in ColdFusion'.
And this is actually a really interesting blog post where Ben Nadel is using somefunctional programming paradigms in order to kind of replace the Elvis operator or the

(17:16):
null coalescing operator.
And if you question why anyone would replace language constructs with functions, I wouldencourage you to look into functional programming because they love to do that.
And it doesn't make sense at first until you learn why and then you catch the bug and youstart replacing all of your language constructs with functions.
But it's a pretty interesting blog post you can go through and he does a really great jobof outlining some of the different ways that he leverages that to make his code.

(17:42):
reusable and also some of the pitfalls that you can fall into with the Elvis operatorThings like you know bugs and stuff like that that have been brought to Adobe's attention
So check that one out.
I think it's a really good read
Yeah, I, I'm, I was with him on the, never use the Elvis operator because my code has torun on, you know, Adobe whatever, like 2018, at least up to the current day.

(18:05):
And it's just not reliable.
So yeah, I'm always writing something like that.
to your point about functional programming, I remember the first time encountering Haskelland learning that not only
you know, do they write all the functions for everything, but they, can define your ownoperators in the code.
And it's just like, so people are rewriting or like inventing new operators and thenthat's in their code.

(18:29):
like, what is this?
And all it is is a function that if you would normally call, you know, function passing anA and B, you can do a operator B and it's the same.
It's just how it looks.
And I'm like these languages.
bonkers.
So
Yeah.
Yep.
Well, everyone needs a time in their life when they find out about functional programmingand then take it too far.

(18:51):
I think that's a, it's a rite of passage.
The question is if you come back or if you stay over there in those functional programminglanguages.
So good times.
All right.
Let's talk about some events.
We have one happening today, 7 PM Central.
It's the MidMichigan ColdFusion user group.
And Ray Camden is giving an introduction to BoxLang.

(19:13):
So we'll throw a link to their site.
here in the show notes and in the chat.
So if you're listening live, you're going to hear about it.
If you're listening to this later, it already happened.
So go check out the video of it because I do believe they put those up on YouTube.
All right, awesome.
An event we have upcoming on October, November 5th is the ColdBox, the Ocho webinar led byLuis Miano, creator of ColdBox.

(19:41):
So that's gonna be from 11 a.m.
to 12 p.m.
Central time.
There is a registration link which is going live today.
So you should make sure, it's a free webinar, but we do ask that people would registerfirst.
So go and do that if you're interested in attending.
and doing a deep dive into some of those awesome new features we talked about.
Coming up in December, December 9th, there is a Cold Fusion Security Training put on byPete Freitag, a foundio.

(20:08):
We'll put the link to that.
You can sign up today.
Those are, uh again, always a great thing to go through, bring your own application andsee how you can improve the security of your application in Pete's workshop.
Yep.
All right.
And we've got a really fun announcement, one of my favorite ones, Into The Box 2026, Callfor Speakers.
It is open.

(20:28):
And we would love to hear some talks that you guys are interested in submitting or thatyou would just like to hear if you're thinking about attending.
So go ahead and uh first, if you haven't done so already, you should go over to the Intothe Box website and...
purchase a ticket so that you can attend and hear all the great talks and participate inthe community.
And then also you should go to the website and submit a talk that you would like to give.

(20:51):
We'll be going through those pretty soon.
I'm not actually sure what the deadline is for those.
I think we still have a couple of months, maybe.
Let's see if it says on here.
I don't see.
date on it.
I click in.
Midnight December 1st.
You got a month and a half.
Month and a half.
make sure to put some in now so that you don't forget and then also spend a monthpolishing some ideas and put them in again right before the deadline.

(21:16):
A reminder that the tickets right now for Into The Box are what we like to call blindtickets.
So you are buying it blind in the sense that you don't know what the sessions are going tobe, but you know they're going to be awesome.
And in return, we give you the best deal you're going to get on Into The Box tickets.
So it's a great deal for you.
You know it's going to be good.

(21:36):
You've come to Into The Box before.
So jump in, save some money.
And of course, if you do get accepted as a speaker, we'll refund that ticket.
We're going to pay for you to come there.
Pay for your ticket.
So hope to see you at Into The Box.
Last it is October and this used to be a much bigger deal Hacktoberfest is going on whichis the How do you put it used to be put on my github and digital ocean it probably still

(22:03):
is maybe it's put on by some other people now but the idea is to contribute the opensource in the month of October and Get mostly digital swag.
but Hacktoberfest is still going on.
All of the Ortus repos are marked as being open for contributions.
So it will contribute if you come and open a poor request, even if it's just typos ordocs, those all count.

(22:27):
Every one of our docs pages should have a little button in the
corner of every page that says, I want to edit this page.
It'll take you to GitHub and you're able to help us keep our docs up to date.
Typo free ad examples, any of that, all of it helps.
And thank you to anybody who does or has participated in our open source projects with us.
Okay, that brings us to the end of our podcast today.

(22:50):
Thank you so much for joining us.
As always, we want to end by thanking our Patreon supporters, individuals and companiespersonally supporting our open source initiatives, powering all these great things like
CommandBox, ForgeBox, ColdBox, and all our other favorite boxes.
Funding the cloud infrastructure that we use to power package management with CommandBoxand ForgeBox

(23:10):
You can support us at patreon.com slash Ortus Solutions.
Get some great perks like access to the BoxTeam Slack, a private forum on the communitywebsite and also bronze supporters and ups get a forge box pro and CF cast subscription as
a perk.
You can see all our sponsors on our website OrtusSolution.com and thank you everybody forjoining us today.

(23:32):
We hope you have a great rest of October.
All right, thanks everyone.
Advertise With Us

Popular Podcasts

Dateline NBC

Dateline NBC

Current and classic episodes, featuring compelling true-crime mysteries, powerful documentaries and in-depth investigations. Follow now to get the latest episodes of Dateline NBC completely free, or subscribe to Dateline Premium for ad-free listening and exclusive bonus content: DatelinePremium.com

Are You A Charlotte?

Are You A Charlotte?

In 1997, actress Kristin Davis’ life was forever changed when she took on the role of Charlotte York in Sex and the City. As we watched Carrie, Samantha, Miranda and Charlotte navigate relationships in NYC, the show helped push once unacceptable conversation topics out of the shadows and altered the narrative around women and sex. We all saw ourselves in them as they searched for fulfillment in life, sex and friendships. Now, Kristin Davis wants to connect with you, the fans, and share untold stories and all the behind the scenes. Together, with Kristin and special guests, what will begin with Sex and the City will evolve into talks about themes that are still so relevant today. "Are you a Charlotte?" is much more than just rewatching this beloved show, it brings the past and the present together as we talk with heart, humor and of course some optimism.

Stuff You Should Know

Stuff You Should Know

If you've ever wanted to know about champagne, satanism, the Stonewall Uprising, chaos theory, LSD, El Nino, true crime and Rosa Parks, then look no further. Josh and Chuck have you covered.

Music, radio and podcasts, all free. Listen online or download the iHeart App.

Connect

© 2025 iHeartMedia, Inc.