Skip to main content

ColdFusion: #19 With a Bullet

As most of you already saw posted elsewhere, ColdFusion recently took a bit of a jump up to #19 on TIOBE's index of most popular programming languages. I hadn't looked at this index in a while but it's interesting to see what CF is both above and below, and it's also nice to see the nine green up arrows next to it on the chart.

What's more interesting to me is what this really means. Yes, many have criticized the TIOBE methodology (usually when it doesn't work in their favor), so let's not focus on the specifics. Instead, let's take a look at the bigger picture, where things are going, what I think are some important convergences happening now and likely to happen in the future, and how CF fits into all of this.

First, if you haven't seen them already you need to check out Sean Corfield's blog and the entry by Hal Helms to which Sean refers. Read these first and let them sink in ...

Now that you're back, let's put this into perspective. I think the major thing Hal points out that's dead on is that there's a shift happening, and it goes far beyond just Ruby. In my mind this shift started quite a while back when people started questioning the complexity of EJB and opting to use POJOs because they're far simpler and they get the job done. Why make things more complex than they need to be?

Even further back there was an initiative in the Java Community Process (JCP) to allow scripting languages to tie in with Java. (Sound familiar?) Again this is in response to unnecessary complexity with the 800 pound gorilla languages like Java. Java's great, I love it, but for a lot of purposes it's just too much.

Enter Ruby, which regardless of what you think about it (jury's still out for me personally) is gaining a lot of attention for these exact reasons. Ruby and specifically the Rails framework takes a great deal of the gruntwork out of web development and as Hal points out, seems to revel in its perceived inferiorities when compared with something like Java. I can't find the study off-hand, but about 9 months ago a study came out outlining the huge productivity gains many companies are seeing when using one of the "P" languages (typically PHP, Python, or perhaps Perl to a lesser extent these days) as opposed to Java. It took businesses a while to get it but the tide is starting to turn, and Ruby is in the right place at the right time.

The really interesting thing to me about Ruby ever since I first looked into it is how gosh darn similar it is in concept to CF. Huge libraries of common functions to make life easier for the developer, and enough power to do fantastic things without introducing unnecessary complexities. The days of wearing a Java badge of pride are starting to fade and companies are more interested in Getting Things Done(tm) than they are in telling their buddies on the golf course that they're using EJBs.

The other thing that's going on in CF these days is an explosion of great tools that allow CF to rival many of the other web development technologies out there. Things like Arf!, Mach-II, ColdSpring, and the numerous other development and ORM-type frameworks sprouting up these days are great, and they all have their "CF-ness" in common, meaning give CFers the power of these tools without unnecessary complexity, all in the name of getting stuff done faster and better than with any other technology.

Add to all of this ColdFusion 7 itself, which is in my humble opinion light-years ahead of pretty much any other technology out there. At this point I feel like I've still only begun to scratch the surface of what CF 7 can do, and when you combine the great features of the product itself with the extremely powerful tools becoming available, not to mention CF's long tradition of keeping things simple and keeping developers highly productive, you can start to see how bright the future is looking.

I'm sure I'll have more to say on this in the near future, and I'd love to hear your thoughts as well. I and most other CFers have been fighting the good fight for a long time now and I think finally the IT community as a whole is starting to see the value of what CF has been about at its heart since the beginning. The real bonus is going to be when people see not only that CF solves many of the same problems Ruby purports to (Ruby being the "new hotness" at the moment), but that CF has been around for a very long time, is an extremely mature, feature-rich product, and that it ties in so insanely well with Java so you can use that bit of added power when you need it.

Keep up the great work CFers and keep on keepin' on. Things are only going to get better from here on out!


Comments


This is good discussion of cold fusion and good comparision wtih ruby.

We teach it easier to train CF programmers than in java or c++ or anything else, being it is a very simple language that amateurs can learn and use.

Pleas continue to be writing about the CF, it is good and easy to use for basics. very powerful too for web use.



One of the things that gives other languages the edge is that they are taught at the college-level. My school was heavy into both Java and Microsoft ASP at the time I attended. When I contacted Macromedia, they had little or no support to interface with colleges. Both SUN and Microsoft do that. What we are talking about, changes in the industry and so on, needs to reflect at schools as well, and I hope Adobe will do a better job at that.


I agree. I'm a student myself and it's all Java and Visual C++ around here.

You get to talking about tag-based languages here and everyone kind of goes limp and starts mumbling at PHP.

This is unfortunate, I think ColdFusion is totally awesome for web development, and with the way things are going, I bet you'll find that increasingly there'll be less and less desktop application development, and more and more web/tag programming.

In another thread, someone was getting into a flamewar about macintoshes vs. wintel systems, and I think it's safe to say that there's an analogy to be drawn between Apple's innovations 20 years ago and CF's innovations today.

CF may not get credit for a lot of the great things it does, but people are silently observing, and copying...



Yep, that's a great point. I use a macintosh all the time, and get ALL kinds of crap for it, but you know? It's a far superior system to windows, and as time goes on, windows gets more and more mac-like.

I predict .NET will get more and more CF-like as time goes on. Heck, once M$ buys adobe, it'll all be over then ;)



I have a question. Do you think Macromedia should embed a ColdFusion engine in the Shockwave/Flash players so the integration with CF and Flash would be complete?

I just got back drunk from the bar and can't get over whata good idea that sounds like!!!!11



Think about it when you're sober and see if it still sounds like a good idea. ;-)


Actually, the idea is not as far-fetched as it may seem. Here is a perfect opportunity to replace the stodgy Actionscript 2.0 with a full-featured, object-oriented Real Language. What's not to like?


http://slashdot.org/pollBooth.pl?qid=1321&aid=-1


Hey there, sparky. Are you ever going to update this blog, or am I going to have to spend the day at myspace.com and do searches for hot chicks who are also macromedia flash designers?


I found a link to what I think is the same report about the "P" languages to which I refer:
http://www.internetnews.com/dev-news/article.php/3492771

Comments

Popular posts from this blog

Installing and Configuring NextPVR as a Replacement for Windows Media Center

If you follow me on Google+ you'll know I had a recent rant about Windows Media Center, which after running fine for about a year suddenly decided as of January 29 it was done downloading the program guide and by extension was therefore done recording any TV shows.

I'll spare you more ranting and simply say that none of the suggestions I got (which I appreciate!) worked, and rather than spending more time figuring out why, I decided to try something different.

NextPVR is an awesome free (as in beer, not as in freedom unfortunately ...) PVR application for Windows that with a little bit of tweaking handily replaced Windows Media Center. It can even download guide data, which is apparently something WMC no longer feels like doing.

Background I wound up going down this road in a rather circuitous way. My initial goal for the weekend project was to get Raspbmc running on one of my Raspberry Pis. The latest version of XBMC has PVR functionality so I was anxious to try that out as a …

Setting Up Django On a Raspberry Pi

This past weekend I finally got a chance to set up one of my two Raspberry Pis to use as a Django server so I thought I'd share the steps I went through both to save someone else attempting to do this some time as well as get any feedback in case there are different/better ways to do any of this.

I'm running this from my house (URL forthcoming once I get the real Django app finalized and put on the Raspberry Pi) using dyndns.org. I don't cover that aspect of things in this post but I'm happy to write that up as well if people are interested.

General Comments and Assumptions

Using latest Raspbian “wheezy” distro as of 1/19/2013 (http://www.raspberrypi.org/downloads)We’lll be using Nginx (http://nginx.org) as the web server/proxy and Gunicorn (http://gunicorn.org) as the WSGI serverI used http://www.apreche.net/complete-single-server-django-stack-tutorial/ heavily as I was creating this, so many thanks to the author of that tutorial. If you’re looking for more details on …

The Definitive Guide to CouchDB Authentication and Security

With a bold title like that I suppose I should clarify a bit. I finally got frustrated enough with all the disparate and seemingly incomplete information on this topic to want to gather everything I know about this topic into a single place, both so I have it for my own reference but also in the hopes that it will help others.Since CouchDB is just an HTTP resource and can be secured at that level along the same lines as you'd secure any HTTP resource, I should also point out that I will not be covering things like putting a proxy in front of CouchDB, using SSL with CouchDB, or anything along those lines. This post is strictly limited to how authentication and security work within CouchDB itself.CouchDB security is powerful and granular but frankly it's also a bit quirky and counterintuitive. What I'm outlining here is my understanding of all of this after taking several runs at it, reading everything I could find on the Internet (yes, the whole Internet!), and a great deal…