<?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"
	>

<channel>
	<title>InquiryLabs &#187; Software Engineering</title>
	<atom:link href="http://inquirylabs.com/blog2009/category/software-engineering/feed/" rel="self" type="application/rss+xml" />
	<link>http://inquirylabs.com/blog2009</link>
	<description>Politics, Programming and Possibilities</description>
	<pubDate>Sat, 24 Apr 2010 01:12:29 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.1</generator>
	<language>en</language>
			<item>
		<title>Stanley Williams and the Memristor</title>
		<link>http://inquirylabs.com/blog2009/2010/04/23/stanley-williams-and-the-memristor/</link>
		<comments>http://inquirylabs.com/blog2009/2010/04/23/stanley-williams-and-the-memristor/#comments</comments>
		<pubDate>Sat, 24 Apr 2010 01:12:29 +0000</pubDate>
		<dc:creator>Duane Johnson</dc:creator>
		
		<category><![CDATA[Science]]></category>

		<category><![CDATA[Software Engineering]]></category>

		<category><![CDATA[memristor]]></category>

		<category><![CDATA[singularity]]></category>

		<guid isPermaLink="false">http://inquirylabs.com/blog2009/?p=582</guid>
		<description><![CDATA[Ever since the discovery of the memristor was announced at HP labs last year, I&#8217;ve been fascinated by its story and its promises.  Now, its inventor Stanley Williams has given a presentation (available on YouTube) that goes in to some of the mathematical details and further predictions that he has for the device.
It&#8217;s a [...]]]></description>
			<content:encoded><![CDATA[<p>Ever since the discovery of the memristor was announced at HP labs last year, I&#8217;ve been fascinated by its story and its promises.  Now, its inventor Stanley Williams has given a presentation (available on <a href="http://www.youtube.com/watch?v=bKGhvKyjgLY">YouTube</a>) that goes in to some of the mathematical details and further predictions that he has for the device.</p>
<p>It&#8217;s a 45 minute presentation, but if you&#8217;re interested in the future of computing, I think you&#8217;ll enjoy it.  I was impressed with the foresight of Leon Chua who in the late 1960s and early 70s discovered via mathematical exercise the &#8220;missing circuit element&#8221; that should relate flux to charge.  If I were him, I think I&#8217;d have lost a little confidence in my work if my predictions hadn&#8217;t panned out after 40 years.</p>
<p>In addition to the neat math behind it (the memristor is the only fundamental circuit component that is time-variant, and therefore cannot be described in a single equality relationship), Williams makes some stunning claims about the potential of the memristor.  For example, in strange agreement with <a href="http://en.wikipedia.org/wiki/Predictions_made_by_Raymond_Kurzweil">Ray Kurzweil&#8217;s predictions</a>, Williams shows a 3D cube of memristors on his slides.  He predicts that we will soon have memory storage devices that last for &#8220;geologic time&#8221; (i.e. thousands or millions of years) but that can react at nanosecond switching speeds.  What&#8217;s more, because the memory is passive (no energy required to sustain) the memristor is perfectly suited to low-power and low-heat systems: in other words, it just makes sense to stack them on top of each other.  Williams calculates a theoretical limit of 1 petabit of storage per cubic centimeter (I think he said square centimeter in the presentation, but I assume he misspoke, since his slide shows a 3D cube?)</p>
<p>Another exciting part of the presentation comes near the end where Williams shows how the memristor may play a role in the next 10 years of computing achievements.  He highlights the work of the HP photonics lab and claims that data transfer will soon be achieved through light (photons) for distances greater than a micrometer.  With the remarkable ability of memristors to be both memory and logic gates (they naturally form the &#8220;implication&#8221; logic function which Bertrand Russell showed could represent logical operations in the most compact form), Williams envisions a computing device with hundreds or thousands of cores in a 3D matrix, with photonic message passing between devices.  He estimates that in 10 years, the combination of these two technologies will increase our computation-per-dollar by 100 times.</p>
<p>And last but not least was the incredible insight, this time once again from Leon Chua, that the memristor behaves much like a human neuron.  The HP lab that invented the memristor is already working on a prototype chip that will attempt to emulate the neurons in a brain, much like the Bluegene-L system has achieved.  As Williams pointed out in his presentation, the key here is emulation, not simulation.  Up until now, we have only been able to simulate the brain with our computing technology.  What will it be like to properly emulate it?</p>
]]></content:encoded>
			<wfw:commentRss>http://inquirylabs.com/blog2009/2010/04/23/stanley-williams-and-the-memristor/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Haskell Pearls</title>
		<link>http://inquirylabs.com/blog2009/2009/03/18/haskell-pearls/</link>
		<comments>http://inquirylabs.com/blog2009/2009/03/18/haskell-pearls/#comments</comments>
		<pubDate>Wed, 18 Mar 2009 23:07:36 +0000</pubDate>
		<dc:creator>Duane Johnson</dc:creator>
		
		<category><![CDATA[Software Engineering]]></category>

		<category><![CDATA[haskell]]></category>

		<guid isPermaLink="false">http://inquirylabs.com/blog2009/2009/03/18/haskell-pearls/</guid>
		<description><![CDATA[I&#8217;ve been lurking on the&#160;Haskell mailing list&#160;recently, and occasionally asking a question or two. &#160;I suppose you wouldn&#8217;t be surprised to know that I&#8217;ve found a treasure-trove of Haskell-related information and resources that I hadn&#8217;t been aware of. &#160;Really though, the Haskell community has created&#160;quite a rich store of documentation&#160;for itself and others, perhaps more [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been lurking on the&nbsp;<a href="http://www.haskell.org/haskellwiki/Mailing_Lists">Haskell mailing list</a>&nbsp;recently, and occasionally asking a question or two. &nbsp;I suppose you wouldn&#8217;t be surprised to know that I&#8217;ve found a treasure-trove of Haskell-related information and resources that I hadn&#8217;t been aware of. &nbsp;Really though, the Haskell community has created&nbsp;quite a rich store of documentation&nbsp;for itself and others, perhaps more than I&#8217;ve seen in any other community (which is not to say that other communities do a poor job). &nbsp;Here I&#8217;ve compiled a short list of these new pearls I&#8217;ve learned of, along with any other links that I&#8217;ve found useful:
<div></div>
<div>1. Twin search engines&nbsp;<a href="http://haskell.org/hoogle/">Hoogle</a>&nbsp;and&nbsp;<a href="http://holumbus.fh-wedel.de/hayoo/hayoo.html">Hayoo</a>. &nbsp;Note that you can search for type signatures as well as functions themselves. &nbsp;Try searching for &#8220;<a href="http://haskell.org/hoogle/?hoogle=(a+-%253E+Bool)+-%253E+%5Ba%5D+-%253E+%5Ba%5D">(a -&gt; Bool) -&gt; [a] -&gt; [a]</a>&#8221; in Hoogle. &nbsp;Hayoo covers all of the packages on hackage, while Hoogle seems to be limited to the base packages.</div>
<div></div>
<div>2. A&nbsp;<a href="http://www.haskell.org/communities/">remarkable summary</a>&nbsp;of &#8220;who and what&#8221; is out there in the Haskell community. &nbsp;The&nbsp;<a href="http://www.haskell.org/communities/11-2008/report.pdf">PDF is here</a>.</div>
<div></div>
<div>3. The Glasgow Haskell Compiler (GHC)&nbsp;<a href="http://www.haskell.org/ghc/docs/latest/html/users_guide/index.html">manual</a>.</div>
<div></div>
<div>4. A (free) quarterly journal called the&nbsp;<a href="http://www.haskell.org/haskellwiki/The_Monad.Reader/Previous_issues">Monad.Reader</a>&nbsp;that covers topics for beginners to experts.</div>
<div></div>
<div>5. &#8220;<a href="http://donsbot.wordpress.com/2009/03/16/visualising-the-haskell-universe/">Visualizing the Haskell Universe</a>&#8221; is a graph of all of the available (free) packages out there. &nbsp;A huge&nbsp;<a href="http://code.haskell.org/~dons/images/svg/hackage-fdp.svg">SVG image is here</a>.</div>
<div></div>
<div>6. The&nbsp;<a href="http://www.haskell.org/onlinereport/">Haskell 98 Language Report</a>&nbsp;which I&nbsp;<a href="http://inquirylabs.com/blog2009/2008/07/17/a-glimmer-of-monadic-hope/">wrote about</a>&nbsp;last July has many answers to language-related questions.</div>
<p style="font-size: 10px;"> <a href="http://posterous.com">Posted via email</a>  from <a href="http://canadaduane.posterous.com/haskell-pearls">Duane&#8217;s Quick Posts</a> </p>
<p><b>Corrected:</b> Example type search (thanks bonus)</p>
]]></content:encoded>
			<wfw:commentRss>http://inquirylabs.com/blog2009/2009/03/18/haskell-pearls/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Ruby Conf &#8216;09</title>
		<link>http://inquirylabs.com/blog2009/2009/03/18/ruby-conf-09/</link>
		<comments>http://inquirylabs.com/blog2009/2009/03/18/ruby-conf-09/#comments</comments>
		<pubDate>Wed, 18 Mar 2009 23:06:48 +0000</pubDate>
		<dc:creator>Duane Johnson</dc:creator>
		
		<category><![CDATA[Software Engineering]]></category>

		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://inquirylabs.com/blog2009/2009/03/18/ruby-conf-09/</guid>
		<description><![CDATA[The Mountain West Ruby Conference was a smash! &#160;We covered a wide range of topics that really made me pleased to be a part of the community (at least in attendance!) &#160;Some of my favorite presentations were Daniel Philpott&#8217;s &#8220;Tiger Team&#8221; and Jon Crosby&#8217;s introduction to Middleware (aka Rack). &#160;It was also really cool to [...]]]></description>
			<content:encoded><![CDATA[<p>The Mountain West Ruby Conference was a smash! &nbsp;We covered a wide range of topics that really made me pleased to be a part of the community (at least in attendance!) &nbsp;Some of my favorite presentations were Daniel Philpott&#8217;s &#8220;Tiger Team&#8221; and Jon Crosby&#8217;s introduction to Middleware (aka Rack). &nbsp;It was also really cool to see James Britt&#8217;s &#8220;Wii&#8221; link-up and hear him play some wild MIDI instruments on his &#8220;air wand&#8221;. &nbsp;I&#8217;m sure he&#8217;ll be tuning it in the near future <img src='http://inquirylabs.com/blog2009/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />
<div></div>
<div>Oh, and if those presentations weren&#8217;t enough to make the conference worthwhile (they were!) I also discovered that everyone was Twittering there. &nbsp;So I guess I know people who twitter now <img src='http://inquirylabs.com/blog2009/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> &nbsp;I found out about&nbsp;<a href="http://twitterfall.com/%2523mwrc">twitterfall.com</a>&nbsp;which was a great way to keep &#8220;up to date&#8221; on all things #mwrc.</div>
<div></div>
<div>I haven&#8217;t had a chance to look yet, but from what I&#8217;ve heard the conference will be available on video at&nbsp;<a href="http://mwrc2009.confreaks.com/">confreaks</a>.</div>
<p style="font-size: 10px;"> <a href="http://posterous.com">Posted via email</a>  from <a href="http://canadaduane.posterous.com/ruby-conf-09">Duane&#8217;s Quick Posts</a> </p>
]]></content:encoded>
			<wfw:commentRss>http://inquirylabs.com/blog2009/2009/03/18/ruby-conf-09/feed/</wfw:commentRss>
		</item>
		<item>
		<title>RubyConf is Tomorrow!</title>
		<link>http://inquirylabs.com/blog2009/2009/03/12/rubyconf-is-tomorrow/</link>
		<comments>http://inquirylabs.com/blog2009/2009/03/12/rubyconf-is-tomorrow/#comments</comments>
		<pubDate>Fri, 13 Mar 2009 02:25:28 +0000</pubDate>
		<dc:creator>Duane Johnson</dc:creator>
		
		<category><![CDATA[Software Engineering]]></category>

		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://inquirylabs.com/blog2009/?p=498</guid>
		<description><![CDATA[I&#8217;m excited to attend the Mountain West RubyConf in SLC tomorrow (and Saturday).  I hope to see you there!

]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m excited to attend the Mountain West RubyConf in SLC tomorrow (and Saturday).  I hope to see you there!</p>
<div align="center"><a href="http://mtnwestrubyconf.org/2009/" title="I'm attending MountainWest RubyConf 2009!"><img src="http://mtnwestrubyconf.org/2009/images/badges/attendee.png" width="250" height="200" border="0" alt="I'm attending MountainWest RubyConf 2009!"></a></div>
]]></content:encoded>
			<wfw:commentRss>http://inquirylabs.com/blog2009/2009/03/12/rubyconf-is-tomorrow/feed/</wfw:commentRss>
		</item>
		<item>
		<title>The Haskell Rabbit Hole</title>
		<link>http://inquirylabs.com/blog2009/2009/03/07/the-haskell-rabbit-hole/</link>
		<comments>http://inquirylabs.com/blog2009/2009/03/07/the-haskell-rabbit-hole/#comments</comments>
		<pubDate>Sun, 08 Mar 2009 03:40:07 +0000</pubDate>
		<dc:creator>Duane Johnson</dc:creator>
		
		<category><![CDATA[Software Engineering]]></category>

		<category><![CDATA[haskell]]></category>

		<guid isPermaLink="false">http://inquirylabs.com/blog2009/2009/03/07/the-haskell-rabbit-hole/</guid>
		<description><![CDATA[As a programmer, curiosity is most often a helpful asset that leads to a grander and more unified understanding of computer science. &#160;With Ruby, for example, I quickly learned about the usefulness of closures because the array methods like &#8220;map&#8221; and &#8220;select&#8221; were so helpful. &#160;Closures became a new tool in my toolbox&#8211;something I could [...]]]></description>
			<content:encoded><![CDATA[<p>As a programmer, curiosity is most often a helpful asset that leads to a grander and more unified understanding of computer science. &nbsp;With Ruby, for example, I quickly learned about the usefulness of closures because the array methods like &#8220;map&#8221; and &#8220;select&#8221; were so helpful. &nbsp;Closures became a new tool in my toolbox&#8211;something I could apply almost everywhere.
<div></div>
<div>Haskell is teaching me things, but not in the same innocent way that Ruby did. &nbsp;It is definitely pushing me to my limits&#8211;recently I feel like a wet-behind-the-ears programmer more often than I can remember.</div>
<div></div>
<div>I&#8217;m building a little game in Haskell using OpenGL. &nbsp;Innocently, I found out about&nbsp;<a href="http://www.haskell.org/yampa/">Functional Reactive Programming</a>&nbsp;and suddenly I&#8217;m on a trail learning about a &#8220;generalization of Monads called Arrows&#8221;, as well as combinators and functional composition in &#8220;lifted&#8221; spaces. &nbsp;I&#8217;m not even sure I&#8217;m using the right words to describe what I don&#8217;t understand <img src='http://inquirylabs.com/blog2009/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> &nbsp;Next, I decided I&#8217;d try loading a&nbsp;<a href="http://www.web3d.org/x3d/specifications/vrml/ISO-IEC-14772-VRML97/part1/grammar.html">VRML</a>&nbsp;file that I had created in&nbsp;<a href="http://www.wings3d.com/">Wings3D</a>. &nbsp;Haskell doesn&#8217;t have a VRML (&#8221;.wrl&#8221;) parser that I know of&#8230; so I started looking up parsers in Haskell. &nbsp;&#8221;Hmmm,&#8221; I wondered, &#8220;What&#8217;s this &#8216;<a href="http://legacy.cs.uu.nl/daan/download/parsec/parsec.html">parsec</a>&#8216; thing everyone is talking about?&#8221; &nbsp;Oh, it&#8217;s a &#8220;monadic parser combinator in Haskell&#8221; that other languages have apparently tried to emulate.</div>
<div></div>
<div>All I can say at this point is, &#8220;Wow.&#8221; &nbsp;There is so much out there that I do not understand. &nbsp;I thought I knew a lot about programming through 6 years of university. &nbsp;It turns out I had only scratched the surface. &nbsp;Beware, there&#8217;s a rabbit hole underneath that grassy knoll!</div>
<p style="font-size: 10px;"> <a href="http://posterous.com">Posted via email</a>  from <a href="http://canadaduane.posterous.com/the-haskell-rabbit-hole">Duane&#8217;s Quick Posts</a> </p>
]]></content:encoded>
			<wfw:commentRss>http://inquirylabs.com/blog2009/2009/03/07/the-haskell-rabbit-hole/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Running Hipmunk Playground on Mac OS X</title>
		<link>http://inquirylabs.com/blog2009/2009/03/02/running-hipmunk-playground-on-mac-os-x/</link>
		<comments>http://inquirylabs.com/blog2009/2009/03/02/running-hipmunk-playground-on-mac-os-x/#comments</comments>
		<pubDate>Tue, 03 Mar 2009 05:10:10 +0000</pubDate>
		<dc:creator>Duane Johnson</dc:creator>
		
		<category><![CDATA[Software Engineering]]></category>

		<category><![CDATA[haskell]]></category>

		<category><![CDATA[opengl]]></category>

		<guid isPermaLink="false">http://inquirylabs.com/blog2009/2009/03/02/running-hipmunk-playground-on-mac-os-x/</guid>
		<description><![CDATA[I&#8217;m experimenting with using Haskell for a 2D game project in one of my computer science classes. &#160;It will probably involve the&#160;Chipmunk&#160;2D physics engine (haskell has a binding to it called&#160;Hipmunk). &#160;Hipmunk comes with a demo app called the&#160;Hipmunk Playground, and it is a wonderful little demo of OpenGL and Chipmunk in Haskell.

Unfortunately, Mac OS [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m experimenting with using Haskell for a 2D game project in one of my computer science classes. &nbsp;It will probably involve the&nbsp;<a href="http://wiki.slembcke.net/main/published/Chipmunk">Chipmunk</a>&nbsp;2D physics engine (haskell has a binding to it called&nbsp;<a href="http://hackage.haskell.org/cgi-bin/hackage-scripts/package/Hipmunk">Hipmunk</a>). &nbsp;Hipmunk comes with a demo app called the&nbsp;<a href="http://hackage.haskell.org/cgi-bin/hackage-scripts/package/HipmunkPlayground">Hipmunk Playground</a>, and it is a wonderful little demo of OpenGL and Chipmunk in Haskell.
<div></div>
<div>Unfortunately, Mac OS X has some austere requirements for graphical applications. &nbsp;When I first ran Hipmunk Playground, the window would not respond properly to my keyboard and mouse inputs. &nbsp;The solution, it seems, is to wrap the Haskell-generated executable inside a well-formed &#8220;.app&#8221; directory. &nbsp;The (unrelated) wxHaskell library provides a nice shell script called&nbsp;<a href="http://darcs.haskell.org/wxhaskell/bin/macosx-app-template">macosx-app</a>&nbsp;to generate the .app directory automatically. &nbsp;Here is a sample Makefile that I now use to build Hipmunk Playground and put it inside the wrapper directory:
<div></div>
<div>
<div></div>
<blockquote type="cite"><div># Make the Hipmunk Playground application for Mac OS X</div>
<div>MacPlayground: Playground</div>
<div><span style="white-space:pre">	</span>utils/macosx-app Playground</div>
<div></div>
<div>Playground: Playground.hs</div>
<div><span style="white-space:pre">	</span>ghc &#8211;make Playground.hs</div>
<div></div>
<div>RunPlayground: MacPlayground</div>
<div><span style="white-space:pre">	</span>open Playground.app</div>
</blockquote>
<div></div>
</div>
</div>
<p style="font-size: 10px;"> <a href="http://posterous.com">Posted via email</a>  from <a href="http://canadaduane.posterous.com/running-hipmunk-playground-on">Duane&#8217;s Quick Posts</a> </p>
]]></content:encoded>
			<wfw:commentRss>http://inquirylabs.com/blog2009/2009/03/02/running-hipmunk-playground-on-mac-os-x/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Getting Started with Haskell: Cabal</title>
		<link>http://inquirylabs.com/blog2009/2009/02/28/getting-started-with-haskell-cabal/</link>
		<comments>http://inquirylabs.com/blog2009/2009/02/28/getting-started-with-haskell-cabal/#comments</comments>
		<pubDate>Sat, 28 Feb 2009 21:20:58 +0000</pubDate>
		<dc:creator>Duane Johnson</dc:creator>
		
		<category><![CDATA[Software Engineering]]></category>

		<category><![CDATA[haskell]]></category>

		<guid isPermaLink="false">http://inquirylabs.com/blog2009/?p=488</guid>
		<description><![CDATA[Most languages have a nice package management system that helps install new software or libraries&#8212;Ruby has the &#8220;gem&#8221; system, Perl has cpan, etc.  In Haskell, it&#8217;s &#8220;cabal&#8221;, and here is how you install it:

darcs get http://darcs.haskell.org/cabal-install
cd cabal-install
sh bootstrap.sh

In addition, you should occasionally use the &#8220;update&#8221; command to sync your local package listing with the [...]]]></description>
			<content:encoded><![CDATA[<p>Most languages have a nice package management system that helps install new software or libraries&#8212;Ruby has the &#8220;gem&#8221; system, Perl has cpan, etc.  In Haskell, it&#8217;s &#8220;cabal&#8221;, and here is how you install it:<br />
<code><br />
darcs get http://darcs.haskell.org/cabal-install<br />
cd cabal-install<br />
sh bootstrap.sh<br />
</code></p>
<p>In addition, you should occasionally use the &#8220;update&#8221; command to sync your local package listing with the centralized one:<br />
<code><br />
cabal update<br />
</code></p>
<p>To install a remote package, simply use &#8220;cabal install
<pkg-name>&#8220;.  For example:<br />
<code><br />
cabal install happstack<br />
</code></p>
<p>Also noteworthy is that you can use cabal to install a package from the <i>local directory</i>.  For example, if you&#8217;ve fetched something using darcs, you could procede to install it like this:<br />
<code><br />
darcs get --lazy http://code.haskell.org/yi/<br />
cd yi<br />
cabal install<br />
</code></p>
<p><b>Update:</b> To install yi above, I also had to install a package called &#8220;alex&#8221; which is outside the cabal system at this point.  I used MacPorts, i.e. &#8220;sudo port install alex&#8221;.</p>
]]></content:encoded>
			<wfw:commentRss>http://inquirylabs.com/blog2009/2009/02/28/getting-started-with-haskell-cabal/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Improvements to download-files command</title>
		<link>http://inquirylabs.com/blog2009/2009/02/18/improvements-to-download-files-command/</link>
		<comments>http://inquirylabs.com/blog2009/2009/02/18/improvements-to-download-files-command/#comments</comments>
		<pubDate>Wed, 18 Feb 2009 22:44:32 +0000</pubDate>
		<dc:creator>Duane Johnson</dc:creator>
		
		<category><![CDATA[Software Engineering]]></category>

		<guid isPermaLink="false">http://inquirylabs.com/blog2009/?p=481</guid>
		<description><![CDATA[I added a few improvements to the Ubiquity &#8220;download-files&#8221; command.  It now checks everything on the page, including frames and iframes.  Also, it walks through all of the CSS files and downloads image assets if they match the pattern you specify.
Visit Ubiquity Download Files on GitHub to see the code, or this gist [...]]]></description>
			<content:encoded><![CDATA[<p>I added a few improvements to the Ubiquity &#8220;<a href="http://inquirylabs.com/blog2009/2009/02/12/ubiquity-script-to-download-file-patterns-on-your-page/">download-files</a>&#8221; command.  It now checks everything on the page, including frames and iframes.  Also, it walks through all of the CSS files and downloads image assets if they match the pattern you specify.</p>
<p>Visit <a href="http://github.com/canadaduane/ubiquity-download-files">Ubiquity Download Files</a> on GitHub to see the code, or <a href="http://gist.github.com/62536">this gist</a> to subscribe.</p>
]]></content:encoded>
			<wfw:commentRss>http://inquirylabs.com/blog2009/2009/02/18/improvements-to-download-files-command/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Ruby 1.9 is here</title>
		<link>http://inquirylabs.com/blog2009/2009/01/30/ruby-19-is-here/</link>
		<comments>http://inquirylabs.com/blog2009/2009/01/30/ruby-19-is-here/#comments</comments>
		<pubDate>Fri, 30 Jan 2009 20:24:59 +0000</pubDate>
		<dc:creator>Duane Johnson</dc:creator>
		
		<category><![CDATA[Software Engineering]]></category>

		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://inquirylabs.com/blog2009/2009/01/30/ruby-19-is-here/</guid>
		<description><![CDATA[The first stable release of&#160;Ruby 1.9&#160;is out&#8230; I&#8217;m downloading it now. &#160;There is a nice comparison of Ruby 1.8 and 1.9&#160;here.
 Posted via email  from Duane&#8217;s Quick Posts 
]]></description>
			<content:encoded><![CDATA[<p>The first stable release of&nbsp;<a href="http://groups.google.com/group/ruby-talk-google/browse_thread/thread/35e963933f9d0b1a">Ruby 1.9</a>&nbsp;is out&#8230; I&#8217;m downloading it now. &nbsp;There is a nice comparison of Ruby 1.8 and 1.9&nbsp;<a href="http://blog.nuclearsquid.com/writings/ruby-1-9-what-s-new-what-s-changed">here</a>.
<p style="font-size: 10px;"> <a href="http://posterous.com">Posted via email</a>  from <a href="http://canadaduane.posterous.com/ruby-19-is-here">Duane&#8217;s Quick Posts</a> </p>
]]></content:encoded>
			<wfw:commentRss>http://inquirylabs.com/blog2009/2009/01/30/ruby-19-is-here/feed/</wfw:commentRss>
		</item>
		<item>
		<title>What the Internet is Doing to My Mind</title>
		<link>http://inquirylabs.com/blog2009/2009/01/28/what-the-internet-is-doing-to-my-mind/</link>
		<comments>http://inquirylabs.com/blog2009/2009/01/28/what-the-internet-is-doing-to-my-mind/#comments</comments>
		<pubDate>Wed, 28 Jan 2009 23:49:28 +0000</pubDate>
		<dc:creator>Duane Johnson</dc:creator>
		
		<category><![CDATA[Life and Family]]></category>

		<category><![CDATA[Software Engineering]]></category>

		<guid isPermaLink="false">http://inquirylabs.com/blog2009/2009/01/28/what-the-internet-is-doing-to-my-mind/</guid>
		<description><![CDATA[You know how teachers shifted from teaching rote memorization to teaching concepts sometime during the 19th or 20th century? &#160;I think the Internet is causing me to shift in a similar way with regard to facts themselves. &#160;I&#8217;m not sure if it&#8217;s all a good thing, but I just noticed for the first time that [...]]]></description>
			<content:encoded><![CDATA[<p>You know how teachers shifted from teaching rote memorization to teaching concepts sometime during the 19th or 20th century? &nbsp;I think the Internet is causing me to shift in a similar way with regard to facts themselves. &nbsp;I&#8217;m not sure if it&#8217;s all a good thing, but I just noticed for the first time that instead of thinking about facts, I tend to think about search terms. &nbsp;In other words, my use of memory has been abstracted to a higher level: I don&#8217;t recall what I need to know, I recall what will lead me to what I need to know.
<div></div>
<div>Is the (known) world becoming so big that we can&#8217;t contain it all in our heads? &nbsp;Or are we just lazier now that there is a means to offload what we would otherwise have to memorize? &nbsp;It&#8217;s probably some combination of both.</div>
<div></div>
<div>As my memory of details declines and my construction of queries improves, at least I have the innovations of the&nbsp;<a href="http://www.innerspacefoundation.org/">InnerSpace Foundation</a>&nbsp;to look forward to.</div>
<p style="font-size: 10px;"> <a href="http://posterous.com">Posted via email</a>  from <a href="http://canadaduane.posterous.com/what-the-internet-is-doing-to">Duane&#8217;s Quick Posts</a> </p>
]]></content:encoded>
			<wfw:commentRss>http://inquirylabs.com/blog2009/2009/01/28/what-the-internet-is-doing-to-my-mind/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>

