<?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/"
	xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
	xmlns:media="http://search.yahoo.com/mrss/"
>

<channel>
	<title>Software As She's Developed &#187; Demos</title>
	<atom:link href="http://softwareas.com/tag/demos/feed" rel="self" type="application/rss+xml" />
	<link>http://softwareas.com</link>
	<description>Mahemoff's Podcast/Blog - Web, Programming, Usability from the Author of 'Ajax Design Patterns' (AjaxPatterns.org)</description>
	<lastBuildDate>Mon, 26 Jul 2010 16:52:27 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<!-- podcast_generator="podPress/8.8" - maintenance_release="8.8.4" -->
		<copyright>Copyright &amp;#xA9; Software As She's Developed 2010 </copyright>
		<managingEditor>michael@mahemoff.com (Software As She's Developed)</managingEditor>
		<webMaster>michael@mahemoff.com (Software As She's Developed)</webMaster>
		<category>posts</category>
		<ttl>1440</ttl>
		<itunes:keywords></itunes:keywords>
		<itunes:subtitle></itunes:subtitle>
		<itunes:summary>Mahemoff's Podcast/Blog - Web, Programming, Usability from the Author of 'Ajax Design Patterns' (AjaxPatterns.org)</itunes:summary>
		<itunes:author>Software As She's Developed</itunes:author>
		<itunes:category text="Society &amp; Culture"/>
		<itunes:owner>
			<itunes:name>Software As She's Developed</itunes:name>
			<itunes:email>michael@mahemoff.com</itunes:email>
		</itunes:owner>
		<itunes:block>No</itunes:block>
		<itunes:explicit>no</itunes:explicit>
		<itunes:image href="http://softwareas.com/wp-content/plugins/podpress/images/powered_by_podpress_large.jpg" />
		<image>
			<url>http://softwareas.com/wp-content/plugins/podpress/images/powered_by_podpress.jpg</url>
			<title>Software As She's Developed</title>
			<link>http://softwareas.com</link>
			<width>144</width>
			<height>144</height>
		</image>
		<item>
		<title>Ajax Patterns Tutorial &#8211; Updated Docs</title>
		<link>http://softwareas.com/ajax-patterns-tutorial-updated-docs</link>
		<comments>http://softwareas.com/ajax-patterns-tutorial-updated-docs#comments</comments>
		<pubDate>Wed, 24 May 2006 16:26:26 +0000</pubDate>
		<dc:creator>mahemoff</dc:creator>
				<category><![CDATA[SoftwareDev]]></category>
		<category><![CDATA[AjaxPatterns]]></category>
		<category><![CDATA[Demos]]></category>
		<category><![CDATA[Links]]></category>
		<category><![CDATA[Tutorial]]></category>

		<guid isPermaLink="false">http://www.softwareas.com/ajax-patterns-tutorial-updated-docs</guid>
		<description><![CDATA[As just mentioned, I&#8217;ve posted code for the AjaxPatterns demos and the tutorial. You can run the tutorial here. The interesting thing here is it&#8217;s all designed to be hand-coded, so you can see how an Ajax app can easily be built up from first principles, good for learning. The final demo then uses an [...]]]></description>
			<content:encoded><![CDATA[<p>As just mentioned, I&#8217;ve <a href="http://www.softwareas.com/ajax-patterns-code-now-available">posted code for the AjaxPatterns demos and the tutorial</a>. You can run the <a href="http://ajaxify.com/tutorial">tutorial here</a>. The interesting thing here is it&#8217;s all designed to be hand-coded, so you can see how an Ajax app can easily be built up from first principles, good for learning. The final demo then uses an external library, to make the point that you don&#8217;t need to hand-code in the real world.</p>

<p><a href="http://www.ajaxify.com/tutorial/ajaxagram/ajaxified/richer/performant/library/"><img src="http://img254.imageshack.us/img254/7269/ajaxagramfadein3fj.png"/></a></p>

<p>The <a href="http://ajaxify.com/tutorial/">Ajaxagram demo</a>, with its various <a href="http://www.ajaxify.com/tutorial/ajaxagram/ajaxified/richer/performant/library/">refactorings</a>, is a useful way to introduce the patterns, and I covered it in Ajax Experience presentation. I&#8217;ve edited the overview page to help explain what value each refactoring is adding:</p>

<blockquote>

  <p><a href="ajaxagram/">Ajaxagram: A Conventional Web App</a><br /> No Ajax yet.</p>

  <p><a href="ajaxagram/ajaxified/">Ajaxifying Ajaxagram</a><br /> Ajax version -
  runs in a single page without refresh. Basically the same user exeperience as
  before, but better for your resume and ready for the nice Ajax enhancements to
  come. </p>

  <p><a href="ajaxagram/ajaxified/richer/">Enhancing Functionality and
  Usability</a><br /> Now we&#8217;re actually seeing the benefits of Ajax. Three
  Functionality and Usability patterns are introduced to enhance the user
  experience &#8211; <a href="http://ajaxpatterns.org/Live_Search">Live Search</a>,
  <a href="http://ajaxpatterns.org/Progress_Indicator">Progress Indicator</a>,
  <a href="http://ajaxpatterns.org/One-Second_Spotlight">One-Second
  Spotlight</a>.
  </p>

  <p><a href="ajaxagram/ajaxified/richer/performant/">Streamlining
  Performance</a><br /> Ooops, although it looks prettier and feels smoother, our app
  now has some technical issues. That&#8217;s a little side effect of most UI
  enhancements. Firstly, there&#8217;s a bug &#8211; if you type too quickly, you&#8217;ll see
  results for more than one search appear. Secondly, it&#8217;s too slow &#8211; we&#8217;re
  going back to the server every single keystroke. The Ajax patterns include
  Programming patterns to complement the Functionality and Usability
  patterns, and in this case, we remedy the situation with <a href="http://ajaxpatterns.org/Submission_Throttling">Submission
  Throttling</a>.

  </p><p><a href="ajaxagram/ajaxified/richer/performant/library/">Using An External
  Library</a><br /> This final refactoring appears the same to users, but underneath
  the covers, we&#8217;ve introduced the <a href="http://ajaxify.com/run/testAjaxCaller/">ajaxCaller</a> library to
  handle remoting. The point is to illustrate that Ajax Patterns don&#8217;t have to
  be hand-coded &#8211; many are easier to introduce with appropriate <a href="http://ajaxpatterns.org/Ajax-Frameworks">Ajax Frameworks and
  Libraries</a>. There&#8217;s no shame in reusing reliable third-party code &#8211; it&#8217;s
  something to be proud of!</p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://softwareas.com/ajax-patterns-tutorial-updated-docs/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ajax Patterns Code Now Available</title>
		<link>http://softwareas.com/ajax-patterns-code-now-available</link>
		<comments>http://softwareas.com/ajax-patterns-code-now-available#comments</comments>
		<pubDate>Wed, 24 May 2006 15:33:06 +0000</pubDate>
		<dc:creator>mahemoff</dc:creator>
				<category><![CDATA[SoftwareDev]]></category>
		<category><![CDATA[AjaxPatterns]]></category>
		<category><![CDATA[Demos]]></category>
		<category><![CDATA[Links]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.softwareas.com/ajax-patterns-code-now-available</guid>
		<description><![CDATA[All code for the Ajax Patterns demos is now available. This is the code used as examples for many of the patterns at AjaxPatterns.org, as well as the Pattern-Led Tutorial that forms Chapter 2 of the &#8220;Ajax Design Patterns&#8221; book to be published next month.

Download the code &#8211; ajaxdemos.zip.

Read the installation notes. Basically, you need [...]]]></description>
			<content:encoded><![CDATA[<p><strong>All code for <a href="http://ajaxify.com/run/">the Ajax Patterns demos</a> is now available.</strong> This is the code used as <a href="http://ajaxify.com/run/">examples for many of the patterns</a> at <a href="http://ajaxpatterns.org">AjaxPatterns.org</a>, as well as the <a href="http://ajaxify.com/tutorial/">Pattern-Led Tutorial</a> that forms Chapter 2 of the &#8220;Ajax Design Patterns&#8221; book to be published next month.</p>

<p><a href="http://ajaxify.com/ajaxdemos.zip">Download the code &#8211; ajaxdemos.zip</a>.</p>

<p><a href="http://ajaxify.com/INSTALL.txt">Read the installation notes</a>. Basically, you need PHP and Apache, and optionally MySQL is required for the wiki demos. The install should be pretty basic, as the notes indicate:</p>

<p><pre>
* Unzip the package to a temporary location and copy
  run/, tutorial/, and records/ to the apache document root.
  Assuming the doc root is /apache/document/root:</pre></p>

<pre><code>cp run tutorial records /apache/document/root.
</code></pre>

<p>(Alternatively, if you have sufficient access, set up a new
   virtual host in apache's httpd.conf and point it to the root
   of the unzipped directory, ajaxdemos/).</p>

<ul>
<li><p>Ensure the server can write to (the initially empty) records/
directory. The easiest (though not the most secure) way is:</p>

<p>chmod 777 apache/document/root/records</p></li>
<li><p>Open up run/.htaccess and follow instructions there to set
the library path.</p></li>
<li><p>Finished!
</p></li>
</ul>

<p>You might wonder why the server-side uses PHP, when I&#8217;m more of a Java+Ruby kind of guy.  Realistically, the choice was Java versus PHP due to popularity. PHP was chosen because the code needs to be easy to install, and LAMP is a lot more ubiquitous and easier to work with than integrating Java+Tomcat+MySQL together. I understand Java is at least shipping with Debian at some point, but right now, there&#8217;s few things easier than getting a LAMP setup running, especially with all the one-click installers around (http://www.apachefriends.org/en/xampp.html).</p>

<p>From a development perspective, I also found PHP more productive for the experimental style of development that went into the Ajax demos. The usual drivers for Java &#8211; maintainability, security, etc. &#8211; weren&#8217;t a factor. PHP also has the sort-of-merit of being the Switzerland of server-side languages. Use Perl, Java, C#, or Rails, and you&#8217;re going to be flamed loudly from some contingent. But use PHP and most non-PHP coders will say something about it would have been nice if you&#8217;d used Java/etc but I can see your point and shrug their shoulders a bit. As it happens, only a few patterns (need to) delve into server-side details, so the only real impact of using PHP is if people want to hack the code or look further into the details of implementing a pattern.</p>

<p><a href="http://ajaxify.com/run/assistiveSearch/"><img src="http://img513.imageshack.us/img513/3884/assistive8jo.png"/></a></p>
]]></content:encoded>
			<wfw:commentRss>http://softwareas.com/ajax-patterns-code-now-available/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Ajax Demos</title>
		<link>http://softwareas.com/new-ajax-demos</link>
		<comments>http://softwareas.com/new-ajax-demos#comments</comments>
		<pubDate>Fri, 16 Sep 2005 19:37:26 +0000</pubDate>
		<dc:creator>mahemoff</dc:creator>
				<category><![CDATA[HumansAndTech]]></category>
		<category><![CDATA[Links]]></category>
		<category><![CDATA[SoftwareDev]]></category>
		<category><![CDATA[AjaxPatterns]]></category>
		<category><![CDATA[Demos]]></category>
		<category><![CDATA[DHTML]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[JSON]]></category>
		<category><![CDATA[Patterns]]></category>
		<category><![CDATA[REST]]></category>
		<category><![CDATA[RPC]]></category>
		<category><![CDATA[Web2.0]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://www.softwareas.com/new-ajax-demos</guid>
		<description><![CDATA[Further to the previous post on new Ajax programming patterns, it&#8217;s also worth noting there&#8217;s a new bunch of corresponding online Ajax demos too. Being programming patterns, they tend to be &#8220;pure refactorings&#8221; rather than enhancements, thus the user experience is mostly the same &#8211; you have to look under the covers to see what&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>Further to the <a href="http://www.softwareas.com/18-new-ajax-programming-patterns">previous post on new Ajax programming patterns</a>, it&#8217;s also worth noting there&#8217;s a new bunch of corresponding <a href="http://ajaxify.com/run">online Ajax demos</a> too. Being programming patterns, they tend to be &#8220;pure refactorings&#8221; rather than enhancements, thus the user experience is mostly the same &#8211; you have to look under the covers to see what&#8217;s changed. The demos are mentioned in individual patterns, but here&#8217;s a sampling:</p>

<ul>
<li>The wiki has a bunch of <a href="http://www.ajaxify.com/run/wiki/timeout/">timeout-related refactorings</a>. These refactorings <em>are</em> user-visible. (They&#8217;re not actually part of the programming patterns, but they were recently added.)</li>
<li>2 other wiki refactorings involve <a href="http://www.ajaxify.com/run/wiki/separateJS/">On-Demand Javascript</a> . (No UI change.)</li>
<li>A <a href="http://www.ajaxify.com/run/json/">JSON playground</a>.</li>
<li>The <a href="http://www.ajaxify.com/run/portal/drilldown/">Portal Drilldown Demo</a> has been refactored to render with XSLT and browser templating tools. (No UI change.)</li>
<li>A couple of refactorings added to demonstrate <a href="http://www.ajaxify.com/run/shop/rest/">REST</a> (broken right now, probably due to a PHP config issue) and <a href="http://www.ajaxify.com/run/shop/rpc/">RPC</a> on the Ajax Shop demo. (No UI change.)</li>
</ul>

<p>As with all the demos, they&#8217;re tested on FF and IE6, please let me know if anything breaks.</p>
]]></content:encoded>
			<wfw:commentRss>http://softwareas.com/new-ajax-demos/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
