| By Hal Helms | Article Rating: |
|
| January 30, 2004 07:27 AM EST | Reads: |
11,275 |
When they hear that I run a class entitled "Java for ColdFusion Programmers," many developers ask me: "Why the class in Java? Is ColdFusion dying?"
It's a fair question. After all, technology in general and languages in particular have a lifespan. It's also true that ColdFusion is being squeezed by two behemoths: Java on the one side and .NET on the other. That's clearly an unenviable position. Yet Macromedia is working very hard to ensure that ColdFusion does not become a casualty. Can ColdFusion withstand the pressure and continue to thrive? It's an important question because only thriving languages generate high salaries, interesting projects and perks for their developers.
Answers to questions like that usually get argued-passionately-by people on all points of a spectrum. In this case, the spectrum has two extremes represented by the statements "CF is dead" and "CF will live forever." Given the extremes, many developers may feel that a middle course is safest and probably the most accurate. To this, I can only borrow the words of the American newspaperman, H.L. Mencken, who once wrote: "For every complex problem there is an answer that is clear, simple. . .and wrong."
I think there's a problem with the question and the debate it generates. It's not just that discussions of this sort tend to generate a great deal of heat without shedding much light. I'm not speaking only of the seemingly natural way that passion turns into anger in such debates, but of the fact that the answer is simply unknowable. And it is exactly that unknowability that should concern us.
By asking a better question, we're far more likely to come up with a better answer. Perhaps a better question than "Is ColdFusion dying?" is "How do I manage the risk that the language with which I make my livelihood will, at some point, decline?" One engenders passion; the other reflection.
The answer, I believe, is simple: prepare now for that point-whenever it may be-that you need to know a new language. Macromedia has made a big deal of the fact that CFMX is built on Java. Go to macromedia.com/desdev and you'll see articles about object-oriented programming, object modeling and design patterns. CFMX represents a fundamental shift in Macromedia's vision for ColdFusion and it's a vision that's tightly tied up with Java. Macromedia has also been careful to tell ColdFusion programmers that they will not have to learn Java. Yet it is undeniable that Java is the 800-lb. gorilla of programming. Ignoring it is something we do at our peril, it seems to me.
Both .NET and Java are built on object orientation. ColdFusion is not. While the introduction of CFCs is most welcome, ColdFusion does not have the power of a true OO language such as C# or Java. (Of course, neither does it have the complexity of either of these languages.) CFCs, though, can be a very valuable way of easing into the object world. In fact, I've just finished a book, Discovering CFCs, and an e-workbook, "Studies in Discovering CFCs", that deal with CFCs and objects (available for order at www.techspedition.com). Even if you do nothing with Java, my first advice to you is to study CFCs and begin to learn OO concepts and apply them to CFCs as much as possible.
My advice: "Learn OO and Java."
My next advice is to devise a plan for learning OO programming and Java. I can't promise you that this will be painless. Every OO teacher and trainer knows how hard the shift in thinking can be for programmers coming from procedural languages. Still, procedural programmers do become OO programmers-else we would have none today!
With commitment and hard work, "Java terrors" can be tamed. My experience of teaching others OO is that developers go through the following stages:
skepticism: who needs objects?
confusion: these new terms and unfamiliar syntax make me dizzy.
dawning: ah, now it starts to make some sense.
enthusiasm: OO rocks!
The trick, of course, is to make it through the first and second stages.
Published January 30, 2004 Reads 11,275
Copyright © 2004 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
About Hal Helms
Hal Helms is a well-known speaker/writer/strategist on software development issues. He holds training sessions on Java, ColdFusion, and software development processes. He authors a popular monthly newsletter series. For more information, contact him at hal (at) halhelms.com or see his website, www.halhelms.com.
![]() |
Tom Minderson 12/28/07 02:28:24 AM EST | |||
OOP does not work well for business applications. Even some die-hard OOP proponents have agreed after coming from other domains. CF should promote the niche of being a data-centric language. Being data-centric has kept FoxPro going for as long as it did, despite lots of legacy baggage. Data-centricity is an under-served niche. Don't fall into the OOP fad-trap. I've never seen it prove itself superior for custom biz apps. Ever. |
||||
![]() |
mufu mofi 11/01/03 04:13:10 AM EST | |||
With all the sites being migrated from cf to asp.net, java whatever, I have to say I am really sick of people arguing about this. Yes I wish coldfusion was being better supported, I wish sense would prevail, I wish ColdFusion had a future. But wishing it doesn't make it true. ColdFusion will always do the job better, but if people don't buy it and use php open source crap or oo crap, Macromedia will not support it either. They aint doing it for the love and when the money runs out in the sales column, it will be as dead as spectra. Don't let that stop you using it, just be careful in the job market and check the numbers of jobs that need your skills. |
||||
![]() |
Craig M. Rosenblum 01/06/03 01:57:00 PM EST | |||
The real answer lies in between. Sure we can learn java or C# or .Net. The real question where does macromedia or coldfusion fit in? I'd say it doesn't. Instead of looking at the crappy ideas of others, let's have our own idea. The whole goal and purpose of ColdFusion is Rapid Application Development. Of course languages, evolve, but sometimes, too much change, can make it into a kludge. Right now coldfusion is trying to do too much. Let's focus on the core essentials of ease of use, rapid development, scalability, ease of working with different databases. There are better ideas to go for instead of the OO crap. How about a ColdFusion Compiler. It can pre-compile in CFMX. But not in a saveable format. Let's take advantage of the ease of coding and developing in CF, but take advantage of the core code in JAVA or C that it gets converted to. This is just like the Usability vs Flash crowd over on webmasterworld.com. The real question is the real world, I really don't care how cool a language is. I care how usable and adaptable it is too my needs. And as those needs evolve I need to learn how to use it better, and I have. That's what experience brings to the package. I like Hal Helms, I may disagree with him a lot. But he is a very straight up guy. I really hate that macromedia owns ColdFusion. Maybe allaire wasn't perfect, but back then they had a head on their shoulder. I think in all reality, they've lost the common sense of what really matters. Pardon my language, but I don't want no stinkin' rich media websites. I want more usable, scalable, adaptable websites. I think the more interesting aspect of the web is the database end more than the code. But for now we need a middleware to connect the database to the web. Anyways this is what I really think. |
||||
![]() |
12/03/02 08:52:00 AM EST | |||
Hey Brogna- |
||||
![]() |
R. Brogna 10/24/02 01:45:00 PM EDT | |||
I've been using CF since version 2.0 and have graudated my skills over the years to include other languages: Python, C++ , Java and Assembly Language. Although I do like CF, it never surprises me how many Cold Fusion developers call themselves Software Engineers or even Software Programmers??? Scripting is a bit more accurate. I'd like to point out that obviously there are other languages that equallly rival CF: PHP, ASP, JSP...etc Want real job security? Learn those too. Macromedia is a company that have axed a lot of good developers over time. I can't really respect that. Part of me wouldn't care less if it died, it would certainly weed out a lot of jokers who shouldn't be in this field in the first place. I applaude the efforts of any Cold Fusion person to learn OO programming. I would suggest more companies look into to other comparable technologies to CF ...like PHP and MYSQL because usually, that's all they need. |
||||
![]() |
Michael 10/14/02 01:13:00 PM EDT | |||
Hmmm,my view is that I see CF staying around for a very long time, I dare say that MM is going to put allot of time and money in this product. I was taught CF by a very brillant man who left this company and started his own amongst others that are also evangilists of CF and Spectra. In the first class, It was mentioned that ASP stood for awfully slow pages. And that was that. I love coding in CF more than anything else. Tied in with SQL2000 the most powerful database that blows Oracle away imho and you have a powerfull combination. Hal Helms has views and say, he has Fusebox which is cool and is trying new stuff, and thats all it is is STUFF. Well its back to work in CFMX and I will endorse it all the way. Its not dying, and Miscrosoft is playing catch up with security holes in . NET, There always going to be playing catch up. Unless they can steal CFMX like they did with OS's and GUI's . |
||||
![]() |
Farmer 10/07/02 11:50:00 AM EDT | |||
Have you ever seen a program written on a punch card? Have you seen a program written in the 60s or 70s? Neither have I. But I am quite sure that programming techniques have been changing from the dawn of the craft. Of course things die and evolve. CF is not dying, it's evolving. As programmers we need to evolve too. Things are changing and I don't believe that OOP will be the only survior. But it is becomming more and more important every day. Some languages can't do things others can and some just do them better. It's my beleif that alot of serious application dev requires OOP to be successful. Don't feel like you must learn to love OOP to survive in your field. But decide where you want to go in your field and find out what you need to learn to get there. One thing is for sure, programmer that don't strive to adapt will stagnate. |
||||
![]() |
Sean Scott 10/06/02 08:25:00 PM EDT | |||
Well off-course it should be noted that Mr. Helms is by no mean an unbias viewpoint. He does after all teach a Java classes to Coldfusion programmer. Getting more coldfusion programmers to take his class would fatten his bottom line. Does Mr. Helms trully care about the death of coldfusion or is this nothing more than a cheap marketing trick? Having programmed in all of the said above languages, they each have their strenght and weaknesses. As far as I am concern to program in Coldfusion or .Net or Java or PHP for that matter amounts to speaking a sentence in different languages. The goal is the same, the methods are different. The only real reasons behind a languages death, is the parent company's marketing dollar behind it. coldfusion will only die when Macromedia ceizes to think it can make money on it. Same for .Net or Java. Until then I chose to program in Coldfusion. Sincerely, Sean |
||||
- AJAX World RIA Conference & Expo Kicks Off in New York City
- Ulitzer’s Amazing First 30 Days in Public Beta
- "Government IT Expo" to Highlight Cloud Computing and SOA
- Will Ulitzer Dominate News Content on The Web? -Gartner
- Clear Toolkit 4: The Road Map
- Creating Adobe AIR Native Menu with Flash CS4
- Ulitzer Responds to Published Reports
- Ulitzer vs. Ning - a Quick Review
- Adobe AIR: Creating Dock and System Tray Icon Menus
- Social Media Terrorists
- AJAX World RIA Conference & Expo Kicks Off in New York City
- Web Services Using ColdFusion and Apache CXF
- Adobe Takes LiveCycle into the Cloud
- Ulitzer’s Amazing First 30 Days in Public Beta
- Adobe Creates a Sandbox in the Sky
- "Government IT Expo" to Highlight Cloud Computing and SOA
- Will Ulitzer Dominate News Content on The Web? -Gartner
- The Role of an RIA in the Enterprise
- Clear Toolkit 4: The Road Map
- Creating Adobe AIR Native Menu with Flash CS4
- The Next Programming Models, RIAs and Composite Applications
- Constructing an Application with Flash Forms from the Ground Up
- AJAX World RIA Conference & Expo Kicks Off in New York City
- CFEclipse: The Developer's IDE, Eclipse For ColdFusion
- Personal Branding Checklist
- Adobe Flex 2: Advanced DataGrid
- i-Technology Viewpoint: We Need Not More Frameworks, But Better Programmers
- The Asynchronous CFML Gateway
- Building a Zip Code Proximity Search with ColdFusion
- Web Services Using ColdFusion and Apache CXF









































