<?xml version="1.0" encoding="UTF-8"?><rss version="2.0">
<channel>
<description>ContentBox RSS Feed</description>
<link>https://2025.intothebox.org</link>
<title>Content RSS Feed by ContentBox</title>
<copyright>Ortus Solutions, Corp (www.ortussolutions.com)</copyright>
<docs>http://www.rssboard.org/rss-specification</docs>
<generator>FeedGenerator</generator>
<lastBuildDate>Wed, 15 Apr 2026 05:45:04 GMT</lastBuildDate>
<pubDate>Wed, 15 Apr 2026 05:45:04 GMT</pubDate>
<item>
<title>10 Techniques to writing easy yet stupidly thorough unit tests</title>
<description>&#13;
Ten Techniques for testing&#13;
&#13;
&#13;
&#13;
&#13;
Something In, Something out &#13;
the most basic test using test box. Give an input, get an output, test. This allows us to test transformations, &#13;
calculations, formatting and simple decision making. We send in different inputs and verify the output&#13;
&#13;
&#13;
&#13;
Meticulous Methods This is one of the easiest mocking techniques. &#13;
We mock the very object we're testing but mock the other methods that should be called. We count if &#13;
and how many times they are called.&#13;
&#13;
&#13;
&#13;
Reacting To Returns We add a returns from our mocked methods and test how our method reacts&#13;
&#13;
&#13;
&#13;
Precise Properties Can we test calls to a component which is a property or has &#13;
been injected into our component? By creating the mock and setting the property with the mock, we can then test &#13;
the if/how many times they're called and cusomize the returns&#13;
&#13;
&#13;
&#13;
Non-Injurious Injections Sometimes we need to test whether a component which we obtain &#13;
from our DI (i.e. Wirebox) when the component is called with getInstance() this will show how to “swap out” a mocked component into &#13;
Wirebox so we can test it when it's called from within our code.&#13;
&#13;
&#13;
getWirebox().getBinder().unmap( arguments.mapName );&#13;
getWirebox()&#13;
.getBinder()&#13;
.map( arguments.mapName )&#13;
.toValue( arguments.replacement );&#13;
&#13;
&#13;
&#13;
&#13;
&#13;
Querulous Queries Our tests are supposed to run without side effects which means we might &#13;
write the query when we can access the database, make sure we get the correct data and then put the SQL or query into our code. However, &#13;
how do we check if our SQL doesn't change, our parameters are being set correctly, every param is cf_sql typed, or our criteria are &#13;
correct? We'll look at running tests based on the component created when we run new query()&#13;
&#13;
&#13;
&#13;
Querulous QB Queries QB is a forgebox module which allows for creating complex queries in a fluent and dynamic manner by creating an passing around the queryBuilder component. We can then test the values in that component's properties without having to actually run the query.&#13;
&#13;
&#13;
&#13;
&#13;
&#13;
Handling Handlers You might be used to running tests on components but testing handlers &#13;
is a bit different. We actually need to mock the request object itself which, well, can be hard. However, &#13;
there are elements built into Coldbox that make this quick easy and allow testing of handlers quite straightforward. &#13;
&#13;
&#13;
&#13;
Satisfactory Signatures We can make sure a function is RECEIVING the correct data by &#13;
using datatypes and the required tags. How do we know if our function is SENDING the correct values to whatever &#13;
function it is calling? Moreover, are there ways that our unit tests can let us know if a signature changes? Using &#13;
the “callback “ property of mock box to test what our function is sending to another function.&#13;
&#13;
&#13;
&#13;
Accurate APIS When we're making API Calls from our methods, we need to ensure that &#13;
we're correctly assembling URIs, using the correct verbs, sending the correct token and so on. &#13;
This is difficult using the cfhttp method but tools like hyper make it easier. &#13;
(TO BE VERIFIED ACTUALLY. I FEEL LIKE IT SHOULD BUT IT MIGHT NOT BE AS EASY AS I THINK)&#13;
&#13;
&#13;
&#13;
Exasperating Endpoints Testing the endpoints of an app is basically testing the entire app. &#13;
Using tools like postman, curl and so on can&#13;
&#13;
&#13;
</description>
<pubDate>Mon, 14 Apr 2025 15:38:00 GMT</pubDate>
<author>dvega@ortussolutions.com (Davis Vega)</author>
</item>
<item>
<title>"Just Enough” Workshop: Commandbox, Coldbox, CFConfig, Migrations, Quick, Qb, CBValidation</title>
<description>&#13;
&#13;
&#13;
Workshop&#13;
"Just Enough” Workshop: Commandbox, Coldbox, CFConfig, Migrations, Quick, Qb, CBValidation&#13;
&#13;
This workshop will guide the attendee through some of the most common elements of creating an API using Box products. Using either postman or a provided JS UI which they will not need to edit the attendee will:&#13;
&#13;
&#13;
&#13;
Open CommandBox and do a new Coldbox Installation&#13;
Use CFConfig to create a datasource from values stored in the .env file.&#13;
Use Migrations to create the data base schema and pre-populate data&#13;
Create two endpoints, two handlers and two models to support the UI&#13;
Create Quick Entities for saving data to two of the tables&#13;
Use QB to retrieve data from two other tables&#13;
Use CBValidation to validate data coming in from the UI&#13;
Other items which time and logical inclusion permit.&#13;
&#13;
&#13;
&#13;
The goal is that the attendee will be comfortable enough with each of the products to dive deeper into the docs when the need arises. For each of the products / sections, we’ll do a “where do you go from here” which can talk about next steps. i.e. - “Today we used CBValidation to ensure the min / max and data type coming in. Here are some of the other objects and ways you can validate on such as structs, rows in the database and more. Here are the docs. ”&#13;
&#13;
&#13;
&#13;
&#13;
&#13;
Topics&#13;
&#13;
CommandBox&#13;
AWS&#13;
Quick&#13;
Qb&#13;
&#13;
&#13;
&#13;
Speaker&#13;
&#13;
&#13;
&#13;
Dan Card&#13;
&#13;
&#13;
&#13;
Javier Quintero&#13;
&#13;
&#13;
&#13;
&#13;
&#13;
&#13;
</description>
<link>https://2025.intothebox.org/into-the-box/sessions/just-enough-workshop-commandbox-coldbox-cfconfig-migrations-quick-qb-cbvalidation</link>
<pubDate>Fri, 11 Apr 2025 09:36:00 GMT</pubDate>
<author>joharamirez@ortussolutions.com (Johana Ramirez)</author>
<guid isPermaLink="false">https://2025.intothebox.org/into-the-box/sessions/just-enough-workshop-commandbox-coldbox-cfconfig-migrations-quick-qb-cbvalidation</guid>
</item>
<item>
<title>Development and Hosting using Docker, CI/CD, and AWS ECS</title>
<description>&#13;
&#13;
&#13;
Workshop&#13;
&#13;
Development and Hosting using Docker, CI/CD, and AWS ECS&#13;
&#13;
Are you interested in deploying your application in a container and running it in the cloud but aren't&#13;
sure where to get started? Maybe you have never deployed an application to the cloud or used Docker&#13;
before.This workshop will have something for everyone interested in cloud-based container&#13;
deployments.&#13;
&#13;
This workshop will cover many topics as we take a blank git repository and finish with a docker-based&#13;
application running on AWS Fargate and using automated CI/CD. As bonus material, we will even cover&#13;
database migrations, local database development, and some basic networking. The best part is that by the&#13;
end of this workshop, you will have your own repository to use as a reference or as a template moving&#13;
forward!&#13;
&#13;
Those who choose to attend this workshop should be familiar with basic git usage. You will also need a&#13;
GitHub account and an AWS account, preferably with an active free plan (if you want to deploy your&#13;
code). Expect this workshop to move quickly and cover a lot of information. We will have multiple people&#13;
to lead the workshop and be available to help if anyone gets stuck as well as a targeted Q/A time at the&#13;
end.&#13;
&#13;
Objective&#13;
&#13;
By the end of this workshop, users will have an understanding, including hands-on training, of how to&#13;
successfully build and deploy a web application using Docker and AWS.&#13;
&#13;
Audience&#13;
&#13;
Application developers who are looking to understand how to evolve their development process to take&#13;
advantage of modern best practices of using Docker containers, CI/CD, and cloud hosting.&#13;
&#13;
Prerequisites&#13;
&#13;
The following are the workshop requirements for this workshop:&#13;
&#13;
&#13;
A laptop computer with suitable resources and the following packages installed&#13;
Java 11-15&#13;
CommandBox&#13;
A working CFML repository with database connectivity to test deployments&#13;
A GitHub account to create packages and test CI/CD actions&#13;
An AWS account to provision and deploy infrastructure&#13;
Docker&#13;
&#13;
&#13;
&#13;
&#13;
&#13;
&#13;
Topics&#13;
&#13;
AWS&#13;
Docker&#13;
ECS&#13;
&#13;
&#13;
&#13;
&#13;
Speakers&#13;
&#13;
&#13;
&#13;
&#13;
&#13;
&#13;
&#13;
Daniel Garcia&#13;
&#13;
&#13;
&#13;
&#13;
&#13;
&#13;
&#13;
&#13;
&#13;
Jacob Beers&#13;
&#13;
&#13;
&#13;
&#13;
&#13;
&#13;
&#13;
</description>
<link>https://2025.intothebox.org/into-the-box/sessions/development-and-hosting-using-docker-cicd-and-aws-ecs</link>
<pubDate>Fri, 11 Apr 2025 09:31:00 GMT</pubDate>
<author>dvega@ortussolutions.com (Davis Vega)</author>
<guid isPermaLink="false">https://2025.intothebox.org/into-the-box/sessions/development-and-hosting-using-docker-cicd-and-aws-ecs</guid>
</item>
<item>
<title>Daniel Garcia</title>
<description>&#13;
Daniel Garcia lives in Plainfield, IL, has been working with web technologies since 1997, and is passionate about what he does. He is a husband, father, "Dad"-ager for his aspiring musician son, cinephile, regaler of useless knowledge, smoker of meats,aspiring podcaster, part-time radio DJ, and has an irreverent sense of humor. His mantras are "Work smarter, not harder" and "KISS (Keep it Simple Stupid)."&#13;
</description>
<pubDate>Fri, 11 Apr 2025 09:26:00 GMT</pubDate>
<author>joharamirez@ortussolutions.com (Johana Ramirez)</author>
</item>
<item>
<title>Alex Ventura</title>
<description>&#13;
Alexander is a Software Developer at Ortus Solutions, Corp., with a passion for building scalable and organized web applications. He began his programming journey working with Laravel, PHP, and JavaScript, and has since expanded his toolkit to include ColdFusion, making use of frameworks such as ColdBox after joining his current role in 2023. His work spans both backend and frontend, with experience in Vue and interest in clean, maintainable code.&#13;
&#13;
&#13;
&#13;
A longtime tech enthusiast, Alexander has loved computers since he was a kid. When he’s not coding, you’ll probably find him enjoying good music, playing video games, or out hiking in the beauty of nature.&#13;
</description>
<pubDate>Fri, 11 Apr 2025 05:54:00 GMT</pubDate>
<author>dvega@ortussolutions.com (Davis Vega)</author>
</item>
<item>
<title>Use JSON to Slash Your Database Performance</title>
<description>&#13;
REST easy knowing your data has escaped the terror of being slashed up from unnecessary serialization. In this chillingly informative session, we'll unmask how to remove the overhead so your app can survive another day. Using Microsoft SQL Server, you will learn the keys to surviving the nightmare without killing performance. Bring your courage and your curiosity, but don’t worry—we’re not here to scare you; we’re here to help you conquer JSON and make your data structures unstoppable.&#13;
&#13;
</description>
<pubDate>Thu, 10 Apr 2025 20:43:08 GMT</pubDate>
<author>dvega@ortussolutions.com (Davis Vega)</author>
</item>
<item>
<title>Bill Reese</title>
<description>&#13;
Bill is a Senior Developer at Ortus Solutions with over 25 years of experience in full-stack application and web development. He is based near Orlando Florida and has one daughter. Bill has been using ColdFusion since version 4, appreciating its ability to rapidly integrate data into Rich Internet Applications (RIAs), which shaped his early focus on multimedia development, Flash animation, and graphic design.&#13;
He has proven expertise in leading teams to deliver scalable, SEO-optimized, high-performance web applications, with a specialization in application refactoring and data layer optimization. Outside of work, Bill is passionate about film, music, social networking, and e-commerce, and enjoys personal pursuits like concert photography, nature photography, and exploring theme parks.&#13;
</description>
<pubDate>Thu, 10 Apr 2025 20:42:00 GMT</pubDate>
<author>dvega@ortussolutions.com (Davis Vega)</author>
</item>
<item>
<title>Powering Desktop apps with BoxLang</title>
<description>&#13;
Want to ship a Windows or Mac desktop app, but only know web languages like BoxLang and JavaScript? You can! Gone are the days if needing complex tools like C++ to build desktop apps. In this session, we’ll combine using BoxLang and Electron.js to build Windows and Desktop binary apps that are powered by a BoxLang API. Using the languages you already know (HTML, JavaScript, CFML) we can build working Windows and Mac desktop applications with very few changes needed to your existing tech stacks. You can even build both the Windows and Mac apps from 1 machine -- no need for multiple laptops just to compile code!&#13;
&#13;
&#13;
Target Audience:&#13;
&#13;
Developers wanting to build not just mobile apps but also Windows and Mac binary apps, but without the hassle of complex tooling like C++, XCode, or Visual Studio. Attendees should be familiar with HTML, JavaScript, CFML, and have a basic understanding of API endpoints.&#13;
&#13;
&#13;
Main takeaways:&#13;
&#13;
An Electron primer&#13;
How to quickly scaffold out an API suite using BoxLang&#13;
Connecting a desktop app to a BoxLang API&#13;
Building apps for Window and Mac&#13;
Tips to make the developer experience more friendly&#13;
</description>
<pubDate>Thu, 10 Apr 2025 19:32:00 GMT</pubDate>
<author>dvega@ortussolutions.com (Davis Vega)</author>
</item>
<item>
<title>PM Coffee Break</title>
<pubDate>Sat, 05 Apr 2025 01:39:00 GMT</pubDate>
<author>dvega@ortussolutions.com (Davis Vega)</author>
</item>
<item>
<title>Getting Started with BoxLang!</title>
<description>&#13;
Dive into the dynamic world of BoxLang Runtimes! This 45-minute session is perfect for developers eager to unlock the full potential of BoxLang. You’ll learn the fundamentals, explore best practices, and discover how to build powerful applications with ease. Whether you’re an experienced programmer or just starting out, this session will equip you with the skills and knowledge to elevate your projects to the next level. Join us and kickstart your BoxLang journey today!&#13;
</description>
<pubDate>Thu, 03 Apr 2025 01:46:00 GMT</pubDate>
<author>dvega@ortussolutions.com (Davis Vega)</author>
</item>
</channel>
</rss>
