<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/0.33" -->
<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/"
	>

<channel>
	<title>bob</title>
	<link>http://urbvil.org/blogs/bob</link>
	<description>UV geek in residence</description>
	<pubDate>Mon, 18 Feb 2008 21:32:57 +0000</pubDate>
	<generator>http://wordpress.org/?v=0.33</generator>
	<language>en</language>
			<item>
		<title>The Best Music of &#8216;07, According to a Guy who Thinks Green Day is Kind of New and Hip</title>
		<link>http://urbvil.org/blogs/bob/2008/02/18/the-best-music-of-07-according-to-a-guy-who-thinks-green-day-is-kind-of-new-and-hip/</link>
		<comments>http://urbvil.org/blogs/bob/2008/02/18/the-best-music-of-07-according-to-a-guy-who-thinks-green-day-is-kind-of-new-and-hip/#comments</comments>
		<pubDate>Mon, 18 Feb 2008 21:32:57 +0000</pubDate>
		<dc:creator>bob</dc:creator>
		
	<category>music</category>
		<guid isPermaLink="false">http://urbvil.org/blogs/bob/2008/02/18/the-best-music-of-07-according-to-a-guy-who-thinks-green-day-is-kind-of-new-and-hip/</guid>
		<description><![CDATA[(You can listen to these tracks on Rhapsody for free &#8212; click here and download their free player when asked.)
I. Great Albums
ALBUM OF THE YEAR: Washington Square Serenade by Steve Earle
Cut: City of Immigrants
I&#8217;m sad to see Texas-born Earle moving further afield, leaving &#8220;Guitar Town&#8221; (&#8221;This place never been my home,&#8221; he laments in the [...]]]></description>
			<content:encoded><![CDATA[<p><em>(You can listen to these tracks on Rhapsody for free &#8212; click <a href="http://rhaplinks.real.com/rhaplink?rhapid=4383999&#038;type=playlist&#038;title=Playlist&#038;from=real">here</A> and download their free player when asked.)</em></p>
<p>I. Great Albums</p>
<p>ALBUM OF THE YEAR: Washington Square Serenade by Steve Earle<br />
Cut: City of Immigrants</p>
<p>I&#8217;m sad to see Texas-born Earle moving further afield, leaving &#8220;Guitar Town&#8221; (&#8221;This place never been my home,&#8221; he laments in the opening cut Nashville Blues) for New York City (I suspect he was chasing a skirt).  But so far the effect on his music has been positive, especially on my selected track City of Immigrants.  Earle tends to write the same rock and roll song over and over, but on this album he&#8217;s all over the map stylistically, with far more hits than misses.</p>
<p>Barenaked Ladies Are Me - Barenaked Ladies<br />
Cut: Running out of Ink</p>
<p>I haven&#8217;t been crazy about the Ladies with the exception of their brilliant debut album Gordon.  But they&#8217;ve shrugged off their major label and figured out how to do things their way.  This album is a gem, with singer-songwriter quality writing and top-pop-act quality arranging.</p>
<p>Alright Still - Lily Allen<br />
Cut: Smile</p>
<p>This cheeky bird from England had a huge hit with Smile across the pond, and it did OK here.  Her album packages shallowness as product, with most songs dissing ex-boyfriends (&#8221;When I see you cry/It makes me smile&#8221;) or guys with the audacity to flirt with her.  I only discovered her because I was showing a friend Rhapsody and he thought she was cute and clicked on her.</p>
<p>Five Score and Seven Years Ago - Relient K<br />
Cut: Bite my Tongue</p>
<p>If you were looking for rock on the dial in 2007, your best bet was the Christian stations.  This Green Day-esque quartet dropped a fun album with half religious themes, half young-and-in-love songs.  My favorite was probably &#8220;Faking My Own Suicide&#8221; but I chose &#8220;Bite my Tongue&#8221; as more representative.</p>
<p>Here &#038; Now - America<br />
Cut: One Chance</p>
<p>Two thirds of the trio from the &#8217;70s has been soldiering on with state fair appearances for thirty years, recording lots of albums that everyone ignored.  But suddenly it all came together again for them in a great album.  Sadly this album, one of my most-played in the first half of 2007, mysteriously got pulled from Rhapsody mid-year.</p>
<p>Lifeline - Ben Harper<br />
Cut: Fight Outta You</p>
<p>I live with a young, hip, musically-inclined theology student who turned me on to Ben Harper.</p>
<p>Soundtrack to I&#8217;m Not There - Various Artists<br />
Cut: Pressing On - John Doe</p>
<p>This album of Dylan covers could have been my album of the year but it just overwhelmed me.  It goes on for about two hours and for every cut I wish I knew when it was written, what else Dylan was writing then, and what else the covering band has done.  This one I know: about 1980, during Dylan&#8217;s evangelical era (Gotta Serve Somebody), recorded by one of the two principals of legendary L.A. punk band X.</p>
<p>II. Great Cuts from Less-Great Albums</p>
<p>Someday - John Mellencamp</p>
<p>Like &#8220;Lay My Hammer Down&#8221; from Steve Earle&#8217;s album, this is a millennial vision from a non-religious album.</p>
<p>The Simpsons Theme - Green Day</p>
<p>OK, this isn&#8217;t a great cut, it&#8217;s a proxy.  My real album of the year was Green Day&#8217;s American Idiot, released in 2003 but discovered by me in 2007 and played about 50 times.</p>
<p>Heart of Glass - The Puppini Sisters</p>
<p>This British trio got a lot of play in the NPR crowd with their Andrews Sisters-style covers of 40s hits.  Enjoyable enough, but they only broke new ground on their covers of slightly-more modern hits.  Here, someone transcribed and harmonized a skat.</p>
<p>Hop a Plane - Tegan and Sara</p>
<p>The third album from these Canadian identical twins is full of songs I almost like.</p>
<p>Living in the Future - Bruce Springsteen</p>
<p>After a two-year detour into traditional folk (see my 2006 best-of list) the Boss returns to rock.  Not any better than his old stuff, but then again not any worse.</p>
<p>South Texas Girl - Lyle Lovett</p>
<p>Probably my least-favorite LL album but still full of stuff worth paying attention to.  My family had a Ford Galaxy growing up, a close relative of the Ford Fairlane in this song, so it puts a lump in my throat.</p>
<p>The Longer the Waiting - Josh Turner</p>
<p>My favorite love song of the year.  The Irish sea-ditty is an underutilized genre among country artists.</p>
<p>Vietnam Cowboys - Ray Davies</p>
<p>Kinks&#8217; songwriter Davies delivers the album I keep hoping Mark Knoppfler&#8217;s new albums will be &#8212; mild satire, with a groove.</p>
<p>Too Much of Everything - Tinsley Ellis</p>
<p>I don&#8217;t know anything about this artist, I just loved the guitar work on this cut from someone else&#8217;s 2007 best-of-the-blues list.</p>
<p>Candyman - Christina Aguilera</p>
<p>Christina 1, Britney 0 (if the metric they care about is appearances on my best-of list).  Though Brit&#8217;s Piece of Me came close.</p>
]]></content:encoded>
			<wfw:commentRSS>http://urbvil.org/blogs/bob/2008/02/18/the-best-music-of-07-according-to-a-guy-who-thinks-green-day-is-kind-of-new-and-hip/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>Why exercise is the dumbest thing ever</title>
		<link>http://urbvil.org/blogs/bob/2007/07/28/why-exercise-is-the-dumbest-thing-ever/</link>
		<comments>http://urbvil.org/blogs/bob/2007/07/28/why-exercise-is-the-dumbest-thing-ever/#comments</comments>
		<pubDate>Sun, 29 Jul 2007 03:26:49 +0000</pubDate>
		<dc:creator>bob</dc:creator>
		
	<category>Uncategorized</category>
	<category>bobologue</category>
		<guid isPermaLink="false">http://urbvil.org/blogs/bob/2007/07/28/why-exercise-is-the-dumbest-thing-ever/</guid>
		<description><![CDATA[The usual business of life (coaxing food out of the earth, getting where we need to go) requires a lot of work.  But we use fossil fuels to do all the work of life for us (while making the earth less hospitable, especially for poor people in tropical countries).  And then on the [...]]]></description>
			<content:encoded><![CDATA[<p>The usual business of life (coaxing food out of the earth, getting where we need to go) requires a lot of work.  But we use fossil fuels to do all the work of life for us (while making the earth less hospitable, especially for poor people in tropical countries).  And then on the weekend we use more fossil fuels driving to the gym, where we try to cram into a couple of hours all the work we should have done just living.
</p>
]]></content:encoded>
			<wfw:commentRSS>http://urbvil.org/blogs/bob/2007/07/28/why-exercise-is-the-dumbest-thing-ever/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>Using a shell other than bash in CygWin</title>
		<link>http://urbvil.org/blogs/bob/2007/01/29/select-shell-in-cygwin/</link>
		<comments>http://urbvil.org/blogs/bob/2007/01/29/select-shell-in-cygwin/#comments</comments>
		<pubDate>Tue, 30 Jan 2007 05:41:57 +0000</pubDate>
		<dc:creator>bob</dc:creator>
		
	<category>Uncategorized</category>
	<category>linux troubleshooting</category>
		<guid isPermaLink="false">http://urbvil.org/blogs/bob/2007/01/29/select-shell-in-cygwin/</guid>
		<description><![CDATA[(OK, I realize CygWin is not linux, but I&#8217;m not making up another category &#8212; this is filed under linux troubleshooting).
I haven&#8217;t found any kind of a &#8216;chsh&#8217; facility in CygWin, so I did it by hand.  I edited /cygwin/cygwin.bat, replacing the line &#8220;bash &#8211;login -i&#8221; with &#8220;tcsh -l&#8221; (((edited 20070729 to add -l))).
(((edited [...]]]></description>
			<content:encoded><![CDATA[<p>(OK, I realize CygWin is not linux, but I&#8217;m not making up another category &#8212; this is filed under linux troubleshooting).</p>
<p>I haven&#8217;t found any kind of a &#8216;chsh&#8217; facility in CygWin, so I did it by hand.  I edited /cygwin/cygwin.bat, replacing the line &#8220;bash &#8211;login -i&#8221; with &#8220;tcsh -l&#8221; (((edited 20070729 to add -l))).</p>
<p>(((edited 20070729 None of the following is needed anymore, now that I added the -l for login to the tcsh command)))</p>
<p><em>I don&#8217;t know how bash gets its PATH; it&#8217;s not in /etc/bash.bashrc or the default ~/.bashrc.  But somehow when I started CygWin with bash it had /usr/local/bin:/usr/bin:/bin before the Windows path in its $PATH.  So I modified my ~/.cshrc to add those:</p>
<p>setenv PATH &#8220;/home/Admin/bin:/usr/local/bin:/usr/bin:/bin:$PATH&#8221;</p>
<p>Finally, I was still getting bash (actually /bin/sh) as the inferior shell in emacs.  After reading shell.el, I fixed this by defining a SHELL variable in my environment &#8212; again adding to my .cshrc,</p>
<p>setenv SHELL /bin/tcsh</em>
</p>
]]></content:encoded>
			<wfw:commentRSS>http://urbvil.org/blogs/bob/2007/01/29/select-shell-in-cygwin/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>The Best Tracks of 2006, according to a 44-year-old bald white guy</title>
		<link>http://urbvil.org/blogs/bob/2007/01/28/best-tracks-of-2006/</link>
		<comments>http://urbvil.org/blogs/bob/2007/01/28/best-tracks-of-2006/#comments</comments>
		<pubDate>Mon, 29 Jan 2007 05:14:51 +0000</pubDate>
		<dc:creator>bob</dc:creator>
		
	<category>music</category>
		<guid isPermaLink="false">http://urbvil.org/blogs/bob/2007/01/28/best-tracks-of-2006/</guid>
		<description><![CDATA[Hi all &#8212; this year I subscribed to a streaming music service, so I could listen to albums without buying them.  So I heard far more new music this year than I usually do, and it turns out I liked a lot of it.  Sure, an embarrassing fraction of what I liked was [...]]]></description>
			<content:encoded><![CDATA[<p>Hi all &#8212; this year I subscribed to a streaming music service, so I could listen to albums without buying them.  So I heard far more new music this year than I usually do, and it turns out I liked a lot of it.  Sure, an embarrassing fraction of what I liked was by aging rockers I listened to as a teenager, but I still think it&#8217;s pretty good.</p>
<p>You can access my playlist on Rhapsody here:</p>
<p><a href="http://rhaplinks.real.com/rhaplink?rhapid=2939615&#038;type=playlist&#038;title=Best+of+%2706%2C+According+to+a+44-Year-Old+Bald+White+Guy&#038;from=real ">Click here</a></p>
<p>You can even listen to it!  When you click on a play button it will pop up the Rhapsody Player window.  If you haven&#8217;t used Rhapsody before you&#8217;ll have to go through an install process, but I will vouch that the plugin is not malware, and it even works on Linux!  (Anyone can listen to something like 25 songs a month for free; to hear more you have to subscribe.)</p>
<p>Anyway, on to my choices:</p>
<p><em>Thunder on the Mountain</em> by <strong>Bob Dylan</strong></p>
<p>From the album of the year, in my opinion.  Bob is back with a collection of all original material that finds a groove early on and stays in it all record long.  All killer no filler.  I could have picked any of a half dozen tracks from this record; none stand out as better than the others.</p>
<p><em>Back to Earth</em> by <strong>Willie Nelson</strong></p>
<p>This maybe doesn&#8217;t deserve to be on the list on its own merits but was a sentimental pick &#8212; I saw Willie perform this at Hollywood Bowl a few weeks before it was released.  And it is a fine bit of songwriting, though the performance here is uninspired.</p>
<p><em>O Mary Don&#8217;t You Weep</em> by <strong>Bruce Springsteen</strong></p>
<p>A barely-recognizable boss on a strong album of folk songs made famous by Pete Seeger.</p>
<p><em>The Lighthouse&#8217;s Tale</em> by <strong>Nickel Creek</strong></p>
<p>This is a bit of a cheat &#8212; this song has been out for a few years but did appear on a greatest hits album in 2006. But this band was new to me in 2006, a favorite of my new housemate James.  Bluegrass for Generation Y.</p>
<p><em>Crazy</em> by <strong>Gnarls Barkley</strong></p>
<p>When Gnarls Barkley started getting popular I assumed that with a name like that they would be too rap for me.  Then I heard the music.</p>
<p><em>The Yeah Yeah Yeah Song</em> by <strong>Flaming Lips</strong></p>
<p>I thought this went in this, the hip new bands section of my playlist.  But James tells me they&#8217;re a 90s band that made a comeback.  I hated this song the first time I heard it but it grew on me.</p>
<p><em>Chinese Translation</em> by <strong>M. Ward</strong></p>
<p>This is my current favorite song, combining shallow pop sensibility with a slightly-profound lyric.</p>
<p><em>Mas Que Nada</em> by <strong>Sergio Mendes, remixed by The Black Eyed Peas</strong></p>
<p>This is the coolest track from an album of hip-hop remixes of Mendes tunes &#8212; unfortunately still not as cool as this 1972 original:</p>
<p><a href="http://www.rhapsody.com/sergiomendes/foursider/masquenada"><br />
click here</a></p>
<p><em>Sea of Love</em> by <strong>Tom Waits</strong></p>
<p>Tom waits doesn&#8217;t just cover a song, he smothers it, almost strangles it.</p>
<p><em>It&#8217;s a Heartache</em> by <strong>Rod Steward</strong></p>
<p>OK, I&#8217;m not proud of this choice.  But Stewart is, AFAIK, the first aging rocker recording an album of standards to choose <em>rock</em> standards.  And he makes them his own &#8212; when listening to his covers, I can&#8217;t remember what the original sounded like.</p>
<p><em>O Come All Ye Faithful</em> by <strong>Twisted Sister</strong></p>
<p>You might assume Twisted Sister&#8217;s Christmas album would be all tongue in cheek, and much of it is.  But this, the only religious song on the album, is done straight up, and it works for me.</p>
<p><em>Like the 309</em> by <strong>Johnny Cash</strong></p>
<p>Another sentimental pick &#8212; the last song Johnny Cash wrote.  Cash had a busy 2006, releasing five albums including two live albums &#8212; pretty good for a dead guy!  I don&#8217;t think it&#8217;s a great song, but does feature some nice three-part guitar work.</p>
<p>OK, that&#8217;s it for 2006.  Stay tuned, 2007 is already shaping up to be another good year for aging boomers like me &#8212; America has a surprisingly strong album of originals out, and John Mellencamp has released one that seemed a little preachy on a first listen but is growing on me.
</p>
]]></content:encoded>
			<wfw:commentRSS>http://urbvil.org/blogs/bob/2007/01/28/best-tracks-of-2006/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>bogofilter and RMAIL</title>
		<link>http://urbvil.org/blogs/bob/2006/11/25/bogofilter-and-rmail/</link>
		<comments>http://urbvil.org/blogs/bob/2006/11/25/bogofilter-and-rmail/#comments</comments>
		<pubDate>Sun, 26 Nov 2006 06:12:39 +0000</pubDate>
		<dc:creator>bob</dc:creator>
		
	<category>linux troubleshooting</category>
		<guid isPermaLink="false">http://urbvil.org/blogs/bob/2006/11/25/bogofilter-and-rmail/</guid>
		<description><![CDATA[bogofilter is a facility for filtering email, declaring each to be either spam or ham.  But the docs expect a lot of the user.  They don&#8217;t really hold your hand through a failsafe way to install and use bogofilter; instead they just tell you what it&#8217;s all about and set you free to [...]]]></description>
			<content:encoded><![CDATA[<p>bogofilter is a facility for filtering email, declaring each to be either spam or ham.  But the docs expect a lot of the user.  They don&#8217;t really hold your hand through a failsafe way to install and use bogofilter; instead they just tell you what it&#8217;s all about and set you free to chart your own course.  If you use RMAIL to read your mail on a machine where the mail is delivered to you by sendmail (or any program that can incorporate procmail in your delivery chain) then here&#8217;s a recipe for getting bogofilter going.  It documents the choices I made, though of course other choices are possible.</p>
<p>I read my email on an internet server that I administer; it lives in a commercial data center and is always on and always connected to the internet with a permanent IP address.  It is a linux Fedora Core 5 (FC5) distribution running linux kernel 2.6.18.  Email addressed to me on this machine is accepted by sendmail-8.13.8.  If sendmail sees a .procmailrc file in my home directory, it will pass all my mail to the procmail program (I have procmail 3.22) instead of dropping it directly into my mail box.</p>
<p>When I am logged on with emacs running, I can run the RMAIL program which transfers any messages it finds in my mail box into my RMAIL file.</p>
<p>So my basic plan to get going with bogofilter is to create a .procmailrc file that causes procmail to run bogofilter.  If bogofilter decides the message is spam, I just output it to a special mailbox that I will almost never look at.  If bogofilter is not sure the message is spam (if it classifies it either as ham or as unsure) then I will have procmail drop the mail in my normal system mail box.  This is going on all the time, whether I am logged in or not.  When I do log in and run emacs/RMAIL, only messages that are in my normal system mail box get read.  Spam just accumulates in the special mail box, and I can glance at it every day or two to see if I am losing legitimate mail to my spam box.</p>
<p>When you first download bogofilter, either from source or from an RPM, it has logic but it has no data.  Before it can begin classifying your email as spam or ham, it needs data on your email.  So I started sorting my email a week before I installed bogofilter.  I&#8217;ve been getting around 400 spams a day, and about 30 emails that I want to read.  So during this week, I continued to let everything get delivered into my RMAIL file.  Then, I copied every single message out of my RMAIL file into one of two files &#8212; one file for spam and one file for ham.  To do this, I used the Ctrl-O command in RMAIL, which copies the current message to a unix-mbox-format file.  So if I was in RMAIL and I typed &#8220;Ctrl-O~/spam.mbox<RET>&#8221; then the current message would get appended to spam.mbox in my home directory.  I used keyboard macros to make this easy &#8212; specifically, I defined a keyboard macro for spam, named it, and attached it to F9; and defined a different keyboard macro for ham, named it, and attached it to F5.  After that, as I was reading my email each day, I pressed F9 on every message that was spam and F5 on every message that was ham.  At the end of a week, I had about 2000 messages in spam.mbox and 200 messages in ham.mbox.  I would use these messages to train bogofilter.</p>
<p>Finally I was ready to install bogofilter.  Don&#8217;t be afraid to install it; it doesn&#8217;t do anything when you install it except make the program available.  You have to take additional steps before it will actually start being used.  I installed it from a FC5 RPM.  Now the &#8216;bogofilter&#8217; executable exists in /usr/bin/bogofilter.  I created my personal database by passing in my already-existing spam.mbox and ham.mbox and telling bogofilter how to classify them.  I ran the following logged in to my normal user account:</p>
<p>$ bogofilter -s -M < ~/spam.mbox<br />
$ bogofilter -n -M < ~/ham.mbox</p>
<p>The -M option means I am passing in a whole mailbox not just a single message; -s tells bogofilter that all these messages should be considered spam; -n tells bogofilter that all these messages should be considered ham.  At the end of this, bogofilter had created my personal word count database in ~/.bogofilter/wordlist.db.  Now bogofilter knows what it needs to know to start classifying my email.  However, I still haven't done anything dangerous -- though bogofilter now knows how to filter my mail, I haven't actually done anything to make it start doing so.</p>
<p>Now I was ready to create my .procmailrc script to tell procmail how I want to use bogofilter.   First, I decided I don't like the -u option in bogofilter.  When you specifiy -u, bogofilter decides if something is spam or ham, and assumes it is right so it then updates its database with all the words it found in that email.  If you later decide bogofilter made a mistake you can correct the database by calling '$ bogofilter -nS' or '$bogofilter -sN' but I didn't want to mess with that.  Maybe it works great in practice but it just rubs me the wrong way.  My plan is to rely mostly on the training I already did, and to only use mistakes to train bogofilter in the future.  If I find ham in my spam box, I will tell bogofilter it is ham and have it update its DB; likewise if I have spam in my regular mailbox I will tell bogofilter it is spam and have it update its DB.  I also left alone the config file that the RPM installed in /etc/bogofilter.cf; this config file has everything commented out so bogofilter will use all defaults.</p>
<p>So with those considerations, I developed the following .procmailrc, based partially on the examles in the bogofilter docs.</p>
<p>--------------------------------------------------------------------------<br />
# Set to yes when debugging<br />
VERBOSE=no</p>
<p># Remove ## when debugging; set to no if you want minimal logging<br />
## LOGABSTRACT=all </p>
<p># Replace $HOME/Msgs with your message directory<br />
# rules that direct mail to a folder will put the folder in this dir<br />
MAILDIR=$HOME/Mail       # Make sure this directory exists!</p>
<p># Directory for storing procmail-related files<br />
PMDIR=$HOME/.procmail</p>
<p># Put ## before LOGFILE if you want no logging (not recommended)<br />
LOGFILE=$PMDIR/log<br />
## INCLUDERC=$PMDIR/testing.rc<br />
## INCLUDERC=$PMDIR/lists.rc<br />
## INCLUDERC=$PMDIR/perl.rc</p>
<p>#<br />
# ':0' is just a magic literal introducing a new rule<br />
# lines beginning with * define a condition for selecting mail<br />
# the last line of a rule is the action to take</p>
<p># flags: f = filter, w = wait and check filter's exit code<br />
:0fw<br />
| bogofilter -e -p</p>
<p># if bogofilter choked, try again later<br />
# flags: e = error - only executes if previous rule returned an error<br />
# the MTA will retry to deliver it later<br />
# 75 is the value for EX_TEMPFAIL in /usr/include/sysexits.h<br />
:0e<br />
{ EXITCODE=75 HOST }</p>
<p># OK, anything that gets to here has been classified, and Bogosity header added<br />
:0<br />
* ^X-Bogosity: Spam, tests=bogofilter<br />
spam.mbox</p>
<p># Most mail will fall through to end, and get delivered to my mail spool<br />
-------------------------------------------------------------------<br />
When you save the .procmailrc that is the first moment that you are actually turning on filtering and diverting putative spam away from RMAIL.  I only had to wait a couple of minutes before I saw that ~/Mail/spam.mbox had been created, and when I looked in it, it contained spam!  Yay!</p>
<p>So that's basically the setup I have been running with for about a week now.</p>
<p>As for the results, I am both pleasantly surprised at how well it works and bitterly disappointed that, as well as it works, it doesn't work nearly well enough.  By using the default config file, bogofilter classifies everything as spam (spamicity > 0.99), ham (spamicity < 0.45 I think) or unknown.  So far, about 800 messages have gone to my spam.mbox, and I believe they are all spam.  I&#8217;ve received a few true personal messages and noticed that they get classified as ham with very low spamicity values.  However, I&#8217;m still getting about 200 spams a day into my RMAIL.  So with the default cutoffs and the little bit of training I&#8217;ve done so far, only about 1/2 my spam is being diverted.  Some messages with very obvious spam words (like penis and \/iagra) failed to get classified as spam.</p>
<p>I&#8217;ve defined a keyboard macro that I hit every time I see spam in my RMAIL.  It pipes the content of the RMAIL buffer to &#8216;bogofilter -s&#8217; and then deletes the message from RMAIL.  I hope with this ongoing training bogofilter will get better and better at recognizing my spam.
</p>
]]></content:encoded>
			<wfw:commentRSS>http://urbvil.org/blogs/bob/2006/11/25/bogofilter-and-rmail/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>httpd starts from command line, not from startup script</title>
		<link>http://urbvil.org/blogs/bob/2006/09/11/httpd-starts-from-command-line-not-from-startup-script/</link>
		<comments>http://urbvil.org/blogs/bob/2006/09/11/httpd-starts-from-command-line-not-from-startup-script/#comments</comments>
		<pubDate>Mon, 11 Sep 2006 20:48:41 +0000</pubDate>
		<dc:creator>bob</dc:creator>
		
	<category>linux troubleshooting</category>
		<guid isPermaLink="false">http://urbvil.org/blogs/bob/2006/09/11/httpd-starts-from-command-line-not-from-startup-script/</guid>
		<description><![CDATA[Soon after I installed Fedora Core 5 (FC5) on my server, I found that after a reboot httpd would not be running even though my SYSV startup system should have been starting it.  I subsequently found if I ran &#8216;# httpd&#8217; from the command line as root it would start, but if I tried [...]]]></description>
			<content:encoded><![CDATA[<p>Soon after I installed Fedora Core 5 (FC5) on my server, I found that after a reboot httpd would not be running even though my SYSV startup system should have been starting it.  I subsequently found if I ran &#8216;# httpd&#8217; from the command line as root it would start, but if I tried to use the SYSV startup script (&#8217;# service httpd start&#8217;) it would silently fail to start.</p>
<p>It turned out to be a selinux problem.  Recall that FC5&#8217;s &#8220;targeted policy&#8221; for selinux is to restrict only the most dangerous processes, i.e. internet services.  I guess that when you run httpd from the command line it has no special role, but when you run it from the SYSV system it has a restricted role (httpd_t).  In my case I was doing something the typical setup wouldn&#8217;t do (reading in a HTTPS SSL password from a file) which selinux was crushing.  The evidence for this was in the /var/log/messages file.</p>
<p>I went through a process of modifying the selinux policy until things worked.  Sometimes giving permission for one operation would just cause it to try a new operation that was forbidden, so it took several iterations of trying it, checking /var/log/messages for audit messages, changing the policy, and trying again.  Eventually I would up with the following list of audit messages that needed to be corrected:</p>
<p>Jul 30 11:31:33 cecosstream kernel: audit(1154284293.730:20592): avc:  denied  { execute } for  pid=9248 comm=&#8221;httpd&#8221; name=&#8221;ssl.key.dialog&#8221; dev=hda2 ino=164115 scontext=user_u:system_r:httpd_t:s0 tcontext=user_u:object_r:httpd_config_t:s0 tclass=file<br />
Jul 31 21:32:25 cecosstream kernel: audit(1154406745.527:20607): avc:  denied  { execute_no_trans } for  pid=21243 comm=&#8221;httpd&#8221; name=&#8221;ssl.key.dialog&#8221; dev=hda2 ino=164115 scontext=user_u:system_r:httpd_t:s0 tcontext=user_u:object_r:httpd_config_t:s0 tclass=file<br />
Jul 31 21:35:55 cecosstream kernel: audit(1154406955.512:20609): avc:  denied  { getattr } for  pid=21280 comm=&#8221;ssl.key.dialog&#8221; name=&#8221;utmp&#8221; dev=hda2 ino=1111943 scontext=user_u:system_r:httpd_t:s0 tcontext=system_u:object_r:initrc_var_run_t:s0 tclass=file<br />
Jul 31 21:37:46 cecosstream kernel: audit(1154407066.335:20613): avc:  denied  { read write } for  pid=21324 comm=&#8221;ssl.key.dialog&#8221; name=&#8221;utmp&#8221; dev=hda2 ino=1111943 scontext=user_u:system_r:httpd_t:s0 tcontext=system_u:object_r:initrc_var_run_t:s0 tclass=file<br />
Jul 31 21:40:17 cecosstream kernel: audit(1154407217.324:20623): avc:  denied  { lock } for  pid=21370 comm=&#8221;ssl.key.dialog&#8221; name=&#8221;utmp&#8221; dev=hda2 ino=1111943 scontext=user_u:system_r:httpd_t:s0 tcontext=system_u:object_r:initrc_var_run_t:s0 tclass=file</p>
<p>Here&#8217;s the process to turn some audit messages into policy that will allow the transactions to take place:</p>
<p># audit2allow -m local_20060731 -l < audit_20060731.txt > local_20060731.te<br />
# checkmodule -M -m -o local_20060731.mod ./local_20060731.te<br />
   checkmodule:  loading policy configuration from ./local_20060731.te<br />
   checkmodule:  policy configuration loaded<br />
   checkmodule:  writing binary representation (version 5) to local_20060731.mod<br />
# semodule_package -o local_20060731.pp -m local_20060731.mod<br />
# semodule -i ./local_20060731.pp</p>
<p>where audit_*.txt contains a list of all the avc denied messages from /var/log/messages.
</p>
]]></content:encoded>
			<wfw:commentRSS>http://urbvil.org/blogs/bob/2006/09/11/httpd-starts-from-command-line-not-from-startup-script/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>A head-scratcher: mysql, wordpress, lyceum, innodb</title>
		<link>http://urbvil.org/blogs/bob/2006/09/11/a-head-scratcher-mysql-wordpress-lyceum-innodb/</link>
		<comments>http://urbvil.org/blogs/bob/2006/09/11/a-head-scratcher-mysql-wordpress-lyceum-innodb/#comments</comments>
		<pubDate>Mon, 11 Sep 2006 20:19:52 +0000</pubDate>
		<dc:creator>bob</dc:creator>
		
	<category>linux troubleshooting</category>
		<guid isPermaLink="false">http://urbvil.org/blogs/bob/2006/09/11/a-head-scratcher-mysql-wordpress-lyceum-innodb/</guid>
		<description><![CDATA[OK, I&#8217;m not writing these posts with the expectation that any of my friends will want to read them, but in the hopes that they get into google and help some stranger somewhere solve a problem.
I installed lyceum blogging software (it&#8217;s a multi-user variant of wordpress) on my web server several weeks ago.  It [...]]]></description>
			<content:encoded><![CDATA[<p>OK, I&#8217;m not writing these posts with the expectation that any of my friends will want to read them, but in the hopes that they get into google and help some stranger somewhere solve a problem.</p>
<p>I installed lyceum blogging software (it&#8217;s a multi-user variant of wordpress) on my web server several weeks ago.  It uses a mysql database as the backend.  It worked fine for several weeks, until my server rebooted for the first time.  After that, all my lyceum web pages were broken or had no content, and the lyceum error log had tons of entries more or less like this:</p>
<p>=====database error=====<br />
Error#: 1033<br />
Error: Incorrect information in file: &#8216;./uv_lyceum/options.frm&#8217;<br />
Query: SELECT option_value FROM options WHERE option_domain = &#8217;system&#8217; AND option_name = &#8216;template&#8217; LIMIT 1<br />
========================</p>
<p>It turns out what happened is this:  when I installed lyceum, it created its DBs using a mysql backend called innodb.  A few weeks later I installed some other package (drupal I think) that suggested putting &#8220;skip innodb&#8221; in my /etc/my.cnf file.  I did so, but it didn&#8217;t take effect because I didn&#8217;t restart mysqld.  When my machine rebooted, mysql started in a state unable to deal with innodb files.  That&#8217;s what caused the above, relatively uninformative, error message.  All I had to do to fix it was comment out the skip innodb line in my.cnf, and restart mysqld.
</p>
]]></content:encoded>
			<wfw:commentRSS>http://urbvil.org/blogs/bob/2006/09/11/a-head-scratcher-mysql-wordpress-lyceum-innodb/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>I&#8217;m in bad need of some bustin&#8217; out</title>
		<link>http://urbvil.org/blogs/bob/2006/08/25/bustin-out/</link>
		<comments>http://urbvil.org/blogs/bob/2006/08/25/bustin-out/#comments</comments>
		<pubDate>Fri, 25 Aug 2006 20:24:16 +0000</pubDate>
		<dc:creator>bob</dc:creator>
		
	<category>Uncategorized</category>
		<guid isPermaLink="false">http://urbvil.org/blogs/bob/2006/08/25/bustin-out/</guid>
		<description><![CDATA[I&#8217;ve spent the week in front of my computer, mostly reading Craig&#8217;s List ads for web programmers.  After hours of composing replies, all I have to show for it is one 2nd interview (via email) and one guy who called and said he may call again if he ever has anything for me.
I&#8217;m in [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve spent the week in front of my computer, mostly reading Craig&#8217;s List ads for web programmers.  After hours of composing replies, all I have to show for it is one 2nd interview (via email) and one guy who called and said he may call again if he ever has anything for me.</p>
<p>I&#8217;m in bad need of some bustin&#8217; out.</p>
<p>Is there anybody out there?</p>
<p>Who will bust out with me?
</p>
]]></content:encoded>
			<wfw:commentRSS>http://urbvil.org/blogs/bob/2006/08/25/bustin-out/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>The Water Recycling Workshop</title>
		<link>http://urbvil.org/blogs/bob/2006/08/05/the-water-recycling-workshop/</link>
		<comments>http://urbvil.org/blogs/bob/2006/08/05/the-water-recycling-workshop/#comments</comments>
		<pubDate>Sun, 06 Aug 2006 03:16:59 +0000</pubDate>
		<dc:creator>bob</dc:creator>
		
	<category>Uncategorized</category>
		<guid isPermaLink="false">http://urbvil.org/blogs/bob/2006/08/05/the-water-recycling-workshop/</guid>
		<description><![CDATA[Hey everybody &#8211;
I spent yesterday at a Water Recycling Workshop, held at an organic farm/think tank at Cal Poly Pomona.  But the workshop was actually delivered by a Northern California outfit called Solar Living Institute which tries to help people apply green living ideas to their everyday lives.  In fact, SLI is hosting [...]]]></description>
			<content:encoded><![CDATA[<p>Hey everybody &#8211;</p>
<p>I spent yesterday at a Water Recycling Workshop, held at an <a href="http://www.csupomona.edu/~crs/">organic farm/think tank</a> at Cal Poly Pomona.  But the workshop was actually delivered by a Northern California outfit called <a href="http://www.solarliving.org/">Solar Living Institute</a> which tries to help people apply green living ideas to their everyday lives.  In fact, SLI is hosting a great <a href="http://www.solarliving.org/solfest2005.cfm">Festival</a> in a couple of weeks which I wish I could attend; perhaps I&#8217;ll make it up there next year.  But then, it wasn&#8217;t actually an SLI person who delivered the training, but a guy from the Orange County Water District.</p>
<p>His name was Dr. Stephen Lyon and this man <em>knows water</em>.  The morning was spent on stuff that wasn&#8217;t really relevant to what I want to do with water in my life, but it was fascinating &#8212; he crammed a one-semester course on water chemistry and the hydrologic cycle into an hour and a half (ask me about the different roles of nitrates and nitrites &#8212; go ahead, ask me!) and traditional large scale water treatment.  In the afternoon he got to what I was interested in &#8212; greywater systems (cleaning up your bathwater enough to use for watering plants, so the city doesn&#8217;t have to pay to treat it) and rainwater harvesting.</p>
<p>It kind of made me wish I&#8217;d become an environmental engineer, instead of whatever it is I&#8217;ve become.  I think he&#8217;s had an interesting career so far (he&#8217;s a few years older than me) and had a chance to both do some science and make a difference.  And I&#8217;m sure he&#8217;s made a lot more money than me too!
</p>
]]></content:encoded>
			<wfw:commentRSS>http://urbvil.org/blogs/bob/2006/08/05/the-water-recycling-workshop/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>I&#8217;m so glad I got the blogs working!</title>
		<link>http://urbvil.org/blogs/bob/2006/08/05/im-so-glad-i-got-the-blogs-working/</link>
		<comments>http://urbvil.org/blogs/bob/2006/08/05/im-so-glad-i-got-the-blogs-working/#comments</comments>
		<pubDate>Sun, 06 Aug 2006 03:01:48 +0000</pubDate>
		<dc:creator>bob</dc:creator>
		
	<category>Uncategorized</category>
		<guid isPermaLink="false">http://urbvil.org/blogs/bob/2006/08/05/im-so-glad-i-got-the-blogs-working/</guid>
		<description><![CDATA[It took me about 8 hours to get through the steps in the &#8220;Five Minute Installation Instructions&#8221; document, but now we have blogs at Urban Village!
I probably won&#8217;t blog here much; my main way to communicate with the wider world is through the Bobologue which doesn&#8217;t quite fit the rules of a blog.  But [...]]]></description>
			<content:encoded><![CDATA[<p>It took me about 8 hours to get through the steps in the &#8220;Five Minute Installation Instructions&#8221; document, but now we have blogs at Urban Village!</p>
<p>I probably won&#8217;t blog here much; my main way to communicate with the wider world is through <a href="http://www.urbvil.org/people/bob/writings/bobologue">the Bobologue</a> which doesn&#8217;t quite fit the rules of a blog.  But I may throw a short news item up occasionally.
</p>
]]></content:encoded>
			<wfw:commentRSS>http://urbvil.org/blogs/bob/2006/08/05/im-so-glad-i-got-the-blogs-working/feed/</wfw:commentRSS>
		</item>
	</channel>
</rss>
