QueTwo's Blog

thouoghts on telecommunications, programming, education and technology

Why ColdFusion should NOT be taught in schools

I already know that this post won’t be popular with my close friends, but I think it needs to be said anyway…   Don’t worry, this isn’t a “ColdFusion is dead” article.

I was recently asked to sit down for lunch with two computer science professors from two different schools in my area.  For the most part, I was in “a fly on the wall” mode as these professors talked about various things such as how they catch people copying code, to how they teach good memory use, etc.  This wasn’t a formal meeting by any sense, but rather just a meeting of two friends who happen to work in the same profession.

Chalk BoardAbout half-way through lunch, I decided to ask about using a more stable language, like ColdFusion (CFML) to teach web programming. Currently one of the schools teach Python (and considering Ruby) and the other teaches PHP for their courseware.  After both chuckled at me, I dove into my Adobe taught ColdFusion isn’t dead, ColdFusion has a growing population, ColdFusion has some open-source alternatives, etc.  Both sat there and soaked in my sales pitch.  One of the two even used to use ColdFusion on some side work in the past.

“It’s not about the servers — it’s truly about the language.” spoke the gent from the larger school.  “For a formal, introductory computer science class, ColdFusion [CFML] really doesn’t offer us anything that another language does.  And it adds in a lot of complexities and guessing that make other languages easier to teach in the classroom

As he explained his position, it started to soak in to me — ColdFusion while really easy to pick up and learn teaches some really god-awful practices.  And if you take a look at the ColdFusion community at large, it seems to be a real mess.  Some of the great points from his argument :

  • CFML is not a typeful language.  For the end user to not be able to specify to the language/compiler that you want to store a String vs. a Number can be troublesome and confusing to both sides.  What is often worse is that to force ColdFusion to choose a particular variable type is very awkward and more-or-less a hack.
  • There is no good CFML debugger.  If you do your work in the current Official CFML editor by Adobe (Dreamweaver) there is no debugger.  You have to install another, 3rd party application (Eclipse) to do your debugging.  Even then, it is cumbersome, and not really feature complete.  How much memory is this CFC using?  Why am I getting this response from the Query?  These are the questions that the debugger still fails to answer properly.
  • The documentation is poor.  The LiveDocs, while OK, are very un-organized and seem to be very short on examples.  The community is good at sharing examples, if you can find them.  The Adobe search engine is a joke on their site.  There are only 4 current books, by two authors (although, one plus to this is they both live in Michigan).
  • CFML, by its design will fight you in implementing the most common design patterns.  Lets face it, most of the MVC frameworks are a hack.  In fact, when you take a look at it, most frameworks that exist for ColdFusion — even Adobe’s own Model-Glue are exceedingly complex because they have to implement so many workarounds to get their pattern to work. 
  • Available Open Source / Free / Alternative engines are not 100% compatible.  Even BlueDragon, the engine that has implemented the most compatibility, is only about 90% there.  This is a huge disadvantage if you use the “there are other engines out there” argument — most, if not all, examples and documentation are written for the Adobe engine. 
  • Some features are just some “black box”.  This is one item that raised a huge concern, while being a huge advantage for the regular business community.  Programmers, specifically students want to know how things work.  They want to know the nuances of why FTP would be a sessionful protocol, rather than something like LDAP. These tags/engines are essentially black boxes with ColdFusion, with very limited visibility as to what is happening on the back end — all we know is that they ‘work’, and get the job done. 

Some of these things are changing in future versions of ColdFusion, I’m sure.  Others are just breed from the history of ColdFusion, and for the regular community, that’s not a bad thing.  For example, does a web / CFML programmer really want to know how the POP protocol works?  No!  That’s why they use ColdFusion! 

So parting from my experience, I do ask the question — where SHOULD CFML be learned?  That is a really tacky question, one that is really hard to answer.  From the above, CFML shouldn’t be chosen to be taught in a formal programming class, but how about in a web programming class?  Rather than teach HTML, how about HTML and CFML?  Should CFML be taught at a community college?  How about at the high-school level where programming theory is not nearly as important? What are your thoughts?

24 responses to “Why ColdFusion should NOT be taught in schools

  1. Raymond Camden June 3, 2009 at 3:29 am

    Your post is interesting – but as a side note you have some misconceptions that really need clearing up.

    a) “even Adobe’s own Model-Glue” Adobe does not have a framework. Model-Glue was made by Joe Rinehart and is a community project.

    Also, I’m not quite sure why you mention ‘so many workarounds’. When I code in MG, I feel very comfortable with its MVC setup and my code is nicely separated. So maybe I don’t quite get what you mean?

    b) “There are only 4 current books, by two authors (although, one plus to this is they both live in Michigan).” Um, even if you JUST look at CFWACK, there are much more than 4 authors involved. CFWACK is a huge effort by many authors.

    If we look at what Adobe has done, how can you ignore the close to 4K pages in PDF form?

    c) No good CFML debugger: You mention memory size. Did you try the Server Monitor? You said you weren’t sure why a query returns a certain response – I know the debugger can tell you whats being returned. Not quite sure what you mean here.

    That aside, I think you do have a point. Should CF be taught in a “pure” programming class or a class specifically for web work? Good questions (and I don’t have the answers – too late tonight. 🙂

  2. Ike June 3, 2009 at 3:40 am

    I’m not opposed to the idea that it might be more advantageous for us to encourage the teaching of CF in high-school or in courses that focus on web rather than classical programming theory. I still disagree with a lot of your points and in particular, Model-Glue was created by Joe Rinehart – he’s never worked for Adobe or Macromedia, so it’s hardly Adobe’s framework. Mach-II was used at Adobe for a time (not sure about now) mostly by Sean Corfield, but he/they didn’t create that one either (although I don’t remember who exactly started it other than Hal Helms who wasn’t involved in the bulk of the work, but was involved because it evolved out of the Fusebox community). Adobe does have a framework, but it’s a JavaScript framework called Spry developed by the Dreamweaver team.

  3. Chris hough June 3, 2009 at 3:43 am

    IMHO I disagree somewhat, I think ad far as a broad scope of languages is concerned I feel it should be taught, however, I think it would be more of a 300 lvl class not intro where let’s say the class is broken into 3 parts cfml ruby php for example

  4. Sean Corfield June 3, 2009 at 5:17 am

    There are several things I want to correct in your post:

    “the current Official CFML editor by Adobe (Dreamweaver)” – I don’t think even Adobe will tell you DW is their “official” CFML editor. They’ll admit that Bolt is the IDE to fill that glaring gap in their lineup and debugging is built is. If you’re using CFEclipse – the closest publicly available thing to an IDE today – Adobe’s OFFICIAL debugger extension works well with it. In other words, Adobe’s OFFICIAL debugger for CFML is Eclipse-based.

    “Adobe’s own Model-Glue” – huh? Joe Rinehart wrote that, not Adobe. Adobe does not have an MVC framework.

    “Even BlueDragon, the engine that has implemented the most compatibility” – that I’m definitely going to challenge! Neither BlueDragon nor OpenBD is as compatible with CF8 as Railo and that’s been true for a long time.

    I also don’t agree the documentation is poor. The official Adobe docs combine to make a VERY thick book that is full of example. I think you’re referring to just the reference guide on LiveDocs, even tho’ ALL the documentation is available there.

    More subjective but I think typeless languages are actually better for teaching than strictly typed languages since you can teach concepts without worrying about the fussiness of the compiler. And I don’t agree that CFML fights you when applying design patterns – that just suggests you don’t understand design patterns since they are NOT about code but about organizing interactions between collaborating participants.

    Overall tho’ I agree with your sentiments about teaching CFML. I’ve never felt the “solution” is to teach CFML in schools – I don’t buy the argument that you always end up programming in what you learned at college (hello, I’d still be programming in Basic and Pascal if that was the case!).

  5. Brian Meloche June 3, 2009 at 6:22 am

    Oh Nick, Nick, Nick… you’re wrong. You’re also right, and so are they.

    ColdFusion should not be taught as a first language. ColdFusion should not be the language you first sink your teeth into, and learn from. This paragraph is essentially correct:

    “It’s not about the servers — it’s truly about the language.” spoke the gent from the larger school. “For a formal, introductory computer science class, ColdFusion [CFML] really doesn’t offer us anything that another language does. And it adds in a lot of complexities and guessing that make other languages easier to teach in the classroom”.

    However, notice the critical word there: “introductory”. It may seem like I, of all people, would disagree with that statement, but I’ll give you my personal story. ColdFusion was not my first language. It was not even my first web language. I’ll spare you my pre-web programming days… but my first language was Fortran. Enough said… My first web language was Perl, then C, then Java, then PHP, then ASP classic, and they all sucked. Of the languages I used, the favorite at the time was JavaScript, and that was only client side. In 1998, a client of mine had ColdFusion, and that got the ball rolling. I loved it, but still had to deal with Perl and ASP for another year, as my clients wouldn’t pay for the server license, and still hated those languages. A year and a half later and I was developing in CF fulltime and never went back.

    What sold me, and sold most of us, was how easy it was, and how productive you could be. It does teach you sloppiness if you don’t know any better, but CF is not alone in that.

    Where, and when, I think ColdFusion should be taught is in 3rd or 4th year, after the students understand the fundamentals, and have had to deal with the cumbersome issues that the other languages have that ColdFusion doesn’t have. Use ColdFusion for a class that has a major project, such as an e-commerce site mockup or what have you. After suffering through all the crap most of the other languages put you through, expose them to ColdFusion. Teach ColdFusion along with Flex is another good idea.

    That’s why, where and how ColdFusion should be taught. Don’t LEARN how to program in CF… Learn how to program in other languages that are better in that regard. Let the students learn the hard way… then expose them to a CFML engine, and show them an easier way. That’s where it belongs.

  6. Dave Quested June 3, 2009 at 8:08 am

    Thank for putting this post out there. I have to say I agree with your comments.

    I’ve worked with CF for the last 9 years. Now more than ever I’m seeing a huge gap in available CF developers. I believe this has been caused by a few reasons:

    a) Cost. It’s an instant turn off for someone starting out using server side languages. Yes there is a developer edition, but when you deploy you’ll pay.
    b) Education. As you state it isn’t a language which is taught, most developers I know have picked up CF from a recommendation or a necessity (i.e. for a job position)
    c) Community. CF is tiny in comparsion to PHP and .NET.
    d) Employment. Fewer and fewer jobs exist, which doesn’t tempt grads to try out CF.

    Of course all of the above compounds the issue.

    I’m not sure we need to think about where it’ll be taught. I think we need to go the other way.

    Railo and OpenBD are a breath of fresh air to most in the CF industry. Most developers I know are heading down the Railo route. This is a promising shift.

    If we as a community embrace the open source versions of CF, provide help, examples and support to those starting out we can build up the community. A bigger community leads to more stability leads to more adoption by management leads to more jobs available leads to more newbies wanting to be part of it leads to an education need … etc etc.

    All sounds airy fairy, but there you go.

    CF will never be like PHP/.NET, which is why we love it! But I think we need to be careful not to lose it completely by letting it wither.

    Anyway, I ramble…

  7. quetwo June 3, 2009 at 11:53 am

    @All: I do want to note that this posting is not intended to show the bad aspects of CF, nor is it ment to be a “screw CF” post — rather its intent is to bring some things to light as to the community’s (including me) response to the world that CF should be taught in schools. I personally will continue to use CF every day, as it fits my business need…

    I do stand corrected in that I mentioned M-G as “Adobe’s Framework”. The framework I ment to say was Mach-II, which, while not actually created by Adobe, was given support by Adobe Consulting, and was heavily pushed by the product and development teams during the CF7 release.

    @Ray, yes, it is true that there are many, many authors that contibuted to Forta’s book — but when you take a look at the entire scope of the world, there are the three books in the CFWACK, and then Farrar’s book out in print right now. If you as a teacher don’t want to teach out of either of those books, then there really isn’t much out there.

    As far as the debugger is concerned — take a look at what is available with other languages. Java, ActionScript, .NET all have excellent debuggers that tell you the whole story, not just variable names and maybe what they contain. The Server Monitor tool is not a replacement of this — sure it can tell you how much memory a session or server scope is taking up, but all you would know is if it is large or small, not WHAT is taking up all that memory, or why it is.

    @Sean: By Railo’s own website, they say they have ‘good’ compatibility. While for somebody like me in the office who has been using CF for a long time, that’s just fine — I’m sure I can identifiy those shortcomngs, and deal with them — but at the same time to expect somebody who comes to us from the outside and reads an example in the CFWACK books and it dosen’t work — they will question themselfs before they question the engine — afterall, it IS a CFML engine. In the case of an instructor-led class, they would have to standardize on a single engine, otherwise the neaunces of each engine may get in the way (this is the same reason why these types of classes tell students to use “this specific version of Java” or ” this specific version of Perl”)

    @Brian: I do started off with many other languages before I started CF. My first web language was for the Spinnaker Web Server back in 1995. I picked up Perl, ASP and CFML all before 2000, and have stuck with CFML ever since. I still use it today — but one thing I do want to make clear — as nice as CFML is, it is very, very poor at teaching certain CS principals, which if understood would make you a better programmer overall (even within CF).

  8. barry.b June 3, 2009 at 12:45 pm

    “Currently one of the schools teach Python (and considering Ruby) and the other teaches PHP for their courseware. ”

    That’s dreadful. why? What ever happened to old standards like Pascal and C++?

    What are they wanting to teach? how to program with all the best habits learned – or – how to write apps? They want “web” ‘cos everything is “web” now-a-day?

    Sorry, but I equate teaching Python and Ruby to teaching Visual Basic – the old stuff, not VB.NET. It ain’t hard-core programming but you end up with apps at the end.

    “where SHOULD CFML be learned? That is a really tacky question, one that is really hard to answer.”

    no, not hard. I’ve had great success teaching CFML to (what used to be called) Multimedia students.

    People who get down and dirty with HTML and then the tag-based nature of CFML starts coming naturally to them.

    The other group of people perfectly suited to CFML are business students doing e-business stuff. Because of the RAD nature of CFML, it can be seen as a business macro-language, along the same lines as the promises 4GL had.

    How many business people have designed their own applications in MSAccess? How may can write Excel macro’s? Take that same talent and let them loose on CFML. Heck I almost took a job for a company last month who’s products started exactly like that.

    I would definitely NOT teach CFML to CompSci students. Mind you, I wouldn’t teach Python or Ruby either. I’d do C# flavoured ASP.NET or ActionScript3

    Q: how many students does it take to change a lightbulb?
    A: just one, but it may take them up to 5 years to get it right…

  9. Terrence Ryan June 3, 2009 at 12:46 pm

    Clap, clap, clap.

    As the ColdFusion evangelist, and the Higher Ed evangelist, let me just say that I agree that ColdFusion probably does not belong in Computer Science programs.

    However, the universe of educational programs that benefit from programming instruction extends far past just Comp Sci. I think there is plenty of room for ColdFusion in other parts of the universe. IT, MIS, Design, Communication programs with web components, are all programs that teach programming so that people know *about* programming, not necessarily *how* to program. I think there is space in those programs for an easy to use programming language that can get out of the way of teaching the actually point of the class.

  10. barry.b June 3, 2009 at 12:54 pm

    @Nick, I was a bit OTT with your friends choice of teaching languages, but maybe because I can appreciate why all the old school choices of programming languages were chosen – and I look at the reasons why things are taught without worrying about what’s fashionable (which is really for marketing reasons: “Why am I learning this sh!t?!?”)

    eg: I consider Haskell a dreadful language, but I can appreciate why it’s part of curricula at some universities.

  11. Raymond Camden June 3, 2009 at 12:57 pm

    Actually, along with WACK, Farrar’s book, don’t forget Adobe also released courseware for CF:

    http://www.adobe.com/education/instruction/teach/cfcurriculum.html

  12. barry.b June 3, 2009 at 12:59 pm

    one last thing, I promise Nick… the “help”

    this had great promise: Google-powered Adobe-flavoured community help

    http://community.adobe.com/help/

    sadly, there’s no CF section. Time to agitate, methinks…

    • quetwo June 3, 2009 at 6:33 pm

      @barry — Python was chosen as their language of choice because it is well known as a great demonstration of certain ComSci theories and technologies, such as OOP, memory management, etc. The language was not chosen because of its popularity in the industry. PHP was, however, chosen because of its popularity in the industry. Haskell and AWK are often chosen in many schools for the same reason, I assume.

      @Ray — Your link above was the first time I’ve actually looked at the Adobe Education curriculum. I know it’s fairly new, but again, it’s great for a “how to learn CF”, not “how to learn programming, and CF is what we will use as our Demo”. Those resources are very few in between.

      @Rick — I don’t believe that this conversation was representative of the University scape as a whole — I never said that. But this is a snapshot in time between two professionals in the industry, both of whom are aware of ColdFusion at the very least.

  13. Cyril Hanquez June 3, 2009 at 1:31 pm

    There’s very interesting points in your post, but I think that seeing how the web is evolving, teaching ColdFusion (or CFML) can be really helpful:

    The fact that CFML is a typeless language, that a lots of features are “black boxed” made this language really easy to learn (but still powerful). People can get their hands on ColdFusion in a very short time, and in parallel learn other “side language” which are required to work on web application (ie. SQL). Then, when they are comfortable, they can move into framework, OO concepts, learn to use Java library with CF, learn Actionscript and Flex to build RIA. This way is very smooth and natural for me.

    step 1. learn CFML + intensive SQL course
    step 2. introduce Ajax (JQuery)
    step 3. introduce OO concepts, frameworks, Java
    step 4. learn Actionscript and Flex to build RIAs

    Of course there’s no ideal path, and other languages can be taught to compement the cursus. It was my 2 cents 🙂

  14. Rick Mason June 3, 2009 at 1:49 pm

    Nick,

    I think you make a mistake if you believe that those two professors represent the entire educational establishment.

    Our language is at a disadvantage because there isn’t a pipeline for new developers.

    My personal belief is that the best fit for CF is at the community college level. Community colleges are more receptive to meeting a real need from industry.

  15. John Farrar June 3, 2009 at 2:24 pm

    I will agree if you want to teach a constrained path to deal with narrow thinking patterns of typed only languages ColdFusion will not teach anyone that “particular” aspect of software development. Yet, this is a different way to build code… strict vs relaxed. Each has tradeoffs and neither is universally superior. Imagine in verbal sepeach if you had to package your numbers differently than you do your other parts of speach. We naturally understand them… and here ColdFusion thinks more like a human than other alternatives. 🙂

    The question is not ‘should it be taught’… but rather what type of class should be taught. ColdFusion is a great introduction to web services, FTP, PDF, database interaction, form (post) and URL (get) requests, language customization, libraries, and much much more. It can be used to teach team development, unit testing, object oriented concepts.

    Some of the other points… lol. It’s not the quantity of the books, it is the quality. 3 sets of current books right now. How may alternatives are there for PHP, Java, and dotNet? The point of MVC being a hack… well any web MVC is closer put to being a Model-2 pattern to start with for browser solutions. (on any platform that makes it a hack) Lastly… the black box solutions in ColdFusion are areas where you have a partial point. I have never been personally a fan of Flash forms in ColdFusion. Perhaps with more documentation. But don’t use those hand full of features and concentrate on the tool shop full of features and you will find it very powerful. My company has even found we can do many of the things in Flex type code with ColdFusion. We find it a zesty language ready and able to achieve as one learns to think in ColdFusion. One thing that limits language growth is unified thinking where truth exists outside the narrow constraints currently understood.

    So, in conclusion you have only proven those “professors” have room to learn beyond what they are teaching at this point. In fact you have shown it is ignorance based on a narrow perspective and mindset that keeps ColdFusion out of the class-rooms. Why do we program? We program to put out products that are used. The products need to be a valid investment and sustainable. ColdFusion is an excellent tool that gets the job done. Yet, ColdFusion without knowledge of how to deliver a complete solution will suffer like all the other languages. In the end strongly typed variables doesn’t make or break good deliverables in ColdFusion.

  16. Sean Corfield June 3, 2009 at 8:18 pm

    “The framework I ment to say was Mach-II, which, while not actually created by Adobe, was given support by Adobe Consulting, and was heavily pushed by the product and development teams during the CF7 release.”

    Adobe Consulting had nothing to do with Mach-II nor was it pushed at all by the product and development teams at any time.

    I’m stunned that you think Model-Glue or Mach-II are “exceedingly complex” and have “so many workarounds” – again, it sounds like you are not familiar with frameworks of any sort.

    “the first time I’ve actually looked at the Adobe Education curriculum” – How can you pontificate about CF in Education without being aware of and reading the Adobe curriculum?

    If you care about CF in education – which I’m sure you do – that should have been top of your list to make an informed decision about suitability.

    “By Railo’s own website, they say they have ‘good’ compatibility. While for somebody like me in the office who has been using CF for a long time, that’s just fine — I’m sure I can identifiy those shortcomngs, and deal with them”

    So you’re not at all familiar with Railo? OK, well that explains why you didn’t mention it but it sounds like you haven’t tried BlueDragon either based on your statement about compatibility. Again, be careful about making statements that aren’t based on experience.

    It’s hard to take some of your assertions seriously when you’re so misinformed about some of this stuff.

    • quetwo June 4, 2009 at 1:22 am

      @Sean: This was not meant to become a discussion about my views about the CFML world, rather about some of the issues about teaching CFML in a CompSci classroom.

      In 2004-2005, almost every project that I bid against Adobe Consulting (then the Macromedia Consulting Group) was done in Mach-II. I would venture to say that they were almost the only group to use it on a wide scale… To say Adobe / Macromedia didn’t ‘sponsor’ or promote Mach-II would be a statment that could only be made with blinders on… When you worked for Adobe / Macromedia, you were a big proponent of it — and it was the ONLY framework to get space on LiveDocs (http://tinyurl.com/oqvgsf), even though FuseBox and other budding Frameworks were readily available. Please also look back to the CFUnited / CFUNs of yester-year… I know you were there with me and took the same notes.

      MG and Mach-II are complex frameworks. While they allow simple implementations of your own code, there is a LOT of stuff running in the background. Lots and lots of black magic. And when you have to debug your own application, you end up going through tens if not hundreds of templates to trace the code. I’m not saying this is a bad thing (these frameworks do a lot of things for a lot of people), but it adds lots of complexity to every project you add them to.

      I don’t work for Adobe, nor do I profess I do. I saw the announcement of the Education workflow a few months ago when Kristen announced it — but guess what — I didn’t read it. I didn’t have the time, and since I don’t train in ColdFusion, it didn’t apply to me. Again, the point of this article was about my experiences in participating in a a conversation with university professors that have been teaching Computer Science courses for a combined 35 years (i’m estimating at that, but I’m sure I can’t be too far off).

      I am familar with Railo and BlueDragon. I run a Blue Dragon server (purchased before Open Blue Dragon was announced). I also run many ColdFusion servers. I know the compatibility differences between the two. I confess that I don’t have a server running Railo, but in all honesty, it’s been off the radar for most of the community until the last year or so. Gert is doing great things, and I’m excited to see what happens with the Jboss project.

      But again, to say they are INTERCHAINGABLE with eachother is a lie. Common tags and techniques require tweaking between versions. I have to test which version of CFML I’m targeting for things like the CFIMAGE, CFDOCUMENT, and even CFMAIL. In my own personal projects, I utilize a lot of Event Gateways. Guess what? They don’t work in anything other than Adobe’s ColdFusion.

      I am what many of my friends call an Adobe Fan Boy. I wear the WWBD shirts, I speak at conferences about Adobe technologies (I was one of the only mentions of ColdFusion at the latest 360|Flex; I did an entire presentaiton on ColdFusion at the show), and I am very active in the local ColdFusion community. To say that I’m grossly mis-informed about this stuff may be a bit much — I know what is going on, but again, I’m not to the level of you — I don’t sit on the CFML board, and I have never worked for Adobe.

      • Sean Corfield June 4, 2009 at 1:58 am

        I guess I was just a bit surprised at some of the stuff you rolled out to justify your thesis that CFML should not be taught in “schools”. I mostly agree with your thesis, I agree with what I think are your motivations for using certain things as justifications. I just think you over-reached in your claims.

        Should CFML be used to teach Comp Sci? No, definitely not, in my opinion. That’s where schools will choose (usually) specialized languages that are almost always free and usually open source – or occasionally something that is almost ubiquitous. Should CFML be used to teach web application development? Maybe. Should CFML be taught for its own sake as a web application development technology? Yes, it’s definitely a good candidate for that.

        As for Macromedia Consulting and Mach-II: that’s very interesting to hear since I couldn’t find anyone in Macromedia who seemed even vaguely interested in Mach-II outside Web Team (my group). Macromedia had relatively few CFML developers (and Adobe has proportionately even fewer). I guess we should all be pleased that MC was actually promoting *any* framework given the general state of the CF world… but then we should also remember they promoted Cairngorm for the Flex world 😉

  17. barry.b June 4, 2009 at 4:02 am

    sometimes it’s so depressing….

    I’ve just come back from a job interview: a small company with a core product used by enterprise clients.

    the application is a mess internally. No frameworks, barely enough abstraction in the code, the developers are running around like headless chickens trying to keep up on bug-fixes, change requestions and customisations – you’ve heard all this (or been there) before.

    How did they get this way? I asked

    Simply because of lack of ColdFusion developers. in a city of 1.3million people, the talent pool in CF is so small the business has barely been able to keep it’s head above water, development wise.

    *This* is why we need ColdFusion in front of students. *This* is the only salvation of the platform.

    and to the suggestion before of teaching ColdFusion in community colleges – it won’t solve the majority of the problems, but +1 to the idea anyway.

    meh more 2c

  18. Dave Quested June 4, 2009 at 8:38 pm

    @ Barry:

    Yep, seeing this more and more these days. No resource available. Unfortunately the argument to stick with CF is becoming more and more difficult. What’s the point if you can’t find anyone to develop in it?

  19. Mark June 5, 2009 at 3:25 am

    The user base is growing but you cant find anyone?

    In my home town there have been more (and better) Coldfusion jobs advertised lately.

    Are these jobs not being filled?

  20. John Barrett June 14, 2009 at 2:02 am

    Just to let you know the University of Hawaii teaches ColdFusion in there ICS 415 class! According to the teacher, he feels that ColdFusion is the best solution to teach CS students, who learn java before leaving web programming with ColdFusion.

    Now you might ask why not jsp since we all took java first? Well I am not sure, but I took the class and I have been using ColdFusion ever since, and would not even think about using another lanaguage!

    I would add that teaching Coldfusion in the classroom is a great idea. Also, if you look at the current trends, there are lots of ColdFusion devoplers out there and a good job market for ColdFusion developers as well!

  21. Josh July 31, 2012 at 3:10 pm

    I agree with this article. I think ColdFusion, if taught at all, should be taught in high school. I know of no schools in my area that teach it and found it hard to learn when my job required me to do so.

Leave a reply to Mark Cancel reply