Should I really be concerned if I have a ColdFusion web application?
ColdFusion is a rapid application development platform introduced in 1995, known for its ability to quickly develop data-driven websites. The technology is still in use today. Adobe acquired ColdFusion in 2005 and has continued to provide new releases and enhancements, publishing a ColdFusion road map that extends until 2022. With apparent long-term support from Adobe, and celebrated for its ease of use, should you be concerned if your application is written in ColdFusion?
ColdFusion is a very capable technology that has aged extremely well, especially considering how much web standards have changed. If there is a reason to be concerned, it has less to do with the product itself, and more to do with the current popularity of the product. In the sections below, we review why ColdFusion has fallen out of favor with developers, and if a technology change might be right for you.
1. Lack of Modern-Day Appeal
Web technologies have exploded in the past five years. Previously, web applications were written end-to-end by a single developer. This means that a developer would need to code the web front-end, the business logic, and access to the database, which is something ColdFusion does well. But now, with a focus on creating fast and fluid user experiences that work great both on web and mobile browsers, as well as native mobile apps taking off, development specialties have emerged.
Developers now align their careers to an area of software development such as mobile app development, web interface development, or back-end application development. They also prefer to deepen their expertise by focusing on one or more technology stacks such as:
- Mobile Development: Objective C, Swift, Xcode 5, Xamarin, PhoneGap, Java for Android apps
- Application Development: .Net, Java, PHP, Ruby on Rails, etc.
With a change in how developers approach their careers, the end-to-end developer job is no longer attractive. This makes ColdFusion less appealing to modern day technologists.
2. Job Opportunities
The demand for ColdFusion jobs in the marketplace is minimal. As a software developer, you learn early on that technology changes quickly. To be successful and relevant, you need to evolve your technical abilities or perish.
Below are my search results from www.indeed.com for developer jobs in Atlanta, GA. The majority of jobs in Atlanta are for Java or .Net development. The number of ColdFusion jobs is less than 1% compared to .Net or Java. Following market trends, it makes sense for previous ColdFusion developers to stay relevant and learn technologies that are in demand.
|Technology||Number of Job Postings as of 5/13/2015|
3. Community Support
Modern developers are fortunate to have plenty of local and online support. Through a vast array of user groups, meet-ups, code sharing websites, webinars and conferences is a network of people who are energetically investing in, and advancing modern technologies. This energy helps to attract and keep developers engaged while also enabling developers be successful in their day-to-day jobs.
One of the primary complaints you see within ColdFusion forums is the lack of community and momentum. Although members have posted that they have tried to corral the users and build the community, there has been little response and willingness to contribute. While meet-up groups do exist as do online forums, it is not to the same extent as other technologies. Additionally, there is no “next generation” of ColdFusion developers to bring renewed energy and life to the community. Universities and technical colleges are teaching students one of many other technologies to prepare them for their future careers.
Is a technology change right for you?
A decision to migrate to another technology depends on several factors. Is your application mission critical? Is it a competitive disadvantage to your customers if the technology is in ColdFusion? Are you about to invest in new features or make a strategic change for your company? Do you intend to support and extend your application for the next 3-5 years? These are just a few situations where you should think about a technology change.
On the other hand, If the application requires little to no support and is not a mission critical system, it may make sense to continue to benefit from your original investment. If you have no long-term plans for your application, or have the option to migrate to an alternative software service, then it also makes sense to continue with your application as-is.
Even if your application isn’t mission critical, it may be worth considering that re-writing the software could mean more than just business continuity, it could mean an opportunity for being more competitive in the marketplace and accelerating growth. Software development has advanced greatly in the past 5-10 years. Professionals who understand software design can help bring new ideas and possibilities to your application and business. Improvements in the user’s experience and functionality can increase the user’s efficiency and enjoyment of the software as well as elevate your company’s brand. Also, a new development project can mean taking care of a backlog of issues that have been lingering for a while and causing your users and customers frustration.
Based on your business situation, you can weigh your current support needs and importance of the app against your challenges in getting the quality support you need. If the app is important to your business, and you are experiencing support challenges that is impacting your company, then now may be the time to consider migrating the application or looking for an alternative solution.
Photo Credit: Christian Gonzalez