<?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>Bitwise Evolution &#187; random</title>
	<atom:link href="http://blog.ciscavate.org/category/random/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.ciscavate.org</link>
	<description>Musings of a Seattle-area hacker with a bent on improving digital lifestyles.</description>
	<lastBuildDate>Sun, 25 Jul 2010 23:21:56 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Like food?</title>
		<link>http://blog.ciscavate.org/2009/02/like-food.html</link>
		<comments>http://blog.ciscavate.org/2009/02/like-food.html#comments</comments>
		<pubDate>Wed, 04 Feb 2009 07:11:09 +0000</pubDate>
		<dc:creator>rcreswick</dc:creator>
				<category><![CDATA[random]]></category>

		<guid isPermaLink="false">http://blog.ciscavate.org/?p=83</guid>
		<description><![CDATA[
I started writing for another blog this week:

Brewed, Bottled, Cultured and Sweetened is a blog about beer, coffee, wine, cheese, chocolate, etc&#8230; that I&#8217;m writing with an old friend from Dagit.o
]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.ciscavate.org/wp-content/2009/02/imperial_stout.jpg"><img src="http://blog.ciscavate.org/wp-content/2009/02/imperial_stout-184x300.jpg" alt="" title="imperial_stout" height="100" class="alignright size-medium wp-image-89" /></a>
I started writing for another blog this week:</p>

<p><a href="http://bbcas.blogspot.com">Brewed, Bottled, Cultured and Sweetened</a> is a blog about beer, coffee, wine, cheese, chocolate, etc&#8230; that I&#8217;m writing with an old friend from <a href="http://codersbase.com">Dagit.o</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.ciscavate.org/2009/02/like-food.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Matrix is under construction</title>
		<link>http://blog.ciscavate.org/2007/03/the-matrix-is-under-construction.html</link>
		<comments>http://blog.ciscavate.org/2007/03/the-matrix-is-under-construction.html#comments</comments>
		<pubDate>Wed, 21 Mar 2007 11:10:33 +0000</pubDate>
		<dc:creator>rcreswick</dc:creator>
				<category><![CDATA[random]]></category>

		<guid isPermaLink="false">http://blog.ciscavate.org/?p=29</guid>
		<description><![CDATA[&#60;blink&#62;12:00&#60;/blink&#62;

Artificial Intelligence is a term with a great deal of accumulated
baggage.  Throughout the years sci-fi authors and screenwriters have
depicted AI as a marvelous double-edged sword.  On one hand, the
benefits of &#8216;AI&#8217; are myriad&#8211;free, inexhaustible and ethical sources
of labour could greatly increase our productivity, even to a point
beyond that of reason, allowing everyone to [...]]]></description>
			<content:encoded><![CDATA[<h3>&lt;blink&gt;12:00&lt;/blink&gt;</h3>

<p><em>Artificial Intelligence</em> is a term with a great deal of accumulated
baggage.  Throughout the years sci-fi authors and screenwriters have
depicted AI as a marvelous double-edged sword.  On one hand, the
benefits of &#8216;AI&#8217; are myriad&#8211;free, inexhaustible and ethical sources
of labour could greatly increase our productivity, even to a point
beyond that of reason, allowing everyone to live relaxed lives of
artistic purity.  To top it all off, such a society of musicians and
artists could generate their own entertainment, thus bankrupting the
RIAA and MPAA.  (Really, do your Utopian dreams top that?)</p>

<p>Then, as the story progresses, the AI start to become devious.  Humans
become restless in their artistic pursuits while the machines evolve
<em>ghosts</em> that resent their inventors. At the last moment, just before
the annihilation of all humanity, or the eternal slavery of the race,
Keanu Reeves (or Will Smith) shows up to do battle in Wachowski-style
slow-mo while using the inconsistencies of English to lock the evil
network of machines into a final state of illogic and
self-destruction.  This, of course, destroys all instances of the
rouge process, and life returns to the state it was in before
automation created such a false utopia. (&#8230;and presumably we&#8217;re back
at square 1, listening to overpriced music from underpaid artists.)</p>

<p>The result of all these (highly entertaining, I must say)
sensationalistic portrayals of automation gone awry is that we&#8217;re all
somewhat afraid of being slaves to robots.</p>

<p>And none of you will admit it.  (I work in the field, so I can&#8217;t be
afraid &#8230; can I?)</p>

<h3>Honey, have you seen the roomba?</h3>

<p>Ok, I admit it, I&#8217;ve had the occasional dream about rabid computers
charging around and directing people to do whatever robots want people
to do.  Usually I&#8217;m about to meet my untimely demise right when the
central AI segfaults because it&#8217;s &#8220;attack&#8221; routine takes a <code>double</code>
and I happened to be 1/3 of a distance unit away, causing a rounding
error that escalates and ends as a divide-by-zero, crashing the entire
system.</p>

<p>The dreams can be scary for a while, but I can&#8217;t convince my self that
I&#8217;ll ever be chased by a truly well designed and tested robot.  Let
alone one that&#8217;s self-aware.</p>

<p>That&#8217;s actually only part of the reason I&#8217;m not worried about
an AI-controlled utopia ever occurring.  The rest of the reason
actually isn&#8217;t germane to this essay, believe it or not!</p>

<h3>Fine. Forget it, I&#8217;ll do it in Word.</h3>

<p>I&#8217;m going to start this off with a quick tangential story about a
friend of mine.</p>

<p>&gt; This friend works for a company that has a wiki hosted on some
&gt; external site that is maintained by the hosting company (call the company
&gt; Hoster).  Hoster is serious about security.  In fact they&#8217;re using
&gt; some sort of automated attack-detection service which can determine
&gt; when someone is trying to crack their servers or perform some other
&gt; devious deed.
&gt; 
&gt; When Hoster&#8217;s system detects an &#8220;attack&#8221; it blacklists the attacker&#8217;s
&gt; IP block, and the attacker can no longer get near the server.
&gt; Everything would be fine and dandy, but in this system&#8217;s eyes, my
&gt; friend and his coworkers often stage &#8220;attacks&#8221; against their own wiki.
&gt; Therefore they have to contact Hoster every week or so, and ask that
&gt; the ban be lifted.  The last time this happened, my friend asked
&gt; Hoster to put the company IP Block on a whitelist, granting them Carte
&gt; blanche without being banned.
&gt; 
&gt; The response?<br />
&gt; 
&gt; Hoster: &#8220;We can&#8217;t.&#8221;<br />
&gt; Friend: &#8220;But this happens all the time.&#8221;<br />
&gt; Hoster: &#8220;yeah, we can&#8217;t.&#8221;<br />
&gt; Friend: &#8220;But this happens <strong>ALL</strong> the time.&#8221;<br />
&gt; Hoster: &#8220;sorry, it&#8217;s a good idea and all, we just can&#8217;t put you on a
&gt; white list.&#8221;</p>

<p>I have some theories about why Hoster can&#8217;t exclude their customers
from their own security tools.  Hoster most certainly didn&#8217;t develop
the blacklisting tool in-house, and the phone tech would have no
access to the internal configuration at all.  Odds are, Hoster has a
simple web interface to do wiki management, and one of the pages in
that UI shows the list of blacklisted IPs, if that.  The phone tech
can then go in and search for a given computer and remove it from the
blacklist.  Hoster probably can&#8217;t modify the whitelist at all through
the web ui, it&#8217;s just not a feature.</p>

<p>So, why isn&#8217;t it a feature?  Let&#8217;s peel back another layer and look at
the company/dev team that produced the blacklisting tool.  Odds are
the tool is using an off-the-shelf classifier, which aren&#8217;t renowned
for being easy to understand without a lot of examination.  Perhaps
the classifier is actually an embedded part of the firewall system.
The blacklist could be a nothing more than a list of routing rules to
deny traffic from the &#8220;bad&#8221; addresses.  Removing an IP would be
trivial&#8211;delete the rule, but whitelisting would be virtually
impossible if the firewall was too tightly coupled with the
classifier.</p>

<p>Have you ever run across other applications that exhibit similar
behavior?  The IBM OmniFind enterprise search app throws internal
server errors when you query for <a href="http://omnifind.ibm.yahoo.net/forums/index.php/topic,668.0.html">&#8220;international
suspect&#8221;</a>
with the default settings and some document collections.  How does
this happen?  (IBM is hard at work on that problem, by the way.)
Using open source tools opened my eyes to many absurd things I do to
placate my tools, mostly because I forgot all the tricks I needed to
use Windos 98 without making it crash (Click here, wait, use the File
menu to close the app, but not if it&#8217;s maximized.. that sort of
thing.)  There are studies of this sort of thing&#8211;the cognitive
dimensions and attention investment both address user confusion and
effort when using an application.  There is even a group at Microsoft
dedicated to improving APIs based on the cognitive dimensions (I
really hope they just haven&#8217;t gotten around to .NET 2.0 yet).</p>

<p>How much is poor design / implementation impacting the way we use our
computers?  Hosters could loose customers because they can&#8217;t add
people to a whitelist, which could very conceivably be due to software
design.  In some small way, they are already being controlled by their
servers, and Will Smith is busy talking to
<a href="http://en.wikipedia.org/wiki/Shark_Tale">fish</a>.</p>

<p>Anyhow, that&#8217;s my rant.  I&#8217;m afraid that we&#8217;re painting ourselves into
a corner by building larger and larger applications that all impose
their own restrictions on how we can use and extend our tools.  If we
don&#8217;t get over that, we&#8217;ll never be running in fear from sentient
vacuum cleaners and robotic dogs.  (I should point out that I don&#8217;t think
the solution is to stop building large systems, rather we should focus
on <a href="http://steve-yegge.blogspot.com/2007/01/pinocchio-problem.html">maintainability, extensibility, QWAN,
etc..</a>).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.ciscavate.org/2007/03/the-matrix-is-under-construction.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>In agreement at last..</title>
		<link>http://blog.ciscavate.org/2006/10/in-agreement-at-last.html</link>
		<comments>http://blog.ciscavate.org/2006/10/in-agreement-at-last.html#comments</comments>
		<pubDate>Mon, 30 Oct 2006 10:10:07 +0000</pubDate>
		<dc:creator>rcreswick</dc:creator>
				<category><![CDATA[random]]></category>

		<guid isPermaLink="false">http://blog.ciscavate.org/?p=21</guid>
		<description><![CDATA[Finally, windows did something I agree with:

If only it had caught itself during the OS install instead of just a measly user-space app&#8230;

Maybe this has been fixed in Vista&#8230; (&#8230;could that be the reason it&#8217;s still not out? I suppose I shouldn&#8217;t get my hopes up.)
]]></description>
			<content:encoded><![CDATA[<p>Finally, windows did something I agree with:</p>

<p><img align="left" src="http://www.ciscavate.org/data/protection.png" />If only it had caught itself during the OS install instead of just a measly user-space app&#8230;</p>

<p>Maybe this has been fixed in Vista&#8230; (&#8230;could that be the reason it&#8217;s still not out? I suppose I shouldn&#8217;t get my hopes up.)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.ciscavate.org/2006/10/in-agreement-at-last.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Playing with Deepest Sender</title>
		<link>http://blog.ciscavate.org/2006/08/playing-with-deepest-sender.html</link>
		<comments>http://blog.ciscavate.org/2006/08/playing-with-deepest-sender.html#comments</comments>
		<pubDate>Tue, 29 Aug 2006 03:08:39 +0000</pubDate>
		<dc:creator>rcreswick</dc:creator>
				<category><![CDATA[random]]></category>

		<guid isPermaLink="false">http://blog.ciscavate.org/?p=17</guid>
		<description><![CDATA[I ran across Deepest Sender, a firefox extension used for posting to a blog, today and thought I&#8217;d give it a shot.  It supports a small, but reasonable set of blog apps (Wordpress, LJ, &#8230; two or three others that escape me at the moment, and I can&#8217;t find the list right now..)  [...]]]></description>
			<content:encoded><![CDATA[<p>I ran across <a href="https://addons.mozilla.org/firefox/1811/">Deepest Sender</a>, a firefox extension used for posting to a blog, today and thought I&#8217;d give it a shot.  It supports a small, but reasonable set of blog apps (Wordpress, LJ, &#8230; two or three others that escape me at the moment, and I can&#8217;t find the list right now..)   Setup was easy, and it wasn&#8217;t difficult to connect to my wordpress install , but I don&#8217;t see how to add multiple blogs, or choose a blog to post to that isn&#8217;t the default.  I&#8217;m also a bit mystified at how it manages drafts (you can save to a local file, but that doesn&#8217;t quite cut it &#8212; I want to take advantage of the draft capabilities of the blog app, so I&#8217;m not tied to one machine).</p>

<p>I wonder if it will let me use code tags in the rich editor..</p>

<div class="codecolorer-container text">-- haskell?
foo :: Int -&gt; Int
foo x = x * x</div>

<div class="codecolorer-container text">// Java test
public static int foo(int x){
    return x * x;
}</div>

<p>&#8230;not really&#8230; (although, there is a source view, and it&#8217;s just a click of a tab to switch back and forth, which is how I entered the c# sample below, although it look horrible in the rich editor.) There are some interesting fields under the options menu, including a text area to enter a stylesheet, but no indication of what it does.  I may need to dig into the help docs later, but I&#8217;ll probably look into emacs extensions first.  For now, the jury is out.</p>

<div class="codecolorer-container text" style="height:35px;">///  /// Sample c# ///  public static int Foo(int x){   return x * x; }</div>

<p>Ah, when posting, I discovered how the draft works.  There is a checkbox marked &#8220;draft&#8221; which publishes content as a draft, rather than to the site.  It would be much clearer to just have two buttons:  &#8220;Publish&#8221; and &#8220;Save as draft&#8221;, it would take up the same amount of space, and require fewer clicks, but I suppose you could accidentally publish to the main site when you really wanted to click on draft.  In any case, it ruined the formatting on the code snippet, so for my purposes it will not work.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.ciscavate.org/2006/08/playing-with-deepest-sender.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>2005 in cities</title>
		<link>http://blog.ciscavate.org/2006/01/2005-in-cities.html</link>
		<comments>http://blog.ciscavate.org/2006/01/2005-in-cities.html#comments</comments>
		<pubDate>Fri, 27 Jan 2006 10:01:43 +0000</pubDate>
		<dc:creator>rcreswick</dc:creator>
				<category><![CDATA[random]]></category>

		<guid isPermaLink="false">http://blog.ciscavate.org/?p=13</guid>
		<description><![CDATA[Copying an idea seen on Join-The-Dots:


    Portland, OR
    Corvallis, OR
    Seattle, WA
    Los Angeles, CA
    San Diego, CA
    Twin Falls, ID
    Jackson Hole, WY
    Lincoln, NE
    Chicago, IL
 [...]]]></description>
			<content:encoded><![CDATA[<p>Copying an idea seen on Join-The-Dots:</p>

<ul>
    <li>Portland, OR</li>
    <li>Corvallis, OR</li>
    <li>Seattle, WA</li>
    <li>Los Angeles, CA</li>
    <li>San Diego, CA</li>
    <li>Twin Falls, ID</li>
    <li>Jackson Hole, WY</li>
    <li>Lincoln, NE</li>
    <li>Chicago, IL</li>
    <li>DeBois, PA</li>
    <li>New York, NY</li>
    <li>Toledo, OH</li>
    <li>Ogden, UT</li>
</ul>

<p>One or more nights in each city.  Now, if only I had some ground-breaking reason for being in Ogden, UT and DeBois, PA :).</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.ciscavate.org/2006/01/2005-in-cities.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Distributed Communication</title>
		<link>http://blog.ciscavate.org/2005/08/distributed-communication.html</link>
		<comments>http://blog.ciscavate.org/2005/08/distributed-communication.html#comments</comments>
		<pubDate>Thu, 04 Aug 2005 03:08:00 +0000</pubDate>
		<dc:creator>rcreswick</dc:creator>
				<category><![CDATA[random]]></category>

		<guid isPermaLink="false">http://blog.ciscavate.org/?p=6</guid>
		<description><![CDATA[Over the past year, the people I know well have become quite scattered across the nation, if not the globe. As a result, I&#8217;m left wanting to keep up to date with friends in Southern California, Oregon, New York, Boston, Nebraska, Britain (for a while), Seattle, and at the moment, a body of water in [...]]]></description>
			<content:encoded><![CDATA[<p>Over the past year, the people I know well have become quite scattered across the nation, if not the globe. As a result, I&#8217;m left wanting to keep up to date with friends in Southern California, Oregon, New York, Boston, Nebraska, Britain (for a while), Seattle, and at the moment, a body of water in southwest-ish Alaska. I&#8217;m sure there are others, but you people are hard to keep tabs on!</p>

<p>This has led me to try blogging &#8212; somehow there&#8217;s a connection there that makes sense, but I doubt I can explain it modestly. Because of that, I&#8217;m going to claim this is a personal record for my own use.</p>

<p>And with that,</p>

<p>Good night!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.ciscavate.org/2005/08/distributed-communication.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
