<?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>ArghWebWorks</title>
	<atom:link href="http://www.arghwebworks.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.arghwebworks.com</link>
	<description>True happiness comes from the joy of deeds well done, the zest of creating things new --- Antoine de Saint-Exupery</description>
	<lastBuildDate>Fri, 16 Apr 2010 20:48:23 +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>&#8230;one interaction is the whole experience</title>
		<link>http://www.arghwebworks.com/2010/04/16/one-interaction-is-the-whole-experience/</link>
		<comments>http://www.arghwebworks.com/2010/04/16/one-interaction-is-the-whole-experience/#comments</comments>
		<pubDate>Fri, 16 Apr 2010 20:48:23 +0000</pubDate>
		<dc:creator>Russ</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.arghwebworks.com/?p=151</guid>
		<description><![CDATA[&#8230; Seth Godin (http://sethgodin.typepad.com/seths_blog/2010/04/when-a-stranger-reads-your-blog.html) said it here; Every interaction might be the whole experience that someone gets with you. The implication is that every lunch you serve should be the best. Every blog post you write should be the best. Every piece of code you codify should be the best (cough).  And that you [...]]]></description>
			<content:encoded><![CDATA[<p>&#8230; Seth Godin (http://sethgodin.typepad.com/seths_blog/2010/04/when-a-stranger-reads-your-blog.html) said it here; Every interaction might be the whole experience that someone gets with you. The implication is that every lunch you serve should be the best. Every blog post you write should be the best. Every piece of code you codify should be the best (cough).  And that you should remember that each person that sees your output (or experiences you) is forming an opinion of you from that one piece.</p>
<p>But what he doesn&#8217;t mention is that it goes both ways. Give other people the benefit of the doubt, because just this one lunch, this one blog post, this one piece of code may not be representative of the whole body of that person&#8217;s work. Maybe they&#8217;ve got bad allergies and need the drugs to kick in. Maybe they stayed up all night with a sick kid.   I say &#8220;do your best work, but don&#8217;t expect others to do theirs.&#8221;</p>
<p>It&#8217;s funny, I find myself swimming upstream against Seth Godin on this topic. Is quality fractal? (he says yes, I said no). And now this.</p>]]></content:encoded>
			<wfw:commentRss>http://www.arghwebworks.com/2010/04/16/one-interaction-is-the-whole-experience/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pipe to PHP Script from Evolution</title>
		<link>http://www.arghwebworks.com/2010/04/04/pipe-to-php-script-from-evolution/</link>
		<comments>http://www.arghwebworks.com/2010/04/04/pipe-to-php-script-from-evolution/#comments</comments>
		<pubDate>Sun, 04 Apr 2010 06:41:46 +0000</pubDate>
		<dc:creator>Russ</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[system admin]]></category>
		<category><![CDATA[system administration]]></category>

		<guid isPermaLink="false">http://www.arghwebworks.com/?p=149</guid>
		<description><![CDATA[Here&#8217;s a quick example of how to pipe a message to a PHP script from Evolution (the gnome-tastic email client).
First, write a script, using very clear paths. And use php://stdin to capture the input stream:

#!/usr/bin/php -q
< ?php
include_once( dirname(__FILE__).'/includeme.php' );
$input='';
$fh=fopen( 'php://stdin', 'r' );
while( ! feof( $fh ) ) {
        [...]]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s a quick example of how to pipe a message to a <a href="http://www.php.net" class="ubernym uttInitialism"><abbr class="uttInitialism" title="PHP: Hypertext Preprocessor">PHP</abbr></a> script from Evolution (the gnome-tastic email client).</p>
<p>First, write a script, using very clear paths. And use php://stdin to capture the input stream:</p>
<p><code><br />
#!/usr/bin/php -q<br />
< ?php<br />
include_once( dirname(__FILE__).'/includeme.php' );<br />
$input='';<br />
$fh=fopen( 'php://stdin', 'r' );<br />
while( ! feof( $fh ) ) {<br />
        $input .= fread( $fh, 4096);<br />
}<br />
fclose( $fh );<br />
</code></p>
<p>Do whatever you need to with the $input variable. I had subscribed to a newsletter, and was using <a href="http://www.php.net" class="ubernym uttInitialism"><abbr class="uttInitialism" title="PHP: Hypertext Preprocessor">PHP</abbr></a> to parse out the interesting bits of the newsletter (everything between the h1, h2 and h3 tags, so I knew if I needed to read it), and remail that to a more-frequently checked email address.</p>
<p>You can test your file with a shell command of "cat (testfile) | $somescript.php "</p>
<p>When it's perfect, then go to your evolution program and use the "message filters" to "pipe a message to a program." And pipe it to this one (including of course the explicit paths).</p>
<p>The things to take away here are the php://stdin slurp, and the fact that you have to use explicit paths (and you'll have a dickens of a time tracking down any errors).</p>
<p>Hope that helps ya!</code></p>]]></content:encoded>
			<wfw:commentRss>http://www.arghwebworks.com/2010/04/04/pipe-to-php-script-from-evolution/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Just a quick snippet</title>
		<link>http://www.arghwebworks.com/2010/02/10/just-a-quick-snippet/</link>
		<comments>http://www.arghwebworks.com/2010/02/10/just-a-quick-snippet/#comments</comments>
		<pubDate>Wed, 10 Feb 2010 20:00:02 +0000</pubDate>
		<dc:creator>Russ</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[console.debug]]></category>
		<category><![CDATA[error reporting]]></category>
		<category><![CDATA[Javascript]]></category>

		<guid isPermaLink="false">http://www.arghwebworks.com/2010/02/10/just-a-quick-snippet/</guid>
		<description><![CDATA[if (typeof console == &#8216;undefined&#8217;) { var console = { log : function() {}, debug: function() {} }; }]]></description>
			<content:encoded><![CDATA[<p>if (typeof console == &#8216;undefined&#8217;) { var console = { log : function() {}, debug: function() {} }; }</p>]]></content:encoded>
			<wfw:commentRss>http://www.arghwebworks.com/2010/02/10/just-a-quick-snippet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Is Quality Fractal?</title>
		<link>http://www.arghwebworks.com/2010/02/05/is-quality-fractal/</link>
		<comments>http://www.arghwebworks.com/2010/02/05/is-quality-fractal/#comments</comments>
		<pubDate>Fri, 05 Feb 2010 18:30:52 +0000</pubDate>
		<dc:creator>Russ</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Webmastering]]></category>

		<guid isPermaLink="false">http://www.arghwebworks.com/?p=141</guid>
		<description><![CDATA[When Des Traynor says &#8220;Quality is Fractal he means that by examining one piece of a whole, one can pass a judgement on the whole.  In his example of a steak, it doesn&#8217;t matter if the steak is terrific, if the gravy is served cold or the waiter is ugly and smells of cigarettes. [...]]]></description>
			<content:encoded><![CDATA[<p>When Des Traynor says &#8220;<a href="http://www.contrast.ie/blog/the-thickness-of-napkins/">Quality is Fractal</a> he means that by examining one piece of a whole, one can pass a judgement on the whole.  In his example of a steak, it doesn&#8217;t matter if the steak is terrific, if the gravy is served cold or the waiter is ugly and smells of cigarettes. </p>
<p>I&#8217;m not convinced.  And this could be because I&#8217;m working on my overall consistency. I think this idea requires a consistency that may not be present in the end product.  For instance, I might write a glorious function for part of a website but put it together with the rest of the framework and my implementation is less than glorious. You could examine the function and make a judgment that the whole is terrific &#8212; but the whole is flawed and weak.</p>
<p>I won&#8217;t argue that if one piece is great and another is not so great, that the lower &#8220;average&#8221; between the two drags the overall quality down. That&#8217;s true too; I think that inconsistency is a flaw in a product.  ( That&#8217;s why I&#8217;m working on it myself. )  That&#8217;s not what I&#8217;m saying; what I&#8217;m saying is that it&#8217;s hard to judge the whole effectively when there&#8217;s different levels of greatness.</p>]]></content:encoded>
			<wfw:commentRss>http://www.arghwebworks.com/2010/02/05/is-quality-fractal/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>jQuery Animated Backgrounds for Nifty Effects</title>
		<link>http://www.arghwebworks.com/2010/02/04/jquery-animated-backgrounds-for-nifty-effects/</link>
		<comments>http://www.arghwebworks.com/2010/02/04/jquery-animated-backgrounds-for-nifty-effects/#comments</comments>
		<pubDate>Thu, 04 Feb 2010 06:09:00 +0000</pubDate>
		<dc:creator>Russ</dc:creator>
				<category><![CDATA[HTML]]></category>
		<category><![CDATA[Javascript]]></category>

		<guid isPermaLink="false">http://www.arghwebworks.com/?p=138</guid>
		<description><![CDATA[I&#8217;m fascinated with the CSS(link) (Cascading Style Sheets) sprites idea; that with a hole in one piece of paper, you can place it over another piece of paper to create different effects depending on what&#8217;s showing through the paper. It&#8217;s kind of an optical illusion.
Snook.Ca has some great ideas on how to use these optical [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m fascinated with the <abbr class="uttInitialism" title="Cascading Style Sheets">CSS</abbr>(<a class="ubernym" href="http://www.w3.org/Style/CSS/">link</a>) (Cascading Style Sheets) sprites idea; that with a hole in one piece of paper, you can place it over another piece of paper to create different effects depending on what&#8217;s showing through the paper. It&#8217;s kind of an optical illusion.</p>
<p><a href="http://snook.ca/archives/javascript/jquery-bg-image-animations/">Snook.Ca</a> has some great ideas on how to use these optical illusions for a little pizazz with your site. I&#8217;ve reused their gradient/fade example over at this site: <a href="http://footed-pyjamas.com/flannel.php">Footed Pyjamas</a> (need some warm flannel footed pyjamas?) on the &#8220;Buy Now&#8221; button and it gives me a little thrill each time I slide my mouse over it.</p>
<p>I wonder what would happen with a wavy line, like stylized ocean waves, or maybe something else. I&#8217;ll have to play with it some more. <img src='http://www.arghwebworks.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>]]></content:encoded>
			<wfw:commentRss>http://www.arghwebworks.com/2010/02/04/jquery-animated-backgrounds-for-nifty-effects/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Web Page Speed</title>
		<link>http://www.arghwebworks.com/2009/12/17/web-page-speed/</link>
		<comments>http://www.arghwebworks.com/2009/12/17/web-page-speed/#comments</comments>
		<pubDate>Thu, 17 Dec 2009 21:32:15 +0000</pubDate>
		<dc:creator>Russ</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Search Engines]]></category>
		<category><![CDATA[Webmastering]]></category>

		<guid isPermaLink="false">http://www.arghwebworks.com/?p=134</guid>
		<description><![CDATA[With chatter today about website speed, here&#8217;s a quick test to see how long a webpage takes to download.
Keep in mind that this should be run at some interval with an average taken. Server load and speed should be taken into effect.
$ time wget &#8211;quiet &#8211;delete-after &#8211;page-requisites http://www.gmail.com
An example output is:
real	0m0.421s
user	0m0.000s
sys	0m0.012s
&#8220;time&#8221; gives you how much [...]]]></description>
			<content:encoded><![CDATA[<p>With chatter today about website speed, here&#8217;s a quick test to see how long a webpage takes to download.</p>
<p>Keep in mind that this should be run at some interval with an average taken. Server load and speed should be taken into effect.</p>
<p>$ time wget &#8211;quiet &#8211;delete-after &#8211;page-requisites http://www.gmail.com</p>
<p>An example output is:<br />
real	0m0.421s<br />
user	0m0.000s<br />
sys	0m0.012s</p>
<p>&#8220;time&#8221; gives you how much time something took; the command after the time command. You want the &#8220;real&#8221; number.<br />
&#8220;wget&#8221; is a great tool for downloading stuff from the web. The &#8211;page-requisites flag gets the <abbr class="uttInitialism" title="Cascading Style Sheets">CSS</abbr>(<a class="ubernym" href="http://www.w3.org/Style/CSS/">link</a>) (Cascading Style Sheets), JS, images and other things necessary for the page to be displayed. The other options (quiet, delete after) are just there to clean up the output.</p>
<p>This also doesn&#8217;t take into account how much time a browser might take arranging the pieces into a pie. A bunch of nested tables will cause the client to slow down.  Not specifying image height and width will cause browsers to slow down. A slow computer &#8230; well, you get the idea. Run this and take an average of the REAL value and you should have a pretty good idea of how slow your site is.</p>
<blockquote><p>
<em>Note</em><br />
If you&#8217;re plugging this into a <a href="http://www.php.net" class="ubernym uttInitialism"><abbr class="uttInitialism" title="PHP: Hypertext Preprocessor">php</abbr></a> script, keep in mind that &#8220;time&#8221; is outputting that into the STDERR stream.
</p></blockquote>]]></content:encoded>
			<wfw:commentRss>http://www.arghwebworks.com/2009/12/17/web-page-speed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ultra DNS: adding a SPF record</title>
		<link>http://www.arghwebworks.com/2009/12/16/ultra-dns-adding-a-spf-record/</link>
		<comments>http://www.arghwebworks.com/2009/12/16/ultra-dns-adding-a-spf-record/#comments</comments>
		<pubDate>Wed, 16 Dec 2009 20:34:13 +0000</pubDate>
		<dc:creator>Russ</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.arghwebworks.com/?p=130</guid>
		<description><![CDATA[Just a quickie note:
Had to add a SPF record to a domain where the DNS is at ultradns.com.
Skim down to the &#8220;txt&#8221; areas, and add a text one like this, with your domain as the first textbox.
This one is because this particular client uses google mail for their domain.

v=spf1 include:aspmx.googlemail.com ~all

This one is a seriously [...]]]></description>
			<content:encoded><![CDATA[<p>Just a quickie note:<br />
Had to add a SPF record to a domain where the DNS is at <a href="http://ultradns.com/">ultradns.com</a>.</p>
<p>Skim down to the &#8220;txt&#8221; areas, and add a text one like this, with your domain as the first textbox.</p>
<p>This one is because this particular client uses google mail for their domain.</p>
<pre>
v=spf1 include:aspmx.googlemail.com ~all
</pre>
<p>This one is a seriously generic and just allows any server that&#8217;s listed as an MX for the domain.</p>
<pre>
v=spf1 mx ~all
</pre>]]></content:encoded>
			<wfw:commentRss>http://www.arghwebworks.com/2009/12/16/ultra-dns-adding-a-spf-record/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Trying Git</title>
		<link>http://www.arghwebworks.com/2009/12/15/trying-git/</link>
		<comments>http://www.arghwebworks.com/2009/12/15/trying-git/#comments</comments>
		<pubDate>Tue, 15 Dec 2009 06:14:26 +0000</pubDate>
		<dc:creator>Russ</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Webmastering]]></category>
		<category><![CDATA[system administration]]></category>

		<guid isPermaLink="false">http://www.arghwebworks.com/?p=128</guid>
		<description><![CDATA[The ominously named &#8220;git&#8221; is a rather dull knife in my toolbox. I&#8217;m used to subversion (svn). I use svn routinely for my own work, as a backup. So I modify some files, do a svn commit and then push my files to where ever they need to go.
Git&#8217;s another beast. Because it&#8217;s an distributed [...]]]></description>
			<content:encoded><![CDATA[<p>The ominously named &#8220;git&#8221; is a rather dull knife in my toolbox. I&#8217;m used to subversion (svn). I use svn routinely for my own work, as a backup. So I modify some files, do a svn commit and then push my files to where ever they need to go.</p>
<p>Git&#8217;s another beast. Because it&#8217;s an <em>distributed</em> system, doing a &#8220;git commit&#8221; doesn&#8217;t send my files to the backup. I have to do a &#8220;git commit;git push&#8221; for that.  I&#8217;m liking the .gitignore file (compared to svn propedit syntaxes). And I&#8217;m liking the easiness of branching. I&#8217;ve got a couple of projects that are pretty much duplicates of one another with different filling. Like making a pie, but this one is apple, that one is cherry.  With subversion, it feels a lot more like those projects are full of stuff. But git feels leaner. Which is good, right?</p>]]></content:encoded>
			<wfw:commentRss>http://www.arghwebworks.com/2009/12/15/trying-git/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Apache ModRewrite Problem</title>
		<link>http://www.arghwebworks.com/2009/11/13/apache-modrewrite-problem/</link>
		<comments>http://www.arghwebworks.com/2009/11/13/apache-modrewrite-problem/#comments</comments>
		<pubDate>Fri, 13 Nov 2009 21:21:21 +0000</pubDate>
		<dc:creator>Russ</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.arghwebworks.com/?p=126</guid>
		<description><![CDATA[Ok, here&#8217;s a perplexing one.
If (cookie does not exist) AND (cache file exists) THEN redirect user.
[code]
RewriteCond %{HTTP_COOKIE} !^.*cookiename.*$ [NC]
RewriteCond %{REQUEST_URI} ^/?original/page/
RewriteCond -s other/page/index.html
RewriteRule .* other/page/index.html  [L]
[/code]
Result: 404, file (/original/page/) does not exist (note that /original/page is itself a redir).
So &#8230; what am I doing wrong?]]></description>
			<content:encoded><![CDATA[<p>Ok, here&#8217;s a perplexing one.</p>
<p>If (cookie does not exist) AND (cache file exists) THEN redirect user.<br />
[code]<br />
RewriteCond %{HTTP_COOKIE} !^.*cookiename.*$ [NC]<br />
RewriteCond %{REQUEST_URI} ^/?original/page/<br />
RewriteCond -s other/page/index.html<br />
RewriteRule .* other/page/index.html  [L]<br />
[/code]</p>
<p>Result: 404, file (/original/page/) does not exist (note that /original/page is itself a redir).</p>
<p>So &#8230; what am I doing wrong?</p>]]></content:encoded>
			<wfw:commentRss>http://www.arghwebworks.com/2009/11/13/apache-modrewrite-problem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Automatic Updated Services</title>
		<link>http://www.arghwebworks.com/2009/11/03/automatic-updated-services/</link>
		<comments>http://www.arghwebworks.com/2009/11/03/automatic-updated-services/#comments</comments>
		<pubDate>Tue, 03 Nov 2009 18:03:48 +0000</pubDate>
		<dc:creator>Russ</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.arghwebworks.com/?p=124</guid>
		<description><![CDATA[After finding out how easy it was to update my twitter status from a script, or to send direct messages, I&#8217;ve got several processes that will send me a twitter DM when they&#8217;re done. Real Estate updating script finished? It &#8220;pings&#8221; me. Server offline? Nagios &#8220;pings&#8221; me.  Or it&#8217;ll just update its status and [...]]]></description>
			<content:encoded><![CDATA[<p>After finding out how easy it was to update my twitter status from a script, or to send direct messages, I&#8217;ve got several processes that will send me a twitter DM when they&#8217;re done. Real Estate updating script finished? It &#8220;pings&#8221; me. Server offline? Nagios &#8220;pings&#8221; me.  Or it&#8217;ll just update its status and I&#8217;ll follow it in my <abbr class="uttInitialism" title="Really Simple Syndication">RSS</abbr> reader. </p>
<p>And now I&#8217;ve discovered &#8220;posterous.&#8221; and Posterous will feed an <abbr class="uttInitialism" title="Really Simple Syndication">RSS</abbr> feed.. so I could email Posterous (post at posterous dot com), and follow that on an <abbr class="uttInitialism" title="Really Simple Syndication">RSS</abbr> reader and whammo, it&#8217;s all done too. More content allowed &#8230; maybe a full <a href="http://www.php.net" class="ubernym uttInitialism"><abbr class="uttInitialism" title="PHP: Hypertext Preprocessor">php</abbr></a> error handler? Who knows. Yeah I know I&#8217;m cheap for not shelling out for HopToad, but that&#8217;s what we get with bills like mine.</p>]]></content:encoded>
			<wfw:commentRss>http://www.arghwebworks.com/2009/11/03/automatic-updated-services/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.292 seconds -->
<!-- Cached page served by WP-Cache -->
