• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

TeraTech

The ColdFusion Experts: Develop | Secure | Optimize

  • Services
    • Consulting
    • Crash
    • Development
    • Maintenance
    • Modernization
    • Security
  • About Us
  • Testimonials
  • Free Assessment
  • Get in touch!

  • Services
    • Consulting
    • Crash
    • Development
    • Maintenance
    • Modernization
    • Security
  • About Us
  • Testimonials
  • Free Assessment
  • Get in touch!

No-Nonsense November: Efficiency and Consistency in Production, Testing and Deployment

January 18, 2025 By Michaela Light Leave a Comment

Contents

  • #1. Code Frameworks
    • ColdBox
  • #2. Content Management Systems
    • ContentBox
  • #3. Modern Testing Environment
  • #4. Deployment Issue Summary
    • Continuous Integration (CI) Deployment Tools
  • #5. Change Tracking Management System
    • What You Get With a Great Issue Tracking System

Here at TeraTech, No Nonsense November is a time for us to get real with issues that plague the successful use of CFML. One of the biggest issues can be with your management systems.

Are you using a homegrown code framework that just isn’t cutting it? Are you being torn apart in testing? Perhaps, it’s just your deployment and change tracking processes that are slowing you down.

Well, I got news for you. You can change this for the better. These are not “unfixable”.

Let’s take a look at 5 different areas that you can improve to bring more efficiency and consistency to your programming life.

  1. Code Frameworks
  2. Content Management
  3. Modern Testing Environments
  4. Deployment Issues
  5. Change Tracking Management Systems

#1. Code Frameworks

“We're also seeing a lot of people on the other end of the spectrum who are what I'd call the legacy ColdFusion developers: people who learned how to use ColdFusion in maybe 2000, or 2001. They learned how to use the CF include tag and maybe custom tags, and they kind of stopped learning at that point. They're not doing object-oriented development, they're not following best practices, they're not using MVC frameworks.”- Nolan Erck, Owner and Chief Consultant at South of Shasta Consulting

From CF Alive episode, “059 Migrating legacy CFML to MVC (Model View Controller) with Nolan Erck“

According to the State of the ColdFusion Union 2018, most CFers prefer a homegrown code framework. But, the most commonly used third-party code framework application is ColdBox (followed by FW/1 and Fusebox respectively). There are a few advantages of using a third party framework over a homegrown system. For example, you can save time and resources by using a third-party app. Also, third-party apps are already tried and tested and are regularly updated with new features and bug fixes. Plus if you have problems, there are many other CFers you can ask about how to do a particular thing in that framework.

Let’s take a look at the most popular CF framework, ColdBox,  and see what it can do for you. Code Frameworks help keep CF alive by saving CFers precious resources and making coding easier.

“Being willing to make the best of a tool that you know, rather than looking for the next silver bullet.” –Nathaniel Francis,  ColdBox Alliance Partner

From CF Alive episode, “008 The Best REST You’ve ever Had: ColdBox REST with Nathaniel Francis“

ColdBox

So, what is ColdBox? ColdBox is a convention-based HMVC (Hierarchical Model View Controller) framework used specifically for CFML. It provides a team standard when working developmental projects. Also, it has a modular architecture. This allows for construction of hierarchical MVC apps instead of large applications. It is also incredibly easy to install especially if running CommandBox. All it takes is a simple one line command.

#2. Content Management Systems

A CMS (Content Management System) is a software application that helps to manage your digital content. This being said,  having a good CMS is very important and makes CF more alive. Here’s how content management can help any CF project.

  • Update your Website on your own Terms
    • You no longer need to rely on third-party applications or hosts to update your web app. Simply update as you see fit.
  • Extreme Ease of Use
    • No need to understand in-depth language programming to build a project. This is great for CF beginners learning to build their own web apps.
  • Make Simple Changes without Full Redesign
    • A CMS will allow you to cherry-pick exactly what  needs to be changed without doing a project overhaul.
  • Access most up-to-date Web Design Features
    • Constant updates to the CMS will make sure you have the most modern availabilities for your application.
  • Manage your Entire Marketing System
    • A good CMS will have tools for SEO, email marketing, social media marketing, and blogging. Some will even allow you to collect fees and donations, create event registration forms, and store member info.

ContentBox

ContentBox is an open-source modular CMS engine from Ortus Solutions that allows you to create websites, blogs, wikis, web apps, and RESTful web services. ContentBox can be deployed to any CFML engine or Java servlet container. It is built with an open-source MVC framework foundation (ColdBox). It is simple to install with one line on ComandBox’s CLI. ContentBox also provides modularity. Using CommandBox and ForgeBox, you can install modules and extend your app in seconds.  ForgeBox modules include themes, widgets, ColdBox modules, ContentBox modules, and more. A number of built-in interception points also come with ContentBox. Along with these features, ContentBox utilizes the use of CFCs (ColdFusion Components) due to its CFML abilities. On top of all this, ContentBox is Docker friendly. It has its own Docker image which can distribute to multiple replicas with ease. Here are a few benefits of combining Docker with ContentBox:

  • Embedded Database or connect to any SQL database
  • Image and Application Health Checks
  • SSL Support
  • Distributed caching
  • Distributed sessions
  • Data persistence
  • Custom data mounts

As of June 2018, ContentBox 4.0 was released as its latest version. One of the major developments was that Lucee 5 now powers the CLI. All third-party libraries were also upgraded. These include:

  • JGit
  • Launch4J
  • Runwar
  • JLine 3

“We've got some massive applications that are being built, that are driving business and really critical business for heavy hitting companies, right. And I think that's where I'm proud to be a part of this whole initiative and I think that ColdFusion is certainly not dead and it's growing for us. And it is a technology that I think people need to try it before they go ahead and put it down.” – Elishia Dvorak, Technical Marketing Manager at Adobe

From CF Alive episode, “030 Everything CF Summit That You Need to Know, with Elishia Dvorak”

#3. Modern Testing Environment

Using a modern testing environment is critical to keeping CF alive and maintaining efficiency within your projects. The lack of a mature testing environment can lead to absolute chaos during the run-up to deploying new code. Minimize the amount of resources you will spend going back to revise broken code. This also prevents established bugs from spreading by detecting them early. There are many quality improvements that are made through using modern testing such as:

  • Code Coverage
  • Automated Testing
  • Code Review
  • Bug Modeling and Prevention

Use portable testing environments — such as CF Builder– as well. The benefit to using portable environments is making the reuse of the development environment configuration much easier.

A typical set up includes:

  • A staging server where you test (ideally using Docker to mirror your production setup)
  • A Continuous Integration tool such as Jenkins that automatically pushes new changes for testing
  • Automated testing using TestBox
  • Automatic reporting of any bugs and preventing buggy branches being merged into production code

#4. Deployment Issue Summary

A successful deployment is one that is stress free and goes smoothly. Everything should work fine. An unsuccessful deployment has constant bugs or the app is crashing. This is made even worse when different versions of code overwrite each other. The top two issues of CFers in relation to testing and deployment are:

  • Too Many Bugs
  • No Formal Testing

Be sure to properly test your app to catch the bugs before they get to production.

Continuous Integration (CI) Deployment Tools

According to the 2018 State of the CF Union, 44% of CFers polled do not automate or use CI deployment tools. If you are not automating your builds, you are missing out on saving time and improving your deployment and testing process. Because at the click of a button you can update your staging or production code directly from your source code repository. Never again will you forget to update all the files on your server. Plus if you spin up a new server it can be automatically set up exactly the same way as your other servers.

For those who do CI, Jenkins is the most popular program.

Other options include:

  • GitLab
  • Bamboo
  • Ant
  • Grunt
  • Travis
  • Gulp
  • Bitbucket Pipelines

#5. Change Tracking Management System

A great way to make CF more alive and efficient for your project is to use a change tracking management system. Why do so though? If you just fix bugs as they are reported without tracking, it is easy to forget to fix some of them. Or prioritize the ones you do fix. You also can have a hard time figuring out who on your team fixed which bug a few weeks later when it causes an unexpected problem. Small changes can soon add up to a large amount of extra effort and time.

Popular change trackers among CFers include:

  • JIRA
  • Bugzilla
  • Trac
  • FogBugz
  • GitHub

A new kid on the block of bug trackers is The Bug Squasher . I interviewed the founder Kirk Deis about bug tracking in general and his tool in this episode Better Bug Squashing (New Issue Tracking Tool) with Kirk Deis

What You Get With a Great Issue Tracking System

  • Different access levels for clients, testers, developers, and managers
  • New issues can be classified as bug reports
  • Change requests available that include the date/time reported, who reported it, severity description of the issue, details on how to reproduce it, and screenshot upload
  • Create a unique ID to reference the issue
  • Assign issues to developers
  • Auto status change of an issue between new, fixed, tested, out of scope.
  • Workflow can automatically email the issue submitter and assigned developer on a status change
  • Allow comments on the issue as the status changes
  • Keep a history of edits to the issue
  • Report on all open and closed issues by status, severity etc. Graphs of the number of issues per week

Remember to pay attention to these five areas, and your development experience should run much smoother. For those of you still not using ColdBox and ContentBox (or any of Ortus’s Box apps), you are seriously missing out on the “proper” CFML experience. Also, don’t let a sloppy change management system hold you down. Come on, you’re better than that. If you are looking for a way to revamp your ColdFusion or Lucee… here’s a great place to start.  

And to continue learning how to make your ColdFusion apps more modern and alive, I encourage you to download our free ColdFusion Alive Best Practices Checklist.

Because… perhaps you are responsible for a mission-critical or revenue-generating CF application that you don’t trust 100%, where implementing new features is a painful ad-hoc process with slow turnaround even for simple requests.

What if you have no contingency plan for a sudden developer departure or a server outage? Perhaps every time a new freelancer works on your site, something breaks. Or your application availability, security, and reliability are poor.

And if you are depending on ColdFusion for your job, then you can’t afford to let your CF development methods die on the vine.

You’re making a high-stakes bet that everything is going to be OK using the same old app creation ways in that one language — forever.

All it would take is for your fellow CF developer to quit or for your CIO to decide to leave the (falsely) perceived sinking ship of CFML and you could lose everything—your project, your hard-won CF skills, and possibly even your job.

Luckily, there are a number of simple, logical steps you can take now to protect yourself from these obvious risks.

No Brainer ColdFusion Best Practices to Ensure You Thrive No Matter What Happens Next

ColdFusion Alive Best Practices Checklist

ColdFusion Alive Best Practices Checklist

Modern ColdFusion development best practices that reduce stress, inefficiency, project lifecycle costs while simultaneously increasing project velocity and innovation.

√ Easily create a consistent server architecture across development, testing, and production

√ A modern test environment to prevent bugs from spreading

√ Automated continuous integration tools that work well with CF

√ A portable development environment baked into your codebase… for free!

 

Learn about these and many more strategies in our free ColdFusion Alive Best Practices Checklist.

  • Facebook
  • Twitter
  • LinkedIn

Related Posts

  • 136 Into The Box 2024 (all the details and speakers) with Jorge Reyes
  • Adobe ColdFusion Certification Program
  • Adobe CF Summit 2022 Conference (In-person, again)
  • 7 Steps To Get The Best Coldfusion Web Application Performance
  • 112 Four Cool ColdFusion Books with author Luis Majano
  • Comprehensive ColdFusion Training List and Resources
  • How To Find Your Next Job As a ColdFusion Developer
  • 4 Reasons Why Your ColdFusion Web Apps Are Suffering (And How To Avoid It)

Filed Under: ColdBox, Frameworks, Learn ColdFusion

← Previous Post CF Camp 2018: Madness in Munich Part Five- AngularJS + ColdFusion
Next Post → CFCamp 2018: Madness in Munich – Recap Day 1

Primary Sidebar

Popular podcast episodes

  • Revealing ColdFusion 2021 – Rakshith Naresh
  • CF and Angular – Nolan Erck
  • Migrating legacy CFML – Nolan Erck
  • Adobe API manager – Brian Sappey
  • Improve your CFML code – Kai Koenig

CF Alive Best Practices Checklist

Modern ColdFusion development best practices that reduce stress, inefficiency, project lifecycle costs while simultaneously increasing project velocity and innovation.

Get your checklist

Top articles

  • CF Hosting (independent guide)
  • What is Adobe ColdFusion
  • Is Lucee CFML now better than ACF?
  • Is CF dead?
  • Learn CF (comprehensive list of resources)

Recent Posts

  • 141 Into The Box 2025 ColdFusion conference (all the details) with Daniel Garcia – Transcript
  • 141 Into The Box 2025 ColdFusion conference (all the details) with Daniel Garcia
  • 107 ColdFusion 2021 Revealing Details on How it was Created with Rakshith Naresh
  • The Legacy Continues: ColdFusion Summit East Conference Edition
  • 140 BoxLang modern JVM language that runs CFML code (new CFML engine and much more) with Luis Majano and Brad Wood – Transcript

Categories

  • Adobe ColdFusion 11 and older
  • Adobe ColdFusion 2018
  • Adobe ColdFusion 2020 Beta
  • Adobe ColdFusion 2021
  • Adobe ColdFusion 2023
  • Adobe ColdFusion 2024
  • Adobe ColdFusion 2025
  • Adobe ColdFusion Developer week
  • Adobe ColdFusion Project Stratus
  • Adobe ColdFusion Summit
  • AWS
  • BoxLang
  • CF Alive
  • CF Alive Podcast
  • CF Camp
  • CF Tags
  • CF Vs. Other Languages
  • CFEclipse
  • CFML
  • CFML Open- Source
  • CFUnited
  • ColdBox
  • ColdFusion and other news
  • ColdFusion Community
  • ColdFusion Conference
  • ColdFusion Consulting
  • ColdFusion Developer
  • ColdFusion Development
  • ColdFusion Hosting
  • ColdFusion Maintenance
  • ColdFusion Performance Tuning
  • ColdFusion Projects
  • ColdFusion Roadmap
  • ColdFusion Security
  • ColdFusion Training
  • ColdFusion's AI
  • CommandBox
  • Docker
  • Fixinator
  • Frameworks
  • Fusebox
  • FusionReactor
  • IntoTheBox Conference
  • Java
  • JavaScript
  • JVM
  • Learn CFML
  • Learn ColdFusion
  • Legacy Code
  • Load Testing
  • Lucee
  • Mindmapping
  • MockBox
  • Modernize ColdFusion
  • Ortus Developer Week
  • Ortus Roadshow
  • Server Crash
  • Server Software
  • Server Tuning
  • SQL
  • Survey
  • Survey results
  • TestBox
  • Transcript
  • Webinar
  • Women in Tech

TeraTech

  • About Us
  • Contact

Services

  • Free assessment
  • Consulting
  • Crash
  • Development
  • Maintenance
  • Modernization
  • Security
  • Case Studies

Resources

  • CF Alive Book
  • CF Alive Podcast
    • Podcast Guest Schedule
  • TeraTech Blog
  • CF Alive resources
  • CF e-course
  • CF best practice checklist

Community

  • CF Alive
  • CF Inner Circle
  • CF Facebook Group

TeraTech Inc
451 Hungerford Drive Suite 119
Rockville, MD 20850

Tel : +1 (301) 424 3903
Fax: +1 (301) 762 8185

Follow us on Facebook Follow us on LinkedIn Follow us on Twitter Follow us on Pinterest Follow us on YouTube



Copyright © 1998–2025 TeraTech Inc. All rights Reserved. Privacy Policy.