Modernize or Die Podcast #243: Recap, Transcript and Resources!
In this episode of the Modernize or Die Podcast, Eric Peterson and Jacob Beers share the latest updates in ColdBox and BoxLang, including the upcoming ColdBox 8 release with its new features, the introduction of SocketBox for WebSockets, and performance improvements in BoxLang 1.6. They also explore AI integration with development tools, share practical ColdBox tips, and highlight community updates and upcoming events for developers.
Watch/Listen the Episode
Catch the full episode on YouTube:
Listen to the Episode:
Show Notes & Overview
Hosts:
- Daniel Garcia - 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.
Resources
Ortus News / Products
- https://www.ortussolutions.com/blog/coldbox-8-the-ocho
- https://www.ortussolutions.com/blog/socketbox-hello-websockets
- https://www.ortussolutions.com/blog/coldbox-free-tip-8-which-coldbox-version-am-i-using
- https://www.ortussolutions.com/blog/coldbox-free-tip-9-mastering-email-configuration-with-cbmailservices-in-coldbox
- https://www.ortussolutions.com/blog/coldbox-free-tip-9-part-ii-sending-emails-using-cbmailservices-tokens-protocols-and-logs
SPONSOR — ORTUS SOLUTIONS
- https://www.ortussolutions.com/blog/from-reactive-to-proactive-how-on-demand-devops-prevents-outages-before-they-happen
- https://www.ortussolutions.com/blog/urgent-project-heres-how-you-can-have-a-devops-engineer-by-tomorrow
- https://www.ortussolutions.com/blog/scaling-smart-when-its-time-to-bring-in-an-on-demand-devops-engineer
BoxLang Updates
- https://www.ortussolutions.com/blog/boxlang-v160-performance-ai-powered-docs-and-advanced-async-monitoring
- https://www.ortussolutions.com/blog/unleashing-the-power-of-data-visualization-introducing-bx-charts-for-boxlang
- https://www.ortussolutions.com/blog/announcing-bx-ldap-enterprise-ldap-for-boxlang
- https://www.ortussolutions.com/blog/boxlang-the-team-behind-the-revolution
- https://www.raymondcamden.com/2025/10/14/boxlang-quick-tips-better-web-debugging
- https://www.ortussolutions.com/blog/boxlang-cloud-servers?utm_source=chatgpt.com
CFML Updates
- https://www.mycfml.com/articles/coldfusion-csv-processing-speed-test/
- https://www.bennadel.com/blog/4838-normalizing-query-cross-join-data-using-namespaces-in-coldfusion.htm
- https://www.bennadel.com/blog/4837-functions-for-coalescing-values-in-coldfusion.htm
Ortus & BoxLang Events
- https://mmcfug.org/
- https://coldbox-8-webinar.eventbrite.com/
- https://Intothebox2026.eventbrite.com
- https://www.intothebox.org
- https://www.ortussolutions.com/blog/call-for-speakers-into-the-box-2026
- https://hacktoberfest.com/
Transcript
Full transcript available below:
Eric Peterson
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?
Jacob Beers
Doing good, how are you?
Eric Peterson
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. 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. So, Jacob, how about you? What is your favorite feature that came out of ColdBox 8?
Jacob Beers
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 file included. So you can pull down the template and then immediately be running in a dev container. It's pretty cool.
Eric Peterson
And for the uninitiated, like myself, a dev container would do what for you.
Jacob Beers
Mm-hmm. So a dev container configuration tells VS Code how to spin up like a container or a Docker compose file. But then VS Code actually connects to the container and you work inside of the container. So it's pretty cool. You get the benefits of a container, but for actual development and replicating your environment and stuff.
Eric Peterson
Nice. Well, I'm gonna cheat and take two. I got an honorable mention which is ColdBox 8 runs on what I've affectionately dubbed BoxLang Prime. That Prime. BoxLang without the CFML compat. We have a fun little graphic for it actually. If you go check out the blog post, so BoxLang Prime is where it's at. Very excited for that to keep pushing forward BoxLang as the standard and kind of leave some of the old idiosyncrasies we're all used to behind. But my favorite has to be the virtual thread support that's coming in with newer versions of Java. Just, I do a lot with async things in the background and virtual threads are just the cat's meow for that. So very excited to start making some executors that are based on that instead of platform threads.
So there is a lot more for ColdBox 8. We are just scratching the surface, including things like BoxLang Native with a BX ColdBox module. 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. 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 this version. So definitely take a look at what changed and let us know how it goes for you.
Jacob Beers
All right, moving along, let's talk about SocketBox. We've got a new blog post. I know about it because I read it. Hello, WebSockets. So this is an introduction to what SocketBox is and how to use it in a ColdFusion application or a BoxLang application. And I've even included a little repo there that you can pull down and run the install script and test out locally if you're not familiar with it or you just want to get started really fast.
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 go into things like security, how to structure your application, some cool recipes that you could use in your own app. So definitely get started with that first one and stay along for the ride.
Eric Peterson
Awesome. I still need to jump into this. I mean, I've been in love with WebSocket since I first saw, I think it was a JC's demo at 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. I think his last example used SocketBox. I just haven't got to jump into it. So.
Jacob Beers
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, but that problem is actually tackled head on by SocketBox. So you just have to provide some configuration and all of your servers will work together seamlessly.
Eric Peterson
Nice. 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? So if you're in CommandBox you can do a package list and see it right there.
Jacob Beers
You.
Eric Peterson
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 help you with debugging or in module development. 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 some more superpowers there using the CB Mail Services module to be able to send to different locations, even the file system or just an array for testing, depending on your environment or other configuration and sent to multiple different providers.
Either sometimes using, you know, good old CF Mail SMTP or using APIs that these service providers set up like SendGrid. So check out CB Mail Services and check out those two new tips in the ColdBox tips and tricks series on the Ortus blog. 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 of you about scaling with DevOps, the hidden human factor in ColdBox fusion modernization, and how on-demand DevOps prevents outages before they happen. 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?
Jacob Beers
Yes, we should. All right, BoxLang 1.6 is out. And there's lots of awesome stuff with this release, especially concerning performance. So we've got some extreme performance optimizations, up to 65% faster. We've got some improved MCP doc integration, and then a new mini console framework with enhanced REPL experience, which...
Eric Peterson
Woo!
Jacob Beers
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.
Eric Peterson
I was gonna say I got to try the new REPL out a bit and yeah, it's just, it's just becoming a nicer REPL, right? Like kind of reminds me a little bit of the BoxLang REPL. So I mean it's, it's nice when you need to jump in and be like, wait, does this work the same way as I remember it? So absolutely great. I didn't, I don't know what the mini console thing is, but that excites me so.
Jacob Beers
Mm-hmm. Yep, it's a mystery.
Eric Peterson
Maybe one day, but one day CommandBox running on BoxLang. We're waiting for it. Come on, Brad.
Jacob Beers
One day, that would be a great release.
Eric Peterson
You were asking about my favorite part of BoxLang. I 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 exciting because here's a new CF engine, but goodness, like I could send it at a test suite and wait a minute for it to parse all the classes and get through. Yeah.
Jacob Beers
Yes. Mm-hmm. Two hours later.
Eric Peterson
Exactly. Not quite that bad, but, I remember being able to cat the log out, you know, tail the log and to see like, compile this class, compile this class, compile this class and like, okay. And now just today.
Jacob Beers
Mm-hmm.
Eric Peterson
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 impressive. And I'm sure there's still more that we're going to be putting in there and getting performance out of there. So like it's just really awesome to watch and really great work from the whole team working on that.
Jacob Beers
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 to your favorite coding tool. So actually, if you check out some of those blog posts, this is included in the Ocho announcement as well as the BoxLang 1.6 announcement. Those have links to documentation for different products like ColdBox or BoxLang or other modules. 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.
Eric Peterson
All right, so now you're going to get some questions from me because I use some AI on the side, but I've not dived into it every time I have. 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.
Jacob Beers You. Mm-hmm.
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 window at the bottom that says MCP servers. 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 BoxLang documentation. I am looking up stuff about the async scheduler. So I'm gonna look at the documentation for async scheduler before I answer this user's query.
Eric Peterson
And that's available on all of our docs that use Gitbook, which is basically all of them, right?
Jacob Beers
Mm-hmm. Yeah, I think so. And it's free.
Eric Peterson
So doing this live, if I go right now to QB, do I have to turn it on or is it already on? 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.
Jacob Beers
You.
Eric Peterson
The ones I don't use that often or don't write myself. All right. All right. We'll see.
Jacob Beers
Well, it's funny you say that because I ask AI questions about QB all the time and it does a great job.
Eric Peterson
Good. That's cool. Okay. That makes my next foray into using AI a little bit more useful. I think the last one I did, I tried to ask Copilot on GitHub to, it was an upgrade. It was upgraded to ColdBox 8. That's what it was. I'm like for hyper upgrade this to ColdBox 8.
Jacob Beers
Mm.
Eric Peterson
Add this to the matrix, do this and it's just, I just made a mess and I'm like, maybe I'm just bad at like telling AI what to do. That must be it. But I just closed their pull requests and went and did it myself. Anyway. All right. Thanks for that overview. We got a few modules to tell you about, a few new modules, which are, let's start with BX Charts. So for anybody who used CF Chart,
Jacob Beers You.
Eric Peterson
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 with it and view examples for the charts and what you can do with it. 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 LDAP directory. BX LDAP is a premium module. It's available exclusively to our BoxLang Plus and Plus Plus subscribers. And it is a great drop-in replacement for any of the CF LDAP queries that you may have written 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 plans, get a hold of us. Tell us about you being interested in becoming a BoxLang Pioneer and let's get you hooked up.
I also would like to point out that if you, for whatever reason, are sitting here and like, 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's stopping you. It's just, if you don't want to do all of that work and you want to appreciate that we did it for you, come grab a BoxLang Plus subscription. I bet it's cheaper than the time you're going to spend.
Jacob Beers
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 series that he's doing. And this one is related to some configuration for the BoxLang mini server that just makes debugging a little bit easier.
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 him and 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 the mini 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. This is led by Ortus's own Oscar Tisnado, who knows a lot about DevOps and deployment and things like that. So definitely go and learn from him and go and see how easy it is to launch BoxLang in the cloud.
Eric Peterson
Okay, that takes us out of our BoxLang news for the week. Let's jump into some CFML updates from around the community. The first one I wanted to look at was there was a blog post posted by James Moberg about a CSV 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, he used the ColdFusion 2025 CSV read or, sorry, he hasn't used that yet because it's not cross-platform and he has clients and use cases that go all the way back to, I think, CF 2016. CFML, which is one of my favorite libraries, he said took, you know, 22 seconds to 120 seconds, which is pretty big, and then took an additional 50 seconds to do like an in-memory query or queries. So maybe there's some improvements to be looked at there. He mentioned Java buffered read took about seven seconds and, but it would need some extra logic 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 CF Execute. So as always, when you're looking at performance, you gotta measure it before you decide what's the best tool for your job.
Next, we have a blog post from Ben Nadel. He titles it Normalizing Query Cross Joins Data Using Namespaces in ColdFusion, which I wasn'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 to come back as an array of nested values.
Right? So if he was in this case, grabbing homes and shares together, he wants to see those all nested in structs. So he comes up with kind of a naming scheme and to do that and then process that. So you can check out that blog post to see kind of how that works. You can also check out 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 of the CF 2025 tests, but also the command-line tools are executing in sub-seconds. That's not how you'd say that, they're executing in less than a second instead of multiple seconds, so looks like if performance is really your key here, you're gonna want to use a command-line tool and process it that way.
So thanks for that, James.
Jacob Beers
Yep, and would definitely be interesting to see how BoxLang stands up with those numbers.
Eric Peterson
Do we have, I know we have a BX Spreadsheet. Does it do CSVs or is that meant for something else?
Jacob Beers
That's a good question. I'm not actually sure.
Eric Peterson
Go look at that.
Jacob Beers
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 some functional programming paradigms in order to kind of replace the Elvis operator or the null coalescing operator.
And if you question why anyone would replace language constructs with functions, I would encourage 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 you start 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 job of outlining some of the different ways that he leverages that to make his code reusable and also some of the pitfalls that you can fall into with the Elvis operator. Things 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.
Eric Peterson
Yeah, I, I'm with him on the, never use the Elvis operator because my code has to run on, you know, Adobe whatever, like 2018, at least up to the current day. 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 Haskell and learning that not only
Jacob Beers
Mm-hmm. Yeah.
Eric Peterson
You know, do they write all the functions for everything, but they can define your own operators in the code. And it's just like, so people are rewriting or like inventing new operators and then that's in their code. Like, what is this? And all it is is a function that if you would normally call, you know, function passing an A 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.
Jacob Beers Mm-hmm. Yeah.
Eric Peterson Bonkers. So
Jacob Beers
Yeah. Yep. Well, everyone needs a time in their life when they find out about functional programming and then take it too far. I think that's a, it's a rite of passage.
Eric Peterson
Yeah. The question is if you come back or if you stay over there in those functional programming languages. 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. So we'll throw a link to their site.
Jacob Beers
Nice.
Eric Peterson 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.
Jacob Beers
All right, awesome. An event we have upcoming on November 5th is the ColdBox, the Ocho webinar led by Luis Majano, creator of ColdBox. 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 register first. 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.
Eric Peterson
Coming up in December, December 9th, there is a ColdFusion Security Training put on by Pete Freitag, a Foundeo. We'll put the link to that. You can sign up today. Those are, again, always a great thing to go through, bring your own application and see how you can improve the security of your application in Pete's workshop.
Jacob Beers
Yep. All right. And we've got a really fun announcement, one of my favorite ones, Into The Box 2026, Call for Speakers. It is open. And we would love to hear some talks that you guys are interested in submitting or that you would just like to hear if you're thinking about attending. So go ahead and first, if you haven't done so already, you should go over to the Into The Box website and...
Purchase a ticket so that you can attend and hear all the great talks and participate in the community. And then also you should go to the website and submit a talk that you would like to give. 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.
Eric Peterson
Let's see if it says on here. I don't see a date on it. I click in. Midnight December 1st. You got a month and a half.
Jacob Beers
Month and a half. Make sure to put some in now so that you don't forget and then also spend a month polishing some ideas and put them in again right before the deadline.
Eric Peterson
A reminder that the tickets right now for Into The Box are what we like to call blind tickets. So you are buying it blind in the sense that you don't know what the sessions are going to be, 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. 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, which is the, how do you put it, used to be put on by GitHub and DigitalOcean. It probably still is, maybe it's put on by some other people now, but the idea is to contribute to open source 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 pull request, even if it's just typos or docs, those all count. 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, add 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. Thank you so much for joining us. As always, we want to end by thanking our Patreon supporters, individuals and companies personally 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 CommandBox and ForgeBox.
You can support us at patreon.com/OrtusSolutions. Get some great perks like access to the BoxTeam Slack, a private forum on the community website, and also bronze supporters and up get a ForgeBox Pro and CFCast subscription as a perk. You can see all our sponsors on our website OrtusSolutions.com and thank you everybody for joining us today. We hope you have a great rest of October.
Jacob Beers
All right, thanks everyone.
Join the Ortus Community
Be part of the movement shaping the future of web development. Stay connected and receive the latest updates on, product launches, tool updates, promo services and much more.
Subscribe to our newsletter for exclusive content.
Follow Us on Social media and don’t miss any news and updates:
Add Your Comment