Coldfusion is a server-side programming language simliar to PHP or ASP.NET. You do need to have it installed on your web server for you to be able to write coldfusion code. Again, just like if you were hosting asp, php, or aspx files on a web server. Some find that coldfusion is more powerful and easier to work with when developing large web applications, at least in the past, in my opinion.
Unless there is a reason to learn and use coldfusion, say for a job, I am not sure that you'll find that many new into web development are choosing coldfusion over php or asp.net.
With all of these server-side programming languages, what actually happens from the browser's perspetive is that a call is made to a .cfm (coldfusion), .asp, .php, or aspx, the web server passes that request to the appropriate server-side engine, it processes the request and provides the result back to the web server to give back to the client in pure (100% HTML), so that the browser can render the results on the screen.
So, these server-side languages are not dependant on any type of browser vendor or version.
Ah, I see. are there any specific times where someone would use CF over PHP? I.e. specific functions?
Phil, the answer to your latest question will depend who you speak to. A CF developer will recommend CF, an PHP developer will recommend PHP and so on. PHP is more commonly used because it is 'commonly used' and it is free, but CF is popular by those that know it (it is largely misunderstood by those that have not kept up with it's development) because it allows more rapid robust development than PHP.
Best thing to do is read up on, or try both, and just go with what feels right. Don't beleive too much you read in blogs etc. about either platform.. these comments are largely driven by ideology than practical comparison. Go with what feels more comfortable for you.. at the end of the day, they do the same thing.
To answer your eariler question about CF requiring proprtietary software. There are 3 CF engines available:
- Adobe Coldfusion: www.adobe.com/products/coldfusion-family.html (proprietry):
- Railo; www.getrailo.org (open source.. )
- There is also OpenBD, but railo is the more commonly used open source engine: www.getrailo.org/ (open source)
- What are the circumstances you would use it.
- What are the advantages and disadvantages to using it over HTML?
If you've used PHP (which I think you have) then you already know the answers to most of those questions. HTML is static and limited. At the core, server side languages like PHP, ColdFusion, ASP/ASP.NET, etc.. are used to generate HTML dynamically. They can do a lot more obviously, but their main purpose is dynamic web applications.
PHP may query a database, such as MySQL, to gather data and include it in html content. For example, to generate a calendar of events for the current month. Most server side languages can interact a variety of db's, using a standard like JDBC, ODBC, etc.. ColdFusion can interact with any database that has JDBC driver, or that supports ODBC.