cffaq.com


Hosted and maintained by Ben Forta. Designed by Trilemetry.
Language:
    © 2002-2007 Ben Forta. All Rights Reserved  
<Home> <FAQ: Why ColdFusion?> <About>

Questions

1: What exactly is ColdFusion?  
2: How old is ColdFusion?  
3: How many organizations use ColdFusion?  
4: How many developers use ColdFusion?  
5: How successful has ColdFusion been relative to other application servers?  
6: What types of applications are built using ColdFusion?  
7: Why do I not see more public ColdFusion driven sites?  
8: Why do companies buy ColdFusion when ASP and PHP are free?  
9: Isn't ColdFusion proprietary, and isn't using proprietary software dangerous?  
10: What is CFML?  
11: I have heard it argued that CFML is not a real programming language. Is this the case?  
12: What are .CFM and .CFC files?  
13: Isn't ColdFusion a low-end and entry-level solution?  
14: Doesn't ColdFusion encourage poor programming practices?  
15: I have no programming experience. Is ColdFusion for me?  
16: I am an experienced developer and use C and/or Java, why should I use ColdFusion?  
17: I am a Flash user. Why should I use ColdFusion?  
18: My company has standardized on the J2EE platform. Doesn't this preclude the use of ColdFusion?  
19: As ColdFusion MX is built on underlying Java technology, is Microsoft and Windows support going to be discontinued?  
20: Active communities are important to the success of any technology. Does ColdFusion have a strong and involved user community?  
21: Is Macromedia committed to ColdFusion?  


FAQ

1: What exactly is ColdFusion?
ColdFusion is actually two things, it is an application server and it is also a language. Most ColdFusion developers do not distinguish the two – they install the ColdFusion application server and use the ColdFusion language (called CFML for ColdFusion Markup Language) to write applications that run on that server. But ColdFusion the language can also be used on top of other application servers, J2EE application servers, providing an alternate and simplified scripting syntax for those high-end servers. Either way, the CFML language is used to create powerful applications quickly and easily, applications that run on the ColdFusion application server, or on an application server of your choice.
2: How old is ColdFusion?
ColdFusion is the original Web application server (even predating that term); it was created in 1995 making it the most mature product in the space.
3: How many organizations use ColdFusion?
ColdFusion is used by over 10,000 organizations worldwide and runs on over 125,000 servers.
4: How many developers use ColdFusion?
Conservative estimates put the number of ColdFusion developers at approximately 350,000. In reality this number is likely much higher as ColdFusion is sold per server and there is no limit to the number of developers who could use the same server.
5: How successful has ColdFusion been relative to other application servers?
Very. ColdFusion is the leading commercial (as in paid for) application server, and is second only to ASP in published pages. ColdFusion is used by over 75% of the Fortune 100.
6: What types of applications are built using ColdFusion?
While ColdFusion is used for all kinds of applications, including dynamic web sites, e-commerce sites, and portals, the significant majority of ColdFusion applications are Intranet and data reporting applications. This has always been one of ColdFusion's key strengths, and continues to be so.
7: Why do I not see more public ColdFusion driven sites?
Actually, there are lots of public ColdFusion sites out there. But, as Intranets and reporting is where ColdFusion tends to be most used the majority of ColdFusion powered applications are behind firewalls and on corporate networks. These can skew the perception of usage and page counts. For an idea of who is using ColdFusion see the lists on http://www.macromedia.com/ as well as http://www.forta.com/cf/using/.
8: Why do companies buy ColdFusion when ASP and PHP are free?
Free is a bit of an overstatement. Yes, some core functionality may be available just by downloading software, but ColdFusion includes significant integrated services that are not included with other products. Major features like business graphing and full-text search, as well as small utility features like handling file uploads and reading and writing e-mail messages are not part of ASP and PHP and are included with ColdFusion. One recent estimate found that to add CF Professional functionality to ASP involved a raw cost of goods that topped $30,000. As such, ColdFusion Professional (for well under $1,000) is a real value. And that does not even take into account the cost savings of a simpler learning curve and shorter development cycle.
9: Isn't ColdFusion proprietary, and isn't using proprietary software dangerous?
No, ColdFusion is not proprietary. In fact, there are several other products (from other vendors) that have implemented CFML (or parts of it). In addition, ColdFusion leverages all open and public standards for everything from database integration (JDBC, ODBC) to configuration files (XML) to underlying architecture (J2EE). In fact, some might argue that ColdFusion and CFML are less proprietary than ASP and PHP (which are not supported by third party servers) and even Java itself (there is no licensing program or fee required to be ColdFusion compatible).
10: What is CFML?
CFML is the ColdFusion Markup Language, a tag based programming language designed specifically for writing Web and Internet based applications. CFML looks more like HTML than it does traditional programming languages, and this makes the language easy to learn and use (no more difficult than HTML). CFML is supported by ColdFusion as well as by some third party servers.
11: I have heard it argued that CFML is not a real programming language. Is this the case?
You can write real programs in CFML, that makes it a real programming language. Having said that, CFML has taken some heat for not looking like traditional programming languages (it is primarily tag based, not script based). There are several important points to keep in mind here: 1) CFML was designed to mimic HTML because it is HTML (and its inherent simplicity) that made the Web successful; rather than retrofitting existing languages to be Web centric (think Perl) CFML was built from the ground up for this space. 2) ColdFusion does indeed support scripting for programmatic tasks (flow control, conditional processing, etc.) via <CFSCRIPT> and more recently server-side ActionScript. 3) CFML is a very powerful programming language and is made up of about 100 tags and over 200 functions that perform all common programmatic operations and many not so common ones too (LDAP interaction, XML abstractions, COM and CORBA support, graphing and full text searching, and more). 4) It is somewhat ironic that for 5 years CFML was criticized for being tag based, and then comes ASP.NET featuring tag abstractions, and JSP which is essentially tag wrappers around Java code, and even XML which is nothing more than tag based data sharing. Looks like CFML had it right all along.
12: What are .CFM and .CFC files?
CFML code is saved in files with either a .CFM or a .CFC extension. .CFM files are standard ColdFusion files and may be plain files, included files, or Custom Tags. .CFC files are ColdFusion Components (reusable ColdFusion objects).
13: Isn't ColdFusion a low-end and entry-level solution?
Only if you want it to be. ColdFusion is a tool, what you do with the tool is up to you. Sure, lots of entry-level solutions have been built with ColdFusion – after all, for beginners ColdFusion is the easiest product and technology to learn. But unlike many easy-to-learn tools, ColdFusion allows users to expand their use to much more advanced applications. In addition to the many basic applications, many high-end and mission critical applications have been built with ColdFusion too. ColdFusion is no more "low-end" than a hammer is "a tool to build only small houses" – it's not the tool, it's how you use it.
14: Doesn't ColdFusion encourage poor programming practices?
No, not at all. ColdFusion provides all the necessary building blocks to create highly scalable, structured, manageable, and maintainable code. ColdFusion does not enforce any particular development methodology or structure – this is deliberate and by design as ColdFusion's emphasis is on getting the job done. Many developers do in fact start off by writing code that is less than ideal, and then learn and grow with the product. The fact of the matter is that not every application need be n-tier, implemented using model-view controllers, or built using design patterns. However, all of these are supported (especially via ColdFusion Components) and should be used when needed. In other words, you'll not outgrow ColdFusion – use it as suits you best and then keep getting better.
15: I have no programming experience. Is ColdFusion for me?
Absolutely. You'll need to learn some HTML and SQL, but Dreamweaver MX can even help with those too. Unlike other programming languages, you'll find yourself productive in ColdFusion in hours (not days or weeks or months).
16: I am an experienced developer and use C and/or Java, why should I use ColdFusion?
C and Java are great low-level programming languages, and are ideally suited for heavy-lifting and back-end processing. But you'd never want to generate HTML output or interact with form submissions using those languages. It would be way too much work and with no real value or upside. Rather, you should use a combination of ColdFusion with those languages and tier your development. Let ColdFusion handle the presentation layer and all web integration, and use your C or Java code for the back-end. It's the ideal solution.
17: I am a Flash user. Why should I use ColdFusion?
As a Flash user you already understand the importance of creating rich and engaging user experiences. Flash is often used for animation, intros, advertisements, and special effects, but Flash can do a whole lot more too. Flash can also be used as a front end for Internet based applications, and ColdFusion is ideally suited to be the back-end powering your Flash applications. ColdFusion and Flash are designed to talk to each other allowing you to build client-server type applications easily and effectively – Flash as the client and ColdFusion as the server.
18: My company has standardized on the J2EE platform. Doesn't this preclude the use of ColdFusion?
On the contrary. Your company has made a strategic decision to builds its IT infrastructure on an incredibly powerful facilitating technology, one that is steadily growing in popularity. J2EE (the Java platform) provides the architecture and the building blocks needed to build reliable, robust, and scalable applications. But all that power comes with a price (and not just the cost of software) – J2EE development is complex and beyond the scope of most members of most organizations. And even for experienced Java developers, not all tasks need be (or even should be) written in low-level Java. ColdFusion MX can sit on top of J2EE implementations, leveraging the underlying architecture and investment, while making its power accessible to all. Or put another way, ColdFusion MX delivers the power of underlying J2EE to those to whom it would have been inaccessible, and along the way makes accomplished Java developers far more productive. Not only does a move to J2EE not preclude the use of ColdFusion, it actually makes ColdFusion a logical choice for you – you've already made a massive investment (both financially and resource-wise), with just a little more money that investment can actually become usable by all.
19: As ColdFusion MX is built on underlying Java technology, is Microsoft and Windows support going to be discontinued?
The significant majority of ColdFusion installations run on Windows and use Microsoft back-ends (SQL Server, for example). There are no plans whatsoever to drop support for our most used platform, and with new support for .NET services ColdFusion has stronger Windows support than ever before. At the same time, ColdFusion also supports non-Microsoft platforms like Linux, Solaris, and HP-UX and non-Microsoft databases like Oracle, DB2 and mySQL – making it one of the most flexible products on the market.
20: Active communities are important to the success of any technology. Does ColdFusion have a strong and involved user community? Comments
ColdFusion has always had strong community ties, and the direction and growth of product has always been very community driven. There are numerous discussion lists, forums, publications, user groups, events (both Macromedia events and independent events) and an entire third-party publishing industry too.
21: Is Macromedia committed to ColdFusion?
Definitely. In fact, the latest version of ColdFusion (the first built entirely by Macromedia) was built by the largest product development team ever with the greatest budget and resource allocation of any ColdFusion to date. That alone is testament to Macromedia's commitment to ColdFusion and the ColdFusion community.

<submit question>