<?xml version="1.0" encoding="utf-8"?>
<!-- generator="wordpress/2.0.4" -->
<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>A Geek for God</title>
	<link>http://www.geekforgod.com</link>
	<description>The ramblings of a Christian geek</description>
	<pubDate>Thu, 19 Jul 2007 03:56:03 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.0.4</generator>
	<language>en</language>
			<item>
		<title>Learning to create Debian/Ubuntu packages</title>
		<link>http://www.geekforgod.com/2007/07/18/learning-to-create-debianubuntu-packages/</link>
		<comments>http://www.geekforgod.com/2007/07/18/learning-to-create-debianubuntu-packages/#comments</comments>
		<pubDate>Thu, 19 Jul 2007 03:53:41 +0000</pubDate>
		<dc:creator>Robin Munn</dc:creator>
		
	<category>Geek</category>
		<guid isPermaLink="false">http://www.geekforgod.com/2007/07/18/learning-to-create-debianubuntu-packages/</guid>
		<description><![CDATA[I&#8217;m starting to learn to create .deb packages for Debian or Ubuntu. A quick breadcrumb trail for myself, to remind me of where I&#8217;ve found useful information:

Packaging session from Ubuntu Open Week (and part 2)
PackagingBasics from Ubuntu wiki
PbuilderHowto from Ubuntu wiki

]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m starting to learn to create .deb packages for Debian or Ubuntu. A quick breadcrumb trail for myself, to remind me of where I&#8217;ve found useful information:</p>
<ul>
<li><a href="https://wiki.ubuntu.com/MeetingLogs/openweekfeisty/packaging">Packaging session from Ubuntu Open Week</a> (and <a href="https://wiki.ubuntu.com/MeetingLogs/openweekfeisty/packaging2">part 2</a>)</li>
<li><a target="_parent" href="https://wiki.ubuntu.com/MOTU/School/PackagingBasics">PackagingBasics from Ubuntu wiki</a></li>
<li><a target="_parent" href="https://wiki.ubuntu.com/PbuilderHowto">PbuilderHowto from Ubuntu wiki</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRSS>http://www.geekforgod.com/2007/07/18/learning-to-create-debianubuntu-packages/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>Making SVN trust a new root CA certificate</title>
		<link>http://www.geekforgod.com/2006/12/01/making-svn-trust-a-new-root-ca-certificate/</link>
		<comments>http://www.geekforgod.com/2006/12/01/making-svn-trust-a-new-root-ca-certificate/#comments</comments>
		<pubDate>Fri, 01 Dec 2006 22:25:06 +0000</pubDate>
		<dc:creator>Robin Munn</dc:creator>
		
	<category>Geek</category>
		<guid isPermaLink="false">http://www.geekforgod.com/2006/12/01/making-svn-trust-a-new-root-ca-certificate/</guid>
		<description><![CDATA[If you&#8217;re using Subversion to connect to an HTTPS repository that&#8217;s signed by a non-standard root certificate &#8212; such as a CACert.org certificate, for example &#8212; here&#8217;s how to do it on Linux or OS X. (Windows users: sorry, you&#8217;re out of luck. I haven&#8217;t developed on Windows since 1999, and I don&#8217;t ever want [...]]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;re using Subversion to connect to an HTTPS repository that&#8217;s signed by a non-standard root certificate &#8212; such as a <a href="http://www.cacert.org/">CACert.org</a> certificate, for example &#8212; here&#8217;s how to do it on Linux or OS X. (Windows users: sorry, you&#8217;re out of luck. I haven&#8217;t developed on Windows since 1999, and I don&#8217;t ever want to go back. So the only way this post will ever be updated with Windows instructions is if someone else figures out how to do it and leaves a comment.)</p>
<ul>
<li>First, download the certificate you&#8217;re interested in, e.g. &#8220;wget http://www.cacert.org/certs/class1.crt&#8221;. I suggest storing it in /etc/ssl/certs with an appropriate name, such as &#8220;cacert-root-ca.crt&#8221;. You&#8217;ll need to have root privileges (use &#8220;sudo&#8221;) to get write access to the /etc/ssl/certs directory.</li>
<li>Run &#8220;openssl md5 /etc/ssl/certs/cacert-root-ca.crt&#8221; and/or &#8220;openssl sha1 /etc/ssl/certs/cacert-root-ca.crt&#8221; and compare the results against the certificate fingerprint given on the website. The website you&#8217;re downloading this certificate from <strong><em>does</em></strong> give you its MD5 and/or SHA1 fingerprints, <em>right</em>? (If not, what the heck are you doing trusting a certificate you haven&#8217;t verified?!?)</li>
<li>Run &#8220;openssl x509 -text -in /etc/ssl/certs/cacert-root-ca.crt&#8221; to verify that the certificate&#8217;s data (company name and so on) looks correct.</li>
<li>If the above fails, add &#8220;-inform der&#8221; to the command above: maybe you accidentally downloaded the DER-encoded certificate instead of the PEM-encoded certificate.</li>
<li>If you have the DER version, you&#8217;ll need to convert it to PEM. Run &#8220;sudo openssl x509 -inform der -outform pem -in /etc/ssl/certs/cacert-root-ca.crt -out /etc/ssl/certs/cacert-root-ca.pem&#8221;. Note the &#8220;sudo&#8221; in front of that command: you&#8217;re writing to the /etc/ssl/certs directory, so you need to be root.</li>
<li>Now that you&#8217;ve got a certificate in PEM format and verified it, it&#8217;s time to edit your &#8220;~/.subversion/servers&#8221; file. In the &#8220;[globals]&#8221; section, add the line &#8220;ssl-authority-files = /etc/ssl/certs/cacert-root-ca.crt&#8221;. The &#8220;ssl-authority-files&#8221; option is a colon-delimited list, so if you already have something there and are adding the second certificate to it, use a colon to separate the two paths. If you&#8217;re adding a third certificate to the list, then you should already see the colon and be able to figure it out. <img src='http://www.geekforgod.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </li>
</ul>
<p>I mostly figured this out from the &#8220;<a href="http://svnbook.red-bean.com/nightly/en/svn.serverconfig.httpd.html#svn.serverconfig.httpd.authn.sslcerts">SSL Certificate Management</a>&#8221; section of the <a href="http://svnbook.red-bean.com/">Subversion book</a>. Which I highly recommend reading, BTW.</p>
<p>I hope this helps someone else spend a little less time on Google figuring out how to trust a new root CA.
</p>
]]></content:encoded>
			<wfw:commentRSS>http://www.geekforgod.com/2006/12/01/making-svn-trust-a-new-root-ca-certificate/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>Interesting ideas for human-computer interaction</title>
		<link>http://www.geekforgod.com/2006/08/05/interesting-ideas-for-human-computer-interaction/</link>
		<comments>http://www.geekforgod.com/2006/08/05/interesting-ideas-for-human-computer-interaction/#comments</comments>
		<pubDate>Sat, 05 Aug 2006 13:00:08 +0000</pubDate>
		<dc:creator>Robin Munn</dc:creator>
		
	<category>Geek</category>
		<guid isPermaLink="false">http://www.geekforgod.com/2006/08/05/interesting-ideas-for-human-computer-interaction/</guid>
		<description><![CDATA[There&#8217;s a research project at University of Toronto that&#8217;s exploring different ideas for how people interact with computers. Here&#8217;s an interesting new way of looking at the &#8220;desktop&#8221; metaphor. There&#8217;s some rather clever ideas there.

]]></description>
			<content:encoded><![CDATA[<p>There&#8217;s a research project at University of Toronto that&#8217;s exploring different ideas for how people interact with computers. <a href="http://www.youtube.com/watch?v=M0ODskdEPnQ">Here</a>&#8217;s an interesting new way of looking at the &#8220;desktop&#8221; metaphor. There&#8217;s some rather clever ideas there.
</p>
]]></content:encoded>
			<wfw:commentRSS>http://www.geekforgod.com/2006/08/05/interesting-ideas-for-human-computer-interaction/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>A step-by-step SQLAlchemy tutorial</title>
		<link>http://www.geekforgod.com/2006/05/04/a-step-by-step-sqlalchemy-tutorial/</link>
		<comments>http://www.geekforgod.com/2006/05/04/a-step-by-step-sqlalchemy-tutorial/#comments</comments>
		<pubDate>Thu, 04 May 2006 14:01:25 +0000</pubDate>
		<dc:creator>Robin Munn</dc:creator>
		
	<category>Python</category>
		<guid isPermaLink="false">http://www.geekforgod.com/2006/05/04/a-step-by-step-sqlalchemy-tutorial/</guid>
		<description><![CDATA[SQLAlchemy is a very useful database-access library for Python. It&#8217;s got excellent documentation; but what it was missing until recently was a tutorial. I wrote a step-by-step SQLAlchemy tutorial to fill in the gap. Of course, the day after I wrote it, SQLAlchemy&#8217;s author posted the tutorial that he&#8217;d been working on, so I just [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.sqlalchemy.org/">SQLAlchemy</a> is a very useful database-access library for Python. It&#8217;s got excellent documentation; but what it was missing until recently was a tutorial. I wrote <a href="http://www.rmunn.com/sqlalchemy-tutorial/tutorial.html">a step-by-step SQLAlchemy tutorial</a> to fill in the gap. Of course, the day after I wrote it, SQLAlchemy&#8217;s author posted the tutorial that <em>he&#8217;d</em> been working on, so I just duplicated his efforts. <img src='http://www.geekforgod.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Nevertheless, it might be useful to someone, so I put it up anyway.
</p>
]]></content:encoded>
			<wfw:commentRSS>http://www.geekforgod.com/2006/05/04/a-step-by-step-sqlalchemy-tutorial/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>He is risen!</title>
		<link>http://www.geekforgod.com/2006/04/16/he-is-risen/</link>
		<comments>http://www.geekforgod.com/2006/04/16/he-is-risen/#comments</comments>
		<pubDate>Sun, 16 Apr 2006 20:05:34 +0000</pubDate>
		<dc:creator>Robin Munn</dc:creator>
		
	<category>Faith</category>
		<guid isPermaLink="false">http://www.geekforgod.com/2006/04/16/he-is-risen/</guid>
		<description><![CDATA[Today is the day of Pascha, more commonly known in English as Easter. (At least in the Western tradition &#8212; the Eastern tradition will celebrate it one week later this year). It is, bar none, the most important celebration of the year for Christians, more important even than Christmas. Christmas is when we celebrate Christ&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>Today is the day of <a href="http://en.wikipedia.org/wiki/Pascha">Pascha</a>, more commonly known in English as Easter. (At least in the Western tradition &#8212; the Eastern tradition will celebrate it one week later this year). It is, bar none, the most important celebration of the year for Christians, more important even than Christmas. Christmas is when we celebrate Christ&#8217;s birth, but Pascha is when we celebrate His resurrection! Christ&#8217;s birth was the beginning of His time on Earth, but His death and resurrection were culminating point of His ministry, the whole purpose of His coming.</p>
<p>This makes Christianity a very interesting thing indeed, because it&#8217;s a faith that could be utterly destroyed if one specific event was proven to have never taken place. If someone could prove beyond the shadow of a doubt that Jesus was not raised from the dead, if archaeologists found a two-thousand-year-old body in a tomb near Jerusalem that could somehow be proven to be Jesus&#8217; body, then the foundation on which the entire edifice of Christian doctrine rests would be destroyed. Because if Jesus didn&#8217;t rise from the dead as He promised He would, then He cannot truly be God, and thus cannot save anyone from their sins. Even the Bible even says so &#8212; look at <a href="http://www.biblegateway.com/passage/?search=1%20Corinthians%2015:12-19;&#038;version=47;">1 Corinthians 15:12-19</a>.</p>
<p>But Jesus Christ did rise from the dead, and therefore we do have a hope that does not deceive us (<a href="http://www.biblegateway.com/passage/?search=1%20Corinthians%2015:20-22;&#038;version=47;">1 Corinthians 15:20-22</a>). We do not simply follow the teachings of a great religious leader, passed on after his death. Rather, we worship the Lord Jesus, who is alive today and forever! He has promised never to leave us nor forsake us, and that He will be with us always, even to the end of time. (<a href="http://www.biblegateway.com/passage/?search=Matthew%2028:18-20;&#038;version=47;">Matthew 28:18-20</a>).</p>
<p>Halleluyah! <strong>He is risen!</strong>
</p>
]]></content:encoded>
			<wfw:commentRSS>http://www.geekforgod.com/2006/04/16/he-is-risen/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>If the ball hits the turtle, it&#8217;s still in play.</title>
		<link>http://www.geekforgod.com/2006/04/07/if-the-ball-hits-the-turtle-its-still-in-play/</link>
		<comments>http://www.geekforgod.com/2006/04/07/if-the-ball-hits-the-turtle-its-still-in-play/#comments</comments>
		<pubDate>Fri, 07 Apr 2006 15:16:16 +0000</pubDate>
		<dc:creator>Robin Munn</dc:creator>
		
	<category>General</category>
		<guid isPermaLink="false">http://www.geekforgod.com/2006/04/07/if-the-ball-hits-the-turtle-its-still-in-play/</guid>
		<description><![CDATA[Life in Africa can be quite interesting sometimes.
Just down the street from where I work, there&#8217;s an American Recreation Center that, among other things, has a softball field, and hosts a weekly game of softball on Saturday afternoons. So on my first weekend here, I went down to the &#8220;Rec&#8221; to join in the game. [...]]]></description>
			<content:encoded><![CDATA[<p>Life in Africa can be quite interesting sometimes.</p>
<p>Just down the street from where I work, there&#8217;s an American Recreation Center that, among other things, has a softball field, and hosts a weekly game of softball on Saturday afternoons. So on my first weekend here, I went down to the &#8220;Rec&#8221; to join in the game. Midway through the game, a large turtle stumped onto the field, heading for the grassy infield. When I called attention to it, someone said, &#8220;Oh, that&#8217;s just George. He shows up often enough that he&#8217;s been written into the field rules &#8212; if the ball hits the turtle, it&#8217;s still considered in play.&#8221;</p>
<p>Where else would you find a baseball field with a turtle (actually it&#8217;s a tortoise, but everyone here seems to call it a turtle) that pays a visit regularly enough to have a local rule devoted to him?
</p>
]]></content:encoded>
			<wfw:commentRSS>http://www.geekforgod.com/2006/04/07/if-the-ball-hits-the-turtle-its-still-in-play/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>Picking up the keyboard again</title>
		<link>http://www.geekforgod.com/2006/04/06/picking-up-the-keyboard-again/</link>
		<comments>http://www.geekforgod.com/2006/04/06/picking-up-the-keyboard-again/#comments</comments>
		<pubDate>Fri, 07 Apr 2006 00:04:59 +0000</pubDate>
		<dc:creator>Robin Munn</dc:creator>
		
	<category>General</category>
		<guid isPermaLink="false">http://www.geekforgod.com/2006/04/06/picking-up-the-keyboard-again/</guid>
		<description><![CDATA[This blog has been languishing on the vine lately. I&#8217;ve hardly updated it at all for months, and when I have updated it, it&#8217;s usually been with a &#8220;Hey, here&#8217;s some extremely geeky stuff that I may want to remember later but nobody else would be interested in.&#8221;
That&#8217;s not what I want this blog to [...]]]></description>
			<content:encoded><![CDATA[<p>This blog has been languishing on the vine lately. I&#8217;ve hardly updated it at all for months, and when I have updated it, it&#8217;s usually been with a &#8220;Hey, here&#8217;s some extremely geeky stuff that I may want to remember later but nobody else would be interested in.&#8221;</p>
<p>That&#8217;s not what I want this blog to be about. I want it to be a place where I can record my thoughts, write interesting tidbits about my life, and talk about what it&#8217;s like living one&#8217;s life for God.</p>
<p>So I&#8217;m picking up the keyboard again. I&#8217;ll be posting a lot more frequently now, and on a wider variety of subjects. I have a lot of good stories waiting to be written, so stay tuned.
</p>
]]></content:encoded>
			<wfw:commentRSS>http://www.geekforgod.com/2006/04/06/picking-up-the-keyboard-again/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>PCI ID viewer for Windows</title>
		<link>http://www.geekforgod.com/2006/02/02/pci-id-viewer-for-windows/</link>
		<comments>http://www.geekforgod.com/2006/02/02/pci-id-viewer-for-windows/#comments</comments>
		<pubDate>Thu, 02 Feb 2006 22:45:45 +0000</pubDate>
		<dc:creator>Robin Munn</dc:creator>
		
	<category>Geek</category>
		<guid isPermaLink="false">http://www.geekforgod.com/2006/02/02/pci-id-viewer-for-windows/</guid>
		<description><![CDATA[I often end up working on Windows machines that don&#8217;t have the right drivers installed for this or that piece of hardware. And since Windows makes it difficult to get at the actual PCI ID&#8217;s for its devices, all you have to go on is the &#8220;Unknown Device&#8221; entry in the Device Manager control panel. [...]]]></description>
			<content:encoded><![CDATA[<p>I often end up working on Windows machines that don&#8217;t have the right drivers installed for this or that piece of hardware. And since Windows makes it difficult to get at the actual PCI ID&#8217;s for its devices, all you have to go on is the &#8220;Unknown Device&#8221; entry in the Device Manager control panel. Thanks, Microsoft, that&#8217;s <em>real</em> helpful.</p>
<p>What I need is a tool to list the PCI ID&#8217;s for all devices, and one (preferably) that&#8217;s free. I found such a tool at <a href="http://members.datafast.net.au/dft0802/">http://members.datafast.net.au/dft0802/</a>. Craig Hart has written a program called PCI32 (for Win2000, NT, XP, etc) and PCI (for Win 9x/ME) that can list the PCI ID&#8217;s of all your devices, along with the manufacturer name and model name. Very useful for grabbing exactly the right driver.
</p>
]]></content:encoded>
			<wfw:commentRSS>http://www.geekforgod.com/2006/02/02/pci-id-viewer-for-windows/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>Some useful programming links</title>
		<link>http://www.geekforgod.com/2006/02/02/some-useful-programming-links/</link>
		<comments>http://www.geekforgod.com/2006/02/02/some-useful-programming-links/#comments</comments>
		<pubDate>Thu, 02 Feb 2006 07:21:11 +0000</pubDate>
		<dc:creator>Robin Munn</dc:creator>
		
	<category>Geek</category>
		<guid isPermaLink="false">http://www.geekforgod.com/?p=48</guid>
		<description><![CDATA[A few useful programming links gleaned from various sources:

Python plugins
Continuous integration with buildbot
How to be a Programmer

]]></description>
			<content:encoded><![CDATA[<p>A few useful programming links gleaned from various sources:</p>
<ul>
<li><a href="http://base-art.net/Articles/64/">Python plugins</a></li>
<li><a href="http://agiletesting.blogspot.com/2006/02/continuous-integration-with-buildbot.html">Continuous integration with buildbot</a></li>
<li><a href="http://samizdat.mines.edu/howto/HowToBeAProgrammer.html">How to be a Programmer</a>
</ul>
]]></content:encoded>
			<wfw:commentRSS>http://www.geekforgod.com/2006/02/02/some-useful-programming-links/feed/</wfw:commentRSS>
		</item>
		<item>
		<title>Comment policy</title>
		<link>http://www.geekforgod.com/2006/01/27/comment-policy/</link>
		<comments>http://www.geekforgod.com/2006/01/27/comment-policy/#comments</comments>
		<pubDate>Fri, 27 Jan 2006 06:44:06 +0000</pubDate>
		<dc:creator>Robin Munn</dc:creator>
		
	<category>General</category>
		<guid isPermaLink="false">http://www.geekforgod.com/?p=47</guid>
		<description><![CDATA[I just deleted my first blogspam comment, so I think it&#8217;s time to write up a comment policy, before I actually start needing it. So, without further ado, here are The Rules:
1. This is my blog. Nothing obliges me to let you comment here. I do so because I&#8217;m interested in discussion, but commenting is [...]]]></description>
			<content:encoded><![CDATA[<p>I just deleted my first blogspam comment, so I think it&#8217;s time to write up a comment policy, before I actually start needing it. So, without further ado, here are <strong>The Rules</strong>:</p>
<p><strong>1.</strong> This is <em>my</em> blog. Nothing obliges me to let you comment here. I do so because I&#8217;m interested in discussion, but commenting is a privilege, not a right. If you abuse that privilege, I may take it away, either with or without warning.</p>
<p><strong>2.</strong> <em>Civilized</em> behavior only. That means no <em>ad hominem</em> attacks, no insults, no name-calling, no profanity, etc.</p>
<p><strong>3.</strong> Any comments that break rule #2 will be removed and replaced with the text &#8220;This comment has been removed by the site administrator for (insert reason here).&#8221; I <em>may</em>, at my option, place such comments under this post instead of deleting them entirely, so that anyone can see why the post was removed. If I do so, I may also censor the post involved by editing out profanity or any other offensive content, replacing it with a marker such as &#8220;<Expletive deleted>&#8220;.</p>
<p><strong>4.</strong> I will summarily delete, without notice, any comment that is nothing but blogspam (e.g., lots of links to unrelated sites like online casinos and the like).</p>
<p><strong>5.</strong> Having said all that, if you can keep your comments civil and your tone polite, I welcome disagreement with my ideas, or with other commenters&#8217; ideas. I&#8217;m not interested in this blog becoming nothing but an &#8220;echo chamber&#8221; &#8212; go ahead and disagree with me. All I ask is that you behave like a reasonable adult.
</p>
]]></content:encoded>
			<wfw:commentRSS>http://www.geekforgod.com/2006/01/27/comment-policy/feed/</wfw:commentRSS>
		</item>
	</channel>
</rss>
