<?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>The Navarra Group</title>
	<atom:link href="http://navarra.ca/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://navarra.ca</link>
	<description></description>
	<lastBuildDate>Thu, 10 Dec 2009 02:31:12 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Remote logging with Apache 2</title>
		<link>http://navarra.ca/?p=756</link>
		<comments>http://navarra.ca/?p=756#comments</comments>
		<pubDate>Thu, 10 Dec 2009 02:31:12 +0000</pubDate>
		<dc:creator>pmccurdy</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://navarra.ca/?p=756</guid>
		<description><![CDATA[Just a quick note, since this didn&#8217;t immediately come up in a Google search.
Say you have yourself an Apache 2 server on Unix (naturally), but you&#8217;d like the logs to end up on a remote machine, for any number of reasons (security, backup, just plain having all your logs in one place, what have you). [...]]]></description>
			<content:encoded><![CDATA[<p>Just a quick note, since this didn&#8217;t immediately come up in a Google search.</p>
<p>Say you have yourself an Apache 2 server on Unix (naturally), but you&#8217;d like the logs to end up on a remote machine, for any number of reasons (security, backup, just plain having all your logs in one place, what have you).  So you set up rsyslogd on your log machine, set up syslog on your web servers to point to it&#8230; and you get nothing from Apache.  Apache doesn&#8217;t go through syslog by default, writing its own log files instead.  </p>
<p>The solution for Apache&#8217;s error logs is obvious enough: just add &#8220;ErrorLog syslog&#8221; to your config file.  But mysteriously, there&#8217;s no analogous directive for the access logs.  The solution is still straightforward enough, and it looks like:</p>
<blockquote><p><tt>CustomLog "|/usr/bin/logger -p local1.info -t apache2" common</tt></p></blockquote>
<p>I suppose this shouldn&#8217;t seem shocking, but when we were looking this up, many people seemed to forget that (a) the &#8220;logger&#8221; program exists already, and (b) you can pass options to it directly from the Apache config file, without an intermediate script.  In other words, there&#8217;s no need at all to be writing additional scripts, which you might not have known based on the Google results I was getting earlier.</p>
]]></content:encoded>
			<wfw:commentRss>http://navarra.ca/?feed=rss2&amp;p=756</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Wave Whiteboard Gadget</title>
		<link>http://navarra.ca/?p=731</link>
		<comments>http://navarra.ca/?p=731#comments</comments>
		<pubDate>Wed, 02 Dec 2009 22:18:59 +0000</pubDate>
		<dc:creator>pzion</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[google wave]]></category>

		<guid isPermaLink="false">http://navarra.ca/?p=731</guid>
		<description><![CDATA[I&#8217;ve been experimenting with writing Google Wave extensions, and I&#8217;ve built an extension that adds a shared virtual whiteboard to a Wave.  If you have an account at Google Wave and would like to try it out, see instructions at http://wwb.navarra.ca.
]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been experimenting with writing Google Wave extensions, and I&#8217;ve built an extension that adds a shared virtual whiteboard to a Wave.  If you have an account at Google Wave and would like to try it out, see instructions at <a title="http://wwb.navarra.ca" href="http://wwb.navarra.ca">http://wwb.navarra.ca</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://navarra.ca/?feed=rss2&amp;p=731</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Protocol https not supported or disabled in libcurl</title>
		<link>http://navarra.ca/?p=668</link>
		<comments>http://navarra.ca/?p=668#comments</comments>
		<pubDate>Fri, 13 Nov 2009 04:26:48 +0000</pubDate>
		<dc:creator>dfcarney</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[curl]]></category>
		<category><![CDATA[https]]></category>
		<category><![CDATA[libcurl]]></category>
		<category><![CDATA[macports]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[ruby]]></category>

		<guid isPermaLink="false">http://navarra.ca/?p=668</guid>
		<description><![CDATA[This is the second time I had to figure this out, so I&#8217;m documenting it for prosperity.  It&#8217;s certainly nothing special, but I&#8217;m sure that others have wasted time searching for the solution as well.  Assuming you&#8217;re using Macports, read on.
I&#8217;ve been automating a bunch of stuff with various rake tasks in a [...]]]></description>
			<content:encoded><![CDATA[<p>This is the second time I had to figure this out, so I&#8217;m documenting it for prosperity.  It&#8217;s certainly nothing special, but I&#8217;m sure that others have wasted time searching for the solution as well.  Assuming you&#8217;re using Macports, read on.</p>
<p>I&#8217;ve been automating a bunch of stuff with various rake tasks in a Rails project.  One task in particular, has a line similar to the following:</p>
<p><code>curl --user bob@foo.com:password https://foo.com/db.sql > db.sql<br />
</code><br />
Which, when run, yields the following error:</p>
<p><code>curl: (1) Protocol https not supported or disabled in libcurl<br />
</code><br />
To fix it, do the following:</p>
<p><code>sudo port deactivate curl<br />
sudo port install curl +ssl</code></p>
<p>And voila.</p>
]]></content:encoded>
			<wfw:commentRss>http://navarra.ca/?feed=rss2&amp;p=668</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&#8220;git grep&#8221;, another grep alternative</title>
		<link>http://navarra.ca/?p=665</link>
		<comments>http://navarra.ca/?p=665#comments</comments>
		<pubDate>Mon, 02 Nov 2009 03:03:56 +0000</pubDate>
		<dc:creator>pmccurdy</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://navarra.ca/?p=665</guid>
		<description><![CDATA[So as I was recently saying, ack is a fine grep alternative for programming tasks, but I should also mention another useful tool: git grep.  It&#8217;s extremely simple, it just searches through all your checked-in files for the given expression.  The advantages are that it&#8217;s extremely fast due to git&#8217;s efficient disk layout, [...]]]></description>
			<content:encoded><![CDATA[<p>So as I was recently saying, <a href="http://navarra.ca/?p=654">ack</a> is a fine grep alternative for programming tasks, but I should also mention another useful tool: <a href="http://www.kernel.org/pub/software/scm/git/docs/git-grep.html">git grep</a>.  It&#8217;s extremely simple, it just searches through all your checked-in files for the given expression.  The advantages are that it&#8217;s extremely fast due to git&#8217;s efficient disk layout, and it&#8217;s reasonably common to want to know where a given string has been checked in (especially if you have a lot of generated source code).  The drawbacks are that its command line options are a bit limited, it&#8217;s missing all of ack&#8217;s nice features, and of course it only works on git repositories.  Still, a handy little tool to have at hand.</p>
]]></content:encoded>
			<wfw:commentRss>http://navarra.ca/?feed=rss2&amp;p=665</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ack: grep for programmers</title>
		<link>http://navarra.ca/?p=654</link>
		<comments>http://navarra.ca/?p=654#comments</comments>
		<pubDate>Mon, 26 Oct 2009 06:04:20 +0000</pubDate>
		<dc:creator>pmccurdy</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://navarra.ca/?p=654</guid>
		<description><![CDATA[If you find yourself using grep a lot to search through code files, you should probably take a look at ack (packaged as ack-grep in Debian and Ubuntu).  It&#8217;s like grep, but optimized for searching through codebases, particularly ones that involve multiple languages.
As an example, say you have a project that involves a mix [...]]]></description>
			<content:encoded><![CDATA[<p>If you find yourself using grep a lot to search through code files, you should probably take a look at <a href="http://betterthangrep.com/">ack</a> (packaged as ack-grep in Debian and Ubuntu).  It&#8217;s like grep, but optimized for searching through codebases, particularly ones that involve multiple languages.</p>
<p>As an example, say you have a project that involves a mix of C++ and Python files, and you want to find all the occurrences of &#8220;foo&#8221; in just the Python files (this happens to me all the time these days).  With grep, you have to say <tt>find . -name \*.py | xargs grep "foo"</tt>, or thereabouts, whereas with ack it&#8217;s just <tt>ack "foo" --python</tt>.  For languages with multiple possible extensions (e.g. Perl, C++), this is even nicer.</p>
<p>OK, maybe you&#8217;ve already set up all the grep aliases you could ever want, so never type those ugly command lines any more.  Even so, I still love ack, because the search results are that much more readable: the filename only shows up once per file, with each match within the file having only the line number taking up space, like so:</p>
<pre>
$ ack Hello
hello.c
3:// Prints "Hello, world!"
6:    printf("Hello, world!");
</pre>
<p></p>
<p>I find this makes the results significantly more readable.  And what I haven&#8217;t tried to replicate above is how it highlights both matches and the filename with a bit of colour, making it even easier to scan.</p>
<p>And on top of all that, &#8220;ack&#8221; ignores your editor&#8217;s swap files by default, and is 25% less typing than &#8220;grep&#8221;!  So give it a spin, I started liking it right away.</p>
]]></content:encoded>
			<wfw:commentRss>http://navarra.ca/?feed=rss2&amp;p=654</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
