ColdFusion (ColdFusion Markup Language, or CFML) was big a couple of decades back, but—similar to Java and PHP—it’s got staying power, a thriving community, plenty of open-source resources, and a trending line that doesn’t show its “death” anywhere on the horizon.
As an Adobe platform, ColdFusion is not free, but there are plenty of open-source engines alive and well that leverage the benefits of this powerful language. In fact, CFML’s legacy is best demonstrated by the big names who still actively use it, brands like Apple, Intel, AT&T, CSX Transportation, Lockheed Martin, and the FDA.
Now over twenty years old, ColdFusion still maintains an active ecosystem. The Open CFML Foundation has a number of impressive projects, and of course Adobe’s ColdFusion platform has evolved into a very modern web, API, mobile, and microservices application development platform that’s going strong—in fact, Adobe released a 2017 roadmap indicating that ColdFusion will be actively supported through to 2025 and beyond.
Here are some things to know about ColdFusion, and some features to look forward to in new versions.
ColdFusion Markup Language: Not actually a markup language
In its early days, ColdFusion was referred to as ColdFusion Markup Language, but despite that original moniker, ColdFusion is in fact a scripting language—one that runs on the Java Virtual Machine, Google App Engine, and Microsoft’s .NET framework. While markup languages annotate the text of a site, scripting languages tell a website how to behave, and are executed by a web server then sent to the browser.
CFML has a few key benefits: it’s got an approachable learning curve; its tags are quite similar to HTML, making it an easy pick-up for those familiar with HTML programming; its syntax echos that of ECMAScript; and, it’s built on Java so developers can add CFML layers to existing Java applications, and on Java servers.
CFML powers the ColdFusion platforms of today, ensuring this language’s continued relevance into the foreseeable future. Let’s look at what else this powerful script can do, and what it’s added to its repertoire under Adobe’s roof.
Adobe’s ColdFusion: A Fully Fledged Development Platform
With all of the options for programming and app development out there, businesses that choose ColdFusion do so for a few reasons. The ColdFusion rapid web application development platform is distributed by Adobe and designed specifically for its Adobe server applications. It’s a package deal with all the bells and whistles: database management, client-side coding, file format operations, API development, security, containerization, and more. It’s a fully supported scripting language that can be implemented in and used for a wide variety of applications and software, providing a high level of flexibility and function to large-scale enterprise applications.
Some important things about the ColdFusion language to know:
ColdFusion Components (CFCs). This construct of CFML gives it object-oriented properties and design patterns. This helps speed up programming by giving developers reusable modules of code. It’s CFML, just with a file extension that lets CFCs form their own “framework,” which is helpful for creating an organized, clearly structured code base in larger applications.
CFScript. The ColdFusion Platform has an extension that enables developers to write JavaScript-like CFML scripts. Generally it’s more acceptable to use plain old CFML within the HTML of your site, but to use CFScript when it comes to writing CFCs and business logic portions of your application. While CFScript and JavaScript are similar, they do have a number of important differences you can explore here.
ColdFusion Application Servers
Developers can build and deploy mobile or web apps on the Adobe ColdFusion framework, an application server where apps are automatically pre-processed before being sent to the browser. It comes in standard and enterprise editions, or can be run on Amazon Web Services. Each package offers tools and technologies that give developers a single platform from which to develop and deploy—including server security, native mobile APIs, database integrations, websockets, and debugging.
There are alternative server platforms available as well, including open-source CFML engines like Lucee, and Railo. OpenBD is an open-source CFML engine that has integrations with SalesForce, MongoDB, and AWS, while using a Java runtime.
Open-Source ColdFusion Application Frameworks
For CFML devotees who aren’t taking the Adobe route, there are other open-source CFML options to help them take CFML programming to the next level. Whether it’s for dependency injection, an MVC design pattern, or Ruby on Rails-like speed, there’s a CFML framework for you:
- Framework One (FW/1). An MVC-style framework that’s super simple and lightweight.
- Cfwheels. A Ruby on Rails-inspired framework that’s all about rapid development.
- ColdSpring. A CFML version of Java’s Spring framework, bringing the power of Java dependency injection to CFC development.
- Model-Glue. MVC, object-oriented, and complementary to other ColdFusion frameworks.
There are also enterprise-grade frameworks:
- ColdBox. An enterprise MVC-style development platform for CFML that’s designed to specifically support more modular, service-based applications and the teams who build them.
- FarCry. An enterprise-class CFML web application framework for building content-focused, scalable web applications.
- Wirebox. An enterprise dependency injection framework, like ColdSpring.
The Future of ColdFusion at Adobe
Over the past few versions of the language, Adobe has made ColdFusion a more attractive option for enterprise organizations by offering comprehensive support for the following:
Version 10: HTML5 and REST
In 2012, adding support for the latest version of HTML5 and RESTful API services brought greater productivity to ColdFusion, giving developers the tools they needed to work in an increasingly API-driven landscape. Adding support for Apache Tomcat also addressed needs for scalability.
Version 11: Mobile App Development
Pushing it out of strictly web-driven technologies, in 2014 ColdFusion answered the need for more mobile-first technology, including additions like PDF enhancements and secure ESAPI encoding.
2016: API Management
ColdFusion tacked on a complete API Management platform, with a command line interface (CLI), more and better security, and other performance improvements to support API development.
2018: The Move to Microservices
The future of ColdFusion shows a push to support containerized platforms like Docker and Red Hat.
Adobe has released information that a new version, ColdFusion 2020, will be released, and that the 2018 version will have extended support through 2025. You can check out more features and their details here.
Need a ColdFusion Developer?
ColdFusion developers and programmers on Upwork are highly skilled technicians with an in-depth knowledge of CFML and the ColdFusion platform. ColdFusion developers can help you polish and optimize any ColdFusion or Adobe server projects you are currently employing in your business or company, and a ColdFusion programmer can work with you and your team to build the ideal Adobe server application from the ground up. Whatever your specific needs, hiring a freelance ColdFusion developer or programmer on Upwork gives you and your business the ability to access and leverage the power of ColdFusion and Adobe servers in a cost-effective and flexible way.