<?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>Mark Ireland&apos;s Blog</title>
			<link>http://www.markireland.com.au/blog/index.cfm</link>
			<description>Australian Web App Developer</description>
			<language>en-us</language>
			<pubDate>Wed, 08 Sep 2010 21:30:30 -0500</pubDate>
			<lastBuildDate>Fri, 03 Sep 2010 01:07:00 -0500</lastBuildDate>
			<generator>BlogCFC</generator>
			<docs>http://blogs.law.harvard.edu/tech/rss</docs>
			<managingEditor>markincuba@hotmail.com</managingEditor>
			<webMaster>markincuba@hotmail.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>markincuba@hotmail.com</itunes:email>
				<itunes:name></itunes:name>
			</itunes:owner>
			<itunes:image href="" />
			<image>
				<url></url>
				<title>Mark Ireland&apos;s Blog</title>
				<link>http://www.markireland.com.au/blog/index.cfm</link>
			</image>
			<itunes:explicit>no</itunes:explicit>
			
			<item>
				<title>Drag and drop between browsers</title>
				<link>http://www.markireland.com.au/blog/index.cfm/2010/9/3/Drag-and-drop-between-browsers</link>
				<description>
				
				I found &lt;a href=&quot;http://decafbad.com/2009/07/drag-and-drop/api-demos.html&quot;&gt;Leslie Michael Orchard&lt;/a&gt; informative on HTML5 drag and drop. If you open it in two (Firefox 3.6.8) browsers you can drag and drop between them. This could be useful in a Content Management System. I made a simple copy to &lt;a href=&quot;http://www.markireland.com.au/dragdrop.html&quot;&gt;demo&lt;/a&gt; the idea.

&lt;a href=&quot;http://www.quirksmode.org/blog/archives/2009/09/the_html5_drag.html&quot;&gt;QuirksMode&lt;/a&gt; was very critical of the HTML5 drag and drop specification 
				</description>
				
				<category>design</category>				
				
				<pubDate>Fri, 03 Sep 2010 01:07:00 -0500</pubDate>
				<guid>http://www.markireland.com.au/blog/index.cfm/2010/9/3/Drag-and-drop-between-browsers</guid>
				
			</item>
			
			<item>
				<title>HTML5 tags and comparing one CMS to another</title>
				<link>http://www.markireland.com.au/blog/index.cfm/2010/9/1/HTML5-tags-and-comparing-one-CMS-to-another</link>
				<description>
				
				I have made a simple page to show some &lt;a href=&quot;../../../stylestarter.html&quot;&gt;new HTM5 tags&lt;/a&gt; that I hope will be useful when comparing one CMS to another.

These can set the definition of section, article etc so we can talk sensibly when discussing different approaches to content management. 
				</description>
				
				<category>design</category>				
				
				<pubDate>Wed, 01 Sep 2010 02:43:00 -0500</pubDate>
				<guid>http://www.markireland.com.au/blog/index.cfm/2010/9/1/HTML5-tags-and-comparing-one-CMS-to-another</guid>
				
			</item>
			
			<item>
				<title>comment spam</title>
				<link>http://www.markireland.com.au/blog/index.cfm/2010/6/4/comment-spam</link>
				<description>
				
				I wish whoever is adding comment spam to my blog would just stop it.

You may be the only ones visiting my blog! 
				</description>
				
				<category>general</category>				
				
				<pubDate>Fri, 04 Jun 2010 21:43:00 -0500</pubDate>
				<guid>http://www.markireland.com.au/blog/index.cfm/2010/6/4/comment-spam</guid>
				
			</item>
			
			<item>
				<title>Simple test of Plaxo badge</title>
				<link>http://www.markireland.com.au/blog/index.cfm/2010/5/20/Simple-test-of-Plaxo-badge</link>
				<description>
				
				The simple test of Plaxo badge has failed (or worked, depending on how you like your security). A Coldfusion server setting prevents the script tag from being saved in your database. So instead of &apos;script&apos; it saves &amp;ltInvalidTag&amp;gt


&amp;ltdiv id=&quot;plaxo-pulse-widget&quot;&amp;gt&amp;lt/div&amp;gt&amp;ltInvalidTag src=&quot;http://www.plaxo.com/widget/get?authTicket=4BFdVL%2BNpPtYTShnfai4Xor6AZKvys%2BST0YOICZKDOo%3D&amp;type=frame&amp;version=2&amp;height=491&amp;width=125&quot; type=&quot;text/javascript&quot; charset=&quot;utf-8&quot;&gt;&amp;lt/script&amp;gt 
				</description>
				
				<category>tests</category>				
				
				<pubDate>Thu, 20 May 2010 22:38:00 -0500</pubDate>
				<guid>http://www.markireland.com.au/blog/index.cfm/2010/5/20/Simple-test-of-Plaxo-badge</guid>
				
			</item>
			
			<item>
				<title>Coldfusion snapshot Memory Analyzer?</title>
				<link>http://www.markireland.com.au/blog/index.cfm/2010/1/4/Coldfusion-snapshot-Memory-Analyzer</link>
				<description>
				
				Pavan Kumar Gorakavi has posted an article on &lt;a href=&quot;http://java.sys-con.com/node/1230460&quot;&gt;Using Eclipse Memory Analyzers&lt;/a&gt;

I wonder if it can be used in looking at a Coldfusion snapshot? 
				</description>
				
				<category>coldfusion</category>				
				
				<pubDate>Mon, 04 Jan 2010 20:08:00 -0500</pubDate>
				<guid>http://www.markireland.com.au/blog/index.cfm/2010/1/4/Coldfusion-snapshot-Memory-Analyzer</guid>
				
			</item>
			
			<item>
				<title>Tagcloud example using Flash SWFObject</title>
				<link>http://www.markireland.com.au/blog/index.cfm/2009/12/10/Tagcloud-example-using-Flash-SWFObject</link>
				<description>
				
				This tagcloud serves up keywords from the titles of courses offered at a University.

I wonder how useful it is if a user just wanted a broad overview of what was on offer.

&lt;a href=&quot;http://www.coldfusionenterprise.com/example_xml.html&quot;&gt;WP-Cumulus&lt;/a&gt;

It serves up this &lt;a href=&quot;http://www.coldfusionenterprise.com/tagcloud.xml&quot;&gt;xml&lt;/a&gt;

I presume undergraduates have a general idea and postgraduates have a specific idea of what they want. Is the number of links just too large? 
				</description>
				
				<category>design</category>				
				
				<pubDate>Thu, 10 Dec 2009 04:04:00 -0500</pubDate>
				<guid>http://www.markireland.com.au/blog/index.cfm/2009/12/10/Tagcloud-example-using-Flash-SWFObject</guid>
				
			</item>
			
			<item>
				<title>CF cannot terminate threads in a &quot;native thread&quot; state</title>
				<link>http://www.markireland.com.au/blog/index.cfm/2009/12/10/CF-cannot-terminate-threads-in-a-native-thread-state</link>
				<description>
				
				Charlie Arehart replied with this on [cfaussie]:


&gt;&gt;&gt; &quot;charlie arehart&quot; &lt;charlie_lists@carehart.org&gt; 10/12/2009 10:58 am &gt;&gt;&gt;
Scott, as far as I can tell, nothing has changed in the CF Enterprise Server
Monitor from 8 to 9. Both it, and FusionReactor, and SeeFusion can all
attempt to kill requests. 


Just beware: such an attempt is only that, an &quot;attempt&quot;. There&apos;s no
guarantee it can be interrupted. If a CF request is in what&apos;s called a
native thread (that is, talking to something outside of CF, such as hung
talking to a database, doing a cfhttp, or invoking a web service, etc.) then
none of the tools can interrupt the request. 


Yes, that does mean that CF requests can hang for a very long time, indeed
indefinitely in some cases and that you can&apos;t really do anything about it.
And no, not even the CF admin timeout setting can change this. It&apos;s subject
to the same limitation. It is worth noting that putting a TIMEOUT on CFHTTTP
or CFINVOKE is a good ideas, as sometimes it can allow CF to interrupt
those. We had a discussion of that here last year, if I recall. There&apos;s also
a TIMEOUT on CFQUERY too, but it doesn&apos;t always work and depends on the
drive version, type, database, and other variables.


Finally, should anyone wonder, all this inability to timeout requests in a
native thread state is not a CF bug. It&apos;s a JVM thing. The CF &quot;kill thread&quot;
mechanisms above merely processes ask the JVM to terminate the thread, and
it cannot terminate threads in a &quot;native thread&quot; state. 
				</description>
				
				<category>coldfusion</category>				
				
				<pubDate>Thu, 10 Dec 2009 04:00:00 -0500</pubDate>
				<guid>http://www.markireland.com.au/blog/index.cfm/2009/12/10/CF-cannot-terminate-threads-in-a-native-thread-state</guid>
				
			</item>
			
			<item>
				<title>less popular pages</title>
				<link>http://www.markireland.com.au/blog/index.cfm/2009/11/16/less-popular-pages</link>
				<description>
				
				I wrote a very simple CMS (for a university) that was designed to draw traffic to the less popular pages.

Users could enter keywords and create categories that their content belonged in.

An autocomplete search showed visitors that some keywords were not available.

The more popular the category the more clicks it took to drill down to the content.

Keywords distinguished one page from another while categories grouped them together. The category would not appear until at least two content items belonged to it.

This worked because there were not a very large number of content items. Approximately 20 subcategories in 20 categories was about right in this case 
				</description>
				
				<category>design</category>				
				
				<pubDate>Mon, 16 Nov 2009 00:19:00 -0500</pubDate>
				<guid>http://www.markireland.com.au/blog/index.cfm/2009/11/16/less-popular-pages</guid>
				
			</item>
			
			<item>
				<title>hotmail accounts hacked</title>
				<link>http://www.markireland.com.au/blog/index.cfm/2009/10/10/hotmail-accounts-hacked</link>
				<description>
				
				On the 25th of September 2009 Hotmail accounts were hacked. A story was released saying only accounts starting with A and B were hacked. This is not true. I know because my account starts with M and everyone in my contacts list got this email:

&gt;dear,

&gt; I would like to introduce a very good company, electronic

&gt; products dealer.

&gt; I have  bought some products from company,the price

&gt; was very cheap,

&gt; and the products are very good quality!They accept paypal,

&gt; credit card transactions,

&gt;  bank transfers,and more.

&gt; Just have a look at this web page : &lt;www.onsele.com&gt;

&gt; I am sure you will could save a lot of money!

&gt; Best regards! 
		 	   		  
&gt; Let us help with car

&gt; news, reviews and more Looking

&gt; for a new car this winter? 
				</description>
				
				<category>IT</category>				
				
				<pubDate>Sat, 10 Oct 2009 00:12:00 -0500</pubDate>
				<guid>http://www.markireland.com.au/blog/index.cfm/2009/10/10/hotmail-accounts-hacked</guid>
				
			</item>
			
			<item>
				<title>I know this is what PDFs are for but my clients want a nicely styled word docx</title>
				<link>http://www.markireland.com.au/blog/index.cfm/2009/9/22/I-know-this-is-what-PDFs-are-for-but-my-client-want-a-nicely-styled-word-docx</link>
				<description>
				
				I know this is what PDFs are for but my clients want a nicely styled word docx, so I tried this:
&lt;code&gt;
&lt;cfsavecontent variable=&quot;style4html4word&quot;&gt;
&lt;style&gt;
h1, h2, h3 {text-align:center;font-family: Arial;}
p {font-size:11pt;font-family: Arial;margin: 0 1cm 0 1cm;}
.bottomtext {text-align:right;padding-top:15em;margin-bottom:2em;}
&lt;/style&gt;
&lt;/cfsavecontent&gt;
&lt;/code&gt;

This works but is it just nuts?

&lt;code&gt;
&lt;form action=&quot;https://secure.whatever.com/notauthenticated/tohtml4word.cfm&quot; method=&quot;post&quot; target=&quot;_blank&quot;&gt;
&lt;input type=&quot;hidden&quot; name=&quot;filename&quot; value=&quot;well_formed_name&quot; /&gt;
&lt;cfoutput&gt;&lt;textarea cols=&quot;50&quot; rows=&quot;10&quot; name=&quot;content&quot; style=&quot;display: none;&quot;&gt;&lt;html&gt;&lt;head&gt;&lt;title&gt;All Whatever&lt;/title&gt;#variables.style4html4word#&lt;/head&gt;&lt;body&gt;#allContent#&lt;/body&gt;&lt;/html&gt;&lt;/textarea&gt;&lt;/cfoutput&gt;
&lt;div&gt;&lt;input type=&quot;submit&quot; value=&quot; Open as Word &quot; onclick=&quot;progress();&quot; /&gt;&lt;/div&gt;
&lt;/form&gt;
&lt;cfoutput&gt;
#allContent#
&lt;/cfoutput&gt;
&lt;/code&gt;

tohtml4word.cfm is just:

&lt;code&gt;
&lt;cfheader name=&quot;Content-type&quot; value=&quot;application/html&quot;&gt;
&lt;cfheader name=&quot;Cache-Control&quot; value=&quot;max-age=0&quot;&gt;
&lt;cfheader name=&quot;Pragma&quot; value=&quot;public&quot;&gt;
&lt;cfheader name=&quot;Content-disposition&quot; value=&quot;attachment; filename=#form.filename#.htm&quot;&gt;
&lt;cfoutput&gt;#form.content#&lt;/cfoutput&gt;
&lt;/code&gt;

Am I just abusing Coldfusion ease-of-use? What would be better from a maintenance point of view? 
				</description>
				
				<category>coldfusion</category>				
				
				<pubDate>Tue, 22 Sep 2009 23:28:00 -0500</pubDate>
				<guid>http://www.markireland.com.au/blog/index.cfm/2009/9/22/I-know-this-is-what-PDFs-are-for-but-my-client-want-a-nicely-styled-word-docx</guid>
				
			</item>
			
			<item>
				<title>Variables and This scopes and the onRequest method</title>
				<link>http://www.markireland.com.au/blog/index.cfm/2009/7/15/Variables-and-This-scopes-and-the-onRequest-method</link>
				<description>
				
				Rex posted this on the CFDEV list (I think it bears repeating):

The VARIABLES scope is the default scope for an unscoped variable, and 
is shared with the cfincluded page that is called by the onRequest 
method.  The THIS scope only exists in a CFC or in a method of the CFC.  
Since the cfinclude is called in a method, then the THIS scope is 
available in the cfincluded page.
 
When there is no onRequest method, the page is just executed, and the 
called page, test.cfm, does not have access to any of the cfc variables, 
so VARIABLES scope is empty, and the THIS scope does not exist. 
				</description>
				
				<category>coldfusion</category>				
				
				<pubDate>Wed, 15 Jul 2009 20:03:00 -0500</pubDate>
				<guid>http://www.markireland.com.au/blog/index.cfm/2009/7/15/Variables-and-This-scopes-and-the-onRequest-method</guid>
				
			</item>
			
			<item>
				<title>cflogin documentation really sucks</title>
				<link>http://www.markireland.com.au/blog/index.cfm/2009/6/12/cflogin-documentation-really-sucks</link>
				<description>
				
				I think the cflogin documentation really sucks &lt;strong&gt;because&lt;/strong&gt; Coldfusion is so easy and so flexible.

That is, there are so many cool things you can do once a user is authenticated that Adobe has failed to provide a very simple example.

&lt;code&gt;
&lt;cfset authUserFail = false&gt;
&lt;cflogin&gt;
   &lt;cfif isDefined(&quot;cflogin&quot;) and len(cflogin.name) and len(cflogin.password)&gt;
     &lt;cfldap server=&quot;ldap&quot; 
       action=&quot;query&quot; attributes=&quot;dn&quot; 
       filter=&quot;(uid=#cflogin.name#)&quot; 
        start=&quot;&quot; 
         name=&quot;findUser&quot;&gt;
      &lt;cfif findUser.recordCount&gt;
                &lt;cftry&gt;
                    &lt;cfldap server=&quot;ldap&quot; action=&quot;query&quot; attributes=&quot;n&quot; 
                        filter=&quot;(uid=#cflogin.name#)&quot; start=&quot;&quot; 
                            username=&quot;#findUser.dn#&quot; password=&quot;#cflogin.password#&quot; name=&quot;authUser&quot;&gt;
                 &lt;cfcatch&gt;
                    &lt;cfset authUserFail = true&gt;
                 &lt;/cfcatch&gt;
                &lt;/cftry&gt;            
         &lt;cfif not authUserFail and authUser.recordCount eq 1&gt;        
           &lt;cfloginuser name=&quot;#cflogin.name#&quot; password=&quot;#cflogin.password#&quot; roles=&quot;&quot;&gt;
           &lt;cfset session.user = cflogin.name&gt;
         &lt;cfelse&gt;
         &lt;cfset request.infoWarningsErrors.addError(&apos;authUserFail&apos;,&apos;Authentication failed&apos;)&gt;
          &lt;cfinclude template=&quot;dsp_login.cfm&quot;&gt;
         &lt;/cfif&gt;
       &lt;cfelse&gt;
           &lt;cfset request.infoWarningsErrors.addError(&apos;findUserFail&apos;,&apos;Authentication failed&apos;)&gt;
           &lt;cfinclude template=&quot;dsp_login.cfm&quot;&gt;
       &lt;/cfif&gt;
 &lt;cfelseif isDefined(&quot;cflogin&quot;) and (not len(cflogin.name) and not len(cflogin.password))&gt;
     &lt;cfset request.infoWarningsErrors.addError(&apos;noblanks&apos;,&apos;Please enter username and password&apos;)&gt;     
 &lt;/cfif&gt;
&lt;/cflogin&gt;
&lt;cfif len(getAuthUser()) and (not structKeyExists(session,&quot;user&quot;)&gt;
    &lt;cfldap server=&quot;ldap&quot; action=&quot;query&quot; attributes=&quot;&quot; 
            filter=&quot;(uid=#getAuthUser()#)&quot; start=&quot;&quot; name=&quot;refreshUser&quot;&gt;
    &lt;cfif refreshUser.recordCount eq 1&gt;
      &lt;cfset session.user = getAuthUser()&gt;
		DO SOME CLEVER SESSION.USER STUFF HERE	
     &lt;/cfif&gt;
&lt;/cfif&gt;
&lt;cflog file=&quot;lostsession&quot; text=&quot;#getAuthUser()#, #isDefined(&apos;cflogin&apos;)#, #yesNoFormat(authUserFail)#, #isDefined(&apos;authUser&apos;)#, #isDefined(&apos;refreshUser&apos;)#&quot;&gt;
&lt;/cfif&gt;
&lt;/code&gt; 
				</description>
				
				<category>coldfusion</category>				
				
				<pubDate>Fri, 12 Jun 2009 02:30:00 -0500</pubDate>
				<guid>http://www.markireland.com.au/blog/index.cfm/2009/6/12/cflogin-documentation-really-sucks</guid>
				
			</item>
			
			<item>
				<title>Analysts at Gartner Praise Coldfusion</title>
				<link>http://www.markireland.com.au/blog/index.cfm/2009/5/21/Analysts-at-Gartner-Praise-Coldfusion</link>
				<description>
				
				I am posting this in case I need ammunition the next time I lobby to use Coldfusion.

&lt;a href=&quot;http://www.webbschofield.com/index.cfm/2009/5/14/Analysts-at-Gartner-Praise-CF&quot;&gt;Analysts at Gartner Praise CF&lt;/a&gt;

The ColdFusion note / report can be purchased from Gartner.

Other quotes from Mark in the note:

&quot;...ColdFusion can provide unique value that is not fully addressed by any competing alternative technology. Most notably, ColdFusion is unmatched by any competitor for ease of use and technical capabilities. When we combine this with cross-platform deployment,and significant integration into both Java and .NET, ColdFusion stands out as a compelling solution for many IT challenges.&quot;

&quot;ColdFusion provides a potential wrapper around the complexity of Java, providing Web developers access to the power of the Java platform via the productivity of a fourth-generation language (4GL).&quot;

&quot;ColdFusion is nearly unique in the industry because it provides a balance of ease of use and advanced features that can support &quot;entry level&quot; business unit application developers, as well as &quot;advanced&quot; centralized IT development teams.&quot;

&quot;We also believe ColdFusion will play a pivotal role in Adobe&apos;s Flash Platform (www.adobe.com/flashplatform). Developers with investments in Flash, Flex, Air, BlazeDS and PDF Forms will find ColdFusion an integral supporting player in this technology family.&quot;

Mark recommends you ...

&quot;Consider This Product When

" You need to deliver robust Web applications, and alternatives such as .NET or Java are overkill

" You are invested in Java and Java EE, and need developer productivity to better your investment in Java

" You need to augment an otherwise heavily Java-centric IT strategy with a Web application layer that provides a higher level of developer productivity; integration with Java is particularly tight since ColdFusion applications are literally compiled into Java code for runtime execution

" You need to augment an otherwise heavily .NET-centric IT strategy with a platform that can be deployed to Linux and Unix, while retaining tight connectivity and integration with the Microsoft technology ecosystem

" You need to integrate Web applications with online Adobe Forms, or provide back-end processing to Flex and Air RIAs&quot; 
				</description>
				
				<category>coldfusion</category>				
				
				<pubDate>Thu, 21 May 2009 02:56:00 -0500</pubDate>
				<guid>http://www.markireland.com.au/blog/index.cfm/2009/5/21/Analysts-at-Gartner-Praise-Coldfusion</guid>
				
			</item>
			
			<item>
				<title>When is a form too long and too slow?</title>
				<link>http://www.markireland.com.au/blog/index.cfm/2009/5/20/When-is-a-form-too-long-and-too-slow</link>
				<description>
				
				I have a form that is longer than one page (and it can be slow depending on what is submitted)

Would it be acceptable design to have a submit button that became disabled (while waiting for the server to respond) with a progress bar inside the button? 
				</description>
				
				<category>javascript</category>				
				
				<pubDate>Wed, 20 May 2009 00:35:00 -0500</pubDate>
				<guid>http://www.markireland.com.au/blog/index.cfm/2009/5/20/When-is-a-form-too-long-and-too-slow</guid>
				
			</item>
			
			<item>
				<title>use your favourite style changer here</title>
				<link>http://www.markireland.com.au/blog/index.cfm/2009/3/28/use-your-favourite-style-changer-here</link>
				<description>
				
				If your url has variables like action=takeAction then adding checkurl() to the onload of the body tag of your page can change the style of the link that got your user there if its id happens to be (in this case) takeAction

It works like a:visited except its only the most recently clicked link.

&lt;pre&gt;
function gup( name )
{
name = name.replace(/[\[]/,&quot;\\\[&quot;).replace(/[\]]/,&quot;\\\]&quot;);
var regexS = &quot;[\\?&amp;]&quot;+name+&quot;=([^&amp;#]*)&quot;;
var regex = new RegExp( regexS );
var results = regex.exec( window.location.href );
if( results == null )
    return &quot;&quot;;
else
    return results[1];
}
function checkurl() {
var ref = gup(&apos;action&apos;).toLowerCase();
if (ref) {
    var a = document.getElementById(ref);
    if(a) {
     YAHOO.util.Dom.setStyle(a,&apos;color&apos;,&apos;#0065b3&apos;);
//use your favourite style changer here
        }
    }
}
&lt;/pre&gt; 
				</description>
				
				<category>javascript</category>				
				
				<pubDate>Sat, 28 Mar 2009 03:41:00 -0500</pubDate>
				<guid>http://www.markireland.com.au/blog/index.cfm/2009/3/28/use-your-favourite-style-changer-here</guid>
				
			</item>
			</channel></rss>