4 ms·
As someone who still uses CFML today (not Adobe ColdFusion but rather a fully open source workalike called Lucee, which runs in the JVM and is licensed as LGPL)
by sjwright 7y ago
As someone who still uses CFML today (not Adobe ColdFusion but rather a fully open source workalike called Lucee, which runs in the JVM and is licensed as LGPL) I can say that there's a lot I have learned.
I learned that having a poor reputation among the influential opinionists is not a strong indicator of a language's inherent worth. As a language designed to achieve a specific purpose I think it is equal (or superior) to many options with a better reputation, e.g. PHP, Ruby, Python, Jython, Groovy.
I also learned that a language can be substantially improved with small, incremental improvements. Modern CFML has an JavaScript-inspired syntax, objects, closures, lambda, and countless benefits that come from running directly on the JVM.
- jsgo 7y agoMy supervisor and one of my coworkers are coldfusion (can’t remember which version number) developers. I’ve never worked in it, but I could easily see someone with experience in ASP.NET or one of the Java web technologies JSPs being able to understand at a high level coldfusion code and vice versa. It seems to prefer code being in the same page as the presentation (at least, from what I’ve seen them do), which may go against others, but seems to work out fine there. Also, they can hammer out a solution to things pretty quickly with it. I don’t know if this is so much the language or the developer, but at a minimum it doesn’t appear to be a hindrance to development.
- sjwright 7y ago> It seems to prefer code being in the same page as the presentation It's not so much as it's preferred, but rather that it's possible. In fact, because templates and business logic are really just the exact same language with different grammar, a CFML programmer may be passively incentivied to mash the two together because, well, what's the point of splitting it up anyway? If I'm just going to run these ten lines of code to acquire my data and run these ten lines of template to output my data, I might as well put these twenty lines next to each other into one file...at least for now. You can always split it up later if it becomes more complex, or if you want to take "proof of concept" code and refactor it in the house style. If you want you can structure your programs with as much (or as little) buzzword compliance as you wish. There are numerous frameworks which help you structure your code, including a few that are quite similar to Ruby on Rails. CFML doesn't hold your hands and declare the one true correct way to structure your code properly, which is both a big strength and perhaps its biggest weakness.
- jsgo 7y agoyeah, I don't have a personal problem with the approach (followed by "which may go against others, but seems to work out fine there"), just that it deviates a hair there from what I've seen most try to push. But they're able to hammer something out pretty quickly (and most importantly, it works) taking that course so if it works for them I see no harm (it obviously isn't a hindrance in any particular measure that matters).
- vorg 7y ago> options with a better reputation, e.g. PHP, Ruby, Python, Jython, Groovy Not sure why you'd put PHP and Apache Groovy in that list.
- sjwright 7y agoSeriously? PHP is famously a hot mess whose biggest key selling point is its immense popularity. Most criticisms thrown at CFML also apply to PHP. As for Groovy, I meant to say Grails. I don’t really know, I just remember it touted heavily ten years ago. Every time I check out Groovy I am forced to ask what the point is. Looks like dumbed down Java to me. If you’re going to dumb down Java, do it properly and make a language as dumb as CFML. :-)