<?xml version="1.0" encoding="utf-8"?>
			
			<rss version="2.0" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:cc="http://web.resource.org/cc/" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd">

			<channel>
			<title>Vince Bonfanti&apos;s Weblog - CFUNITED</title>
			<link>http://blog.newatlanta.com/index.cfm</link>
			<description></description>
			<language>en-us</language>
			<pubDate>Sun, 26 May 2013 03:09:10 -0400</pubDate>
			<lastBuildDate>Thu, 03 Jan 2008 11:24:00 -0400</lastBuildDate>
			<generator>BlogCFC</generator>
			<docs>http://blogs.law.harvard.edu/tech/rss</docs>
			<managingEditor>vbonfanti@newatlanta.com</managingEditor>
			<webMaster>vbonfanti@newatlanta.com</webMaster>
			<itunes:subtitle></itunes:subtitle>
			<itunes:summary></itunes:summary>
			<itunes:category text="Technology" />
			<itunes:category text="Technology">
				<itunes:category text="Podcasting" />
			</itunes:category>
			<itunes:category text="Technology">
				<itunes:category text="Tech News" />
			</itunes:category>
			<itunes:keywords></itunes:keywords>
			<itunes:author></itunes:author>
			<itunes:owner>
				<itunes:email>vbonfanti@newatlanta.com</itunes:email>
				<itunes:name></itunes:name>
			</itunes:owner>
			<itunes:image href="" />
			<image>
				<url></url>
				<title>Vince Bonfanti&apos;s Weblog</title>
				<link>http://blog.newatlanta.com/index.cfm</link>
			</image>
			<itunes:explicit>no</itunes:explicit>
			
			
			
			
			
			<item>
				<title>CFUNITED Europe: Early Bird Registration ends Jan 10</title>
				<link>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=B51287D9-3FE9-4FB9-9E07705489D9F22A</link>
				<description>
				
				Early Bird registration pricing for &lt;a href=&apos;http://europe.cfunited.com/&apos; target=&apos;_blank&apos;&gt;CFUNITED Europe 2008&lt;/a&gt; ends on January 10. Register before then and save $100. There&apos;s also a group discount rate available--register 3 for the price of 2--contact &lt;a href=&apos;mailto:info@cfunited.com&apos;&gt;info@cfunited.com&lt;/a&gt; for details.

I will be presenting &lt;a href=&apos;http://europe.cfunited.com/go/topics#topic-1476&apos; target=&apos;_blank&apos;&gt;IIS 7.0 for CFML Developers&lt;/a&gt; at this year&apos;s inaugural event.
				
				</description>
						
				
				<category>CFUNITED</category>				
				
				<pubDate>Thu, 03 Jan 2008 11:24:00 -0400</pubDate>
				<guid>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=B51287D9-3FE9-4FB9-9E07705489D9F22A</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>CFUNITED-07: The Future of BlueDragon/CFML</title>
				<link>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=14A386E7-B7F0-A744-A6F2927C3F7A6D7D</link>
				<description>
				
				It seems my keynote went pretty well this morning--I received a lot of positive feedback. For those who requested it, &lt;a href=&apos;http://blog.newatlanta.com/CFUNITED-07-The-Future-of-BlueDragon-CFML.zip&apos;&gt;here are my presentation slides&lt;/a&gt;.
				
				</description>
						
				
				<category>CFUNITED</category>				
				
				<pubDate>Thu, 28 Jun 2007 16:02:00 -0400</pubDate>
				<guid>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=14A386E7-B7F0-A744-A6F2927C3F7A6D7D</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>IIS 7.0 Administration and BlueDragon/CFML</title>
				<link>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=6282AABE-776D-14AA-5577752F9C2EAA74</link>
				<description>
				
				As a follow-up to yesterday&apos;s blog entry where I discussed how we&apos;re integrating BlueDragon with the new IIS 7.0 configuration system, I&apos;d like to take a look at the new IIS Manager and how it will affect BlueDragon/CFML developers and server administrators. There are three key points I want to make:&lt;ol&gt;&lt;li&gt;BlueDragon administration and configuration is fully integrated with IIS 7.0 and ASP.NET.
&lt;p&gt;&lt;li&gt;BlueDragon administration and configuration can be done globally, and per individual web site and web application.
&lt;p&gt;&lt;li&gt;The new IIS 7.0 administration and configuration system allows very fine-grained control of delegation of permissions by the server administration to individual web site and web application administrators.
&lt;p&gt;&lt;li&gt;The new IIS 7.0 Manager supports remote access to the server by individual web site and web application administrators, with feature delegation controlled by the server administrator.
&lt;/ol&gt;

Let&apos;s take a look at the new IIS Manager (this screenshot if from Windows Server 2008 beta3; a screenshot from Windows Vista would be similar):

&lt;center&gt;&lt;a href=&apos;http://blog.newatlanta.com/images/iismanager.jpg&apos; target=&apos;_blank&apos;&gt;&lt;img src=&apos;http://blog.newatlanta.com/images/iismanager.jpg&apos; border=&apos;0&apos; width=&apos;500&apos; height=&apos;375&apos;&gt;&lt;br&gt;Click for a larger image&lt;/a&gt;&lt;/center&gt;

The first thing you&apos;ll notice--if you&apos;re familiar with earlier versions of IIS--is that you&apos;re now presented with a collection of &quot;applets&quot; to edit various configuration settings, rather than a tabbed properties dialog; this makes it much easier to navigate and find exactly the configuration settings you&apos;re looking for. You&apos;ll also notice that ASP.NET settings are included, and that we&apos;ve added BlueDragon configuration directly into the IIS Manager (those are generic icons for now, we have a graphics artist working on a nice set that will match the others). Here&apos;s a screenshot of the BlueDragon application settings page:

&lt;center&gt;&lt;a href=&apos;http://blog.newatlanta.com/images/cfmlappsettings-server.jpg&apos; target=&apos;_blank&apos;&gt;&lt;img src=&apos;http://blog.newatlanta.com/images/cfmlappsettings-server.jpg&apos; border=&apos;0&apos; width=&apos;500&apos; height=&apos;375&apos;&gt;&lt;br&gt;Click for a larger image&lt;/a&gt;&lt;/center&gt;

Note that the configuration is heierarchical; in the above screenshot, we&apos;re editing the global configuation. The is indicated by the fact that the server is selected in the left pane and in the address bar; note also the the status indicator in the lower left (circled in red) showing that it&apos;s the global &lt;tt&gt;applicationHost.config&lt;/tt&gt; file that&apos;s being edited (see yesterday&apos;s blog entry for a discussion of &lt;tt&gt;applicationHost.config&lt;/tt&gt;).

Contrast the above screenshot with the one below. In this screenshot we&apos;re editing the settings for the Default Web Site, which is selected in the left panel and in the address bar, and note that it&apos;s the Default Web Site&apos;s &lt;tt&gt;web.config&lt;/tt&gt; file that being edited (circled in red at the lower left):

&lt;center&gt;&lt;a href=&apos;http://blog.newatlanta.com/images/cfmlappsettings-default.jpg&apos; target=&apos;_blank&apos;&gt;&lt;img src=&apos;http://blog.newatlanta.com/images/cfmlappsettings-default.jpg&apos; border=&apos;0&apos; width=&apos;500&apos; height=&apos;375&apos;&gt;&lt;br&gt;Click for a larger image&lt;/a&gt;&lt;/center&gt;

Now let&apos;s take a look at feature delegation, which can only be done at the global server level, and only by a server administrator. Feature delegation is used in conjunction with remote access to specify which features an individual web site or web application administrator is allowed to modify. Note in the following screenshot that all of the BlueDragon features are configured as &quot;Read/Write&quot;, meaning that any BlueDragon configuration settings can be modified for any web site or web application:

&lt;center&gt;&lt;a href=&apos;http://blog.newatlanta.com/images/featuredelegation.jpg&apos; target=&apos;_blank&apos;&gt;&lt;img src=&apos;http://blog.newatlanta.com/images/featuredelegation.jpg&apos; border=&apos;0&apos; width=&apos;500&apos; height=&apos;375&apos;&gt;&lt;br&gt;Click for a larger image&lt;/a&gt;&lt;/center&gt;

Modifying any BlueDragon feature to be &quot;Read Only&quot; prevents that feature from being modified for any web site or web application. It&apos;s possible to provide finer-grained control by marking a feature &quot;Read Only&quot; only for particular web sites or web applications, and &quot;Read/Write&quot; for others. It&apos;s even possible to mark individual settings within a feature as &quot;Read Only&quot; while leaving others &quot;Read/Write&quot;. For example, within the BlueDragon application settings page, you can mark the &quot;Buffer Entire Page&quot; option as &quot;Read Only&quot; while leaving the other settings &quot;Read/Write&quot;.

It&apos;s difficult to explain all of this thoroughly in a short blog entry, but hopefully I&apos;ve given you a sense of what&apos;s possible. I&apos;m going to go over all of this in more detail at my keynote at CFUNITED-07, so be sure to attend if you&apos;d like to hear more. Also, visit the IIS web site for &lt;a href=&apos;http://www.iis.net/default.aspx?tabid=7&amp;subtabid=73&apos; target=&apos;_blank&apos;&gt;more information on IIS 7.0 administration and management&lt;/a&gt;.
				
				</description>
						
				
				<category>BlueDragon.NET</category>				
				
				<category>CFUNITED</category>				
				
				<pubDate>Wed, 20 Jun 2007 16:53:00 -0400</pubDate>
				<guid>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=6282AABE-776D-14AA-5577752F9C2EAA74</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>IIS 7.0 Configuration and BlueDragon/CFML</title>
				<link>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=9207A362-909A-889B-24F7DBCC2F0F8131</link>
				<description>
				
				In yesterday&apos;s blog entry I discussed the IIS 7.0 integrated request pipeline and the new capabilities we&apos;ll be able to provide to BlueDragon/CFML programmers. Today I&apos;d like to take a look at the new IIS 7.0 configuration system and the benefits it will bring to both developers and server administrators when configuring and deploying CFML applications.

The key characteristics of the new IIS 7.0 configuration system are:&lt;ul&gt;&lt;li&gt;Configuration settings are stored in clear-text XML files--no more metabase.
&lt;p&gt;&lt;li&gt;All IIS and ASP.NET configuration settings are stored in the same XML files.
&lt;p&gt;&lt;li&gt;The configuration schema is extensible so that third-party applications--such as BlueDragon--can also store configuration settings in the same XML files alongside IIS and ASP.NET.
&lt;p&gt;&lt;li&gt;The configuration files are hierarchical, with a single global configuration file that defines the default configuration settings for the server, and website- and application-level configuration files that can override or extend the global defaults.
&lt;p&gt;&lt;li&gt;The server administrator can decide which features can be overridden by website- and application-level configuration files, and which are locked and cannot be overridden.
&lt;/ul&gt;

So what does all this mean, especially for BlueDragon/CFML developers and administrators? The first thing to realize is that every IIS web site and web application automatically contains a separate BlueDragon.NET instance with its own separate configuration settings. This means you can configure datasources, mappings, custom tag paths, etc., and have them apply only to a single web site or individual web application within a web site. Let&apos;s take a look at a practical example of how this can be useful.

The global IIS 7.0 configuration is stored in the following file, which can only be accessed by Windows users with administrative privileges:

&lt;blockquote&gt;&lt;tt&gt;C:\Windows\System32\inetsrv\config\applicationHost.config&lt;/tt&gt;&lt;/blockquote&gt;

Let&apos;s assume you have Mach II version 1.1.1 installed in the following directory:

&lt;blockquote&gt;&lt;tt&gt;C:\inetpub\MachII_1_1_1&lt;/tt&gt;&lt;/blockquote&gt;

Now, in order to configure a mapping for Mach II so that all web site and web applications use Mach II version 1.1.1, you&apos;d edit the &lt;tt&gt;applicationHost.config&lt;/tt&gt; file and add the following entry (note there will be other sections within &lt;tt&gt;system.webServer&lt;/tt&gt; in addition to the &lt;tt&gt;bluedragon&lt;/tt&gt; section):
&lt;pre&gt;&amp;lt;system.webServer&gt;
    &amp;lt;bluedragon&gt;
        &amp;lt;cfmappings&gt;
            &amp;lt;mapping name=&quot;/MachII&quot; directory=&quot;C:\inetpub\MachII_1_1_1&quot; /&gt;
        &amp;lt;/cfmappings&gt;
    &amp;lt;/bluedragon&gt;
    .
    .
    .
&amp;lt;/system.webServer&gt;
&lt;/pre&gt;

Then, let&apos;s say you want to configure a new web site or web application that uses the new Mach II version 1.5, but leave all the other web sites using version 1.1.1. How do you do that? It&apos;s simple: create a &lt;tt&gt;web.config&lt;/tt&gt; file and place it in the root directory of your web site or web application. Within the &lt;tt&gt;web.config&lt;/tt&gt; file add the following entry, which overrides the global entry in &lt;tt&gt;applicationHost.config&lt;/tt&gt; (in this case, the &lt;tt&gt;bluedragon&lt;/tt&gt; section is the only one we need to add to &lt;tt&gt;system.webServer&lt;/tt&gt;):
&lt;pre&gt;&amp;lt;system.webServer&gt;
    &amp;lt;bluedragon&gt;
        &amp;lt;cfmappings&gt;
            &amp;lt;mapping name=&quot;/MachII&quot; directory=&quot;C:\inetpub\MachII_1_5&quot; /&gt;
        &amp;lt;/cfmappings&gt;
    &amp;lt;/bluedragon&gt;
&amp;lt;/system.webServer&gt;
&lt;/pre&gt;

Now your new web site will use Mach II version 1.5, while all other web sites and web applications will continue to use version 1.1.1. (This example assumes the system administrator has delegated the ability to override the &lt;tt&gt;cfmappings&lt;/tt&gt; configuration setting; a discussion of delegation is beyond the scope of this blog entry, but you can find more information &lt;a href=&apos;http://www.iis.net/articles/view.aspx/IIS7/Managing-IIS7/Delegation-in-IIS7/Delegating-Permission-in-Config/How-to-Use-Configuration-Delegation-in-IIS7&apos; target=&apos;_blank&apos;&gt;here&lt;/a&gt;).

The key point is that it&apos;s possible for BlueDragon/CFML developers to configure settings for their own web site or web application by editing their own &lt;tt&gt;web.config&lt;/tt&gt; without having to ask the system administrator to do it for them, and without affecting any other web sites or web applications.

This simple example only gives a tiny glimpse of the new possibilities created by the new IIS 7.0 configuration system; for more detailed information &lt;a href=&apos;http://www.iis.net/default.aspx?tabid=7&amp;subtabid=72&apos; target=&apos;_blank&apos;&gt;visit the IIS web site&lt;/a&gt;. Also, I&apos;m going to discuss this in more detail during my keynote at CFUNITED-07, so be sure to come if you want to learn more.
				
				</description>
						
				
				<category>BlueDragon.NET</category>				
				
				<category>CFUNITED</category>				
				
				<pubDate>Tue, 19 Jun 2007 16:09:00 -0400</pubDate>
				<guid>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=9207A362-909A-889B-24F7DBCC2F0F8131</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>IIS 7.0 Integrated Pipeline and BlueDragon/CFML</title>
				<link>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=14695C4B-1283-DACA-A8D21134BB195D39</link>
				<description>
				
				The one feature I&apos;m most excited about in Windows Vista and Windows Server 2008 (&quot;Longhorn&quot;) is IIS 7.0, the next generation of Microsoft&apos;s IIS web server. Starting with this blog entry, I&apos;m going to highlight some of the new features of IIS 7.0 and what they mean for BlueDragon/CFML programmers. To get a good overview of IIS 7.0, you should start by reading the article by Mike Volodarsky in the March 2007 issue of MSDN magazine, entitled, &quot;&lt;a href=&apos;http://msdn.microsoft.com/msdnmag/issues/07/03/IIS7/default.aspx&apos; target=&apos;_blank&apos;&gt;IIS 7.0: Explore the Web Server for Windows Vista And Beyond&lt;/a&gt;.&quot; There&apos;s also an entire web site devoted to IIS, including &lt;a href=&apos;http://www.iis.net/default.aspx?tabid=7&apos; target=&apos;_blank&apos;&gt;extensive information about IIS 7.0&lt;/a&gt;, that&apos;s well worth checking out.

The first new IIS 7.0 feature I want to focus on in this blog entry is the &lt;a href=&apos;http://www.iis.net/articles/view.aspx/IIS7/Hosting-Web-Applications/ASP-NET/ASP-NET-Integration-with-IIS7&apos; target=&apos;_blank&apos;&gt;ASP.NET Integrated Request Pipeline&lt;/a&gt;. As a CFML programmer, you&apos;re already familiar with the concept of a &quot;request pipeline&quot; as implemented by the &lt;tt&gt;onRequestStart&lt;/tt&gt;, &lt;tt&gt;onRequest&lt;/tt&gt;, and &lt;tt&gt;onRequestEnd&lt;/tt&gt; event handlers within &lt;tt&gt;Application.cfc&lt;/tt&gt;. Both IIS and ASP.NET implement similar mechanisms for programmers to access their request pipelines; however, prior to IIS 7.0, the IIS and ASP.NET request pipelines are separate and independent of each other. Further, the &lt;tt&gt;Application.cfc&lt;/tt&gt; events are independent of both of these; the &lt;tt&gt;Application.cfc&lt;/tt&gt; event handlers are only invoked for requests for CFML pages and CFCs.

In IIS 7.0, the IIS and ASP.NET request pipelines have been integrated into a single unified runtime. This means that it&apos;s now possible for ASP.NET programmers to hook into the full IIS 7.0 request pipeline for all requests: static file, images, and any dynamic content (classic ASP, PHP, etc.) in addition to ASP.NET requests. Here&apos;s where it gets exciting for BlueDragon/CFML programmers: because BlueDragon.NET is tightly integrated with ASP.NET, we&apos;re able to expose the IIS 7.0 integrated pipeline via existing and new &lt;tt&gt;Application.cfc&lt;/tt&gt; event handlers.

With IIS 7.0 and BlueDragon.NET, you&apos;ll be able to configure your &lt;tt&gt;Application.cfc&lt;/tt&gt; event handlers to be invoked for any or all requests handled by IIS: static files, images, ASP.NET pages, and any other dynamic content (classic ASP, PHP, etc.). Here&apos;s a simplified example that hints as what will be possible. The following &lt;tt&gt;onRequestStart&lt;/tt&gt; event handler is configured to handle all incoming requests for IIS and does two things: (1) it prevents external sites from linking to GIF or JPEG images on this site, returning a &quot;404 Not Found&quot; response instead; and, (2) it prevents external sites from linking anywhere except to the home page (&quot;index.cfm&quot;) for this site.
&lt;pre&gt;   &amp;lt;cffunction name=&quot;onRequestStart&quot; returnType=&quot;boolean&quot; output=&quot;false&quot;&amp;gt;
      &amp;lt;cfargument name=&quot;thePage&quot; type=&quot;string&quot; required=&quot;true&quot;&amp;gt;
		
      &amp;lt;cfif findNoCase( cgi.SERVER_NAME, cgi.HTTP_REFERER ) gt 0&amp;gt;
         &amp;lt;!--- referrer is this server ---&amp;gt;
         &amp;lt;cfreturn true&amp;gt;
      &amp;lt;/cfif&amp;gt;
		
      &amp;lt;!--- referrer is not this server, don&apos;t allow image &quot;leeching&quot;
            or &quot;deep&quot; links ---&amp;gt;
		
      &amp;lt;cfset var fileExt = right( arguments.thePage, 3 )&amp;gt;
		
      &amp;lt;cfif ( fileExt eq &quot;gif&quot; ) or ( fileExt eq &quot;jpg&quot; )&amp;gt;
         &amp;lt;!--- don&apos;t allow image &quot;leeching&quot; ---&amp;gt;	
         &amp;lt;cfheader statuscode=&quot;404&quot; statustext=&quot;Not Found&quot;&amp;gt;
         &amp;lt;cfreturn false&gt;
      &amp;lt;/cfif&gt;
		
      &amp;lt;cfif ( arguments.thePage neq &quot;/index.cfm&quot; ) and
               ( arguments.thePage neq &quot;/sorry.htm&quot; )&amp;gt;
         &amp;lt;!--- don&apos;t allow &quot;deep&quot; links ---&amp;gt;
         &amp;lt;cflocation url=&quot;/sorry.htm&quot;&amp;gt;
         &amp;lt;cfreturn false&amp;gt;
      &amp;lt;/cfif&amp;gt;
		
      &amp;lt;cfreturn true&amp;gt;
   &amp;lt;/cffunction&amp;gt;
&lt;/pre&gt;

I&apos;ll demonstrate the above &lt;tt&gt;Application.cfc&lt;/tt&gt; and discuss it in detail during my keynote at CFUNITED-07.

In addition to allowing the existing &lt;tt&gt;Application.cfc&lt;/tt&gt; &lt;tt&gt;onRequestStart&lt;/tt&gt; and &lt;tt&gt;onRequestEnd&lt;/tt&gt; event handlers to be invoked for any request handled by IIS, we&apos;re adding the following new &lt;tt&gt;Application.cfc&lt;/tt&gt; event handlers to BlueDragon.NET:&lt;ul&gt;&lt;li&gt;onRequestAuthenticate
&lt;li&gt;onRequestAuthorize
&lt;li&gt;onRequestLog&lt;/ul&gt;The events map directly to the &lt;tt&gt;AuthenticateRequest&lt;/tt&gt;, &lt;tt&gt;AuthorizeRequest&lt;/tt&gt;, and &lt;tt&gt;LogRequest&lt;/tt&gt; events in the IIS 7.0 integrated pipeline (they are the same events!), and will be invoked for every request processed by IIS. You can imagine being able to use CFLOGIN to implement an authentication scheme that works for all content on your site, not just CFML pages, or being able to implement custom logging for all types of pages.

Our overriding vision is to make CFML a first-class programming language on .NET and Windows--you should be able to do anything in CFML that a C# or Visual Basic programmer can do. Giving CFML programmers access to the IIS 7.0 integrated pipeline is only the first step--I&apos;ll talk more about our vision and plans in future blog entries and at CFUNITED-07.
				
				</description>
						
				
				<category>BlueDragon.NET</category>				
				
				<category>CFUNITED</category>				
				
				<category>CFML</category>				
				
				<pubDate>Mon, 18 Jun 2007 17:52:00 -0400</pubDate>
				<guid>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=14695C4B-1283-DACA-A8D21134BB195D39</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>.NET Dynamic Language Runtime (DLR) and BlueDragon/CFML</title>
				<link>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=AB37DAFC-8A49-113A-11696DE66062FA8B</link>
				<description>
				
				Earlier this week I was at Microsoft working with the developers of the .NET &lt;a href=&apos;http://blogs.msdn.com/hugunin/archive/2007/04/30/a-dynamic-language-runtime-dlr.aspx&apos; target=&apos;_blank&apos;&gt;Dynamic Language Runtime&lt;/a&gt; (DLR) and would like to share what I&apos;ve learned, what we accomplished, and the potential future impact on BlueDragon and CFML.

&lt;a href=&apos;http://weblogs.asp.net/scottgu/&apos; target=&apos;_blank&apos;&gt;Scott Guthrie&lt;/a&gt; started with an overview of Microsoft&apos;s strategy for developer tools and technologies, and an explanation of how the DLR fits into this strategy. He identified three major areas of software application development:&lt;ul&gt;&lt;li&gt;desktop applications (console and GUI-based)
&lt;li&gt;HTML-based web applications
&lt;li&gt;media-based rich Internet applications (RIA)
&lt;/ul&gt;Microsoft&apos;s goal is to provide a common set of technologies and developer/designer tools for building applications in all of these three areas. The common technologies are:&lt;ul&gt;&lt;li&gt;the .NET Framework
&lt;li&gt;Windows Presentation Foundation (WPF)
&lt;li&gt;&lt;a href=&apos;http://silverlight.net/Default.aspx&apos; target=&apos;_blank&apos;&gt;Silverlight&lt;/a&gt; (formerly WPF/e)
&lt;/ul&gt;The common developer/designer tools are:&lt;ul&gt;&lt;li&gt;Visual Studio (for developers)
&lt;li&gt;Expression Studio (for designers)
&lt;/ul&gt;Contrast this to the situation that existed prior to the introduction of these technologies and tools. Building Windows desktop applications required using C/C++ and programming to the Win32 APIs. Building HTML-based web applications required use of either ASP, JSP, PHP, or CFML, along with JavaScript. Building RIA applications essentially meant using Flash and ActionScript. Each of these technologies comes with its own set of programming tools, and there&apos;s little or no integration among any of the developer tools and tools used by designers.

It&apos;s the ability to use a common set of technologies and tools to target a variety of application domains that makes Microsoft&apos;s strategy so appealing. The goal of the DLR effort is to make sure dynamic languages--such as Python, Ruby, JavaScript, etc.--can participate as first class citizens alongside static languages--such as C#, Visual Basic.NET, etc.--in this overall strategy. Our goal at New Atlanta is to make sure that CFML is one of those dynamic languages.

So what did we accomplish in three days? First, we modified the IronPython interactive command-line shell to support a small subset of CFML--just the CFSET and CFOUTPUT tags so far. Here&apos;s some sample output (the &quot;&gt;&gt;&gt;&quot; characters are the command-line prompt):

&lt;center&gt;&lt;img src=&apos;http://blog.newatlanta.com/images/IronDragon_console.jpg&apos; border=&apos;0&apos;&gt;&lt;/center&gt;


This may not look very exciting, but let me explain what&apos;s going on here. This isn&apos;t a toy example; the CFML parsing is being done by the BlueDragon.NET parser--the very same one in the currently shipping BlueDragon.NET 7.0 product. And, the CFML is not being interpreted--every line is being compiled on-the-fly (dynamically) by the DLR into .NET Intermediate Language (IL) byte code and executed by the .NET runtime.

What we&apos;re demonstrating here is the ability to hook up the BlueDragon.NET CFML parsing front-end with the DLR code generation back-end to produce a much tighter integration between CFML and the .NET runtime than what&apos;s currently provided by BlueDragon.NET. We&apos;re not very many steps away from being able to create a Windows console application that looks like this:

&lt;blockquote&gt;&lt;pre&gt;&amp;lt;cfcomponent name=&quot;Hello&quot;&gt;
    &amp;lt;cffunction name=&quot;Main&quot;&gt;
        &amp;lt;cfset text=&quot;Hello, world!&quot;&gt;
        &amp;lt;cfoutput&gt;#text#&amp;lt;/cfoutput&gt;
    &amp;lt;/cffunction&gt;
&amp;lt;/cfcomponent&gt;
&lt;/pre&gt;&lt;/blockquote&gt;

The idea is that you&apos;ll be able to compile the above code into a Windows executable (&quot;Hello.exe&quot;) and run it. The result would be exactly equivalent to the following C# code:

&lt;blockquote&gt;&lt;pre&gt;using System;


class Hello
{
    static void Main() {
        string text = &quot;Hello, world!&quot;;
        Console.WriteLine( text );
    }
}
&lt;/pre&gt;&lt;/blockquote&gt;

Add to this the ability to create and invoke .NET objects via CreateObject/CFOBJECT, and you can easily imagine how it&apos;ll be possible to create desktop applications in CFML using .NET-based Windows Forms (WinForms). You&apos;ll also be able to use CFML to create ASP.NET web applications, and be able to run CFML within Silverlight. Again, this is the goal of Microsoft&apos;s strategy: to be able to use the same programming languages, tools, and technologies to create any type of application.

What about tools support? By integrating CFML with the DLR, we were also able to demonstrate step debugging within Visual Studio. Here&apos;s a screenshot of setting a breakpoint on a CFSET tag:

&lt;center&gt;&lt;img src=&apos;http://blog.newatlanta.com/images/IronDragon_debugging.jpg&apos; border=&apos;0&apos;&gt;&lt;/center&gt;

Not bad for three days work! (OK, we cheated--the step debugging was finished on the plane ride home yesterday).

We&apos;re very excited by the possibilites and promise of a DLR-based implementation of BlueDragon (which, you may notice from the screenshots, we&apos;re calling &quot;IronDragon&quot;). CFML will no longer be just about creating HTML-based web applications--though it&apos;ll still be great for that, of course--and will be supported as a first-class citizen by Microsoft development tools.

Among other topics, I&apos;m going to talk more about IronDragon and provide additional demonstrations during my keynote presentation at &lt;a href=&apos;http://cfunited.com/&apos; target=&apos;_blank&apos;&gt;CFUNITED-07&lt;/a&gt;. I&apos;m also going to be available at our booth to talk about this in more detail, so please stop by and see me if you&apos;re interested in learning more.
				
				</description>
						
				
				<category>BlueDragon.NET</category>				
				
				<category>CFUNITED</category>				
				
				<category>CFML</category>				
				
				<pubDate>Fri, 25 May 2007 15:45:00 -0400</pubDate>
				<guid>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=AB37DAFC-8A49-113A-11696DE66062FA8B</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>CFUNITED-07: The Future of BlueDragon/CFML</title>
				<link>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=F80967A2-6777-14D1-AAF811AB231F5C4B</link>
				<description>
				
				The topic for New Atlanta&apos;s &lt;a href=&apos;http://cfunited.com/go/topics#topic-1380&apos; target=&apos;_blank&apos;&gt;keynote at CFUNITED-07&lt;/a&gt; has been posted. From the CFUNITED web site:
&lt;blockquote&gt;With the breakthrough release of BlueDragon 7.0 in March 2007, New Atlanta is now looking towards the future: contemplating, researching, and implementing evolutionary and revolutionary enhancements to BlueDragon and CFML. During this keynote presentation, the company that pioneered CFML innovations such as standard J2EE WAR/EAR deployment, image manipulation (CFIMAGE), .NET integration, and multi-threaded programming (CFTHREAD) offers their vision of the future. This keynote will include demonstrations of near-term BlueDragon enhancements to be delivered in late 2007 and early 2008, as well as a discussion of longer-term research projects that could fundamentally change the way you use CFML.&lt;/blockquote&gt;I wish I could give more details now, but that would take all the fun out of it, wouldn&apos;t it? This is one you&apos;re not going to want to miss.
				
				</description>
						
				
				<category>CFUNITED</category>				
				
				<category>CFML</category>				
				
				<category>BlueDragon</category>				
				
				<pubDate>Mon, 16 Apr 2007 15:24:00 -0400</pubDate>
				<guid>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=F80967A2-6777-14D1-AAF811AB231F5C4B</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>CFUNITED-06: Another New Atlanta keynote review</title>
				<link>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=F801E4C0-9B0E-9341-5A9485F30F7F3784</link>
				<description>
				
				Here&apos;s &lt;a href=&apos;http://www.trajiklyhip.com/blog/index.cfm/2006/7/4/BlueDragon-7s-New-Features&apos; target=&apos;_blank&apos;&gt;another review of the New Atlanta keynote at CFUNITED-06&lt;/a&gt;, written by Aaron West.
				
				</description>
						
				
				<category>CFUNITED</category>				
				
				<pubDate>Tue, 04 Jul 2006 14:38:00 -0400</pubDate>
				<guid>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=F801E4C0-9B0E-9341-5A9485F30F7F3784</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>CFUNITED-06: New Atlanta keynote slides</title>
				<link>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=117DE677-C6EF-810C-FED0F0672E02F346</link>
				<description>
				
				I&apos;ve posted my &lt;a href=&apos;http://blog.newatlanta.com/CFUNITED-06-NewAtlanta-Keynote.zip&apos;&gt;presentation slides from New Atlanta&apos;s keynote at CFUNITED-06&lt;/a&gt;. You can view the speaker notes after launching the PowerPoint slide show if you right-click and then select &quot;Screen--&gt;Speaker Notes&quot; from the pop-up menu (I didn&apos;t read the speaker notes verbatim--in some cases what I actually said was shortened considerably due to time constraints--but they capture the gist of what I had to say). Here are the speaker notes from slide 11, which is entitled &quot;Key Messages&quot; and pretty much summarizes the theme of the keynote.

&lt;b&gt;BlueDragon is a mature, proven product.&lt;/b&gt; Since we first introduced BlueDragon in 2002—over four years ago—it has been deployed by hundreds of companies and organizations; at all levels of government—by local, state, and federal agencies—by state and federal courts; by local school districts and major universities; by churches and other charitable organizations; by banks and other major financial institutions and insurance companies; by small- and medium-sized companies, and also by the largest Fortune 500 and Fortune 100 corporations.

&lt;b&gt;BlueDragon offers unique benefits as an alternative platform for deploying your CFML applications.&lt;/b&gt; There are reasons why these companies and organizations are choosing BlueDragon. It’s is not simply a copy or clone of ColdFusion—BlueDragon does things that ColdFusion doesn’t do and offers benefits that ColdFusion doesn’t offer. I’m not going to tell you that BlueDragon is always a better choice than ColdFusion or that everyone who’s using ColdFusion should switch to BlueDragon. But for some people BlueDragon is better and you might be one of those people. Which leads me to my third point…

&lt;b&gt;You, as a CFML developer, need to know more about BlueDragon.&lt;/b&gt; You need to know about the different product editions: the standalone Server, the J2EE edition, the BEA WebLogic edition, and BlueDragon.NET. You need to know what it can do and what it can’t do; how it’s the same and how it’s different from ColdFusion. You need to know these things so you can make an informed decision about whether BlueDragon is the right product for you… or whether it’s not. You may take a look at BlueDragon and decide not to use it—and that’s OK—if your decision is based on knowledge of BlueDragon’s strengths and weaknesses. But if you’re not using BlueDragon because you don’t know anything about it, because you’ve never downloaded it or tried it, or never read any of the documentation; or maybe because you read something on a blog or mailing list written by somebody who doesn’t really know much about BlueDragon or maybe has old information, then you might not be using the best product for deploying your CFML applications.
				
				</description>
						
				
				<category>CFUNITED</category>				
				
				<pubDate>Sun, 02 Jul 2006 21:59:00 -0400</pubDate>
				<guid>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=117DE677-C6EF-810C-FED0F0672E02F346</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>CFUNITED-06: Review of New Atlanta keynote</title>
				<link>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=690CF232-D84D-D16F-B9FE903A3818C83F</link>
				<description>
				
				Ryan Hartwich has written a good &lt;a href=&apos;http://www.kcwebcore.org/blog/index.cfm/2006/6/30/New-AtlantaBlue-Dragon-general-session&apos; target=&apos;_blank&apos;&gt;review of the New Atlanta keynote at CFUNITED-06&lt;/a&gt;.
				
				</description>
						
				
				<category>CFUNITED</category>				
				
				<pubDate>Sun, 02 Jul 2006 11:20:00 -0400</pubDate>
				<guid>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=690CF232-D84D-D16F-B9FE903A3818C83F</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>BlueDragon 7.0 Features and Schedule</title>
				<link>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=D689EF9B-E7C5-148D-99C3E63B57563844</link>
				<description>
				
				OK, no more tease. Here&apos;s a high-level overview of BlueDragon 7.0 features (all features are available in all BlueDragon editions except where noted). We&apos;re nearly code-complete on BD 7.0, so we expect to release a public beta in late July or early August, with final release in October. If you&apos;re interested in learning more about these features, come to my talk at 4:15 pm on Thursday at CFUNITED (ignore the title and description--the talk is not going to be just about BlueDragon.NET; and it&apos;s mostly going to be about BlueDragon 7.0). Also, be sure not to miss my keynote on Friday.
&lt;ul&gt;
&lt;li&gt;multi-threaded programming via CFTHREAD and CFJOIN

&lt;li&gt;&quot;null&quot; keyword and IsNull function
&lt;ul&gt;
    &lt;li&gt;return null from CFC methods to match any CFC type
    &lt;li&gt;check for null database values
    &lt;/ul&gt;
&lt;li&gt;CFC interfaces via CFINTERFACE

&lt;li&gt;CFQUERY enhancements:
&lt;ul&gt;
    &lt;li&gt;CACHEDUNTILCHANGE attribute (BD.NET and SQL Server 2005 only)
    &lt;li&gt;BACKGROUND attribute for background SQL processing
    &lt;/ul&gt;
&lt;li&gt;Application.cfc with enhancements:
    &lt;ul&gt;
    &lt;li&gt;onClientStart event handler
    &lt;li&gt;onMissingTemplate event handler
    &lt;/ul&gt;
&lt;li&gt;CFDOCUMENT with enhancements:
    &lt;ul&gt;
    &lt;li&gt;PNG and JPEG output formats (great for creating thumbnails)
    &lt;li&gt;multi-threaded on BlueDragon JX, J2EE, and .NET editions
    &lt;li&gt;(not available on FREE BlueDragon Server edition)
    &lt;/ul&gt;
&lt;li&gt;CFCHART with enhancements:
    &lt;ul&gt;
    &lt;li&gt;CFCHARTLEGEND
    &lt;li&gt;CFCHARTTITLE
    &lt;li&gt;CFCHARTIMAGE
    &lt;/ul&gt;
&lt;li&gt;CFSEARCH enhancements:
    &lt;ul&gt;
    &lt;li&gt;support for multiple languages
    &lt;li&gt;support for Word and PDF documents
    &lt;/ul&gt;
&lt;li&gt;CFTIMER
&lt;li&gt;SOAP-related functions
&lt;li&gt;support for MySQL 5.0, including stored procedures
&lt;li&gt;support for 64-bit Windows and Linux
&lt;li&gt;miscellaneous minor CFMX 7.0 enhancements
&lt;li&gt;performance enhancements
&lt;li&gt;bug fixes
&lt;/ul&gt;
For completeness, here are the major new CFMX 7.0 features that are not supported in BlueDragon 7.0:
&lt;ul&gt;
&lt;li&gt;event gateways
&lt;li&gt;Flash forms
&lt;li&gt;reporting services
&lt;/ul&gt;
I&apos;ll blog more details about all of these features in the weeks after CFUNITED.
				
				</description>
						
				
				<category>CFUNITED</category>				
				
				<category>BlueDragon</category>				
				
				<pubDate>Sun, 25 Jun 2006 21:43:00 -0400</pubDate>
				<guid>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=D689EF9B-E7C5-148D-99C3E63B57563844</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>Multi-threaded programming in BlueDragon 7.0 (CFTHREAD/CFJOIN)</title>
				<link>http://blog.newatlanta.com/index.cfm/2006/6/22/cfthread</link>
				<description>
				
				I can&apos;t keep quiet about this stuff--it&apos;s just too good. One of the coolest new features of BlueDragon 7.0 is the ability to do multi-threaded programming. The basic idea is very simple: any CFML code wrapped in the new CFTHREAD tag is rendered on a separate thread while the main (request) thread continues processing concurrently. The main (request) thread can wait for the CFTHREAD by using the new CFJOIN tag. Here&apos;s what it looks like:

&lt;pre&gt;
  &amp;lt;cfthread name=&quot;myThread&quot;&gt;
      &amp;lt;!--- myThread has a new Variables scope, like a custom tag, and
            can access the Application scope and tag Attributes ---&gt;
      &amp;lt;cfset variables.greeting=&quot;Hello, World&quot;&gt;
      
      &amp;lt;!--- ...do some more work here... ---&gt;
  &amp;lt;/cfthread&gt;
 
  &amp;lt;!--- myThread is initially an empty struct ---&gt;
  &amp;lt;cfdump var=&quot;#myThread#&quot;&gt;

  &amp;lt;!--- ...do some more work here... ---&gt;

  &amp;lt;!--- wait for myThread to finish ---&gt;
  &amp;lt;cfjoin thread=&quot;myThread&quot;&gt;
 
  &amp;lt;!--- myThread now contains the Variables scope of the CFTHREAD body ---&gt;
  &amp;lt;cfoutput&gt;#myThread.greeting#&amp;lt;/cfoutput&gt;

&lt;/pre&gt;


&quot;So what is this possibly good for?&quot;, you might ask. Or maybe you already know. In either case, be sure to come to my CFUNITED keynote presentation on Friday, June 30 at 11:00 am where I&apos;ll talk about this and other new BlueDragon 7.0 features in detail. See you there!
				
				</description>
						
				
				<category>CFUNITED</category>				
				
				<category>BlueDragon</category>				
				
				<pubDate>Thu, 22 Jun 2006 18:51:00 -0400</pubDate>
				<guid>http://blog.newatlanta.com/index.cfm/2006/6/22/cfthread</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>Thursday is BlueDragon day at CFUNITED-06! Win an iPod Nano!</title>
				<link>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=8BE24D40-106D-D5EA-8C7C654004A99BE6</link>
				<description>
				
				On Thursday, June 29 at CFUNITED-06 there will be a separate all-day BlueDragon track held in the lower level amphitheater. Session times and titles are listed below, and full descriptions are available on the CFUNITED-06 web site under the &lt;a href=&apos;http://www.cfunited.org/topics.cfm?#Deployment/Platform&apos; target=&apos;_blank&apos;&gt;Deployment/Platform track listings&lt;/a&gt;.

Also, we&apos;re going to give away a free iPod Nano at each of the five BlueDragon sessions! Raffle tickets will be handed out as you enter the session and you must be present at the end of the session to win.

Finally, don&apos;t forget New Atlanta&apos;s keynote on Friday, and be sure to stop by and visit our booth. See you there!

&lt;center&gt;&lt;img src=&apos;images/CFUNITED-NAC-Back.jpg&apos; border=&apos;1&apos;&gt;&lt;/center&gt;

&lt;center&gt;&lt;img src=&apos;images/CFUNITED-NAC-Front.jpg&apos; border=&apos;1&apos;&gt;&lt;/center&gt;

&lt;center&gt;&lt;a href=&quot;http://www.cfconf.org/Current_Conference.cfm&quot;  target=&quot;_blank&quot;&gt;
&lt;img src=&quot;http://www.cfconf.org/images/banner_current_conference.gif&quot; alt=&quot;CFUNITED&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/center&gt;
				
				</description>
						
				
				<category>CFUNITED</category>				
				
				<category>BlueDragon</category>				
				
				<pubDate>Wed, 21 Jun 2006 15:19:00 -0400</pubDate>
				<guid>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=8BE24D40-106D-D5EA-8C7C654004A99BE6</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>BlueDragon 7.0 to be announced at CFUNITED-06</title>
				<link>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=E1EA1168-E153-DA86-619E52F28A338E14</link>
				<description>
				
				BlueDragon 7.0 will be announced during &lt;a href=&apos;http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=5AC3D382-A06A-B693-6183127289B1A240&apos; target=&apos;_blank&apos;&gt;New Atlanta&apos;s keynote address at CFUNITED-06&lt;/a&gt; on Friday, June 30. We&apos;ll announce both the BlueDragon 7.0 feature set and release schedule, and will also demonstrate some of the more interesting new features. See you there!

&lt;center&gt;&lt;a href=&quot;http://www.cfconf.org/Current_Conference.cfm&quot;  target=&quot;_blank&quot;&gt;
&lt;img src=&quot;http://www.cfconf.org/images/banner_current_conference.gif&quot; alt=&quot;CFUNITED&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/center&gt;
				
				</description>
						
				
				<category>CFUNITED</category>				
				
				<category>BlueDragon</category>				
				
				<pubDate>Fri, 16 Jun 2006 11:06:00 -0400</pubDate>
				<guid>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=E1EA1168-E153-DA86-619E52F28A338E14</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>CFUNITED-06: New Atlanta keynote topic posted</title>
				<link>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=5AC3D382-A06A-B693-6183127289B1A240</link>
				<description>
				
				New Atlanta&apos;s keynote at CFUNITED-06 will be given by yours truly. The title is &lt;a href=&apos;http://www.cfunited.com/topics.cfm#618&apos; target=&apos;_blank&apos;&gt;BlueDragon - Five Years of CFUnited: Yesterday, Today and the Road Ahead&lt;/a&gt;. Here&apos;s the full description:
&lt;blockquote&gt;2006 marks the fifth year that New Atlanta has been present at CFUN/CFUnited since BlueDragon was first introduced at CFUN&apos;02. Today, BlueDragon is firmly established as a world-class, enterprise-ready alternative for deploying CFML applications in standard Java/J2EE and Microsoft .NET server environments. During the first part of this keynote session, Vince Bonfanti, president and co-founder of New Atlanta, will provide an overview of the history of BlueDragon and trace its evolution over the years, highlighting significant customer successes in government, education, health care, finance, retail, and other industries.

During the second part of this keynote, Vince will highlight and demonstrate some of the unique features offered by BlueDragon and how you can use these features to improve your productivity and the performance of your CFML applications. Vince will conclude by demonstrating some of the new features being introduced in BlueDragon 7.0 that continue BlueDragon&apos;s tradition of innovation and leadership in the CFML server market.&lt;/blockquote&gt;Of course, New Atlanta is once again a Gold Sponsor of CFUNITED this year. See you there!
&lt;center&gt;&lt;a href=&quot;http://www.cfconf.org/Current_Conference.cfm&quot;  target=&quot;_blank&quot;&gt;
&lt;img src=&quot;http://www.cfconf.org/images/banner_current_conference.gif&quot; alt=&quot;CFUNITED&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;/center&gt;
				
				</description>
						
				
				<category>CFUNITED</category>				
				
				<pubDate>Mon, 17 Apr 2006 15:47:00 -0400</pubDate>
				<guid>http://blog.newatlanta.com/index.cfm?mode=entry&amp;entry=5AC3D382-A06A-B693-6183127289B1A240</guid>
				
			</item>
			
		 	
			</channel></rss>