<?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>0xDEADBEEF &#187; Tool Tips</title>
	<atom:link href="http://deadbeef.psychotomy.net/category/tool-tips/feed/" rel="self" type="application/rss+xml" />
	<link>http://deadbeef.psychotomy.net</link>
	<description>Geek Chic?  Or just Geek!</description>
	<lastBuildDate>Sat, 30 Mar 2013 04:06:15 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>KCacheGrind</title>
		<link>http://deadbeef.psychotomy.net/2010/06/kcachegrind/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=kcachegrind</link>
		<comments>http://deadbeef.psychotomy.net/2010/06/kcachegrind/#comments</comments>
		<pubDate>Wed, 02 Jun 2010 03:01:52 +0000</pubDate>
		<dc:creator>attriel</dc:creator>
				<category><![CDATA[Tool Tips]]></category>

		<guid isPermaLink="false">http://deadbeef.psychotomy.net/?p=112</guid>
		<description><![CDATA[Well, here&#8217;s the large KCacheGrind pics.  In order to get good pics, I installed WordPress and logged it! So, here we go. The first image is from the installation script.  I created the db &#38; user, and unzipped the files.  This is what happened from the wp-admin/install.php script: The top half has the display of [...]]]></description>
				<content:encoded><![CDATA[<p>Well, here&#8217;s the large KCacheGrind pics.  In order to get good pics, I installed WordPress and logged it!</p>
<p>So, here we go.</p>
<p>The first image is from the installation script.  I created the db &amp; user, and unzipped the files.  This is what happened from the wp-admin/install.php script:</p>
<p><a href="http://deadbeef-aws.psychotomy.net/wp-content/uploads/2010/06/install-Copy.png"><img class="alignleft size-full wp-image-196" title="WP Install" src="http://deadbeef-aws.psychotomy.net/wp-content/uploads/2010/06/install-Copy.png" alt="" width="320" height="249" /></a></p>
<p>The top half has the display of &#8220;caller map&#8221;; it shows everything being called.  Each box is scaled to the quantity of time used by the function.</p>
<p>The second half shows the &#8220;caller graph&#8221;; at the top is &#8220;main&#8221; and then it trees to each call, which calls down.</p>
<p>The left-hand is the plain listing.  It shows a lot of the same data from the trace files.  Inclusive-time, is the first column.  This is the complete time spent in this function, including all subs.  The second is the amount of time spent actually in this function, followed by total number of calls.  The last one is the function name, the very beginning is a bar-graph representation of the total time.</p>
<p><a href="http://deadbeef-aws.psychotomy.net/wp-content/uploads/2010/06/login-Copy.png"><img class="alignright size-full wp-image-204" title="WP Login" src="http://deadbeef-aws.psychotomy.net/wp-content/uploads/2010/06/login-Copy.png" alt="" width="320" height="249" /></a>The second image was from the admin login page.</p>
<p>This is a similiar picture to the first.  The top is the callermap again.  The bottom shows the functions called.   In this entry, we&#8217;re seeing the callees off of main.</p>
<p>The third image is from adding a new post the the blog.</p>
<p><a href="http://deadbeef-aws.psychotomy.net/wp-content/uploads/2010/06/addpost-Copy.png"><img class="alignnone size-full wp-image-198" title="WP Add Post" src="http://deadbeef-aws.psychotomy.net/wp-content/uploads/2010/06/addpost-Copy.png" alt="" width="320" height="250" /></a></p>
<p>This time I zoomed in on a function (WP_Object_Cache-&gt;get) , which is why the upper panel is so empty.  There are actually two sub-calls up there on the bottom edge, but they&#8217;re really small, hard to see.</p>
<p>The lower pane is the &#8220;caller map&#8221;, which is kindof the opposite of the upper panel.  In this case, everything that calls the Cache Get, which in this instance is a huge number of calls from &#8220;main.&#8221;</p>
<p><a href="http://deadbeef-aws.psychotomy.net/wp-content/uploads/2010/06/home-Copy.png"><img class="alignleft size-full wp-image-202" title="WP Home Page" src="http://deadbeef-aws.psychotomy.net/wp-content/uploads/2010/06/home-Copy.png" alt="" width="255" height="178" /></a>The fourth picture is from the homepage of the new installation.</p>
<p>I cropped it to just the upper pane.  This gives us a good view of exactly HOW MUCH goes into the homepage.  With only two posts (the default post and the one I created), it is just a huge listing.  The dark-blue speckled areas are where it ran out of things to fill into the field, because it couldn&#8217;t always slice the page in reasonable ways.</p>
<p>I never quite was able to configure the system to make thumbs for me, so the images above don&#8217;t link around to the full-size pics.  The gallery is inserted below, but I couldn&#8217;t figure out how to get the thumbs out of the gallery, so everything is listed twice.  Sorry.</p>

<a href='http://deadbeef.psychotomy.net/2010/06/kcachegrind/install-2/' title='WP Install Fullsize'><img width="150" height="116" src="http://deadbeef.psychotomy.net/wp-content/uploads/2010/06/install1.png" class="attachment-thumbnail" alt="WP Install Fullsize" /></a>
<a href='http://deadbeef.psychotomy.net/2010/06/kcachegrind/install-copy/' title='WP Install'><img width="150" height="116" src="http://deadbeef.psychotomy.net/wp-content/uploads/2010/06/install-Copy.png" class="attachment-thumbnail" alt="WP Install" /></a>
<a href='http://deadbeef.psychotomy.net/2010/06/kcachegrind/addpost-copy/' title='WP Add Post'><img width="150" height="117" src="http://deadbeef.psychotomy.net/wp-content/uploads/2010/06/addpost-Copy.png" class="attachment-thumbnail" alt="WP Add Post" /></a>
<a href='http://deadbeef.psychotomy.net/2010/06/kcachegrind/addpost/' title='WP New Post Fullsize'><img width="150" height="117" src="http://deadbeef.psychotomy.net/wp-content/uploads/2010/06/addpost.png" class="attachment-thumbnail" alt="WP New Post Fullsize" /></a>
<a href='http://deadbeef.psychotomy.net/2010/06/kcachegrind/callgraph-copy/' title='WP Install Call Graph'><img width="150" height="98" src="http://deadbeef.psychotomy.net/wp-content/uploads/2010/06/callgraph-Copy.png" class="attachment-thumbnail" alt="WP Install Call Graph" /></a>
<a href='http://deadbeef.psychotomy.net/2010/06/kcachegrind/callgraph/' title='WP Install Call Graph Fullsize'><img width="150" height="98" src="http://deadbeef.psychotomy.net/wp-content/uploads/2010/06/callgraph.png" class="attachment-thumbnail" alt="WP Install Call Graph Fullsize" /></a>
<a href='http://deadbeef.psychotomy.net/2010/06/kcachegrind/home-copy/' title='WP Home Page'><img width="150" height="104" src="http://deadbeef.psychotomy.net/wp-content/uploads/2010/06/home-Copy.png" class="attachment-thumbnail" alt="WP Home Page" /></a>
<a href='http://deadbeef.psychotomy.net/2010/06/kcachegrind/home/' title='WP Home Page Fullsize'><img width="150" height="104" src="http://deadbeef.psychotomy.net/wp-content/uploads/2010/06/home.png" class="attachment-thumbnail" alt="WP Home Page Fullsize" /></a>
<a href='http://deadbeef.psychotomy.net/2010/06/kcachegrind/login-copy/' title='WP Login'><img width="150" height="116" src="http://deadbeef.psychotomy.net/wp-content/uploads/2010/06/login-Copy.png" class="attachment-thumbnail" alt="WP Login" /></a>
<a href='http://deadbeef.psychotomy.net/2010/06/kcachegrind/login/' title='WP Login Fullsize'><img width="150" height="116" src="http://deadbeef.psychotomy.net/wp-content/uploads/2010/06/login.png" class="attachment-thumbnail" alt="WP Login Fullsize" /></a>

]]></content:encoded>
			<wfw:commentRss>http://deadbeef.psychotomy.net/2010/06/kcachegrind/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Open CA, continued</title>
		<link>http://deadbeef.psychotomy.net/2010/03/open-ca-continued/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=open-ca-continued</link>
		<comments>http://deadbeef.psychotomy.net/2010/03/open-ca-continued/#comments</comments>
		<pubDate>Tue, 16 Mar 2010 23:12:33 +0000</pubDate>
		<dc:creator>attriel</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Tool Tips]]></category>

		<guid isPermaLink="false">http://deadbeef.psychotomy.net/?p=172</guid>
		<description><![CDATA[Well, I haven&#8217;t had a chance to look at the entries I mentioned last post.  But I DID remember an open free Certificate Authority. CA Cert, it&#8217;s a site that allows you to register and, assuming you can reasonably proof ownership of your domain (by answering the emails associated with the registrar), then you can [...]]]></description>
				<content:encoded><![CDATA[<p>Well, I haven&#8217;t had a chance to look at the entries I mentioned last post.  But I DID remember an open free Certificate Authority.</p>
<p><a href="http://www.cacert.org/index.php" target="_blank">CA Cert</a>, it&#8217;s a site that allows you to register and, assuming you can reasonably proof ownership of your domain (by answering the emails associated with the registrar), then you can issue certs for your domain.  I&#8217;m currently looking at issuing certs for my mail server and web daemon.</p>
<p>The CACert Root Certificate isn&#8217;t widely distributed, so your users would have to add it the first time they came, but IMO it&#8217;s a little better (and possibly more well controlled) than the self-signed &#8220;Snake Oil&#8221; certs.</p>
<p>The only downside, that I&#8217;ve noticed so far, is that there&#8217;s no interface for building your request.  So you still have to use OpenSSL or another package to generate your Cert Req and the CSR.  I&#8217;m kindof surprised, honestly, that they don&#8217;t have that part, since that would be easier than the CA portion I would think.</p>
<p>So, I still want to look at the other tools, but since CACert is centralized and you can add the root cert for your users, I think it makes a decent option when you can use it.</p>
]]></content:encoded>
			<wfw:commentRss>http://deadbeef.psychotomy.net/2010/03/open-ca-continued/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CA Systems</title>
		<link>http://deadbeef.psychotomy.net/2010/03/ca-systems/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ca-systems</link>
		<comments>http://deadbeef.psychotomy.net/2010/03/ca-systems/#comments</comments>
		<pubDate>Wed, 03 Mar 2010 20:03:43 +0000</pubDate>
		<dc:creator>attriel</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Tool Tips]]></category>

		<guid isPermaLink="false">http://deadbeef.psychotomy.net/?p=167</guid>
		<description><![CDATA[So, as part of the MySQL SSL Replication series, I decided that I&#8217;d look up some open source CA systems.  Because there must be something better than running openssl &#8211;fifty &#8211;thousand &#8211;options &#8211;with &#8211;no &#8211;memory &#8211;or &#8211;chceking I found OpenCA/OpenPKI ,which looked interesting.  Except as I tried to set it up, the Ubuntu distributions were [...]]]></description>
				<content:encoded><![CDATA[<p>So, as part of the MySQL SSL Replication series, I decided that I&#8217;d look up some open source CA systems.  Because there must be something better than running openssl &#8211;fifty &#8211;thousand &#8211;options &#8211;with &#8211;no &#8211;memory &#8211;or &#8211;chceking</p>
<p>I found OpenCA/OpenPKI ,which looked interesting.  Except as I tried to set it up, the Ubuntu distributions were in Redhat RPMs, and after converting them they don&#8217;t appear to be actual apps.  They may have been framework prereqs of the app.  But the downloading screens were singularly uninformative.</p>
<p>I also found EJBCA, which I haven&#8217;t tried out yet.  Partially because OpenCA sounded decent, and I figured I&#8217;d try that first, since EJBCA looks to be a much larger Java/jboss application, and I don&#8217;t know JBoss offhand.  I&#8217;ll let you know if I get it going, otherwise I&#8217;ll do the MySQL entries with openssl.</p>
<p>And I meant to post this yesterday, oops.</p>
]]></content:encoded>
			<wfw:commentRss>http://deadbeef.psychotomy.net/2010/03/ca-systems/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Logfile Visualization</title>
		<link>http://deadbeef.psychotomy.net/2010/02/logfile-visualization/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=logfile-visualization</link>
		<comments>http://deadbeef.psychotomy.net/2010/02/logfile-visualization/#comments</comments>
		<pubDate>Wed, 03 Feb 2010 02:00:49 +0000</pubDate>
		<dc:creator>attriel</dc:creator>
				<category><![CDATA[Tool Tips]]></category>

		<guid isPermaLink="false">http://deadbeef.psychotomy.net/?p=136</guid>
		<description><![CDATA[One thing I&#8217;ve been looking for, on and off, is some way to view a representation of the server logs in realtime.  Basically something I can take a look at and see what&#8217;s happening.  Also, playback at a later date to see what happened at a given time. One of the only things I found [...]]]></description>
				<content:encoded><![CDATA[<p>One thing I&#8217;ve been looking for, on and off, is some way to view a representation of the server logs in realtime.  Basically something I can take a look at and see what&#8217;s happening.  Also, playback at a later date to see what happened at a given time.</p>
<p>One of the only things I found that really did that was <a href="http://www.fudgie.org/" target="_blank">glTail.rb</a>, a Ruby program.  I don&#8217;t have a lot of Ruby knowledge, so I didn&#8217;t go very far with it to see how it ticks and what I could modify.</p>
<p>It runs the log and streams bubbles from one side representing the server traffic.  Size is determined by request/response size.  I never quite figured out what the other set of streaming bubbles really represented, since Ruby isn&#8217;t in the environment I was playing in.  As a general use tool, it seems like it would be interesting if you had all the pre-reqs installed already.  As an industry tool, I wasn&#8217;t convinced that I saw enough benefit to justify installing the prereqs.</p>
<p>But I don&#8217;t think &#8220;industry level&#8221; even wants a tool like this, so !</p>
<p>I think the most telling video is the one discussed on the <a href="http://www.fudgie.org/slashdotted.html" target="_blank">slashdotting page</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://deadbeef.psychotomy.net/2010/02/logfile-visualization/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>XDebug</title>
		<link>http://deadbeef.psychotomy.net/2010/01/xdebug/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=xdebug</link>
		<comments>http://deadbeef.psychotomy.net/2010/01/xdebug/#comments</comments>
		<pubDate>Wed, 27 Jan 2010 03:15:52 +0000</pubDate>
		<dc:creator>attriel</dc:creator>
				<category><![CDATA[Tool Tips]]></category>

		<guid isPermaLink="false">http://deadbeef.psychotomy.net/?p=110</guid>
		<description><![CDATA[This is throwing back to our previous discussion about code profiling The tool we&#8217;re using, and which provides a lot of functionality that we really like, is XDebug.  This one, unlike APD, doesn&#8217;t appear to have an on/off runtime setting; we activate it in php.ini and it just goes. Also, for various reasons, patching even [...]]]></description>
				<content:encoded><![CDATA[<p>This is throwing back to our previous <a href="http://deadbeef.psychotomy.net/?p=118" target="_blank">discussion about code profiling</a></p>
<p>The tool we&#8217;re using, and which provides a lot of functionality that we really like, is <a href="http://www.xdebug.org/" target="_blank">XDebug</a>.  This one, unlike APD, doesn&#8217;t appear to have an on/off runtime setting; we activate it in php.ini and it just goes.</p>
<p>Also, for various reasons, patching even our dev systems is a complicated and annoying process.  Luckily, we&#8217;ve mostly turned the development system into &#8220;integration&#8221;, and we all do our development on local developer workstation servers.  So we&#8217;ve patched our locals to add XDebug</p>
<blockquote><p>zend_extension=/opt/php-5.2.6/lib/php/extensions/no-debug-non-zts-20060613/xdebug.so</p>
<p>xdebug.profiler_enable=1<br />
xdebug.profiler_output_dir=/tmp/xdebug/<br />
xdebug.profiler_append=1<br />
xdebug.show_mem_delta=1<br />
xdebug.trace_output_name=trace.%p<br />
xdebug.trace_output_dir=/tmp/xdebug<br />
xdebug.trace_options=1<br />
xdebug.trace_format=1<br />
xdebug.auto_trace=1</p></blockquote>
<p>That&#8217;s activation.  Obviously the zend-extension path is just what is on my local system, it varies.</p>
<p>zend_extension adds it to the PHP interpreter at a base level, so it always works.</p>
<p>profiler_enable &#8212; turns it on</p>
<p>profiler_output_dir, trace_output_dir, and trace_output_name  tells it where to put the files it generates</p>
<p>profiler_append (&amp; trace_options) &#8212; This flag is necessary because otherwise another process on the same interpreter (apache process) will, by default, overwrite the file.  append allows you to have it just keep adding.  It will confuse your numbers later, but I found it a little safer when I set it up.  Our other primary user has it not appending.</p>
<p>trace_format &#8212; this defines what format the output file should be in.  The default (0) is the human readable format.  I could never figure it out.  1 is actually the COMPUTER format, but I find it easy to read.  YMMV</p>
<p>show_mem_delta lets you see how the memory utilization changes between calls in the human format of the trace.</p>
<p>The trace file:</p>
<blockquote>
<div id="_mcePaste">Version: 2.0.4</div>
<div id="_mcePaste">TRACE START [2010-01-22 20:12:05]</div>
<div id="_mcePaste">1	0	0	0.014269	53424	{main}	1 /opt/data/localhost/apache/htdocs/php.php	0</div>
<div id="_mcePaste">2	1	0	0.014295	53448	phpinfo	0 /opt/data/localhost/apache/htdocs/php.php	1</div>
<div id="_mcePaste">2	1	1	0.404662	58100</div>
<div id="_mcePaste">1	0	1	0.404689	58100</div>
<div id="_mcePaste">0.404764	26700</div>
<div id="_mcePaste">TRACE END   [2010-01-22 20:12:05]</div>
</blockquote>
<div>The first column (1 2 2 1) is the depth of calls.  The second (0 1 10) is the function call # (IIRC this is monotonically increasing throughout the program).  Column 3 (0 0 1 1) is Enter/Exit (0 is Enter, 1 is Exit).  Column 4 is elapsed execution time. (The fifth row actually starts here)  Fifth is Current Memory Utilization.  Six is the call that got us to this entrance (the remaining columns are null on exit).  Seventh is User (1) or Internal (0).  Eight and Nine are source file &amp; Line Number that invoked.</div>
<p>The profile file:</p>
<blockquote>
<p>==== NEW PROFILING FILE ==============================================</p>
<p>version: 0.9.6</p>
<p>cmd: /opt/data/localhost/apache/htdocs/php.php</p>
<p>part: 1</p>
<p>events: Time</p>
<p>fl=php:internal</p>
<p>fn=php::phpinfo</p>
<p>1 390321</p>
<p>fl=/opt/data/localhost/apache/htdocs/php.php</p>
<p>fn={main}</p>
<p>summary: 390388</p>
<p>0 66</p>
<p>cfn=php::phpinfo</p>
<p>calls=1 0 0</p>
<p>1 390321</p></blockquote>
<p>This file is significantly less human readable than the last.  It IS however good for visualization with a tool such as KCachegrind (the file is actually named cachegrind.pid).  That will be the next ToolsDay post.  Because this one is already large, and that one has pictures!</p>
]]></content:encoded>
			<wfw:commentRss>http://deadbeef.psychotomy.net/2010/01/xdebug/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Advanced PHP Debugger (APD)</title>
		<link>http://deadbeef.psychotomy.net/2009/04/advanced-php-debugger-apd/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=advanced-php-debugger-apd</link>
		<comments>http://deadbeef.psychotomy.net/2009/04/advanced-php-debugger-apd/#comments</comments>
		<pubDate>Tue, 21 Apr 2009 12:17:32 +0000</pubDate>
		<dc:creator>attriel</dc:creator>
				<category><![CDATA[Tool Tips]]></category>
		<category><![CDATA[code profiling]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://deadbeef.psychotomy.net/?p=108</guid>
		<description><![CDATA[The first Code Profiler we looked at was the Advanced PHP Debugger (APD).  (http://pecl.php.net/apd) Which I insist on calling ADP for some reason.  This one had a lot of features that looked interesting, and had a single function call for turning it on or off.  Something we could add to the pages we were interested in [...]]]></description>
				<content:encoded><![CDATA[<p>The first Code Profiler we looked at was the Advanced PHP Debugger (APD).  (http://pecl.php.net/apd) Which I insist on calling ADP for some reason.  This one had a lot of features that looked interesting, and had a single function call for turning it on or off.  Something we could add to the pages we were interested in checking, or to our config to profile the complete set.</p>
<p>Unfortunately, the project looks to have been abandoned, with the last release (1.0.1) being from 2004.  We tried setting it up anyway, the zend hooks still existed AFAICT and it&#8217;s not unreasonable to believe that profiling data would be reasonably unchanging.  The rest of the &#8220;Debugger&#8221; might be out of date, but perhaps profiling would work.</p>
<p>As it turned out, apparently not ALL of the zend hooks still existed in the same form, and so every page load simply crashed PHP and the apache process managing the connection.</p>
]]></content:encoded>
			<wfw:commentRss>http://deadbeef.psychotomy.net/2009/04/advanced-php-debugger-apd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Category</title>
		<link>http://deadbeef.psychotomy.net/2009/04/new-category/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=new-category</link>
		<comments>http://deadbeef.psychotomy.net/2009/04/new-category/#comments</comments>
		<pubDate>Tue, 07 Apr 2009 23:12:25 +0000</pubDate>
		<dc:creator>attriel</dc:creator>
				<category><![CDATA[Site Maintenance]]></category>
		<category><![CDATA[Tool Tips]]></category>

		<guid isPermaLink="false">http://deadbeef.psychotomy.net/?p=104</guid>
		<description><![CDATA[So, I think one thing I need to do is set up some new guidelines.  so one thing I&#8217;m going to do is create some new categories and set up some regular &#8220;features.&#8221; To wit:  I&#8217;ve added &#8220;Tool Tips&#8221;, which is a category I&#8217;m going to use for posting about various programming or security tools [...]]]></description>
				<content:encoded><![CDATA[<p>So, I think one thing I need to do is set up some new guidelines.  so one thing I&#8217;m going to do is create some new categories and set up some regular &#8220;features.&#8221;</p>
<p>To wit:  I&#8217;ve added &#8220;Tool Tips&#8221;, which is a category I&#8217;m going to use for posting about various programming or security tools I find and use.  Sort of a cross between overviewing and my personal review of it.   Not going to get all fancy dance with &#8220;4 shebangs up!&#8221; or fancy pics or anything, but will be posting my thoughts and opinions on the pieces.</p>
<p>And I&#8217;m going to currently lay that out as every first and third Tuesday.  I think that&#8217;s a reasonable frequency right now, two tools a month I think I can hit that.  And I&#8217;m hoping to set up some pipelined posts during the hiatus (like this one, for instance). And hopefully that will give me a little leeway in case I don&#8217;t hit up any new tools immediately.</p>
<p>Actually, now I almost want to make a graphic and do 4-shebangs out of 7 or something &#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://deadbeef.psychotomy.net/2009/04/new-category/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
