<?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>'pataprogramming</title>
	<atom:link href="http://www.pataprogramming.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.pataprogramming.com</link>
	<description>Curiosities of Unconventional Computing</description>
	<lastBuildDate>Sun, 14 Mar 2010 03:43:54 +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>Don&#8217;t be deceived! Celebrate the REAL Pi day</title>
		<link>http://www.pataprogramming.com/2010/03/real-pi-day/</link>
		<comments>http://www.pataprogramming.com/2010/03/real-pi-day/#comments</comments>
		<pubDate>Sun, 14 Mar 2010 03:42:43 +0000</pubDate>
		<dc:creator>paul</dc:creator>
				<category><![CDATA[Mathematics]]></category>
		<category><![CDATA[pi day]]></category>
		<category><![CDATA[real pi day]]></category>

		<guid isPermaLink="false">http://www.pataprogramming.com/?p=142</guid>
		<description><![CDATA[As announced on zenoli.net, Real Pi Day now has a website.  Don&#8217;t be taken in by the false prophets who will claim that Pi Day is on March 14.  This is a lie to turn your eyes away from the Platonic Truth!  Visit the Real Pi Day website for the skinny, and why I&#8217;ll be [...]]]></description>
			<content:encoded><![CDATA[<p>As <a href="http://www.zenoli.net/2010/03/campaign-for-real-pi-day/">announced on zenoli.net</a>, Real Pi Day now has a website.  Don&#8217;t be taken in by the false prophets who will claim that Pi Day is on March 14.  This is a lie to turn your eyes away from the Platonic Truth!  Visit the <a href="http://www.realpiday.org">Real Pi Day website</a> for the skinny, and why I&#8217;ll be hoisting my <a href="http://www.victorybeer.com/hopdevil.aspx">Hop Devil</a> on <strong>Saturday, April 17, 2010 at 12:02 AM Coordinated Universal Time</strong>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pataprogramming.com/2010/03/real-pi-day/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fractal Friday: Another Fractal Pizza</title>
		<link>http://www.pataprogramming.com/2010/03/fractal-friday-another-fractal-pizza/</link>
		<comments>http://www.pataprogramming.com/2010/03/fractal-friday-another-fractal-pizza/#comments</comments>
		<pubDate>Fri, 05 Mar 2010 21:35:10 +0000</pubDate>
		<dc:creator>paul</dc:creator>
				<category><![CDATA[Chaos]]></category>
		<category><![CDATA[food]]></category>
		<category><![CDATA[fractal]]></category>
		<category><![CDATA[pizza]]></category>

		<guid isPermaLink="false">http://www.pataprogramming.com/?p=129</guid>
		<description><![CDATA[Here&#8217;s a pizza modeled after a variant of the Koch snowflake, and it&#8217;s perhaps a bit more aesthetically appealing than the previously posted pie.  Sadly, an examination of the pepperoni distribution (not to mention the ever-so-cute tiny pepperoni themselves) will reveal that this is a &#8216;Shop job, so it seems that the three-recursion/edibility barrier has [...]]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s a pizza modeled after a variant of the Koch snowflake, and it&#8217;s perhaps a bit more aesthetically appealing than the <a href="http://www.pataprogramming.com/2010/02/fractal-pizza/">previously posted pie</a>.  Sadly, an examination of the pepperoni distribution (not to mention the ever-so-cute tiny pepperoni themselves) will reveal that this is a &#8216;Shop job, so it seems that the three-recursion/edibility barrier has not yet been broken.  <span style="text-decoration: line-through;">Even were it to be real, you&#8217;ll notice that the fourth and fifth levels are incomplete, so we&#8217;d have to count it out in any case.</span> [Edit: miscounted due to tiny WordPress editing window; there are four legitimate (if PhotoShopped) fully complete levels.)</p>
<p style="text-align: center;"><a href="http://proofmathisbeautiful.tumblr.com/post/405618157/un-via-notformom-fractal-pizza-for-crust"><img class="size-full wp-image-130 aligncenter" title="fractal-crust" src="http://www.pataprogramming.com/wp-content/fractal-crust.png" alt="" width="500" height="489" /></a></p>
<p style="text-align: left;">(Via <a href="http://proofmathisbeautiful.tumblr.com/post/405618157/un-via-notformom-fractal-pizza-for-crust">proofmathisbeautiful</a>.)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pataprogramming.com/2010/03/fractal-friday-another-fractal-pizza/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>An Emacs Bisection</title>
		<link>http://www.pataprogramming.com/2010/03/an-emacs-bisection/</link>
		<comments>http://www.pataprogramming.com/2010/03/an-emacs-bisection/#comments</comments>
		<pubDate>Fri, 05 Mar 2010 02:52:48 +0000</pubDate>
		<dc:creator>paul</dc:creator>
				<category><![CDATA[Linux and Sundry]]></category>
		<category><![CDATA[debugging]]></category>
		<category><![CDATA[emacs]]></category>
		<category><![CDATA[Planet PLUG]]></category>
		<category><![CDATA[startup]]></category>

		<guid isPermaLink="false">http://www.pataprogramming.com/?p=124</guid>
		<description><![CDATA[A problem has been following me around for a couple of years.  Emacs, in which I have been spending more than a small portion of my time, has had a problem that would manifest in any non-X mode.  It persisted across multiple terminals: putty on Windows back to a Linux box, emacs -nw in a [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/knowprose/101872870/"><img class="size-full wp-image-126 alignright" title="practical debugging" src="http://www.pataprogramming.com/wp-content/cricket.jpg" alt="cricket on a screen" width="240" height="180" /></a>A problem has been following me around for a couple of years.  Emacs, in which I have been spending more than a small portion of my time, has had a problem that would manifest in any non-X mode.  It persisted across multiple terminals: putty on Windows back to a Linux box, <code>emacs -nw</code> in a GNOME Terminal , even a bog-standard Linux console.  Specifically, hitting &#8216;Page Up&#8217; and would result in the string &#8216;<code>5~</code>&#8216; being printed and &#8216;Page Down&#8217; would result in <code>'6~</code>&#8216;.  Not deadly, but just enough to throw me off my stride when moving around files.  I&#8217;d never gotten around to sorting in out, since it worked just fine when running as an X server.</p>
<p>This came up after the PLUG meeting last night, over pizza and beer at the Best House last night.  As Walt pointed out, there was almost certainly a very good reason for this, and it would be living somewhere in the years of messy accretions that comprise my <code>.emacs</code> file and its satellites.</p>
<p>I knew this was probably the case.  Like most <code>.emacs</code> files, mine was not planned.  It grew from bits and useful snippets, mode hooks, random configurations, pieces that crept in as distribution cruft, and pastings of now-unknown provenance.  The whole morass needs a good mucking out, but that&#8217;s not on the to-do list.  Perhaps, though, I could finally get the nagging problem resolved.</p>
<p>The first test was an obvious one: remove all the startup files and see if the problem went away.</p>
<p>Now, at some point I acquired a set of XEmacs startup files.  The reason for this is hazy&#8230;I haven&#8217;t used XEmacs in years.  Nonetheless, there it is: an <code>.xemacs</code> folder with an <code>init.el</code> and <code>custom.el</code>.  At some point, something broke when I tried to take my <code>.emacs</code> file and <code>.emacs.d</code> folder without bringing <code>.xemac</code>s along for the ride, so the path of least resistance was to let it follow me from machine to machine ever since.</p>
<p>After renaming all the startup files, the problem was indeed gone and I could happily page up and down.  From there on, the process is a mechanical one: add files back in until it fails, then comment everything out in the file and add chunks back in until the problem returns.  Once it does, you can be pretty sure you&#8217;ve isolated the problem.</p>
<p>Indeed, the problem was lurking in <code>.xemacs/init.el</code>, in the following pair of lines:</p>
<p><code>(global-set-key "\e[" 'enlarge-window)<br />
(global-set-key "\e]" 'shrink-window)</code></p>
<p>It seems to me like a slightly odd manifestion, but there you have it.  With those lines removed, my Emacs bliss is unimpeded.</p>
<p>I really ought to get around to getting rid of that XEmacs cruft.</p>
<p><em>(CC-licensed image of a cricket from<a href="http://www.flickr.com/photos/knowprose/101872870/"> TaranRampersad</a>&#8217;s flickr photostream.)</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.pataprogramming.com/2010/03/an-emacs-bisection/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Extract n largest values from a Python dict</title>
		<link>http://www.pataprogramming.com/2010/03/python-dict-n-largest/</link>
		<comments>http://www.pataprogramming.com/2010/03/python-dict-n-largest/#comments</comments>
		<pubDate>Thu, 04 Mar 2010 05:49:17 +0000</pubDate>
		<dc:creator>paul</dc:creator>
				<category><![CDATA[Planet PLUG]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[n-largest]]></category>
		<category><![CDATA[n-max]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://www.pataprogramming.com/?p=54</guid>
		<description><![CDATA[Having stashed a bunch of data in a python dict, one often needs a quick way to extract the n largest.  Inconveniently for the particular problem I was working on, the key value for the dict was an object and the associated value was a floating-point weight.  A quick-and-dirty method is to use insert all [...]]]></description>
			<content:encoded><![CDATA[<p>Having stashed a bunch of data in a python <code>dict</code>, one often needs a quick way to extract the <em>n</em> largest.  Inconveniently for the particular problem I was working on, the key value for the <code>dict</code> was an object and the associated value was a floating-point weight.  A quick-and-dirty method is to use insert all the <code>dict</code>-keys into a heap, using the <code>dict</code>-value as the heap-key  Fortuitously, Python has both a heap module and convenient functions for using it in exactly this way.</p>
<pre>import heapq

def dict_nlargest(d,n):
    return heapq.nlargest(n ,d, key = lambda k: d[k])

d = { 'a':10.0, 'b':2.0, 'c':5.0, 'd':3.0, 'e':15.0 }
print dict_nlargest(d,3)
</pre>
<p>Which neatly prints a list of the keys associated with the three largest values:</p>
<pre>['e', 'a', 'c']
</pre>
<p>The <code>heapq.nlargest()</code> function can also use arbitrary object attributes as keys, as well, by supplying a one-argument function to the named parameter <code>key</code>.  (This is the role of the <code>lambda</code> in the examples above and below.)</p>
<pre>import heapq
class Toy:
    def __init__Toy(self, s, i, f):
        self.s = s
        self.i = i
        self.f = f

l = [ Toy('a', 10, 4.4), Toy('b', 4, 12.0),
      Toy('c', 2, 20.0), Toy('d', 1, 5.0) ]

# largest by the 'f' attribute
print heapq.nlargest(2, l, key = lambda o: o.f)

# largest by the 'i' attribute
print heapq.nlargest(2, l, key = lambda o: o.i)
</pre>
<p>This is fine for a one-off, but you&#8217;ll likely want to maintain this information in a data structure if this you&#8217;ll be performing this operation multiple times on a large collection.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pataprogramming.com/2010/03/python-dict-n-largest/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Natural Selection for Self-Optimizing Haskell Code</title>
		<link>http://www.pataprogramming.com/2010/03/natural-selection-for-self-optimizing-haskell-code/</link>
		<comments>http://www.pataprogramming.com/2010/03/natural-selection-for-self-optimizing-haskell-code/#comments</comments>
		<pubDate>Wed, 03 Mar 2010 04:23:31 +0000</pubDate>
		<dc:creator>paul</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[compilation]]></category>
		<category><![CDATA[haskell]]></category>
		<category><![CDATA[self-optimization]]></category>

		<guid isPermaLink="false">http://www.pataprogramming.com/?p=113</guid>
		<description><![CDATA[I&#8217;ve been playing around with Haskell, Clojure, Scala and Mercury recently, and even though Clojure seems to be winning my heart, I&#8217;ve found much to admire about each language.  Haskell and Mercury, in particular, are nicely brain-twisty.
The recent release of a new backend for GHC that can generate code for LLVM is quite exciting.  Even [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been playing around with Haskell, Clojure, Scala and Mercury recently, and even though Clojure seems to be winning my heart, I&#8217;ve found much to admire about each language.  Haskell and Mercury, in particular, are nicely brain-twisty.</p>
<p>The recent release of a <a href="http://donsbot.wordpress.com/2010/02/21/smoking-fast-haskell-code-using-ghcs-new-llvm-codegen/">new backend for GHC</a> that can generate code for <a href="http://llvm.org/">LLVM</a> is quite exciting.  Even more interesting is <a href="http://donsbot.wordpress.com/2010/03/01/evolving-faster-haskell-programs-now-with-llvm/">this blog post</a> by Don Stewart (co-author of <a href="http://www.realworldhaskell.org/"><em>Real World Haskell</em></a>) exploring genetic algorithms (via the <a href="http://www.coyotegulch.com/products/acovea/">Acovea</a> toolkit) to select sets of LLVM compiler optimizations.  The process isn&#8217;t fast (Acovea chews on the options for four hours), but the improvements for even these preliminary explorations are striking.  This approach is worth watching; there is a lot of performance waiting to be squeezed out of modern processors, and it&#8217;s even better if we can design approaches that allows automatic optimization for each platform. (Don suggests that he&#8217;s working on a wrapper library to allow you to simply issue a <code>main = evolve main'</code> and let it go.)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pataprogramming.com/2010/03/natural-selection-for-self-optimizing-haskell-code/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Computation with slime mold</title>
		<link>http://www.pataprogramming.com/2010/03/computation-with-slime-mold/</link>
		<comments>http://www.pataprogramming.com/2010/03/computation-with-slime-mold/#comments</comments>
		<pubDate>Mon, 01 Mar 2010 23:08:47 +0000</pubDate>
		<dc:creator>paul</dc:creator>
				<category><![CDATA[Natural Computation]]></category>
		<category><![CDATA[Self-Organization]]></category>
		<category><![CDATA[biological inspiriation]]></category>
		<category><![CDATA[biology]]></category>
		<category><![CDATA[networks]]></category>
		<category><![CDATA[slime mold]]></category>

		<guid isPermaLink="false">http://www.pataprogramming.com/?p=105</guid>
		<description><![CDATA[Here&#8217;s some natural computation at the University of Oxford: using slime mold for efficient network planning.  They selected a somewhat interesting test for efficiency, comparing the patterns of slime-mold tubes to the design of the Tokyo subway system.
The researchers distributed oat flakes in a pattern similar to the locations of major cities and turned the [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.pataprogramming.com/wp-content/tokyo-slime-mold.png"><img class="alignleft size-medium wp-image-106" title="tokyo-slime-mold" src="http://www.pataprogramming.com/wp-content/tokyo-slime-mold-209x300.png" alt="" width="209" height="300" /></a>Here&#8217;s some <a href="http://www.ox.ac.uk/media/news_stories/2010/100122.html">natural computation</a> at the University of Oxford: using slime mold for efficient network planning.  They selected a somewhat interesting test for efficiency, comparing the patterns of slime-mold tubes to the design of the Tokyo subway system.</p>
<p>The researchers distributed oat flakes in a pattern similar to the locations of major cities and turned the <em>Physarum polycephalum</em> loose in, as it were, downtown Tokyo.  As the slime mold established its transport system, the resulting networks closely resembled design of the real-world human-engineered railways.</p>
<p>From their experiments, the researchers have developed a self-organizing mathematical model and simulation that I&#8217;d like to look at more closely.</p>
<p>The full text of the article &#8220;Rules for Biologically Inspired Adaptive Network Design&#8221; by  Tero, et al. is, alas, <a href="http://www.sciencemag.org/cgi/content/abstract/327/5964/439">behind a paywall</a>, as is too much current research, though Science (the journal where it was published) does have a <a href="http://news.sciencemag.org/sciencenow/2010/01/21-01.html">popular take</a> , as do <a href="http://www.wired.com/wiredscience/2010/01/slime-mold-grows-network-just-like-tokyo-rail-system">Wired</a> and <a href="http://www.boingboing.net/2010/01/30/slime-as-engineer.html">BoingBoing</a>.</p>
<p><em>Photo credit: Science/AAAS</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.pataprogramming.com/2010/03/computation-with-slime-mold/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fractal Pizza</title>
		<link>http://www.pataprogramming.com/2010/02/fractal-pizza/</link>
		<comments>http://www.pataprogramming.com/2010/02/fractal-pizza/#comments</comments>
		<pubDate>Mon, 01 Mar 2010 00:21:59 +0000</pubDate>
		<dc:creator>paul</dc:creator>
				<category><![CDATA[Chaos]]></category>
		<category><![CDATA[food]]></category>
		<category><![CDATA[fractals]]></category>
		<category><![CDATA[pizza]]></category>

		<guid isPermaLink="false">http://www.pataprogramming.com/?p=8</guid>
		<description><![CDATA[Is three the magic number of iterations for fractal foodstuffs?  While perhaps slightly less elegant than the Sierpiński cookies, this recursively-constructed pizza makes a valiant effort:

The bottom layer is a conventional pizza crust topped with sauce, cheese, pepperoni, olives and smaller pizzas.  These smaller pizzas use English muffins as crusts, a similar array of toppings, [...]]]></description>
			<content:encoded><![CDATA[<p>Is three the magic number of iterations for fractal foodstuffs?  While perhaps slightly less elegant than the <a href="http://http://www.pataprogramming.com/2009/01/sierpinski-cookies/">Sierpiński cookies</a>, this recursively-constructed pizza makes a valiant effort:</p>
<p style="text-align: center;"><a href="http://www.urbanhonking.com/digest/archives/2006/06/fractal_pizza.html"><img class="size-full wp-image-103 aligncenter" title="Pizza-pizza-pizza" src="http://www.pataprogramming.com/wp-content/fractal-pizza.png" alt="Fractal Pizza" width="300" height="150" /></a></p>
<p>The bottom layer is a conventional pizza crust topped with sauce, cheese, pepperoni, olives and smaller pizzas.  These smaller pizzas use English muffins as crusts, a similar array of toppings, and smaller pizzas built on corn chips.  While I admire the creators&#8217; stated desire to achieve a 10-iteration pizza, I think they will have some serious logistical challenges making it past five or six.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pataprogramming.com/2010/02/fractal-pizza/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Beautiful pictures of honeycomb formation</title>
		<link>http://www.pataprogramming.com/2010/02/honeycomb-formation/</link>
		<comments>http://www.pataprogramming.com/2010/02/honeycomb-formation/#comments</comments>
		<pubDate>Sat, 27 Feb 2010 23:11:26 +0000</pubDate>
		<dc:creator>paul</dc:creator>
				<category><![CDATA[Self-Organization]]></category>
		<category><![CDATA[bees]]></category>
		<category><![CDATA[honeycomb]]></category>

		<guid isPermaLink="false">http://www.pataprogramming.com/?p=91</guid>
		<description><![CDATA[I am enchanted by these images of the process of honeycomb formation.  An enterprising apiculturist put a glass bell over a hole in the top of a hive and took a series of photos as the bees extended their residence into the new atrium.
There&#8217;s been quite a bit of research on the self-organizing behaviors [...]]]></description>
			<content:encoded><![CDATA[<p>I<a href="http://slightlywarped.com/crapfactory/curiosities/2010/bees_under_glass.htm"><img class="size-medium wp-image-92  alignright" title="bees-bell-jar-1" src="http://www.pataprogramming.com/wp-content/bees-bell-jar-1-204x300.jpg" alt="" width="204" height="300" /></a> am enchanted by <a href="http://slightlywarped.com/crapfactory/curiosities/2010/bees_under_glass.htm">these images</a> of the process of honeycomb formation.  An enterprising apiculturist put a glass bell over a hole in the top of a hive and took a series of photos as the bees extended their residence into the new atrium.</p>
<p>There&#8217;s been quite a bit of research on the self-organizing behaviors that result in these architectual patterns. For example, <a href="http://www.ulb.ac.be/sciences/use/publications/JLD/35.pdf">this paper by Belić, <em>et al.</em></a> describes how the workers build parallel combs hanging from the roof of an empty hive.  It&#8217;s interesting to observe how the cylindrical chamber alters these dynamics, with the comb strands distributed relatively equally around the circumference.</p>
<p>Visit <a href="http://slightlywarped.com/crapfactory/curiosities/2010/bees_under_glass.htm">slightlywarped.com&#8217;s Curiosities</a> for the full series.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pataprogramming.com/2010/02/honeycomb-formation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eliminating a nasty, loud &#8216;crack&#8217; before playback in Ubuntu Karmic</title>
		<link>http://www.pataprogramming.com/2010/02/karmic-nasty-loud-crack/</link>
		<comments>http://www.pataprogramming.com/2010/02/karmic-nasty-loud-crack/#comments</comments>
		<pubDate>Fri, 19 Feb 2010 23:00:59 +0000</pubDate>
		<dc:creator>paul</dc:creator>
				<category><![CDATA[Linux and Sundry]]></category>
		<category><![CDATA[alsa]]></category>
		<category><![CDATA[hda-intel]]></category>
		<category><![CDATA[karmic]]></category>
		<category><![CDATA[Planet PLUG]]></category>
		<category><![CDATA[pulseaudio]]></category>
		<category><![CDATA[sound]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://www.pataprogramming.com/?p=79</guid>
		<description><![CDATA[Ever since installing Karmic on my main box, audio has been an intermittent annoyance.  While I like the idea behind pulseaudio, its presence in Karmic has certainly has contributed to a few headaches (made painfully worse when I imprudently tried exploring the network multicast features).  I&#8217;ve had most of the bugs worked out for a [...]]]></description>
			<content:encoded><![CDATA[<p>Ever since installing Karmic on my main box, audio has been an intermittent annoyance.  While I like the idea behind pulseaudio, its presence in Karmic has certainly has contributed to a few headaches (made painfully worse when I imprudently tried exploring the network multicast features).  I&#8217;ve had most of the bugs worked out for a while, except for one: before a sound is played back, a loud, unpleasant, sharp <strong>crack</strong> is emitted by the speakers.  After that, sound playback proceeds normally&#8230;music, further OS alert beeps, no problem.  However, after a period of idleness without any sound activity (ten seconds, in fact), the next speaker access will result in the same loud report.  Even though annoying, this problem has not been critical.</p>
<p>The box is custom-built system based around an Asus P6T motherboard, which has has an onboard RealTek ALC1200 for sound.  This shows up in Linux as</p>
<p style="padding-left: 30px;">
<pre>00:1b.0 Audio device: Intel Corporation 82801JI (ICH10 Family)
HD Audio Controller</pre>
</p>
<p>and thus uses the <em>snd_hda_intel</em> kernel module (Intel High-Definition Audio).</p>
<p>Having just had occasion to look into my <em>/etc/modprobe.d/alsa-base.conf</em>, I found this exceedingly suspicious pair of lines:</p>
<p style="padding-left: 30px;">
<pre># Power down HDA controllers after 10 idle seconds
options snd-hda-intel power_save=10 power_save_controller=N</pre>
</p>
<p>The 10-second time-out surely could not be a coincidence.</p>
<p>Sure enough, commenting it out has removed this lingering audio annoyance (which turns out to be completely unrelated to pulse).  It appears this issue is already known: <a href="https://bugs.launchpad.net/ubuntu/+source/linux/+bug/417302">https://bugs.launchpad.net/ubuntu/+source/linux/+bug/417302</a>.  As one commenter observed: &#8220;I was also affected by this. I think this is a bug &#8211; speakers should not produce unpleasant sounds for [no] apparent reason.&#8221;  This is a sentiment with which I can only agree.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pataprogramming.com/2010/02/karmic-nasty-loud-crack/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Moonlight just works</title>
		<link>http://www.pataprogramming.com/2010/01/moonlight-just-works/</link>
		<comments>http://www.pataprogramming.com/2010/01/moonlight-just-works/#comments</comments>
		<pubDate>Tue, 26 Jan 2010 03:39:43 +0000</pubDate>
		<dc:creator>paul</dc:creator>
				<category><![CDATA[Linux and Sundry]]></category>
		<category><![CDATA[moonlight]]></category>
		<category><![CDATA[Planet PLUG]]></category>
		<category><![CDATA[silverlight]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://www.pataprogramming.com/?p=68</guid>
		<description><![CDATA[On the way into Philadelphia today, my train was delayed.  While the rain seemed rather pleasant as I walked to the station, the winds had been strong enough to disrupt service.  An earlier train had been disabled on the line, blocking the tracks.  In all, it made for a thoroughly tedious experience, and [...]]]></description>
			<content:encoded><![CDATA[<p>On the way into Philadelphia today, my train was delayed.  While the rain seemed rather pleasant as I walked to the station, the winds had been strong enough to disrupt service.  An earlier train had been disabled on the line, blocking the tracks.  In all, it made for a thoroughly tedious experience, and not one to encourage me in my attempts to use public transit nor bolster my (non-existent) love for <a href="http://septa.org/">SEPTA</a>.</p>
<p>Eventually, a &#8220;rescue train&#8221; came along to extract we poor passengers from our misery.  The extraction was not timely, and rather than arriving forty-five minutes early for the lecture on a <a href="https://www.cs.drexel.edu/node/14832">multi-robot planning</a>, I arrived forty-five minutes late: just in time to miss the end.</p>
<p>You can imagine I was quite pleased, then, when a friend told me the video would be available online.  Unfortunately, the <a href="http://media.irt.drexel.edu/mediasite/Viewer/?peid=cde32cdf0959451b9aeecd15216ac6b2">link he sent me</a> was for a lecture earlier in the month.  Even more distressingly, the recording was only provided via Microsoft Silverlight.  I simply do not understand why a computer science department that runs mostly on Linux keeps returning to suckle at a Windows-only, proprietary teat.  Disgruntled, I made a note to check out <a href="http://www.mono-project.com/Moonlight">Moonlight</a> at some point.</p>
<p>Somewhat later, I ran an <code>apt-cache search moonlight</code> on my main research box (currently on Karmic), and sure enough, <code>moonlight-plugin-mozilla</code> looked plenty promising.  A simple <code>sudo aptitude install moonlight-plugin-mozilla</code>, and it was on its way.</p>
<p>I returned to writing email.  A few minutes later, I heard the sound of talking: a video was playing somewhere.  Irritated, I tried to figure out if a video one of my open tabs had launched itself.  I was somewhat gobsmacked when I found it was the lecture mentioned above: unless I somehow managed to restart Firefox in a memoryless stupor, it seems that the Moonlight plugin insinuated itself into a running Firefox 3.5.7 instance, loaded the player, and kicked off the playback without any intervention.  Impressively smooth and simple.</p>
<p>This may partially make up for my annoyance with Karmic&#8217;s compiz, which has an annoying habit of dying out from under X every day or two.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pataprogramming.com/2010/01/moonlight-just-works/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
