<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ColdFusionProNews</title>
	<atom:link href="http://www.coldfusionpronews.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.coldfusionpronews.com</link>
	<description>Just another DevWebPro Network site</description>
	<lastBuildDate>Thu, 26 Apr 2012 16:25:59 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>Is ColdFusion Really Becoming Popular Again?</title>
		<link>http://www.coldfusionpronews.com/is-coldfusion-really-becoming-popular-again/</link>
		<comments>http://www.coldfusionpronews.com/is-coldfusion-really-becoming-popular-again/#comments</comments>
		<pubDate>Thu, 26 Apr 2012 16:25:59 +0000</pubDate>
		<dc:creator>Michael Marr</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.coldfusionpronews.com/?p=6447</guid>
		<description><![CDATA[I have somewhat of an unwarranted gambling degenerate reputation here at the WebProNews offices. It may or may not have to do with the time I was pushing a double digit debt in lunches from various bets. However, I would not bet on ColdFusion. I even previously wrote about the &#8230;]]></description>
			<content:encoded><![CDATA[<p>I have somewhat of an unwarranted gambling degenerate reputation here at the WebProNews offices. It may or may not have to do with the time I was pushing a double digit debt in lunches from various bets. However, I would not bet on ColdFusion. I even previously wrote about the <a href="http://www.devwebpro.com/how-is-the-coldfusion-job-market/" target="_blank">ColdFusion job market</a>, or lack thereof. Luckily, I didn’t place any bets against ColdFusion, as it looks like use may be on the rise. </p>
<p><span id="more-6447"></span></p>
<p>Stephen O’Grady over at <a href="http://redmonk.com" target="_blank">RedMonk</a> compiled a ranking of programming language popularity based on an interesting set of metrics: StackOverflow questions and GitHub projects. Comparing Stephen’s findings from <a href="http://redmonk.com/sogrady/2011/09/06/dataists-anguage-rankings/" target="_blank">September 2011</a> and <a href="http://redmonk.com/sogrady/2012/02/08/language-rankings-2-2012/" target="_blank">February 2012</a> show a significant improvement in ColdFusion’s position. </p>
<p><img alt="September 2011 Programming Language Rankings" src="http://cdn.ientry.com/sites/webpronews/article_pics/grady-201109-programming-rankings.jpg" title="September 2011 Programing Language Rankings" class="alignnone" height="602" width="587"></p>
<p><a href="http://cdn.ientry.com/sites/webpronews/article_pics/grady-201202-programming-rankings.png" target="_blank"><img alt="February 2012 Programming Language Rankings" src="http://cdn.ientry.com/sites/webpronews/article_pics/grady-201202-programming-rankings.png" title="February 2012 Programming Language Rankings" class="alignnone" border="0" height="471" width="587"></a></p>
<p>There are two ways to interpret these scatter plots. On one side, we can assume that ColdFusion’s move up in rankings in both StackOverflow and GitHub indicates an increase in usage. However, we also see that the February 2012 graph includes additional languages on the plot. Whereas the original September plot included 53 languages, the more recent February graph includes somewhere around 70 languages. Although numerically higher in rank, ColdFusion appears in a relative position with regards to the other programming languages. It seems that ColdFusion may have simply benefited from the inclusion of less popular programming languages.</p>
<p><a href="http://www.webpronews.com/coldfusion-use-on-the-rise-2012-04">Comments</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.coldfusionpronews.com/is-coldfusion-really-becoming-popular-again/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ColdFusion Based Sites Are Target For Latest SQL Attack</title>
		<link>http://www.coldfusionpronews.com/coldfusion-based-sites-are-target-for-latest-sql-attack/</link>
		<comments>http://www.coldfusionpronews.com/coldfusion-based-sites-are-target-for-latest-sql-attack/#comments</comments>
		<pubDate>Fri, 06 Jan 2012 20:23:45 +0000</pubDate>
		<dc:creator>John Vinson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.coldfusionpronews.com/?p=6442</guid>
		<description><![CDATA[In the beginning of December, it was discovered that a SQL attack was making its rounds across the internet. It was redirecting visitors from their site to a malicious one, titled &#8211; &#8220;Lilupophilupop&#8221;. The attack was named after the URL with the same name. It is being reported that over &#8230;]]></description>
			<content:encoded><![CDATA[<p>In the beginning of December, it was discovered that a SQL attack was making its rounds across the internet. It was redirecting visitors from their site to a malicious one, titled &#8211; &#8220;Lilupophilupop&#8221;. The attack was named after the URL with the same name. </p>
<p><a href="http://www.net-security.org/secworld.php?id=12169">It is being reported</a> that over a million websites were infected and this has alarmed many security experts. The malicious link has been seen in both ASP and ColdFusion sites with a  MSSQL backend. </p>
<p>The injected script is rather simple, as it adds a script tag to a site which direct browsers to JavaScript loaded on the malicious site. The infection has been appearing in a wide variety of countries, in North America, Europe, and Asia. </p>
<p>According to a security expert, Mark Hofman, this injection might be the work of many people or someone who was prepping it over a long period of time, &#8220;The manual component and the number of sites infected suggests a reasonable size work force or a long preparation period&#8221; </p>
<p>If you want to check and make sure your site hasn&#8217;t been infected, just do this search in your source code: &#8220;<script src=&#8221;http://lilupophilupop.com/&#8221;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.coldfusionpronews.com/coldfusion-based-sites-are-target-for-latest-sql-attack/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Gaining More Clojure Insight Through Cfmljure</title>
		<link>http://www.coldfusionpronews.com/gaining-more-clojure-insight-through-cfmljure/</link>
		<comments>http://www.coldfusionpronews.com/gaining-more-clojure-insight-through-cfmljure/#comments</comments>
		<pubDate>Fri, 23 Sep 2011 10:06:55 +0000</pubDate>
		<dc:creator>Sean Corfield</dc:creator>
				<category><![CDATA[ColdFusion]]></category>

		<guid isPermaLink="false">http://www.devwebpro.com/?p=12014</guid>
		<description><![CDATA[I mentioned it in passing in one of my early posts about using Clojure from CFML but, since only one person signed up, thought it was worth mentioning again: there is a mailing list for cfmljure where you can ask questions about the project and Clojure itself or, if you&#8217;re &#8230;]]></description>
			<content:encoded><![CDATA[<p>I mentioned it in passing in one of my early posts about using Clojure from CFML but, since only one person signed up, thought it was worth mentioning again: there is a <a href="http://groups.google.com/group/cfmljure">mailing list for cfmljure</a> where you can ask questions about the project and Clojure itself or, if you&#8217;re new to CFML and coming from the Clojure world, you can ask questions about CFML!</p>
<p><span id="more-6421"></span></p>
<p><img src="http://images.ientrymail.com/coldfusionpronews/coldfusion-10062010.jpg"></p>
<p>I&#8217;m planning to add a couple of more involved examples to the project repo, one of which will use FW/1 and have the entire Model built in Clojure with the View-Controller portion written in CFML / cfscript &#8211; and I&#8217;m also planning to create a simple ready-to-run Jetty-based package so folks can simply download cfmljure and try it out without needing to worry about installing anything.</p>
<p>You can always get the <a href="http://cfmljure.riaforge.org">latest version of cfmljure from RIAForge</a>!</p>
<p><a href="http://corfield.org/blog/post.cfm/cfmljure-mailing-list">Comments</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.coldfusionpronews.com/gaining-more-clojure-insight-through-cfmljure/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Handle All Your ColdFusion Projects With Leiningen</title>
		<link>http://www.coldfusionpronews.com/handle-all-your-coldfusion-projects-with-leiningen/</link>
		<comments>http://www.coldfusionpronews.com/handle-all-your-coldfusion-projects-with-leiningen/#comments</comments>
		<pubDate>Thu, 22 Sep 2011 09:57:54 +0000</pubDate>
		<dc:creator>Sean Corfield</dc:creator>
				<category><![CDATA[ColdFusion]]></category>

		<guid isPermaLink="false">http://www.devwebpro.com/?p=11905</guid>
		<description><![CDATA[Leiningen is a build tool for Clojure that handles all of your project / library dependencies and makes it easy to work in a more test-driven development style. Once you&#8217;ve installed Leiningen, you can start a new project, on the command line, by typing lein new myproject and it will &#8230;]]></description>
			<content:encoded><![CDATA[<p>Leiningen is a build tool for Clojure that handles all of your project / library dependencies and makes it easy to work in a more test-driven development style. Once you&#8217;ve installed Leiningen, you can start a new project, on the command line, by typing <tt>lein new myproject</tt> and it will automatically create a project folder structure with a source tree (<tt>src/</tt>) and a test tree (<tt>test/</tt>).</p>
<p><span id="more-5994"></span>
<p> Leiningen will download and manage all of your library dependencies transparently, just by typing <tt>lein deps</tt>.Then you can develop you tests and your code and just type <tt>lein test</tt> to run all your tests to ensure your code is working. When you&#8217;re ready, you can package up your project as a JAR file, with or without the Clojure runtime, with <tt>lein jar</tt> or <tt>lein uberjar</tt>. Leiningen does a lot more, but that&#8217;s the basic outline.</p>
<p>Because Leiningen assumes a particular directory structure, I have updated <a href="http://cfmljure.riaforge.org">cfmljure</a> to work more easily with Leiningen projects and I have updated the examples that come with cfmljure to be a Leiningen project, complete with unit tests so you can see how things work. I&#8217;ve also updated the installation instructions in the <a href="http://github.com/seancorfield/cfmljure">cfmljure README on github</a> to show you how to set things up via Leiningen.</p>
<p>Take cfmljure for a spin and let me know if the new installation process, with Leiningen, works for you!</p>
<p>Learn more about <a href="http://github.com/technomancy/leiningen">Leiningen on github</a>.</p>
<p><a href="http://corfield.org/blog/post.cfm/cfmljure-and-leiningen">Comments</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.coldfusionpronews.com/handle-all-your-coldfusion-projects-with-leiningen/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using Clojure Code Within CFML</title>
		<link>http://www.coldfusionpronews.com/using-clojure-code-within-cfml/</link>
		<comments>http://www.coldfusionpronews.com/using-clojure-code-within-cfml/#comments</comments>
		<pubDate>Wed, 21 Sep 2011 12:21:35 +0000</pubDate>
		<dc:creator>Sean Corfield</dc:creator>
				<category><![CDATA[ColdFusion]]></category>

		<guid isPermaLink="false">http://www.devwebpro.com/?p=11827</guid>
		<description><![CDATA[If you follow me on Twitter, you&#8217;ll have seen me posting about Clojure quite a bit recently. I really like the simplicity and elegance of Clojure. I like the function programming style. I like that it&#8217;s a dynamic scripting language. I like that it can also be compiled to JVM &#8230;]]></description>
			<content:encoded><![CDATA[<p>If you <a href="http://twitter.com/seancorfield">follow me on Twitter</a>, you&#8217;ll have seen me posting about Clojure quite a bit recently. I really like the simplicity and elegance of Clojure. I like the function programming style. I like that it&#8217;s a dynamic scripting language. I like that it can also be compiled to JVM bytecode and used in any mixed-language project on the JVM.</p>
<p><span id="more-5962"></span></p>
<p>About a month ago I helped someone get some Clojure code compiled and integrated into CFML, like any other Java-based project, but that set me thinking about being able to just use raw Clojure scripts from CFML without needing to go thru the compilation and deployment process. I asked on the Clojure mailing list how to load and run scripts from Java and that gave me what I needed to create a simple CFC wrapper that lets you write Clojure scripts and dynamically load and execute them from inside CFML.</p>
<p>That&#8217;s how <a href="http://github.com/seancorfield/cfmljure">cfmljure</a> was born on github! It&#8217;s very early days for the project &#8211; I consider this an &#8216;experimental&#8217; version &#8211; but I&#8217;ve created a <a href="http://groups.google.com/group/cfmljure">Google mailing list for cfmljure</a> and it&#8217;s also <a href="http://cfmljure.riaforg.org">listed on RIAForge</a>). I don&#8217;t expect it to be crazy popular (like FW/1 for example) but I expect to use it on production projects and thought it would be good to put out there for others to experiment with and provide feedback on.</p>
<p>Things on the roadmap include making it more Leiningen friendly (Leiningen is the de facto standard build tool for Clojure and it definitely makes life simpler) as well as figuring out how to access Clojure variables from CFML. I may even try to figure out how to pass CFCs into Clojure and have them be callable (Clojure can call Java but I&#8217;ll probably go the route of a Clojure proxy function initially).</p>
<p>Have fun with it! Join the Google Group if you have questions / problems / suggestions!</p>
<p><a href="http://corfield.org/blog/post.cfm/cfmljure-using-clojure-from-cfml">Comments</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.coldfusionpronews.com/using-clojure-code-within-cfml/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The End Of CFUnited</title>
		<link>http://www.coldfusionpronews.com/the-end-of-cfunited/</link>
		<comments>http://www.coldfusionpronews.com/the-end-of-cfunited/#comments</comments>
		<pubDate>Tue, 20 Sep 2011 11:56:19 +0000</pubDate>
		<dc:creator>Sean Corfield</dc:creator>
				<category><![CDATA[ColdFusion]]></category>

		<guid isPermaLink="false">http://www.devwebpro.com/?p=11686</guid>
		<description><![CDATA[Many blog posts have expressed their sadness at the passing of what has become one of our community&#8217;s great traditions: CFUnited. I&#8217;ve been fortunate enough to attend the last seven years &#8211; as a speaker &#8211; and it&#8217;s always been a unique event, with the largest gathering of CF developers &#8230;]]></description>
			<content:encoded><![CDATA[<p>Many blog posts have expressed their sadness at the passing of what has become one of our community&#8217;s great traditions: CFUnited. I&#8217;ve been fortunate enough to attend the last seven years &#8211; as a speaker &#8211; and it&#8217;s always been a unique event, with the largest gathering of CF developers under one roof and the broadest selection of topics catering to everyone from beginners to experts (although not always so much on that end). CFUnited has provided the best networking opportunities available to our community, where you can meet your peers, discuss your problems &#8211; and your successes &#8211; and come home jazzed about all the new things you learned from everyone.</p>
<p><span id="more-5898"></span></p>
<p>This year&#8217;s CFUnited was no different in many, important ways but it was also very different in some ways. The location was great, the staff &#8211; both at the hotel and from Stellr / TeraTech &#8211; were awesome, the food was delicious (and the sodas, snacks and coffee never seemed to run out!), the conference rooms afforded good views from comfortable seats &#8211; and power leads in several rooms! The topics were, in my opinion, better than ever and my schedule was not just full but overflowing with several difficult choices to make.</p>
<p>As always, my schedule goes completely off the rails once I get there. I got to the keynote, Christian Ready&#8217;s HTML5 talk, Brian Kotek&#8217;s Clean Code talk (on the Saturday repeat) and I gave my two talks (with the open source talk repeated to an audience of six on Saturday). The rest of the time I was either engaged in hallway conversations &#8211; the part of CFUnited I&#8217;ve always enjoyed most &#8211; or I was at the Railo Consulting sponsor booth with various colleagues, talking to developers about their problems and how we might be able to assist them with some consulting.</p>
<p>This year saw four of the Railo team at the conference: Peter Bell, Mark Drew, Gert Franz and myself. We have weekly conference calls and discuss business constantly via email but there&#8217;s no substitute for getting together face to face so it was good to see most of &#8220;The Management&#8221; again. Our booth featured two large consulting banners in the &#8220;corporate purple&#8221; (orange represents our open source side) and lots of Swiss chocolate (which proved very popular), purple and orange pens (which were also quite popular), keyring LED flashlights that don&#8217;t require batteries and of course the ever-popular &#8220;Got Railo?&#8221; T shirts. We ran a competition to win a day&#8217;s free consulting as well as gathering leads for our global consulting business (our geographic diversity works in our favor in that area). The booth was extremely busy for most of the conference so we were very pleased with that!</p>
<p>Adobe&#8217;s keynote was great. Adam started with a walk down memory lane with photos from all but one of the CFUN / CFUnited conferences over the years (I even saw myself in one photo) and then he talked about ColdFusion past, present and a little tiny hint of the future. He went into quite a bit of depth on the recently released ColdFusion 9.0.1 updater which brings nearly 500 bug fixes and enhancements. Probably the two biggest items were the addition of Amazon S3 support to the VFS (Virtual File System) support added in CF9 and the enhanced caching features. In CF9, Adobe added support for ram:// as a new file &#8216;type&#8217; to allow all the file tags and functions to work on an in-memory &#8216;RAM disk&#8217; and in CF9.0.1 they&#8217;ve added an s3:// type as well. Best of all, they&#8217;ve donated the Amazon S3 adapter back to the Apache VFS project! On the caching side, they&#8217;ve upgraded from ehCache 1.6 to ehCache 2.0 which means they now support distributed caching with Terracotta and they also support user-defined caches. Mixed in amongst that, Terry showcased the awesome ColdFusion Builder IDE and had a couple of people up on stage to demo their extensions (Luis Majano with the ColdBox toolkit and Dan Vega with a cool little PasteBin extension) and then Terry showed off Apptacular, his slick application generator. I got to demo an early version of this when I presented ColdFusion Builder to EBCFUG as part of the launch tour and I got to test more recent versions when Terry solicited feedback a while back. Whilst we didn&#8217;t get much information about ColdFusion X, we got some cool teasers about what &#8220;might or might not&#8221; be in ColdFusion Builder 2.0 (a.k.a. Storm). I&#8217;m already looking forward to buying that upgrade!</p>
<p>Christian Ready&#8217;s HTML5 talk was excellent! I&#8217;ve been following this topic for a while (there&#8217;s an HTML5 user group in San Francisco and I&#8217;ve attended various presentations on different aspects of HTML5 and CSS3) and I still learned new things from Christian. He covered a <strong>lot</strong> of material (90 slides I think) but it had a great flow and didn&#8217;t feel overwhelming. He demoed a number of features in various browsers, showing the differing degrees of support as well as some tips and tricks for writing HTML5 pages that degrade gracefully on older browsers. Good job Christian!</p>
<p>Brian Kotek&#8217;s talks are always really good and thought-provoking &#8211; this was no exception. A lot of his material was drawn from / inspired by a book about &#8220;Clean Code&#8221; and focused on readability, comprehension and maintenance. One thing that seemed to spark some controversy was his claim that &#8220;all comments are failures&#8221; which I loved because that&#8217;s an argument I&#8217;ve had with a lot of people over the years. Aside from perhaps a required copyright notice, almost all comments fall into three categories:</p>
<ul>
<li>Redundantly explaining what the code does &#8211; duplication and has the potential to get outdated: don&#8217;t do it!</li>
<li>Having to explain a particularly complicated piece of code &#8211; make your code easier to understand: use better names and break the code down into comprehensible pieces!</li>
<li>Commenting out old / unused code &#8211; that&#8217;s what version control is for: don&#8217;t do it!</li>
<p>Both the networking event and Adobe&#8217;s pool party felt a bit subdued compared to last year (it felt like there were far fewer attendees this year) but both were enjoyable and provided more opportunities to mingle with your peers and exchange information and learn &#8211; or just drink and shoot the breeze! The CFCurry event organized by Fuzie / Vicky Ryder turned into a massive event with over 30 people and, apart from slow service at the restaurant, all I heard were good reviews. I had to skip that because I ran a FW/1 Birds of a Feather on Friday evening and it was much better attended than I anticipated (about 40 people rather than the 10-20 I&#8217;d expected) and with all the great questions it ran about two hours! Thank you to everyone who attended both that and my packed FW/1 session earlier in the day!</p>
<p>So, CFUnited is over for this year and for all time and some people feel the community has lost something very core to our being. I don&#8217;t think that&#8217;s really true. There&#8217;s been a sea change over the last few years. We&#8217;ve seen attendance at CFUnited drop steadily year-on-year from its peak of over 900 people crammed into the Montgomery Conference Center to about half that this year &#8211; whilst at the same time we&#8217;ve seen a dramatic rise in the number of smaller, regional events that are often able to cater to narrower audiences and are able to draw more new developers. I think the writing was already on the wall and it&#8217;s just a natural evolution as we see more &#8220;grass roots&#8221; events promoting CFML. Over the years the CFUN / CFUnited team has done us proud &#8211; huge shout outs to Liz, Nafisa, Elliott, Cara and Tara and everyone else behind the scenes that has made the conference so valuable and such a success for the community! As Adam said in his keynote, we&#8217;re moving into a new age of ColdFusion and CFML in general with more open source, more events and a bigger focus on the expanding community.</p>
</ul>
<p><a href="http://corfield.org/blog/post.cfm/my-cfunited-2010">Comments</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.coldfusionpronews.com/the-end-of-cfunited/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Adobe Leave The CFML Advisory Committee</title>
		<link>http://www.coldfusionpronews.com/adobe-leave-the-cfml-advisory-committee/</link>
		<comments>http://www.coldfusionpronews.com/adobe-leave-the-cfml-advisory-committee/#comments</comments>
		<pubDate>Mon, 26 Jul 2010 21:18:20 +0000</pubDate>
		<dc:creator>Sean Corfield</dc:creator>
				<category><![CDATA[ColdFusion]]></category>
		<category><![CDATA[Adobe]]></category>

		<guid isPermaLink="false">http://www.devwebpro.com/?p=11577</guid>
		<description><![CDATA[By now, many of you will have read Adam Lehman&#8217;s blog post that Adobe is no longer part of the CFML Advisory Committee. Adam had initially disabled comments (but now he&#8217;s opened things up) on that post and folks have been asking me all morning for my take on this &#8230;]]></description>
			<content:encoded><![CDATA[<p>By now, many of you will have read Adam Lehman&#8217;s blog post that <a href="http://www.adrocknaphobia.com/post.cfm/adobe-no-longer-part-of-opencfml">Adobe is no longer part of the CFML Advisory Committee</a>. Adam had initially disabled comments (but now he&#8217;s opened things up) on that post and folks have been asking me all morning for my take on this so, as chair of the committee, I&#8217;m going to post my thoughts &#8211; and leave comments open so the community can provide feedback.</p>
<p><span id="more-5866"></span></p>
<p>First off, I think we always knew this would be a difficult job. CFML is actually a pretty big language that has grown in a fairly haphazard way over more than a decade, mostly without a steady hand that understands programming language design. There were a few internal Allaire / Macromedia / Adobe groups over the years before Adam Lehman joined the ColdFusion team that tried to steward development of the language but for a variety of reasons they never really got much traction. Two years ago, Adobe announced the CFML Advisory Committee and made me chair of it. It came hot on the heels of my resignation from the Open BlueDragon steering committee and it was quite a surprise (the announcement at CFUnited 2008 was actually the first time I knew of my role on the committee).</p>
<p>Over the next six months, we worked hard &#8211; Adobe, Railo and community members &#8211; to map out the tags and functions in CFML and categorize them as &#8216;core&#8217;, &#8216;extended core&#8217; or &#8216;vendor-specific&#8217;. We used a Google spreadsheet with the lion&#8217;s share of the early work being done by Gert Franz and Rob Brooks-Bilson to provide a framework for us to vote. We got the <a href="http://opencfml.org/">CFML Advisory Committee web site</a> up and the initial cut of tag/function categorization published (kudos to Rob Brooks-Bilson for all his hard work on the wiki content). We&#8217;d agreed early on that &#8220;all&#8221; CFSCRIPT would be core language so we didn&#8217;t focus much on defining what was &#8220;CFSCRIPT&#8221;.</p>
<p>At the beginning of February 2009, Ben Forta announced that Adam Lehman would join the committee, taking over from Sanjeev Kumar to represent Adobe. Ben also said the time was right to invite OpenBD to join the committee and we quickly agreed on Matt Woodward as the best choice. Matt quickly came up to speed, added his votes to the spreadsheet and added all the OpenBD-specific tags and functions to the mix, just as Gert had done six months earlier.</p>
<p>At the beginning of April 2009, Adam shared the CFSCRIPT enhancements that Adobe were considering adding in ColdFusion 9, then under the codename Centaur and in private alpha testing. Round about that time, we also made the decision to tackle tag attributes and function arguments and categorize those. In hindsight, that was a mistake. It was too big a task and it bogged us down.</p>
<p>In mid-April, I joined Railo and Gert stepped down from the committee so that Railo would continue to have a single representative on the committee. Since I was previously a &#8216;community&#8217; rep on the committee, we needed a replacement and selected Peter Farrell by unanimous vote.</p>
<p>We continued to review and discuss the CFSCRIPT enhancements and found that consensus on the committee for certain features didn&#8217;t always match what Adobe was already implementing in ColdFusion 9 &#8211; and that some features were contentious enough that we couldn&#8217;t reach consensus at all. I reached out to the community on my blog to help us resolve a few issues but that input didn&#8217;t actually move us closer to consensus. These were hard issues.</p>
<p>Unfortunately, the gargantuan task of categorizing the tag attributes and function attributes, combined with the lack of clear consensus on a number of key features in CFSCRIPT seemed to sap the will of the committee. Voting became slower and slower, Ben and Adam became very focused on the upcoming launch of ColdFusion and it became harder and harder to get their input (and understandably so &#8211; Ben continued to vote as and when he was able but Adam pretty much stopped voting on issues completely). By the end of August, progress had completely stalled and discussions stopped.</p>
<p>There was a flurry of discussion at the end of November, spurred by a comment made by Alan Williamson (OpenBD) questioning whether the committee was even relevant. Then things went quiet again.</p>
<p>I tried to get the discussions going again in early February. We&#8217;d clearly missed the &#8220;CFML2009&#8243; opportunity but I felt we could pull together a reasonable &#8220;CFML2010&#8243; and I recommended the following approach for a specification (quoting here from my email to the committee):</p>
<ul>
<li>&#8220;Retains the core / extended core / vendor specific partition of tags and functions that we&#8217;ve already agreed.</li>
<li>Does not dig deep into attributes and/or arguments. </li>
<li>Incorporates most of the CFSCRIPT document we already created. </li>
<li>Simply omits CFSCRIPT recommendations where we had trouble reaching consensus. </li>
<li>Adopts the existing Adobe CF9 syntax for CFSCRIPT constructs where &#8220;CFML2009&#8243; differs in core details (lock, transaction etc). </li>
<li>Adds a clear, concise description of expressions (this is new work &#8211; but it is necessary).&#8221;</li>
</ul>
<p>Ben, Matt, Ray and Rob all agreed and offered to help.</p>
<p>A few days later, Peter Farrell resigned. Adam says, in his blog post, &#8220;Peter Farrell quietly resigned stating he was too busy to keep up with the day-to-day activities of the board&#8221;. Peter&#8217;s actual words were &#8220;The demands on my time have increased in the past year and it has become increasingly difficult for me to contribute sufficiently to the CFML specification process.&#8221; I took Peter to mean that he simply felt he couldn&#8217;t do the committee justice in terms of providing input on the voting and process etc. As we&#8217;d seen over the previous eighteen months, it was a lot of hard work!</p>
<p>Adam picks up the story well at that point, writing on February 25th, 2010:</p>
<blockquote><p>
&#8220;Yesterday, the topic of a replacement was brought up and Sean Corfield and Matt Woodward both offered up worthy nominations. I chimed in and recommend we add Alan Williamson. The fact that this particular nomination came from me might shock you since he&#8217;s the driving force behind OpenBD. But let me digress&#8230; a few months ago Alan and I got on the phone to sort out some differences. We talked for 45-60 minutes about some of our perceptions of each other, our projects and our goals. It seemed as if we had really misunderstood each other and that we shared a ton of middle-ground. During this conversation I shared some of my frustration with the OpenCFML board and proclaimed he would be a great addition to the board. So fast forward to today, when the opportunity arose, I nominated him. I also made the recommendation to expand the group to include more community members. While it wouldn&#8217;t be prudent for an expanded group to have full voting rights, I wanted to increase the amount of friendly voices and visibility into the project.&#8221;
</p></blockquote>
<p>Before we could get into any real discussion on that, as Adam said, he withdrew from the committee with Alan Williamson&#8217;s &#8220;<a href="http://groups.google.com/group/cfml-conventional-wisdom">Conventional CFML Wisdom</a>&#8221; group as the catalyst. Someone had alerted me to the group about a week earlier (the group had been created on February 15th, 2010) and I&#8217;d joined to explain the committee thinking on certain decisions. Adam joined that group the day he withdrew from the CFML Advisory Committee. The group has had just a dozen fairly brief discussions since it was formed, so whilst it is nice to have an open, public discussion group for CFML features, I wouldn&#8217;t consider it very significant or representative (there are under 100 members). Perhaps that will change over time? I hope so.</p>
<p>Where is the CFML Advisory Committee right now? Well, we&#8217;d had no discussions since Adam&#8217;s departure until two weeks ago when I tried to resurrect the CFSCRIPT spec. Per committee agreement based on my recommendations in February, I&#8217;d taken a copy of the committee&#8217;s voting document and removed all the votes and the open questions, in an attempt to get an actual spec that we could publish at CFUnited. I&#8217;d also adjusted the spec to match Adobe ColdFusion 9&#8242;s implementation, as we&#8217;d agreed in February. Ray and Rob helped me with wording, to better reflect a spec rather than the discussion document it grew from. I&#8217;d hoped that we could publish it for CFUnited and reignite interest in the committee and begin to move forward again. After all, when Adam withdrew, Ben said that our &#8220;initial objective is still valid and perhaps even more compelling than ever&#8221; and suggested we try to tighten our mission, in order to move forward.</p>
<p>I don&#8217;t know when Adam actually unsubscribed from the CFML Advisory Committee mailing list so I don&#8217;t know whether he&#8217;d seen my latest attempt to get the committee going again. Certainly the timing of his blog post means that publishing a spec at CFUnited is now a moot point.</p>
<p>What about the committee mailing list? I suggested a couple of times that we should open up the list archives to the community &#8211; including at the start of the process. Adobe expressed the concern that they were sharing future plans with the committee which they felt would be inappropriate to speak about publicly. It&#8217;s a difficult position for a corporation that has to be very careful about future disclosures. Whilst the committee was never under NDA with Adobe, it was made clear that there was a certain expectation of privacy.</p>
<p>Lessons learned? Well, specifying a language is inherently difficult. I spent eight years on the ANSI C++ Committee (three as X3J16 Secretary) and I represented the UK on the ISO C++ Committee for most of that time as well. There were a lot of vendors on the committee and discussions could get very contentious and even heated at times. That&#8217;s the nature of cross-vendor standardization. I think I was perhaps the only member of the CFML committee that really understood how difficult a true cross-vendor specification might be for CFML. For years, there was clearly no value to Allaire / Macromedia / Adobe in having a public specification (it came up several times over the years &#8211; and I was always a big advocate for such a spec while I worked there) but I had high hopes for the effort when it started in 2008. Adam says &#8220;The real beneficiaries were Railo and OpenBD who wanted a CFML standard that would allow ColdFusion customers to easily switch to their clone engines.&#8221; and that&#8217;s the reason the process had never been attempted before. Given that half of the people who fill out the information form on the Railo download page are <em>not existing CFML users</em>, that&#8217;s a disappointing attitude, in my opinion.</p>
<p>Adam says &#8220;Sean claimed that Railo wanted to wait a version (or two) to see how new Railo tags were accepted by the community before making a formal recommendation.&#8221; Here&#8217;s what I said to the committee in November: &#8220;Adobe have released ColdFusion 9 now and, due to schedule / timing issues, it includes syntax that is at odds with what the committee agreed as core CFSCRIPT. Railo have been holding off implementing the new syntax until we can get a clear sense of what is really going to happen around the committee.&#8221; &#8230; &#8220;Railo has been very conservative about core language changes, trying to follow Adobe&#8217;s lead as much as possible on details, whilst adding clearly non-core language features.&#8221; &#8230; &#8220;Railo believes the only sensible approach is to support Adobe&#8217;s syntax since that is what developers will expect. Supporting only the CFML2009 syntax lowers portability. Supporting both syntaxes only makes sense if Adobe are committed to adding the CFML2009 syntax as well &#8211; which won&#8217;t happen for at least a year.&#8221; More recently we&#8217;ve talked about adding closures to Railo and proposing that to the committee. I indicated that we wanted some experience with implementation and some community feedback on the feature before making a formal proposal. Given my experience with language standardization in the 90&#8242;s this seemed the most sensible approach to take &#8211; and it was usually how features were tested before being baked into the C++ standard. It&#8217;s not like we can&#8217;t change our implementation to match the committee&#8217;s consensus later &#8211; as we just did recently with for-in loops over arrays in CFSCRIPT.</p>
<p>Is the committee dead? Officially, no, but the lack of Adobe&#8217;s involvement makes it somewhat pointless &#8211; as several committee members had opined when Adam first withdrew in February. So, for all intents and purposes, it might as well be officially dead.</p>
<p>What happens next? Adam has said ColdFusion will be driven by the Adobe ColdFusion community and that the Adobe Community Professionals will act as their advisory committee. Railo and OpenBD will continue to be driven by the overall CFML community and will track Adobe&#8217;s developments for cross-engine compatibility. In other words, pretty much the status quo that we&#8217;ve had all along.</p>
<p>In closing, I&#8217;ll echo Adam&#8217;s words and &#8220;thank Ben, Rob and Ray for the work they put into the OpenCFML. Rob and Ray specifically donated a large amount of time to this effort&#8221;. I&#8217;ll also thank Gert, Matt and Peter for their contributions &#8211; as I&#8217;ve indicated above, Gert and Matt in particular helped pull together the working documents we used as a basis for voting. I&#8217;ll also thank Ben specifically for having the vision to get this started and for the encouragement he gave us all when things weren&#8217;t going well. As chair of the committee over the past two years, it&#8217;s been an interesting challenge but, ultimately, a disappointment that we weren&#8217;t able to move forward <strong>together</strong> with a public, open specification for the language we all love!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.coldfusionpronews.com/adobe-leave-the-cfml-advisory-committee/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Important Hotfixes For FW/1 1.0 And 1.1</title>
		<link>http://www.coldfusionpronews.com/important-hotfixes-for-fw1-1-0-and-1-1/</link>
		<comments>http://www.coldfusionpronews.com/important-hotfixes-for-fw1-1-0-and-1-1/#comments</comments>
		<pubDate>Tue, 13 Jul 2010 14:26:39 +0000</pubDate>
		<dc:creator>Sean Corfield</dc:creator>
				<category><![CDATA[ColdFusion]]></category>

		<guid isPermaLink="false">http://www.devwebpro.com/?p=11501</guid>
		<description><![CDATA[Two FW/1 users ran into a problem with error handling where methods from the wrong subsystem could be called if an exception occurred. I considered this an important enough issue to provide hotfixes for previous releases. You can now download tagged releases for 1.0.1 and 1.1.1 which incorporate the error &#8230;]]></description>
			<content:encoded><![CDATA[<p>Two FW/1 users ran into a problem with error handling where methods from the wrong subsystem could be called if an exception occurred. I considered this an important enough issue to provide hotfixes for previous releases. You can now <a href="http://github.com/seancorfield/fw1/downloads">download tagged releases for 1.0.1 and 1.1.1</a> which incorporate the error handling changes into the earlier releases (1.0, 1.1).</p>
<p><span id="more-5836"></span>
<p> I have to say, git made that very easy since I was able to create a hotfix-1.0.1 branch from the v1.0 tag, apply the changes, tag it as v1.0.1 and then apply those same fixes to the hotfix-1.1.1 branch (from the v1.1 tag) and tag that as v1.1.1 and also master (what will become 1.2).</p>
<p>Based on my experience with this, I&#8217;ll probably move to adopt the <a href="http://nvie.com/git-model">git branching model</a> described on Vincent Driessen&#8217;s blog. </p>
<p>That&#8217;ll mean that the default download will become the stable branch (master) and there will be a new develop branch which represents the bleeding edge. Given that 1.2 is already in progress, I&#8217;ll probably defer that change until 1.2 goes Gold on master.</p>
<p><a href="http://corfield.org/blog/post.cfm/fw-1-hotfixes-for-1-0-and-1-1">Comments</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.coldfusionpronews.com/important-hotfixes-for-fw1-1-0-and-1-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Veracode Now Supports Security Testing In ColdFusion</title>
		<link>http://www.coldfusionpronews.com/veracode-now-supports-security-testing-in-coldfusion/</link>
		<comments>http://www.coldfusionpronews.com/veracode-now-supports-security-testing-in-coldfusion/#comments</comments>
		<pubDate>Tue, 29 Jun 2010 15:26:56 +0000</pubDate>
		<dc:creator>Mike Sachoff</dc:creator>
				<category><![CDATA[ColdFusion]]></category>
		<category><![CDATA[Veracode]]></category>

		<guid isPermaLink="false">http://www.devwebpro.com/?p=11422</guid>
		<description><![CDATA[Application security firm Veracode has introduced a series of improvements to its SecurityReview automated static binary and dynamic web application testing service that provides developers with a cloud-based approach to improve software application security. Veracode SecurityReview now features a number of new APIs and reference integrations that support security testing &#8230;]]></description>
			<content:encoded><![CDATA[<p>Application security firm Veracode has introduced a series of improvements to its SecurityReview automated static binary and dynamic web application testing service that provides developers with a cloud-based approach to improve software application security.</p>
<p><a href="http://http://www.veracode.com/solutions">Veracode</a> SecurityReview now features a number of new APIs and reference integrations that support security testing in popular Java, .Net, C/C++, ColdFusion and PHP development environments. Developers simply upload the executable (not source) or provide the URL to Veracode’s cloud-based platform at points of their choosing in the development lifecycle for automated static binary and dynamic web application security testing.</p>
<p>The step may be automated and scheduled in build management systems using SecurityReview’s Upload APIs. Depending on the size and complexity of the application, developers quickly receive line-of-code specific vulnerability identification and remediation instructions that are often 100 percent lower in false positives than on-premise source code tools. These results may be integrated into defect tracking systems and IDEs using SecurityReview’s Results APIs and XML formatted output.</p>
<p>“Until now, developers responsible for incorporating security testing into their development lifecycles have had two options – on-premise tools with high false positive rates, or manual third-party penetration testing that can be time consuming and costly,” said Jon Stevenson, senior vice president of engineering, Veracode.</p>
<p>“With this announcement, we are truly offering developers the best of all worlds – the integration advantages that on-premise tools have sometimes delivered plus the benefits of an expert security partner. Veracode is changing the game for software development, destroying the myth that improving the security of every application is prohibitively slow, complicated and expensive.”</p>
]]></content:encoded>
			<wfw:commentRss>http://www.coldfusionpronews.com/veracode-now-supports-security-testing-in-coldfusion/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why Scala Makes Sense</title>
		<link>http://www.coldfusionpronews.com/why-scala-makes-sense/</link>
		<comments>http://www.coldfusionpronews.com/why-scala-makes-sense/#comments</comments>
		<pubDate>Tue, 15 Jun 2010 14:23:15 +0000</pubDate>
		<dc:creator>Sean Corfield</dc:creator>
				<category><![CDATA[ColdFusion]]></category>

		<guid isPermaLink="false">http://www.devwebpro.com/?p=11334</guid>
		<description><![CDATA[I&#8217;ve not been blogging much lately because I&#8217;ve been heads down in a large ColdBox / ColdSpring / Reactor project and it&#8217;s literally been taking all my time. What free time I ought to have has been consumed by FW/1 and managing the growing Railo Consulting business! The large project &#8230;]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve not been blogging much lately because I&#8217;ve been heads down in a large ColdBox / ColdSpring / Reactor project and it&#8217;s literally been taking all my time. What free time I ought to have has been consumed by FW/1 and managing the growing Railo Consulting business! The large project has been very interesting and it&#8217;s drawing to a close as we approach launch. We&#8217;ve faced a number of very interesting challenges along the way and we&#8217;ve had to be pretty creative about our solutions.</p>
<p><span id="more-5780"></span></p>
<p>One particular challenge has been the large, dynamic data set that the system&#8217;s users represent and the fact that we have to export a subset of that user data to a fuzzy search engine that likes its data in XML (and, fortunately, its queries in JSON). CFML is very good at dealing with both XML and JSON but the vast amount of data and the huge size of the XML data packets being pushed around meant that CFML just simply wasn&#8217;t the right language for that task. Sure, CFML can make individual user XML packets and post those to the search engine but what we really needed was a high-performance daemon that could run in the background, automatically publishing and re-publishing the entire database as needed so that we didn&#8217;t have to deal with thousands of HTTP connections from CFML to the search engine during peak traffic, allowing us to scale more easily.</p>
<p>I&#8217;ve tried to pick up a new language each year for the last few years. I have experience with functional programming languages from back in my university days (and that formed the core of my PhD research back in the mid-80&#8242;s) so I&#8217;ve dabbled with Haskell and Erlang in the past &#8211; but I&#8217;ve never had cause to use them commercially (unfortunately). In 2008, I focused on Groovy and liked the &#8220;dynamic Java&#8221; nature of it, stripping away all the &#8220;noise&#8221; in the syntax (such as semicolons!) so you can be much more productive than in Java. The Broadchoice Workspace &#8211; desktop collaboration &#8211; app used Flex / AIR on the front end and Groovy / Spring / Hibernate on the back end. It was a good experience (and I&#8217;ve recently done some more consulting on that project and it reminded me why I enjoy Groovy, all over again).</p>
<p>2009 offered an opportunity to learn a high-performance, statically typed language that supports both the OO style I&#8217;ve been using since the early-90&#8242;s as well as the functional style I&#8217;ve known since the mid-80&#8242;s: Scala. Like Groovy, Scala allows a nice, bare syntax (again, without semicolons!) although Scala is much heavier on operators than many other languages. Scala&#8217;s function style, free of side effects, lends itself well to lock-free concurrent programming and that was just what I needed for the background process that scanned the database and published XML! In addition, XML is a native data type in Scala so it&#8217;s incredibly easy to generate &#8211; and parse &#8211; XML directly in the language, without needing to revert to library functions.</p>
<p>Scala is statically typed, like Java, but it allows you to omit most of the type information since it infers it from the code. Whereas in Java you have to specify the type on both sides of a declaration like this:</p>
<pre>SomeType stuff = new SomeType();</pre>
<p>In Scala, it can deduce the type of the variable from the type of the expression you initialize it with:</p>
<pre>val stuff = new SomeType()</pre>
<p>Combined with the higher-order constructs afforded by closures (which you also get in Groovy) and functional programming constructs, the net result tends to be code that has very few type declarations anywhere in the code, except in function signatures. If you&#8217;ve written much Java, you&#8217;ll appreciate how much less typing you have to do!</p>
<p>I&#8217;ve long recommended that CF developers learn additional languages. I&#8217;ve also long cautioned against learning Java as being both &#8220;too similar&#8221; and &#8220;potentially misleading&#8221; for CF developers (because writing CFML in the style of Java does both languages a disservice). I&#8217;ve recommended languages that are way off the mainstream like Prolog and Haskell because they make you &#8220;think different&#8221; and I believe that to be one of the best ways to improve as a developer. I think Scala is different enough that it makes a worthy target for CFML developers &#8211; in lieu of the far less mainstream Haskell &#8211; so you can experiment both with functional programming and with actor-based concurrency. Scala&#8217;s structural type matching (via <em>expression</em> <strong>match / case</strong> construct) offers a little taste of Prolog too.</p>
<p>But don&#8217;t just take my word for it: read why <a href="http://blog.lostlake.org/index.php?/archives/97-Happy-3rd-Anniversay.html">David Pollak came to Scala in 2006</a> and why he still loves it so much! David Pollak is the creator of the Scala-based Lift Web Framework (something else on my &#8216;to learn&#8217; list!).</p>
<p><a href="http://corfield.org/blog/post.cfm/why-i-like-scala">Comments</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.coldfusionpronews.com/why-scala-makes-sense/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

