<?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>ChrisAcheson.net</title>
	<atom:link href="http://chrisacheson.net/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://chrisacheson.net/blog</link>
	<description></description>
	<lastBuildDate>Fri, 20 Apr 2012 14:02:47 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>I Dislike DotNetNuke</title>
		<link>http://chrisacheson.net/blog/2012/04/20/i-dislike-dotnetnuke/</link>
		<comments>http://chrisacheson.net/blog/2012/04/20/i-dislike-dotnetnuke/#comments</comments>
		<pubDate>Fri, 20 Apr 2012 14:02:47 +0000</pubDate>
		<dc:creator>Chris Acheson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://chrisacheson.net/blog/?p=83</guid>
		<description><![CDATA[Lance McNearney nails it on Stack Overflow: Welcome to developing for DotNetNuke, where the official website provides zero documentation and everything is learned from experimentation, blogs, forums and sites attempting to sell you something.]]></description>
			<content:encoded><![CDATA[<p>Lance McNearney <a href="http://stackoverflow.com/a/2097616/844870">nails it</a> on Stack Overflow:</p>
<blockquote><p>Welcome to developing for DotNetNuke, where the official website provides zero documentation and everything is learned from experimentation, blogs, forums and sites attempting to sell you something.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://chrisacheson.net/blog/2012/04/20/i-dislike-dotnetnuke/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Promotion For New Freelance Clients</title>
		<link>http://chrisacheson.net/blog/2011/12/30/promotion-for-new-freelance-clients/</link>
		<comments>http://chrisacheson.net/blog/2011/12/30/promotion-for-new-freelance-clients/#comments</comments>
		<pubDate>Fri, 30 Dec 2011 16:32:25 +0000</pubDate>
		<dc:creator>Chris Acheson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[freelance]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://chrisacheson.net/blog/?p=79</guid>
		<description><![CDATA[I&#8217;m offering new freelance clients 50% off my regular rates on the first 10 hours of work that I do.  If you need software or web development work done, take a look at my resume, then contact me if you like what you see.  If you know someone who needs work done, feel free to [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m offering new freelance clients 50% off my regular rates on the first 10 hours of work that I do.  If you need software or web development work done, take a look at my <a href="http://chrisacheson.net/resume/">resume</a>, then <a href="http://chrisacheson.net/contact/">contact me</a> if you like what you see.  If you know someone who needs work done, feel free to send them my way!</p>
]]></content:encoded>
			<wfw:commentRss>http://chrisacheson.net/blog/2011/12/30/promotion-for-new-freelance-clients/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PGP: Migrating Away from SHA-1</title>
		<link>http://chrisacheson.net/blog/2009/05/09/pgp-migrating-away-from-sha-1/</link>
		<comments>http://chrisacheson.net/blog/2009/05/09/pgp-migrating-away-from-sha-1/#comments</comments>
		<pubDate>Sat, 09 May 2009 18:52:32 +0000</pubDate>
		<dc:creator>Chris Acheson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[encryption]]></category>
		<category><![CDATA[pgp]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://chrisacheson.net/blog/?p=69</guid>
		<description><![CDATA[The SHA-1 hash that PGP and GnuPG use by default is now looking even less secure than previously thought. It&#8217;s recommended that users begin using SHA-2, and generate new keys to replace their 1024-bit DSA keys which are dependent on SHA-1: http://www.debian-administration.org/users/dkg/weblog/48 If you understand the instructions in the link above, you should probably follow [...]]]></description>
			<content:encoded><![CDATA[<p>The SHA-1 hash that PGP and GnuPG use by default is now looking even<br />
less secure than previously thought.  It&#8217;s recommended that users begin<br />
using SHA-2, and generate new keys to replace their 1024-bit DSA keys<br />
which are dependent on SHA-1:</p>
<p><a class="moz-txt-link-rfc2396E" href="http://www.debian-administration.org/users/dkg/weblog/48">http://www.debian-administration.org/users/dkg/weblog/48</a></p>
<p>If you understand the instructions in the link above, you should<br />
probably follow them soon.  If you don&#8217;t understand them, don&#8217;t worry<br />
too much, as your keys and signatures are still mostly safe for now,<br />
they&#8217;re just not future-proof.  You&#8217;ll probably want to wait until new<br />
versions of your software are released with updated default settings,<br />
and then generate new keys.</p>
<p>I&#8217;ve generated a <a href="http://chrisacheson.net/contact/">new key</a> for myself, which I&#8217;ve signed with the old key<br />
and will be using from now on.</p>
]]></content:encoded>
			<wfw:commentRss>http://chrisacheson.net/blog/2009/05/09/pgp-migrating-away-from-sha-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Firefox Portable + GnuPG + FireGPG = CryptoFox</title>
		<link>http://chrisacheson.net/blog/2009/05/05/firefox-portable-gnupg-firegpg-cryptofox/</link>
		<comments>http://chrisacheson.net/blog/2009/05/05/firefox-portable-gnupg-firegpg-cryptofox/#comments</comments>
		<pubDate>Tue, 05 May 2009 21:59:12 +0000</pubDate>
		<dc:creator>Chris Acheson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[encryption]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[pgp]]></category>

		<guid isPermaLink="false">http://chrisacheson.net/blog/?p=65</guid>
		<description><![CDATA[I&#8217;ve been talking about this for a while, but I finally got around to doing it.  I&#8217;ve put together a software package consisting of Firefox Portable, GNU Privacy Guard, and FireGPG.  I&#8217;m calling it &#8220;CryptoFox&#8221;.  You can download it here. The idea behind this is to lower the barrier to entry for using PGP encryption.  [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been talking about this for a while, but I finally got around to doing it.  I&#8217;ve put together a software package consisting of <a href="http://portableapps.com/apps/internet/firefox_portable">Firefox Portable</a>, <a href="http://gnupg.org/">GNU Privacy Guard</a>, and <a href="http://getfiregpg.org/">FireGPG</a>.  I&#8217;m calling it &#8220;CryptoFox&#8221;.  You can download it <strong><a href="http://chrisacheson.net/cryptofox/">here</a></strong>.</p>
<p>The idea behind this is to lower the barrier to entry for using PGP encryption.  If you want to communicate privately with someone, instead of having to guide them through the install process for 3 different components, you can just have them download CryptoFox and run it.  No installation is required.</p>
<p>It&#8217;s also a little tricky to set FireGPG and GnuPG up to function portably.  If you want to run them from a USB stick on any computer, I&#8217;ve already done the hard part for you.</p>
]]></content:encoded>
			<wfw:commentRss>http://chrisacheson.net/blog/2009/05/05/firefox-portable-gnupg-firegpg-cryptofox/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>NoScript Firefox plugin secretly disables Adblock Plus</title>
		<link>http://chrisacheson.net/blog/2009/05/01/noscript-firefox-plugin-secretly-disables-adblock-plus/</link>
		<comments>http://chrisacheson.net/blog/2009/05/01/noscript-firefox-plugin-secretly-disables-adblock-plus/#comments</comments>
		<pubDate>Sat, 02 May 2009 01:22:39 +0000</pubDate>
		<dc:creator>Chris Acheson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://chrisacheson.net/blog/?p=57</guid>
		<description><![CDATA[Apparently Giorgio Maone, the developer of the NoScript extension for Firefox, has been indulging in some borderline-malware tactics in order to make sure the ads on his site don&#8217;t get blocked by the (excellent and popular) Adblock Plus extension.  This is a shame, because NoScript is a genuinely useful tool, but I no longer feel [...]]]></description>
			<content:encoded><![CDATA[<p>Apparently Giorgio Maone, the developer of the <a href="http://en.wikipedia.org/wiki/NoScript">NoScript</a> extension for Firefox, has been indulging in some borderline-malware tactics in order to make sure the ads on his site don&#8217;t get blocked by the (excellent and popular) <a href="https://addons.mozilla.org/en-US/firefox/addon/1865">Adblock Plus</a> extension.  This is a shame, because NoScript is a genuinely useful tool, but I no longer feel comfortable using it.</p>
<p>Details are available at <a href="http://adblockplus.org/blog/attention-noscript-users">this post</a> on the ABP blog.</p>
]]></content:encoded>
			<wfw:commentRss>http://chrisacheson.net/blog/2009/05/01/noscript-firefox-plugin-secretly-disables-adblock-plus/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Debian and Back Again</title>
		<link>http://chrisacheson.net/blog/2009/04/28/debian-and-back-again/</link>
		<comments>http://chrisacheson.net/blog/2009/04/28/debian-and-back-again/#comments</comments>
		<pubDate>Tue, 28 Apr 2009 19:44:36 +0000</pubDate>
		<dc:creator>Chris Acheson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://chrisacheson.net/blog/?p=48</guid>
		<description><![CDATA[I decided a few days ago that Xubuntu was just too sluggish on my old, ailing laptop. I&#8217;d heard that Crunchbang was a bit faster, so I tried it out, but X just segfaulted on startup.  The same thing had happened on Xubuntu 8.10, so I&#8217;d been sticking with 8.04.  I tried Arch next, hoping [...]]]></description>
			<content:encoded><![CDATA[<p>I decided a few days ago that <a href="http://www.xubuntu.org/">Xubuntu</a> was just too sluggish on my old, ailing laptop. I&#8217;d heard that <a href="http://crunchbanglinux.org/">Crunchbang</a> was a bit faster, so I tried it out, but X just segfaulted on startup.  The same thing had happened on Xubuntu 8.10, so I&#8217;d been sticking with 8.04.  I tried <a href="http://www.archlinux.org/">Arch</a> next, hoping that something not based on Ubuntu would fare better.</p>
<p>Arch seems like a neat distro, but it didn&#8217;t solve my problem with X.  After much digging (including a couple sessions with gdb), I found out that the newly-rewritten PCI access code in Xorg 7.4 was trying to initialize my laptop&#8217;s broken PCMCIA hardware, causing the segfault.  Someone on the #xorg-devel IRC channel also pointed out a <a href="http://cgit.freedesktop.org/xorg/lib/libpciaccess/commit/?id=9ba94caf57e3a8c3e9c6f3f5f068f4a7a7b3ff9d">patch</a> that fixes the problem.  The patch did fix the segfault, but after all that fucking around, I still couldn&#8217;t get X to actually start.  Even with the basic VGA driver, it would immediately drop me back to the command line without giving any errors at all.</p>
<p>Yesterday, I finally gave up and decided that Arch was too bleeding-edge for my poor broken laptop.  I ended up going back to <a href="http://debian.org/">Debian</a>, the first Linux distro that I ever used.  I&#8217;d originally stopped using it because the &#8220;stable&#8221; version was too conservative (and the &#8220;unstable&#8221; and &#8220;testing&#8221; versions too prone to breakage), but in this case that seems like a good thing.</p>
<p>In order to keep the machine running at a decent speed, I&#8217;m just using a basic window manager in X instead of a full desktop environment.  I&#8217;m giving <a href="http://www.xmonad.org/">xmonad</a> a try right now.  I think I&#8217;d need a higher-resolution screen to really take advantage of the &#8220;tiling window manager&#8221; concept, but I do like how it&#8217;s almost exclusively keyboard-controlled, and how it lacks space-wasting window decorations.  I&#8217;m also trying the <a href="http://vimperator.org/trac/">Vimperator</a> plugin in Firefox (or rather, <a href="http://en.wikipedia.org/wiki/Mozilla_Corporation_software_rebranded_by_the_Debian_project">Iceweasel</a>), allowing me to cut down significantly on my mouse usage.</p>
<p>I still need to delve into xmonad&#8217;s configuration, set up the status bar, find a decent xterm replacement, and install <a href="http://chrisacheson.net/blog/2009/03/21/how-to-get-profont-working-in-ubuntu/">ProFont</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://chrisacheson.net/blog/2009/04/28/debian-and-back-again/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Rochester OpenPGP Users Mailing List</title>
		<link>http://chrisacheson.net/blog/2009/04/20/rochester-openpgp-users-mailing-list/</link>
		<comments>http://chrisacheson.net/blog/2009/04/20/rochester-openpgp-users-mailing-list/#comments</comments>
		<pubDate>Mon, 20 Apr 2009 22:56:29 +0000</pubDate>
		<dc:creator>Chris Acheson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[pgp]]></category>
		<category><![CDATA[rochester]]></category>

		<guid isPermaLink="false">http://chrisacheson.net/blog/?p=44</guid>
		<description><![CDATA[The keysigning party on Saturday went well.  We decided to create a mailing list to keep in touch and discuss ways to promote PGP use locally.  From the list&#8217;s description: This group is for PGP/GnuPG users in Rochester, NY to: 1) Discuss ways of promoting the use of OpenPGP encryption 2) Arrange keysignings in order [...]]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://chrisacheson.net/blog/2009/03/26/pgp-keysigning-party-at-barcamprochester4/">keysigning party</a> on Saturday went well.  We decided to create a mailing list to keep in touch and discuss ways to promote PGP use locally.  From the list&#8217;s description:</p>
<blockquote><p>This group is for PGP/GnuPG users in Rochester, NY to:</p>
<p>1) Discuss ways of promoting the use of OpenPGP encryption<br />
2) Arrange keysignings in order to expand the local web of trust<br />
3) Get help with using PGP, GnuPG, and related programs</p></blockquote>
<p>If you&#8217;re interested in joining, you can do so <a href="http://groups.google.com/group/rocpgp">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://chrisacheson.net/blog/2009/04/20/rochester-openpgp-users-mailing-list/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Math for Programmers</title>
		<link>http://chrisacheson.net/blog/2009/04/01/math-for-programmers/</link>
		<comments>http://chrisacheson.net/blog/2009/04/01/math-for-programmers/#comments</comments>
		<pubDate>Wed, 01 Apr 2009 10:12:46 +0000</pubDate>
		<dc:creator>Chris Acheson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[math]]></category>
		<category><![CDATA[programming]]></category>

		<guid isPermaLink="false">http://chrisacheson.net/blog/?p=36</guid>
		<description><![CDATA[I bookmarked a blog post called &#8220;Math for Programmers&#8221; years ago on one of my random &#8220;scratch space&#8221; wiki pages, and just rediscovered it tonight.  I figured I&#8217;d share: The right way to learn math is breadth-first, not depth-first. You need to survey the space, learn the names of things, figure out what&#8217;s what. [...] [...]]]></description>
			<content:encoded><![CDATA[<p>I bookmarked a blog post called <a href="http://steve-yegge.blogspot.com/2006/03/math-for-programmers.html">&#8220;Math for Programmers&#8221;</a> years ago on one of my random <a href="http://ant-hill.org/ChrisAcheson/Scratch_Space">&#8220;scratch space&#8221; wiki pages</a>, and just rediscovered it tonight.  I figured I&#8217;d share:</p>
<blockquote><p>The right way to learn math is breadth-first, not depth-first. You need to survey the space, learn the names of things, figure out what&#8217;s what. [...]</p>
<p>I think the best way to start learning math is to spend 15 to 30 minutes a day surfing in Wikipedia. It&#8217;s filled with articles about thousands of little branches of mathematics. You start with pretty much any article that seems interesting (e.g. <a href="http://en.wikipedia.org/wiki/String_theory">String theory</a>, say, or the <a href="http://en.wikipedia.org/wiki/Fourier_transform">Fourier transform</a>, or <a href="http://en.wikipedia.org/wiki/Tensor">Tensors</a>, anything that strikes your fancy.) Start reading. If there&#8217;s something you don&#8217;t understand, click the link and read about it. Do this recursively until you get bored or tired.</p></blockquote>
<p>My timing on this is interesting.  Over the past few days I&#8217;ve started playing a bit of poker (Texas hold &#8216;em, against computer players in <a href="http://pokerth.net/">PokerTH</a>), in lieu of my usual habit of compulsively playing quick games of <a href="http://en.wikipedia.org/wiki/Freecell">FreeCell</a> at random moments.  For the sheer nerdy fun of it, I want to write a program to calculate the exact odds that I have a better hand than all of my opponents, given the cards that are visible at any particular time (pre-flop, flop, turn, and river).</p>
<p>I&#8217;m sure it&#8217;s a solvable problem, but I&#8217;m having trouble simplifying the staggering number of permutations involved.  For example, assuming you&#8217;ve got your two-card hand, there are 1,225 possible hands that a single opponent could have from the remaining 50 cards.  If you have six opponents, there are approximately 9×10<sup>17</sup> possible combinations of hands that they could have.  We only care about the best hand among our opponents, so I think we can simplify things by assuming that the math is the same for six opponents as it is for one, except that any given hand is six times more likely to occur.</p>
<p>Anyway, I&#8217;m thinking of reading up on <a href="http://en.wikipedia.org/wiki/Combinatorics">combinatorics</a>.  I got a bit from my discrete math and probability &amp; statistics courses in college, but I feel like I&#8217;m missing something here.  I&#8217;ve always been interested in probability and permutations in games, so it seems like a good subject to pursue.</p>
]]></content:encoded>
			<wfw:commentRss>http://chrisacheson.net/blog/2009/04/01/math-for-programmers/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>PGP Keysigning Party at BarCampRochester4</title>
		<link>http://chrisacheson.net/blog/2009/03/26/pgp-keysigning-party-at-barcamprochester4/</link>
		<comments>http://chrisacheson.net/blog/2009/03/26/pgp-keysigning-party-at-barcamprochester4/#comments</comments>
		<pubDate>Thu, 26 Mar 2009 21:17:40 +0000</pubDate>
		<dc:creator>Chris Acheson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[barcamp]]></category>
		<category><![CDATA[encryption]]></category>
		<category><![CDATA[pgp]]></category>
		<category><![CDATA[rochester]]></category>

		<guid isPermaLink="false">http://chrisacheson.net/blog/?p=21</guid>
		<description><![CDATA[I&#8217;m organizing a PGP keysigning party at this year&#8217;s BarCamp Rochester.  For those of you who are unfamiliar with PGP, it&#8217;s a system for sending encrypted messages.  More information can be found in this guide.  The purpose of a keysigning party is to integrate yourself into and expand PGP&#8217;s web of trust, which prevents participants [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m organizing a PGP <a href="http://en.wikipedia.org/wiki/Key_signing_party">keysigning party</a> at this year&#8217;s <a href="http://barcamproc.org/">BarCamp Rochester</a>.  For those of you who are unfamiliar with PGP, it&#8217;s a system for sending encrypted messages.  More information can be found in <a href="http://radgeek.com/gt/2008/10/29/how_to/">this guide</a>.  The purpose of a keysigning party is to integrate yourself into and expand PGP&#8217;s <a href="http://en.wikipedia.org/wiki/Web_of_trust">web of trust</a>, which prevents participants from being tricked into addressing their messages to a clever eavesdropper rather than to their indended recipient.</p>
<p>BarCamp will take place on April 18th, on the third floor of the <a href="http://barcamproc.org/phase3/images/e/ec/Building70.png">GCCIS building (#70)</a> on <a href="http://www.rit.edu/">RIT</a> campus.  The keysigning party will happen at 2:00 PM.  If you&#8217;re interested in attending, you&#8217;ll need to do a little bit of preparation:</p>
<h4>Before the Party</h4>
<ol>
<li><a href="http://chrisacheson.net/contact/">Send me an email</a> to let me know you&#8217;ll be there.  This isn&#8217;t absolutely necessary, but I&#8217;d like to get a rough estimate of how big the party will be.  You&#8217;re also encouraged (though not strictly required) to <a href="http://barcamproc.org/">sign up for BarCamp</a> and give some kind of presentation.</li>
<li>If you don&#8217;t have one already, create a PGP keypair.</li>
<li>Print out slips of paper with your key&#8217;s fingerprint, along with your name and the email address associated with the key.  You should be able to fit several of these onto a single sheet of paper (18 if you lay them out <a href="http://chrisacheson.net/blog/wp-content/uploads/2009/03/keysigning_party_fingerprints_example.pdf">like so</a>).  As of this writing I don&#8217;t know what the turnout will be like, but I&#8217;m guessing one sheet will be enough.</li>
<li>Bring a pen and the slips of paper with you to the party.  Also bring identification, preferably two forms, at least one of which is a photo ID and one of which is government-issued.  Driver&#8217;s license, passport, etc.  Don&#8217;t bring a computer (or if you do, leave it powered off), you won&#8217;t need it.</li>
</ol>
<h4><span id="more-21"></span>During the Party</h4>
<p>The party will be run in a simple ad-hoc format.  You and each other participant will:</p>
<ol>
<li>Trade key fingerprints.  You give them one of your slips of paper, and they give you one of theirs.</li>
<li>Check identification.  Make sure that the photo on the ID matches the person, and that the name on the ID matches the name on their slip of paper.</li>
<li>If their ID checks out, and you&#8217;re comfortable asserting to the world that this person is who they say they are, write your initials on the slip of paper that they gave you.</li>
</ol>
<p>Once you&#8217;ve traded fingerprints with everyone, the formal part of the party is over.  If there&#8217;s time left, we can have an informal discussion (perhaps about promoting PGP use in Rochester?), or you can just head out.</p>
<h4>After the Party</h4>
<p>Once you get home, you&#8217;ll need to actually sign the keys of the party-goers.  For each slip of paper that you initialled:</p>
<ol>
<li>Acquire the corresponding key from the public key servers.  You can search by name, email address, or fingerprint.</li>
<li>Verify that the name, email address, and fingerprint of the key you&#8217;ve downloaded matches the name, email address, and fingerprint on the slip of paper you were given.</li>
<li>Using your PGP program, sign the key.</li>
<li>Export the signed key and send it in an encrypted email to the address listed on the key.  Don&#8217;t upload it back to the public key servers.  This ensures that the email address really does belong to the person who possesses the key.</li>
</ol>
<p>When you receive signatures from others, import them into your keyring and update your key on the public key servers.</p>
<p>That&#8217;s pretty much it.  If you have any questions, either <a href="http://chrisacheson.net/contact/">email me</a> or leave a comment here.</p>
]]></content:encoded>
			<wfw:commentRss>http://chrisacheson.net/blog/2009/03/26/pgp-keysigning-party-at-barcamprochester4/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>How to get ProFont working in Ubuntu</title>
		<link>http://chrisacheson.net/blog/2009/03/21/how-to-get-profont-working-in-ubuntu/</link>
		<comments>http://chrisacheson.net/blog/2009/03/21/how-to-get-profont-working-in-ubuntu/#comments</comments>
		<pubDate>Sat, 21 Mar 2009 07:16:21 +0000</pubDate>
		<dc:creator>Chris Acheson</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://chrisacheson.net/blog/?p=8</guid>
		<description><![CDATA[At the suggestion of a friend, I&#8217;ve recently started using a font called &#8220;ProFont&#8221; for my programming and other terminal-related activities.  It&#8217;s quite nice, and designed to be readable at small sizes.  I use it at 8 point: I don&#8217;t actually use 80&#215;24 anymore, but you get the idea. It didn&#8217;t immediately work when I [...]]]></description>
			<content:encoded><![CDATA[<p>At the suggestion of a friend, I&#8217;ve recently started using a font called <a href="http://www.tobias-jung.de/seekingprofont/">&#8220;ProFont&#8221;</a> for my programming and other terminal-related activities.  It&#8217;s quite nice, and designed to be readable at small sizes.  I use it at 8 point:</p>
<div id="attachment_10" class="wp-caption aligncenter" style="width: 502px"><img class="size-full wp-image-10" title="ProFont Konsole" src="http://chrisacheson.net/blog/wp-content/uploads/2009/03/profont_konsole.png" alt="8 point ProFont in an 80x24 terminal" width="492" height="327" /><p class="wp-caption-text">8 point ProFont in an 80x24 terminal</p></div>
<p>I don&#8217;t actually use 80&#215;24 anymore, but you get the idea.</p>
<p>It didn&#8217;t immediately work when I installed it on my main machine (which runs Kubuntu), and it took some digging to figure out why.  It turns out that fonts on modern Linux machines are handled by a horrible chimera.  There&#8217;s the new font system, &#8220;fontconfig&#8221;, as well as the old &#8220;core X font subsystem&#8221;.  The instructions that I had found online installed ProFont into the old font system, but not into the new one.  I also tried using the GUI font configuration tool provided by KDE, but it did nothing.</p>
<p>After much searching and frustration, I discovered that Ubuntu and its variants have fontconfig configured to not use bitmap fonts by default.  ProFont is a bitmap font, and such fonts are usually used by old X applications that use the old font system.  The reason for this configuration is that a lot of the bitmap fonts have the same name as other fonts on your system, and if they&#8217;re enabled they may in some instances end up being used instead of the typically better-looking vector fonts that you usually see.</p>
<p>In order to get ProFont working, you&#8217;ll need to add an exception to your fontconfig configuration.  I suggest editing the <kbd>~/.fonts.conf</kbd> file, which contains user-specific options.  Here&#8217;s mine, with the part that I added in bold:<span id="more-8"></span></p>
<blockquote>
<pre>&lt;?xml version="1.0"?&gt;&lt;!DOCTYPE fontconfig SYSTEM "fonts.dtd"&gt;
&lt;fontconfig&gt;
 &lt;match target="font" &gt;
  &lt;edit mode="assign" name="rgba" &gt;
   &lt;const&gt;none&lt;/const&gt;
  &lt;/edit&gt;
 &lt;/match&gt;
 &lt;match target="font" &gt;
  &lt;edit mode="assign" name="hinting" &gt;
   &lt;bool&gt;true&lt;/bool&gt;
  &lt;/edit&gt;
 &lt;/match&gt;
 &lt;match target="font" &gt;
  &lt;edit mode="assign" name="hintstyle" &gt;
   &lt;const&gt;hintfull&lt;/const&gt;
  &lt;/edit&gt;
 &lt;/match&gt;
 &lt;match target="font" &gt;
  &lt;edit mode="assign" name="antialias" &gt;
   &lt;bool&gt;true&lt;/bool&gt;
  &lt;/edit&gt;
 &lt;/match&gt;
 <strong>&lt;selectfont&gt;
  &lt;acceptfont&gt;
   &lt;pattern&gt;
    &lt;patelt name="family"&gt;&lt;string&gt;ProFont&lt;/string&gt;&lt;/patelt&gt;
   &lt;/pattern&gt;
  &lt;/acceptfont&gt;
 &lt;/selectfont&gt;</strong>
&lt;/fontconfig&gt;</pre>
</blockquote>
<p>If <kbd>~/.fonts.conf</kbd> doesn&#8217;t exist, just create it with your a text editor and copy the following into it:</p>
<blockquote>
<pre>&lt;?xml version="1.0"?&gt;&lt;!DOCTYPE fontconfig SYSTEM "fonts.dtd"&gt;
&lt;fontconfig&gt;
 &lt;selectfont&gt;
  &lt;acceptfont&gt;
   &lt;pattern&gt;
    &lt;patelt name="family"&gt;&lt;string&gt;ProFont&lt;/string&gt;&lt;/patelt&gt;
   &lt;/pattern&gt;
  &lt;/acceptfont&gt;
 &lt;/selectfont&gt;
&lt;/fontconfig&gt;</pre>
</blockquote>
<p>Once that&#8217;s done, download ProFont for Linux from <a href="http://www.tobias-jung.de/seekingprofont/">Tobias Jung&#8217;s ProFont page</a>, extract the tarball, and copy the .pcf files inside into your <kbd>~/.fonts/</kbd> directory (create it first if it doesn&#8217;t exist).  On the command line, run:</p>
<blockquote><p><kbd>fc-cache -fv</kbd></p></blockquote>
<p>This will force fontconfig to rebuild the font cache, and load ProFont in the process.  Now restart any running apps that you want to use ProFont in, and you should be good to go.</p>
]]></content:encoded>
			<wfw:commentRss>http://chrisacheson.net/blog/2009/03/21/how-to-get-profont-working-in-ubuntu/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

