3 ms·
Is there a captivating set of advantages or other reason to use ColdFusion compared to any of the more common languages today?1 I'd love to play with this and l
by Posibyte 9y ago
Is there a captivating set of advantages or other reason to use ColdFusion compared to any of the more common languages today?1 I'd love to play with this and learn something new if it brings something interesting and different to the table.
1: Of course, other than leveraging existing CF knowledge.
- moduspol 9y agoWe used it at my last job a few years ago, and it was pretty easy to get people who aren't normally even coders to build a ColdFusion page. We used it for the university's intranet and it was very good for making simple internal CRUD web apps that various members of our team could understand / troubleshoot / maintain easily. One of the defining features of ColdFusion is the tag-based syntax. You can have a single "web page" file in, say, "my-widgets.cfm". It can then have a mix of HTML and CFML tags that lay out the page, which would include an SQL query of a database and the HTML being output for each row. Other languages have templating, but this is more like a core feature of the language. By default, it's also got that PHP style of "just upload a file and open it in your web browser" that makes it simple. So if someone else wanted to make a page like my "my-widgets.cfm", they could simply duplicate it with a different name and make changes until it's ready to go. This lets you turn around internal web apps very quickly that, you know, does in realtime what an administrative assistant does in a week with an Excel spreadsheet. I use Python now and I certainly recommend it, but it wouldn't be as simple to jump right into as a barely-techie. Same with modern PHP (on something like Laravel). Earlier PHP would be similar, but ColdFusion's <cfquery> functionality is so easy to use and so critical that it's really a big deal. You don't need to know much ColdFusion to run a query and output the results (safely even) in HTML.
- bdcravens 9y agoA few of my favorites (some of which aren't relevant when using a framework like this): - simplified query recordsets (loop through, values referenced as queryName.columnName) - you can turn anything into a recordset - in-memory SQL queries of recordsets - easy access to SQL (<cfquery ...>select a,b,c from foo...</cfquery>) - write code using integrated markup or using ECMAScript-type syntax - built-in web-based UI - simplified REST API construction - simplified web services construction - simplified access to global, app-local, session-local scopes - delimited-lists as a top-level data structured - simplified access to things like email, charting, etc - most of what you need for a web app is in the box, so if a server is running a CFML application server, you can build an app with no boilerplate (frameworks like Wheels and ColdBox obviously work differently, but CF is no framework required)
- rad_gruchalski 9y agoNot really, not much one can learn from ColdFusion. The problem with CF is that it tries to do everything. CF server is a huge monolith, some functionality you'd never use still loads and occupies the memory. I call it "a bag of memory leaks wrapped in legacy dependencies". Haven’t used it for a few years but back in the day “tuning the JVM" seemed to be a common pattern among the CF folks. Basically, instead of accepting the fact that CF is memory hungry, sometimes not releasing memory correctly and literally consuming gigs of RAM within minutes, everybody tried to find some magical JVM settings that would prevent this behavior. Server used to require rather often restarts. the other thing is, some of libraries used by the CF server, even the most recent versions are years old. It’s not really a problem if you plan on using CFML layer only but if you want to do some more advanced stuff with event gateways, you may find yourself in trouble. For example, I was recently writing some Kafka stuff that supposed to be working as an event gateway. The amount of shading required to deploy the JAR is insane. There are some really nice things though, for example <cfprint> tag would be the sole reason I'd put a CF instance up. Haven't seen anything out there that would handle printers so easily. Personal recommendation would be: if you do not have to, stay away. Nothing new to learn there. I am saying this as a certified Adobe ColdFusion 7 and 8 developer who’s not working with this technology for at least 6 years now. Some people in this thread mention that it’s a benefit that people who know nothing about programming are able to write some working code. I find this a problem often contributing to the issues mentioned above.