<?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>AgileKiwi &#187; News</title>
	<atom:link href="http://www.agilekiwi.com/category/other/news/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.agilekiwi.com</link>
	<description>The neglected essentials of software development</description>
	<lastBuildDate>Thu, 08 Jul 2010 09:07:46 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Speaking on Earned Value at NZ Computer Society Conference</title>
		<link>http://www.agilekiwi.com/earnedvalue/speaking-on-earned-value-at-nz-computer-society-conference/</link>
		<comments>http://www.agilekiwi.com/earnedvalue/speaking-on-earned-value-at-nz-computer-society-conference/#comments</comments>
		<pubDate>Fri, 02 Jul 2010 00:43:40 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[Earned Value Management]]></category>
		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://www.agilekiwi.com/?p=294</guid>
		<description><![CDATA[<p>I&#8217;ll be speaking at the New Zealand Computer Society&#8217;s <a href="http://www.innovation.org.nz/">50th Anniversary Conference</a>, on the topic of Earned Value Management.</p>
<p>I&#8217;m looking forward to being part of an interesting conference, and hopefully helping to lift the profile of EVM in New Zealand.</p>
<p><a href="http://www.innovation.org.nz/speakers/john-rusk">Link to presentation abstract</a></p>
<p>( The abstract&#8217;s reference&#8230; <a href="http://www.agilekiwi.com/earnedvalue/speaking-on-earned-value-at-nz-computer-society-conference/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ll be speaking at the New Zealand Computer Society&#8217;s <a href="http://www.innovation.org.nz/">50th Anniversary Conference</a>, on the topic of Earned Value Management.</p>
<p>I&#8217;m looking forward to being part of an interesting conference, and hopefully helping to lift the profile of EVM in New Zealand.</p>
<p><a href="http://www.innovation.org.nz/speakers/john-rusk">Link to presentation abstract</a></p>
<p>( The abstract&#8217;s reference to &#8220;<a href="http://en.wikipedia.org/wiki/Number_8_wire">Number 8 wire</a>&#8221; may be unclear to overseas readers :-)  The phrase simply means &#8220;New Zealand ingenuity&#8221;, in this part of the world.)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/earnedvalue/speaking-on-earned-value-at-nz-computer-society-conference/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Added transcript to People Skills video</title>
		<link>http://www.agilekiwi.com/other/news/added-transcript-to-people-skills-video/</link>
		<comments>http://www.agilekiwi.com/other/news/added-transcript-to-people-skills-video/#comments</comments>
		<pubDate>Fri, 28 May 2010 08:49:37 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://www.agilekiwi.com/?p=266</guid>
		<description><![CDATA[<p>This week&#8217;s <a href="/peopleskills/people-skills-for-nerds-a-summary-video/">&#8220;People Skills for Nerds&#8221; post</a> now includes a written transcript of the talk. (For those who, like me, prefer to read than to watch videos ;-)</p>
]]></description>
			<content:encoded><![CDATA[<p>This week&#8217;s <a href="/peopleskills/people-skills-for-nerds-a-summary-video/">&#8220;People Skills for Nerds&#8221; post</a> now includes a written transcript of the talk. (For those who, like me, prefer to read than to watch videos ;-)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/other/news/added-transcript-to-people-skills-video/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Converting to Wordpress</title>
		<link>http://www.agilekiwi.com/other/news/converting-to-wordpress/</link>
		<comments>http://www.agilekiwi.com/other/news/converting-to-wordpress/#comments</comments>
		<pubDate>Sat, 22 May 2010 09:20:04 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://www.agilekiwi.com/other/news/converting-to-wordpress/</guid>
		<description><![CDATA[<p>Regular visitors may notice the site looks a bit different.  I am transitioning to Wordpress.  Initially, all the old pages will be available both as Wordpress posts and at their old URLs.  I will eventually redirect requests for the old ones to the new URLs instead.</p>
<p>By the way, this&#8230; <a href="http://www.agilekiwi.com/other/news/converting-to-wordpress/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>Regular visitors may notice the site looks a bit different.  I am transitioning to Wordpress.  Initially, all the old pages will be available both as Wordpress posts and at their old URLs.  I will eventually redirect requests for the old ones to the new URLs instead.</p>
<p>By the way, this means commenting finally works properly again.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/other/news/converting-to-wordpress/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Sorry about old comments</title>
		<link>http://www.agilekiwi.com/other/news/sorry-about-old-comments/</link>
		<comments>http://www.agilekiwi.com/other/news/sorry-about-old-comments/#comments</comments>
		<pubDate>Fri, 21 May 2010 06:09:27 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://www.agilekiwi.com/other/news/sorry-about-old-comments/</guid>
		<description><![CDATA[<p>Most old comments, from before the conversion to WordPress, have unfortunately been lost.  (Very sorry!!)  I lost them when Haloscan (who I was using for comments) shut down their service.  As it happens, there weren&#8217;t a large number of comments on any of the pages that used Halscan commenting, possibly&#8230; <a href="http://www.agilekiwi.com/other/news/sorry-about-old-comments/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>Most old comments, from before the conversion to WordPress, have unfortunately been lost.  (Very sorry!!)  I lost them when Haloscan (who I was using for comments) shut down their service.  As it happens, there weren&#8217;t a large number of comments on any of the pages that used Halscan commenting, possibly because it was somewhat less user-friendly.  Commenting should work well now that the site is on WordPress.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/other/news/sorry-about-old-comments/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Agile Roots Presentations Online</title>
		<link>http://www.agilekiwi.com/other/news/agile-roots-presentations-online/</link>
		<comments>http://www.agilekiwi.com/other/news/agile-roots-presentations-online/#comments</comments>
		<pubDate>Tue, 14 Jul 2009 01:40:00 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://localhost/AgileKiwiWordpress/?p=13</guid>
		<description><![CDATA[<p>Presentations from the Agile Roots conference are now online.</p>
<p>My full presentation is <a href="http://agileroots2009.confreaks.com/15-jun-2009-13-00-better-agile-through-stealing-john-rusk.html">here</a>, although sometime I hope to isolate the middle section (on workplace interpersonal skill) so it can be viewed as a stand-alone 15-min presentation.  [<a href="people-skills-for-nerds-a-summary-video">Done</a>] As it stands, the presentation is 30 minutes on <a&#8230; <a href="http://www.agilekiwi.com/other/news/agile-roots-presentations-online/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>Presentations from the Agile Roots conference are now online.</p>
<p>My full presentation is <a href="http://agileroots2009.confreaks.com/15-jun-2009-13-00-better-agile-through-stealing-john-rusk.html">here</a>, although sometime I hope to isolate the middle section (on workplace interpersonal skill) so it can be viewed as a stand-alone 15-min presentation.  [<a href="people-skills-for-nerds-a-summary-video">Done</a>] As it stands, the presentation is 30 minutes on <a href="http://www.agilekiwi.com/2009/06/references-from-my-agile-roots.html">these topics</a>, with 5 mins of questions at the end.</p>
<p>Virtually <a href="http://agileroots2009.confreaks.com/">all the presentations</a> are up now.  If you&#8217;re wondering where to start, I can recommend Kay Johansen&#8217;s excellent session on Agile Testing, which I learnt a lot from; and Jeff Patton&#8217;s two-part workshop on story mapping, because story mapping is such an important idea.  (And Jeff made it so interesting, it didn&#8217;t seem like it was 3 hours long.)  I thoroughly enjoyed the whole conference, and can recommend every session that I attended. Now that the videos are up, I&#8217;m looking forward to seeing the ones that I missed.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/other/news/agile-roots-presentations-online/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Speaking at Agile Roots</title>
		<link>http://www.agilekiwi.com/other/news/speaking-at-agile-roots/</link>
		<comments>http://www.agilekiwi.com/other/news/speaking-at-agile-roots/#comments</comments>
		<pubDate>Fri, 22 May 2009 00:56:00 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://localhost/AgileKiwiWordpress/?p=11</guid>
		<description><![CDATA[<p>The <a href="http://www.agileroots.com/">Agile Roots conference</a> is on, next month in Salt Lake City.  If you haven&#8217;t checked out the conference web site, hurry <a href="http://www.agileroots.com/">over there</a> now!</p>
<p>If you like this blog (and presumably you do, since you&#8217;re reading it ;-)  I think you&#8217;ll love the conference.  It&#8217;s a new&#8230; <a href="http://www.agilekiwi.com/other/news/speaking-at-agile-roots/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://www.agileroots.com/">Agile Roots conference</a> is on, next month in Salt Lake City.  If you haven&#8217;t checked out the conference web site, hurry <a href="http://www.agileroots.com/">over there</a> now!</p>
<p>If you like this blog (and presumably you do, since you&#8217;re reading it ;-)  I think you&#8217;ll love the conference.  It&#8217;s a new and different kind of agile conference, focussing back on the core principles of the agile movement.  In one respect, it&#8217;s like a giant retrospective for the agile movement as a whole &#8212; but it&#8217;s also much more than that.  For details, see <a href="http://www.agileroots.com/what-why">this page</a> on the conference blog.  I strongly encourage you to attend if you possibly can.</p>
<p>By the way, I&#8217;m presenting a session with the deliberately strange title of &#8220;Better Agile Through Stealing&#8221;.  (Thanks to <a href="http://www.nichesoftware.co.nz/">Bevan Arps</a> for the idea for the title.)  The talk is consistent with the material on this site, but most of it is brand new material which I haven&#8217;t blogged about yet.</p>
<p>Hopefully, I&#8217;ll see you there!</p>
<p><a title="I'm speaking at Agile Roots 2009!" href="http://www.agileroots.com/"><br />
<img title="agilerootsspeaker" src="http://www.agileroots.com/wp-content/uploads/2009/04/agilerootsspeaker.png" alt="agilerootsspeaker" width="250" height="200" /><br />
</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/other/news/speaking-at-agile-roots/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rich Clients</title>
		<link>http://www.agilekiwi.com/other/news/rich-clients/</link>
		<comments>http://www.agilekiwi.com/other/news/rich-clients/#comments</comments>
		<pubDate>Mon, 26 Apr 2004 22:40:00 +0000</pubDate>
		<dc:creator>John Rusk</dc:creator>
				<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://dell-pc/AgileKiwiWordpress/other/rich-clients/</guid>
		<description><![CDATA[<p><em>[Note: this post is now over 6 years out of date.  While it’s key premise is still relevant (and correct IMHO) some of the links and technical details are now out of date.]</em></p>
<p>Why does everyone want web applications?  What happened to old fashioned applications, so-called &#8220;rich clients&#8221;?  (Applications that&#8230; <a href="http://www.agilekiwi.com/other/news/rich-clients/" class="read_more">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p><em>[Note: this post is now over 6 years out of date.  While it’s key premise is still relevant (and correct IMHO) some of the links and technical details are now out of date.]</em></p>
<p>Why does everyone want web applications?  What happened to old fashioned applications, so-called &#8220;rich clients&#8221;?  (Applications that is. Rich <em>customers</em> are still very popular, when you can find them :-)</p>
<p>I use the term rich client to refer to applications where an exe file runs on the user&#8217;s machine.  Other terms such as &#8220;smart client&#8221; mean (more-or-less) the same thing.  Rich clients are seldom stand-alone.  They usually connect to a middle tier using Web Services, .NET Remoting, or a similar technology.</p>
<p><span id="more-101"></span></p>
<p>Right now, web clients are the most popular option.  This article explains why rich clients ought to make a comeback.  The article covers three things: why rich clients have fallen out of favour, how .NET addresses those underlying problems, and some rules of thumb for which type of client to use.</p>
<h2>Why Rich Clients Became Unfashionable</h2>
<p>Deployment is the big problem with rich clients.  The exe file must reside on the user&#8217;s machine.  It is expensive and time-consuming to install software on a large number of machines, and to make sure it stays up to date.  This is even more difficult with applications that rely on DLLs and COM objects (as most rich clients did before .NET).</p>
<p>As an industry, we have chosen to solve the deployment problem by <strong>not</strong> deploying software.  Instead, we write web applications with HTML user interfaces.</p>
<p>Of course the dot-com boom helped to boost the popularity of this approach.  The boom has gone, but the industry&#8217;s mindshare has stayed with web interfaces.</p>
<h2>.NET and Deployment</h2>
<p>With the .NET framework, many of the old deployment problems are gone.  The only downside is  the intial installation of the .NET framework on each user&#8217;s machine.  This is not without its <a href="http://www.joelonsoftware.com/articles/PleaseLinker.html"><span style="text-decoration: underline;">problems</span></a>, but since they have been <a href="http://weblogs.asp.net/jasonz/archive/2004/01/31/65653.aspx"><span style="text-decoration: underline;">discussed extensively</span></a> elsewhere, let&#8217;s move on and look at the deployment of rich clients under .NET.</p>
<p><em>[Update 15 Dec 06: Microsoft Vista includes the .NET framework, so as Vista gradually takes over most of the world's desktops ;-) the framework deployment problem will diminish further.] </em><img src="http://www.agilekiwi.com/11cca170.jpg" border="0" hspace="30" vspace="60" width="202" height="279" align="right" /></p>
<p>After the framework is installed, there is a subtle change in the behaviour of Internet Explorer.  If you  click on a link to a .NET executable, Internet Explorer will just download it and run it.  No questions asked, no dialog boxes, &#8220;no nothing&#8221;.  It just runs.</p>
<p>If you&#8217;re using Internet Explorer, and if the .NET runtime (version 1.1) is installed on your PC, you can <a href="http://www.agilekiwi.com/AutoDownloadDemo.exe"><span style="text-decoration: underline;">try it right now</span></a>.</p>
<p>There are two special things happening here, two things that are different from clicking on a hyperlink to an &#8220;old fashioned&#8221; exe file:</p>
<ul>
<li>There is no dialog asking if you want to download and run the program.  This is OK because of the strict security checks enforced by .NET.  <em>[See note at bottom of page if you </em>did <em>get unwanted prompts.]</em></li>
<li>The application is cached in a special place for downloaded .NET applications.  Next time you click the link, Internet Explorer checks the web server to see if the cached version is still up to date.  If it is, the cached version is used directly.</li>
</ul>
<p>Note: This style of deployment is technically known as an &#8220;HREF EXE&#8221;.</p>
<h3>Security</h3>
<p>Applications downloaded like this are subject to very strict security restrictions.  So strict, that they cannot actually <em>do </em>very much!  For instance, they can read files from your machine, but <em>only</em> when those files are chosen by you in the File Open dialog box.  The .NET framework ensures that they cannot open any other files &#8220;behind your back&#8221;.  They cannot <em>write </em>files to your machine at all.</p>
<p>Security measures like these make downloaded .NET applications very safe, but also very limited.  If you want to deploy a more powerful application in this way, you need the user to perform a one-off manual &#8220;setup&#8221; step.  This simple manual operation tells the computer to increase its level of trust for your application.  Basically, it&#8217;s a way for the user to say, &#8220;See this application here, grant it these extra permissions&#8221;.</p>
<p>I won&#8217;t cover the details here.  Instead I&#8217;ll refer you to an <a href="http://msdn.microsoft.com/smartclient/understanding/columns/wonders/default.aspx?pull=/library/en-us/dnforms/html/winforms11122002.asp"><span style="text-decoration: underline;">article on Microsoft&#8217;s site</span></a>, written by Chris Sells.  By following the approach advocated in that article, it is possible to deploy powerful rich clients securely and easily.</p>
<h2>When To Use Rich Clients</h2>
<p>Rich clients have several advantages over web clients.  Rich clients:</p>
<ul>
<li>Can support more features</li>
<li>Provide a more responsive &#8220;user experience&#8221;</li>
<li>Tend to be faster and easier to develop</li>
</ul>
<p>It is worth noting that rich clients are not in any way a &#8220;worse&#8221; architecture than web clients.  It is still possible (and advisable!) to separate the GUI, business logic and data access.  Typically the rich client will handle the user interface and will communicate with a middle tier using Web Services or <a href="http://www.ingorammer.com/RemotingFAQ/RemotingUseCases.html" class="broken_link"><span style="text-decoration: underline;">.NET Remoting</span></a>.</p>
<p>Articles on Microsoft&#8217;s web site describe the advantages well:</p>
<blockquote><p>&#8220;[Web] user interfaces are, by nature, primitive to use and difficult to implement and maintain. &#8230; You would have thought that long ago people would have given up building HTML applications, at least for situations like the corporate intranet where the client environment is tightly controlled, but so far, HTML still has the mindshare.&#8221;  &#8211; from an article on <a href="http://msdn.microsoft.com/msdnmag/issues/02/07/NetSmartClients/" class="broken_link"><span style="text-decoration: underline;">.NET Zero Deployment</span></a></p></blockquote>
<blockquote><p>&#8220;Everyone seems to be fixated on Web applications. Web applications are a great way to get the largest reach, but for more than occasional use<br />
, Web applications are a poor imitation of what&#8217;s available in a richer client that Windows Forms enables.</p>
<p>&#8230;</p>
<p>Windows Forms [i.e. rich] applications tend to be much easier to develop.&#8221;<br />
- from an article on <a href="http://msdn.microsoft.com/vcsharp/using/columns/wonders/default.aspx?pull=/library/en-us/dnforms/html/winforms05202002.asp"><span style="text-decoration: underline;">using rich clients for easier state management</span></a></p></blockquote>
<p>In summary, good reasons for choosing a <em>web client </em>include:</p>
<ul>
<li>You need the application to run all virtually all client platforms (e.g. it is available to the public over the internet.)</li>
<li>Users will use the application infrequently (and therefore don&#8217;t expect to download <em>anything</em>)</li>
<li>The user interface is simple</li>
<li>Users do not have the .NET runtime (e.g. dial-up modem users in particular, since even if you provided an installer for the .NET runtime, it would still be a 22 MB download.)</li>
</ul>
<p>A <em>rich client </em>may be the better option if:</p>
<ul>
<li>You must minimise the time and cost of development</li>
<li>Users use the application frequently (and therefore will appreciate the snappier performance and greater features of a rich client)</li>
<li>The user interface includes features that are difficult to create in HTML</li>
<li>Users have, or can easily get, the .NET runtime.  E.g. they are on a corporate intranet where the runtime can be &#8220;pushed&#8221; onto each workstation, or simply installed from a network drive.</li>
</ul>
<hr /><a name="update"></a></p>
<p>Update, 27 March 2004:  There&#8217;s a <a href="http://msdn.microsoft.com/netframework/default.aspx?pull=/library/en-us/dnreal/html/realworld03232004.asp"><span style="text-decoration: underline;">new article</span></a> on this subject on MSDN.  It includes comprehensive discussion of the business case for rich clients (with a little Microsoft marketing mixed in :-)  It doesn&#8217;t really cover details of web deployment under .NET 1.x, although it does mention &#8220;ClickOnce&#8221;.  When MS release the <a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwinforms/html/clickonce.asp"><span style="text-decoration: underline;">ClickOnce</span></a> technology, in the <a href="http://msdn.microsoft.com/vstudio/productinfo/roadmap.aspx"><span style="text-decoration: underline;">2005</span></a> &#8220;<a href="http://msdn.microsoft.com/vstudio/whidbey"><span style="text-decoration: underline;">Whidbey</span></a>&#8221; release of Visual Studio .NET, deploying rich clients will become even easier.</p>
<p>Update, 2 April 2005: Two more useful links from Microsoft, which offer alternative ways to grant extra permissions to your application.  <a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dv_vstechart/html/vbtchNo-TouchDeploymentInNETFramework.asp"><span style="text-decoration: underline;">This one</span></a> uses the caspol command line tool; while <a href="http://msdn.microsoft.com/library/en-us/dnnetsec/html/entsecpoladmin.asp"><span style="text-decoration: underline;">this one</span></a> packages security information in MSI files.</p>
<p>Update, 11 Mar 06: For some reason (presumably some &#8220;Microsoft Security Updates&#8221; which I&#8217;ve applied) I now get some prompts when opening the sample program (above) on my home PC. I don&#8217;t know why. I&#8217;m sure ClickOnce avoids them &#8211; although it does have a different dialog box of its own.</p>
<p>Update, 21 Feb 07: Here&#8217;s the answer.  Web deployment of .NET 1.1 apps is <a href="http://www.dotnetjunkies.com/WebLog/nenoloje/archive/2005/11/14/133742.aspx"><span style="text-decoration: underline;">broken by installing .NET 2.0 on the client machine</span></a>.  If you have .NET 2.0 on your machine then you always get a prompt, about opening it, rather than the seamless opening without prompts which I describe above.  Note that this affects internet apps, such as the sample on this page, but does not affect intranet (internal, coroporate) apps -  which is where I expect this technology is generally used.  Note that this only affects the old style of .NET 1.1 web-deployed applications.  Naturally the new .NET 2.0 style, ClickOnce, works fine under 2.0!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.agilekiwi.com/other/news/rich-clients/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
