<?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"
	>

<channel>
	<title>Patlatyj Lair</title>
	<atom:link href="http://patlatyj.com/feed" rel="self" type="application/rss+xml" />
	<link>http://patlatyj.com</link>
	<description>PHP, MySQL, SEO, Wordpress, Web-marketing</description>
	<pubDate>Mon, 25 Aug 2008 23:11:31 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
			<item>
		<title>Hostgator, 10 bucks of overselling</title>
		<link>http://patlatyj.com/hostgator-10-bucks-overselling</link>
		<comments>http://patlatyj.com/hostgator-10-bucks-overselling#comments</comments>
		<pubDate>Mon, 25 Aug 2008 21:33:22 +0000</pubDate>
		<dc:creator>patlatyj</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://patlatyj.com/?p=21</guid>
		<description><![CDATA[Hi, I&#8217;d like to share with you my experience of using the hostgator services (this blog is currently running on it), *00 gigs of storage for 10 bucks per month? Cute&#8230; The fact is, 99,9% of users won&#8217;t use more then 1 gb and this allows hostgators to sell 1000 gb server to 1000 people, [...]]]></description>
			<content:encoded><![CDATA[<p>Hi, I&#8217;d like to share with you my experience of using the hostgator services (this blog is currently running on it), *00 gigs of storage for 10 bucks per month? Cute&#8230; The fact is, 99,9% of users won&#8217;t use more then 1 gb and this allows hostgators to sell 1000 gb server to 1000 people, each having *00 gigs of space - this is called overselling and all of the big hosters do it, it&#8217;s not bad. However, if you happen to have that much of space, traffic and so on, why don&#8217;t use it 100%? Long story short, you can&#8217;t fill it with text or images, and if you try to do something serious on this space, you&#8217;ll get your database blocked (and scripts too, if necessary), ok, when you manage to lower the usage they get the DB up, usually it takes ~12 hours to make something with your site, write them a ticket, and get the DB unlocked (which is pretty fast, thanks hostgator support), but the really dumb thing is that they don&#8217;t notify you AT ALL. You can just notice that seeing your site down&#8230; This sucks&#8230; However the service is ok and IMHO, you gotta try to make your scripts lightweight or something (Wordpress is ***ing not lightweigth) and to always use as many databases as possible (remember WP option to just prefix the tables and put them in the same DB - forget it) - &#8217;cause in case you get your DB suspended, you&#8217;ll get only one site down, and not all of them</p>
]]></content:encoded>
			<wfw:commentRss>http://patlatyj.com/hostgator-10-bucks-overselling/feed</wfw:commentRss>
		</item>
		<item>
		<title>Wordpress multiple languages support?</title>
		<link>http://patlatyj.com/wordpress-multiple-languages-support</link>
		<comments>http://patlatyj.com/wordpress-multiple-languages-support#comments</comments>
		<pubDate>Mon, 25 Aug 2008 21:22:35 +0000</pubDate>
		<dc:creator>patlatyj</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://patlatyj.com/?p=20</guid>
		<description><![CDATA[Hello there! Have you ever thought of having your blog display in multiple languages? Seems like no existing plugin combines the perfect set of features:

Nice permalink handling, with domain.com/ in default language and domain.com/de in German
Automatic IP-based detection of the preferred language
Option to show only relevant posts on the category, index etc pages
Compliance with the [...]]]></description>
			<content:encoded><![CDATA[<p>Hello there! Have you ever thought of having your blog display in multiple languages? Seems like no existing plugin combines the perfect set of features:</p>
<ul>
<li>Nice permalink handling, with <a class="linkification-ext" title="Linkification: http://domain.com/" href="http://domain.com/">domain.com/</a> in default language and <a class="linkification-ext" title="Linkification: http://domain.com/de" href="http://domain.com/de">domain.com/de</a> in German</li>
<li>Automatic IP-based detection of the preferred language</li>
<li>Option to show only relevant posts on the category, index etc pages</li>
<li>Compliance with the latest WP version (hello, gengo)</li>
<li>A button to switch languages for misdetected-language users</li>
<li>Cookie to store preferred language</li>
<li>Ability to provide default-languaged content in case no translation found</li>
</ul>
<p>In case I don&#8217;t have a plugin to fit my needs, I usually write my own, but writing this one would be more difficult, then usually, so does anybody need it too? Or do you happen to know already written one?</p>
]]></content:encoded>
			<wfw:commentRss>http://patlatyj.com/wordpress-multiple-languages-support/feed</wfw:commentRss>
		</item>
		<item>
		<title>Perl multithreading: threads vs. POE</title>
		<link>http://patlatyj.com/perl-multithreading-threads-poe</link>
		<comments>http://patlatyj.com/perl-multithreading-threads-poe#comments</comments>
		<pubDate>Mon, 25 Aug 2008 21:15:08 +0000</pubDate>
		<dc:creator>patlatyj</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://patlatyj.com/?p=19</guid>
		<description><![CDATA[I&#8217;ve coded some POE-using project recently and discovered, that if you use the sleep function in one sessions, all of them are going be sleeping, thus causing you to have no multithreading at all. Googling this stuff I&#8217;ve found an interesting page answering the sleep in POE question. Long story short, you need new handlers, [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve coded some POE-using project recently and discovered, that if you use the sleep function in one sessions, all of them are going be sleeping, thus causing you to have no multithreading at all. Googling this stuff I&#8217;ve found an interesting page answering the sleep in POE question. Long story short, you need new handlers, ok, it can be used in some strainghtforward situations, but I still can&#8217;t imagine a good way to handle e.g. the while { while {#here I want to sleep}} situation. Threads work just as intended to (though having  <a href="http://www.perlmonks.org/index.pl?node_id=288022">some subtle dangers inside</a>).<br />
However, accessing variables with POE is maximally easy, in threads you have to use the shared modifier to enable that - and it&#8217;s not very safe - recent versions even had serious memory problems while using a shared array, etc.<br />
Talking about DBI, it seems to be impossible to use it multithreaded without some additional modules - just search CPAN for &#8220;poe dbi&#8221; or &#8220;threads dbi&#8221;</p>
]]></content:encoded>
			<wfw:commentRss>http://patlatyj.com/perl-multithreading-threads-poe/feed</wfw:commentRss>
		</item>
		<item>
		<title>Plain Google datacenters list, ban and Tor</title>
		<link>http://patlatyj.com/plain-google-datacenters-list</link>
		<comments>http://patlatyj.com/plain-google-datacenters-list#comments</comments>
		<pubDate>Sun, 22 Jun 2008 11:57:48 +0000</pubDate>
		<dc:creator>patlatyj</dc:creator>
		
		<category><![CDATA[Know-How]]></category>

		<guid isPermaLink="false">http://patlatyj.com/?p=18</guid>
		<description><![CDATA[Only those, returning 200 header:

64.233.161.104
64.233.161.147
64.233.167.99
64.233.167.104
64.233.167.147
64.233.171.99
64.233.171.104
64.233.171.147
64.233.179.99
64.233.179.104
64.233.183.99
64.233.183.104
64.233.185.99
64.233.185.104
64.233.187.99
64.233.187.104
66.102.1.104
66.102.9.99
66.102.9.104
66.102.9.147
66.249.81.104
66.249.83.104
66.249.89.104
66.249.91.104
72.14.211.104
72.14.215.104
72.14.219.104
72.14.221.104
72.14.235.104
216.239.59.99
216.239.59.104
216.239.59.147
By the way, if you scrape massive amounts of comment and get banned by Google, spreading queries within these datacenters won&#8217;t solve the problem - from my own experience. The better way to deal with that is using tor that, almost rocks. Almost, because it&#8217;s too slow and I don&#8217;t know [...]]]></description>
			<content:encoded><![CDATA[<p>Only those, returning 200 header:</p>
<p><span id="more-18"></span></p>
<p>64.233.161.104<br />
64.233.161.147<br />
64.233.167.99<br />
64.233.167.104<br />
64.233.167.147<br />
64.233.171.99<br />
64.233.171.104<br />
64.233.171.147<br />
64.233.179.99<br />
64.233.179.104<br />
64.233.183.99<br />
64.233.183.104<br />
64.233.185.99<br />
64.233.185.104<br />
64.233.187.99<br />
64.233.187.104<br />
66.102.1.104<br />
66.102.9.99<br />
66.102.9.104<br />
66.102.9.147<br />
66.249.81.104<br />
66.249.83.104<br />
66.249.89.104<br />
66.249.91.104<br />
72.14.211.104<br />
72.14.215.104<br />
72.14.219.104<br />
72.14.221.104<br />
72.14.235.104<br />
216.239.59.99<br />
216.239.59.104<br />
216.239.59.147</p>
<p>By the way, if you scrape massive amounts of comment and get banned by Google, spreading queries within these datacenters won&#8217;t solve the problem - from my own experience. The better way to deal with that is using tor that, almost rocks. Almost, because it&#8217;s too slow and I don&#8217;t know how to change IP from command line so far. So please share, if you know answer to any of these questions:</p>
<p>1. How to change IP (nym) from command line in FreeBSD?</p>
<p>2. How to affect the frequency of automatic IP changes (10 by default)?</p>
<p>3. (The most important) How to reduce the number of nodes between you and the target? That is 3 by default meaning using proxy to reach another proxy and then another proxy and at last the target page. I think reducing the number to 1 will speed up tor a lot.</p>
]]></content:encoded>
			<wfw:commentRss>http://patlatyj.com/plain-google-datacenters-list/feed</wfw:commentRss>
		</item>
		<item>
		<title>Wordpress plugin to log SE traffic (and improve your ranking)</title>
		<link>http://patlatyj.com/wordpress-plugin-log-se-traffic-improve-ranking-se-log</link>
		<comments>http://patlatyj.com/wordpress-plugin-log-se-traffic-improve-ranking-se-log#comments</comments>
		<pubDate>Mon, 09 Jun 2008 11:44:07 +0000</pubDate>
		<dc:creator>patlatyj</dc:creator>
		
		<category><![CDATA[Log]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[Plugins]]></category>

		<category><![CDATA[Wordpress]]></category>

		<category><![CDATA[keywords]]></category>

		<category><![CDATA[plugin]]></category>

		<category><![CDATA[SEO]]></category>

		<guid isPermaLink="false">http://patlatyj.com/?p=14</guid>
		<description><![CDATA[Ever thought of using keywords that already gave you some traffic to promote site page instead of keywords it was originally designed for? I did. So what I needed was a way to get the SE terms that gave some traffic to a WP based site. Of course, the first thought was to get them [...]]]></description>
			<content:encoded><![CDATA[<p>Ever thought of using keywords that already gave you some traffic to promote <span style="text-decoration: line-through;">site</span> page instead of keywords it was originally designed for? I did. So what I needed was a way to get the SE terms that gave some traffic to a WP based site. Of course, the first thought was to get them from external statistics sources - Awstats, for instance. However, even though I found a way to make Awstats separate terms by search engine, I never managed to make changes to the configuration file <span style="color: #c0c0c0;">(stupid hostgator support)</span>&#8230; So I just made a WP plugin to add the terms SE separated into the DB and add those terms to the beginning of the post in the user-defined format. So you install it, check the needed format (or disable adding those lines at all, if you just need an insight into the keywords or plan to improve the plugin by adding XMLRPC method to download keywords from external script). Download, free, of course<span id="more-14"></span></p>
<p><a href="http://patlatyj.com/wp-content/uploads/2008/06/selog.7z">Wordpress SE Log</a></p>
<p>Here is a sample code (just for SEs :))</p>
<p><code>function selog_log() {<br />
if (is_admin()) return true;<br />
//    echo '&lt;pre&gt;'; print_r($_SERVER); echo '&lt;/pre&gt;';<br />
@$ref = $_SERVER['HTTP_REFERER'];<br />
if (!$ref) return true;<br />
$ses = array(&#8217;www.google.com&#8217;, &#8217;search.yahoo.com&#8217;, &#8217;search.live.com&#8217;, &#8217;search.msn.com&#8217;);<br />
$ref = parse_url($ref);<br />
if (!in_array($ref['host'], $ses)) return true;<br />
$query = $ref['query'];<br />
parse_str($query, $query);<br />
$keyword = $query['q'] or<br />
$keyword = $query['p'];<br />
$ru = $_SERVER['REQUEST_URI'];<br />
selog_prep($ru);<br />
selog_prep($keyword);<br />
list(,$se,) = explode(&#8217;.', $ref['host']);<br />
global $wpdb;<br />
$selog = $wpdb-&gt;prefix.selog;<br />
$id = $wpdb-&gt;get_var(&#8221;SELECT `id` FROM `$selog` WHERE `url` = &#8216;$ru&#8217; AND `keyword` = &#8216;$keyword&#8217; AND `se` = &#8216;$se&#8217;&#8221;);<br />
if ($id) {<br />
$wpdb-&gt;query(&#8221;UPDATE `$selog` SET `cnt` = `cnt` + 1 WHERE `id` = $id&#8221;);<br />
} else {<br />
if (is_single()) {<br />
global $post;<br />
$pid = &#8220;, `postid` = $post-&gt;ID&#8221;;<br />
} else $pid = &#8221;;<br />
$wpdb-&gt;query(&#8221;INSERT INTO `$selog` SET `url` = &#8216;$ru&#8217;, `keyword` = &#8216;$keyword&#8217;, `se` = &#8216;$se&#8217;$pid, `cnt`=1&#8243;);<br />
}<br />
//http://www.google.com/search?hl=en&amp;q=how+to+get+rid+of+standing+water+in+your+yard<br />
//http://search.yahoo.com/search;_ylt=A0geu8n.JC9IfDcBARNXNyoA?p=duane+barney+tents+website&amp;fr=slv8-<br />
//http://search.live.com/results.aspx?q=reading&amp;mrt=en-us&amp;FORM=LIVSOP<br />
//http://search.msn.com/results.asp?FORM=sCPN&amp;RS=CHECKED&amp;un=doc&amp;v=1&amp;q=scriptures%20prosperity<br />
}</code></p>
]]></content:encoded>
			<wfw:commentRss>http://patlatyj.com/wordpress-plugin-log-se-traffic-improve-ranking-se-log/feed</wfw:commentRss>
		</item>
		<item>
		<title>Simple PHP Crawler</title>
		<link>http://patlatyj.com/simple-php-crawler</link>
		<comments>http://patlatyj.com/simple-php-crawler#comments</comments>
		<pubDate>Tue, 03 Jun 2008 12:52:19 +0000</pubDate>
		<dc:creator>patlatyj</dc:creator>
		
		<category><![CDATA[PHP]]></category>

		<category><![CDATA[crawler]]></category>

		<category><![CDATA[mfa]]></category>

		<guid isPermaLink="false">http://patlatyj.com/php/simple-php-crawler</guid>
		<description><![CDATA[I&#8217;ve recently made a wordpress plugin for generating really big sites, like 30k pages in some minutes, it works so that it first adds all the keywords post titles into the database with no post_content and then when a page is displayed it generates content. Actually it is using Google for making that so I [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve recently made a wordpress plugin for generating really big sites, like 30k pages in some minutes, it works so that it first adds all the <strike>keywords</strike> post titles into the database with no post_content and then when a page is displayed it generates content. Actually it is using Google for making that so I just worried not to be banned if I let Googlebot request a lot of pages at once thus causing excessive parsing of SE. To say here is a little PHP crawler to request all pages within a domain, just for lulz<br />
<span id="more-12"></span><br />
<code>set_time_limit(60*60*24);<br />
define(DELAY, '3');<br />
$tocrawl = array('http://DOMAIN.COM');//seed<br />
$dom = new DOMDocument();<br />
$curlopts = array(CURLOPT_RETURNTRANSFER =&gt; true,<br />
CURLOPT_FOLLOWLOCATION =&gt; true,<br />
//                  CURLOPT_USERAGENT      =&gt; 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.14) Gecko/20080404 Firefox/2.0.0.14',<br />
CURLOPT_USERAGENT      =&gt; 'Roddik Crawler',<br />
CURLOPT_MAXREDIRS      =&gt; 3,<br />
CURLOPT_TIMEOUT        =&gt; 30,<br />
CURLOPT_COOKIEJAR      =&gt; 'cookies.txt',<br />
CURLOPT_COOKIEFILE     =&gt; 'cookies.txt',<br />
CURLOPT_SSL_VERIFYPEER =&gt; false);<br />
$dom = new DOMDocument();<br />
$ch = curl_init();<br />
curl_setopt_array($ch, $curlopts);<br />
$host = parse_url($tocrawl[0], PHP_URL_HOST);<br />
$lu = 0;<br />
while (count($tocrawl)) {<br />
//<br />
$lu = microtime(true)-$lu;<br />
if ($lu&lt;DELAY) usleep(1000000*(DELAY-$lu));<br />
$lu = microtime(true);<br />
//<br />
$link = array_shift($tocrawl);<br />
$crawled[] = $link;<br />
curl_setopt($ch, CURLOPT_URL, $link);<br />
$page = curl_exec($ch);<br />
@$dom-&gt;loadHTML($page);<br />
$xpath = new DOMXPath($dom);<br />
$list = $xpath-&gt;query(&#8221;//a[starts-with(@href, '<a href="http://$host" class="linkification-ext" title="Linkification: http://$host">http://$host</a>')]&#8220;);<br />
foreach ($list as $a) {<br />
$href = $a-&gt;getAttribute(&#8217;href&#8217;);<br />
if (substr($href, -1) == &#8216;/&#8217;) $href = substr($href, 0, -1);<br />
if (!in_array($href, $crawled) &amp;&amp; !in_array($href, $tocrawl))<br />
$tocrawl[] = $href;<br />
}<br />
}</code></p>
]]></content:encoded>
			<wfw:commentRss>http://patlatyj.com/simple-php-crawler/feed</wfw:commentRss>
		</item>
		<item>
		<title>A function to parse line</title>
		<link>http://patlatyj.com/php-function-parse-line</link>
		<comments>http://patlatyj.com/php-function-parse-line#comments</comments>
		<pubDate>Sat, 03 May 2008 17:35:09 +0000</pubDate>
		<dc:creator>patlatyj</dc:creator>
		
		<category><![CDATA[PHP]]></category>

		<category><![CDATA[code]]></category>

		<guid isPermaLink="false">http://patlatyj.com/php/11</guid>
		<description><![CDATA[Parsing line into multidimensional array&#8230;
function toarr($input, $prefix = '') {
if (!$prefix) $input = preg_replace('#[^\w\d\(\),]#&#8217;, &#8221;, $input);
$word=&#8221;;
for ($i=0;$i&#60;strlen($input);$i++)
{
$letter = $input[$i];
if ($letter == &#8216;,&#8217;) {
if ($word) $res[] = $prefix.$word;
$word = &#8221;;
} elseif ($word &#38;&#38; $letter == &#8216;(&#8217;) {
$opened = 1;
$subinput = &#8221;;
for ($i = $i+1; $i&#60;strlen($input); $i++) {
$letter = $input[$i];
if ($letter == &#8216;(&#8217;) $opened++;
elseif ($letter == &#8216;)&#8217;) [...]]]></description>
			<content:encoded><![CDATA[<p>Parsing line into multidimensional array&#8230;<span id="more-11"></span><br />
<code>function toarr($input, $prefix = '') {<br />
if (!$prefix) $input = preg_replace('#[^\w\d\(\),]#&#8217;, &#8221;, $input);<br />
$word=&#8221;;<br />
for ($i=0;$i&lt;strlen($input);$i++)<br />
{<br />
$letter = $input[$i];<br />
if ($letter == &#8216;,&#8217;) {<br />
if ($word) $res[] = $prefix.$word;<br />
$word = &#8221;;<br />
} elseif ($word &amp;&amp; $letter == &#8216;(&#8217;) {<br />
$opened = 1;<br />
$subinput = &#8221;;<br />
for ($i = $i+1; $i&lt;strlen($input); $i++) {<br />
$letter = $input[$i];<br />
if ($letter == &#8216;(&#8217;) $opened++;<br />
elseif ($letter == &#8216;)&#8217;) $opened&#8211;;<br />
if (!$opened) break;<br />
$subinput .= $letter;<br />
}<br />
$res[] = $prefix.$word;<br />
$res = array_merge($res, toarr($subinput, $prefix.$word.&#8217;/'));<br />
$word = &#8221;;<br />
} else {<br />
$word .= $letter;<br />
if ($i == strlen($input)-1) $res[] = $prefix.$word;<br />
}<br />
}<br />
return $res;<br />
}</code><br />
Usage:<br />
<code><br />
$toarr = toarr('juice, car (audi ( rx7, rx8), mazda(cool, uncool)), soda(sprite(green, transparent), cola), girls');</code><br />
Result:<br />
<code><br />
Array(<br />
[0] =&gt; juice<br />
[1] =&gt; car<br />
[2] =&gt; car/audi<br />
[3] =&gt; car/audi/rx7<br />
[4] =&gt; car/audi/rx8<br />
[5] =&gt; car/mazda<br />
[6] =&gt; car/mazda/cool<br />
[7] =&gt; car/mazda/uncool<br />
[8] =&gt; soda<br />
[9] =&gt; soda/sprite<br />
[10] =&gt; soda/sprite/green<br />
[11] =&gt; soda/sprite/transparent<br />
[12] =&gt; soda/cola<br />
[13] =&gt; girls<br />
)</code></p>
]]></content:encoded>
			<wfw:commentRss>http://patlatyj.com/php-function-parse-line/feed</wfw:commentRss>
		</item>
		<item>
		<title>Simple Syn - Wordpress Synonymizing</title>
		<link>http://patlatyj.com/simple-syn-21</link>
		<comments>http://patlatyj.com/simple-syn-21#comments</comments>
		<pubDate>Mon, 10 Mar 2008 18:00:43 +0000</pubDate>
		<dc:creator>patlatyj</dc:creator>
		
		<category><![CDATA[Plugins]]></category>

		<category><![CDATA[plugin]]></category>

		<category><![CDATA[synonymizing]]></category>

		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://patlatyj.blogtanic.info/wordpress/plugins/simple-syn-21</guid>
		<description><![CDATA[Description
A simple Wordpress synonimizing plugin.
Dictionary
The dictionary must be created by you personally. There are two types of word lines:
1)  word&#124;syn1,syn2,syn3 - this means the word will be randomly synonymized to one of syns. Syns won&#8217;t be changed to word.
2) syn1:syn2:syn3 - all synonyms are equal. That means syn1 will be changed to the random [...]]]></description>
			<content:encoded><![CDATA[<h4>Description</h4>
<p>A simple Wordpress synonimizing plugin.<span id="more-9"></span></p>
<h4>Dictionary</h4>
<p>The dictionary must be created by you personally. There are two types of word lines:</p>
<p>1)  word|syn1,syn2,syn3 - this means the word will be randomly synonymized to one of syns. Syns won&#8217;t be changed to word.</p>
<p>2) syn1:syn2:syn3 - all synonyms are equal. That means syn1 will be changed to the random one of syn2 and syn3, syn2 will be changed either to syn1 or to syn3 and so on.</p>
<h4>Features</h4>
<ul>
<li> Works with multibyte characters as well (that means English is not the only language allowed, plugin was tested with Ukrainian and Russian too)</li>
<li>Sentences of 2+ words can be used</li>
<li>A kind of synonym density regulation - you can set the number of words you&#8217;d like to skip after successful synonymization</li>
<li>You can set the number of previous posts you&#8217;d like to rewrite after database extension (So you can synonymize after posting)</li>
<li>You can use external database - 1 database, multiple blogs</li>
</ul>
<h4>Download</h4>
<h4><a href="http://patlatyj.blogtanic.info/wp-content/uploads/2008/03/simplesyn21.zip" title="Simple Syn 2.1">Simple Syn 2.1</a></h4>
<h4>Feedback</h4>
<p>If you experience problems or have any suggestions or can provide a synonyms database (I&#8217;m going to post some of my soon) please don&#8217;t hesitate to comment.</p>
]]></content:encoded>
			<wfw:commentRss>http://patlatyj.com/simple-syn-21/feed</wfw:commentRss>
		</item>
		<item>
		<title>A legal way to use paid forums for free</title>
		<link>http://patlatyj.com/a-legal-way-to-use-paid-forums-for-free</link>
		<comments>http://patlatyj.com/a-legal-way-to-use-paid-forums-for-free#comments</comments>
		<pubDate>Sun, 09 Mar 2008 17:50:43 +0000</pubDate>
		<dc:creator>patlatyj</dc:creator>
		
		<category><![CDATA[Know-How]]></category>

		<category><![CDATA[forums]]></category>

		<category><![CDATA[freebies]]></category>

		<category><![CDATA[Google Cache]]></category>

		<guid isPermaLink="false">http://patlatyj.blogtanic.info/know-how/a-legal-way-to-use-paid-forums-for-free</guid>
		<description><![CDATA[Ever wanted to see, what is posted on paid forums, but never wanted to pay for it? Good news - it&#8217;s possible and very easy!
Quick start guide
Well, let&#8217;s imagine you want to set up a relative location to .htpasswd file. As any decent surfer you type &#8220;Apache htpasswd relative location&#8221; into Google

&#8220;Yeah cool&#8221; - you [...]]]></description>
			<content:encoded><![CDATA[<p>Ever wanted to see, what is posted on paid forums, but never wanted to pay for it? Good news - it&#8217;s possible and very easy!<span id="more-4"></span></p>
<p><strong>Quick start guide</strong></p>
<p>Well, let&#8217;s imagine you want to set up a relative location to .htpasswd file. As any decent surfer you type &#8220;Apache htpasswd relative location&#8221; into Google</p>
<p><a href="http://patlatyj.blogtanic.info/wp-content/uploads/2008/03/google.jpg" title="Google RP"><img src="http://patlatyj.blogtanic.info/wp-content/uploads/2008/03/google.jpg" alt="Google RP" /></a></p>
<p>&#8220;Yeah cool&#8221; - you think - &#8220;That is the solution of my problem!&#8221;. And, with a joyful cry, you click that, but what you see is</p>
<p><a href="http://patlatyj.blogtanic.info/wp-content/uploads/2008/03/locked.jpg" title="Locked"><img src="http://patlatyj.blogtanic.info/wp-content/uploads/2008/03/locked.jpg" alt="Locked" /></a></p>
<p>Those greedy capitalists don&#8217;t want to help you for free! If you are already charging your rifle, put it away - there is a better solution. Go back to the Google page you found the link on and look for the &#8220;Cached&#8221; button.</p>
<p><a href="http://patlatyj.blogtanic.info/wp-content/uploads/2008/03/googlehl.jpg" title="Google RP 2"><img src="http://patlatyj.blogtanic.info/wp-content/uploads/2008/03/googlehl.jpg" alt="Google RP 2" /></a></p>
<p>Click it! What you are going to see is a page, forum script has shown to the Googlebot. Scroll down&#8230; here you are!</p>
<p><a href="http://patlatyj.blogtanic.info/wp-content/uploads/2008/03/voila.jpg" title="Haha, forum beaten."><img src="http://patlatyj.blogtanic.info/wp-content/uploads/2008/03/voila.jpg" alt="Haha, forum beaten." /></a></p>
<p>That&#8217;s all. Now you see every single solution hidden by a &#8220;Buy subscription&#8221; link. You can be proud of yourself - you now have saved at least $12.95 per month.</p>
<h4><strong>Theory</strong></h4>
<p>Now let&#8217;s see the mechanics of what has happened. You have noticed that Google has shown that thread as the #1 result. Isn&#8217;t that strange? All you could see was a page with a question and 10 answers, but all hidden. It would be logical to assume that page is going to rank high for &#8220;All comments and solutions are available to <strong>Premium Service</strong> Members only.&#8221; query, since it is useless for you and gives no on-topic information about your question. Well, what really going on?</p>
<p>When the Googlebot enters that page, the forum software shows him the useful info and all the answers the experts have given. Googlebot thinks that the thread is valuable for a usual surfer (since bot thinks that it sees the same user is going to see on that page)  and ranks that page high. Next, when the surfer goes to that page via Google, the forum script recognizes him as not bot and offers to buy a subscription. Remember what it is called? Right, cloaking! Cloaking - showing one page to the bot and another to the surfer.</p>
<p>They do that because of the dilemma: if they show the real page to the Googlebot, the page won&#8217;t rank and won&#8217;t get hardly any traffic - which means no money, on the other hand, if they show the real page to the surfer, there won&#8217;t be anything to be paid for - which is no money. So the solution seems to be cloaking the page. Actually it violates SE&#8217;s laws and I don&#8217;t know why Google hasn&#8217;t filtered such results yet. Anyways you are now aware how to beat those cheaters <img src='http://patlatyj.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<h4><strong>Legality issue</strong></h4>
<p>So, is the above legal? The answer is, absolutely <strong>yes</strong>!  Remember what you do - simplified, you go to Google and see it&#8217;s cache. You don&#8217;t even have to visit that forum! Viewing Google Cache is 100% legal so don&#8217;t hesitate to use this technique.</p>
<h4><strong>PS</strong></h4>
<p>An interesting idea is to mask your browser like it is Googlebot - all you need to do is to change your User-Agent - this will enable you to skip Google page and browse those forums like you&#8217;re paid user. There is a bunch of plugins for Firefox, so that will be easy.</p>
]]></content:encoded>
			<wfw:commentRss>http://patlatyj.com/a-legal-way-to-use-paid-forums-for-free/feed</wfw:commentRss>
		</item>
		<item>
		<title>Exordium orationis</title>
		<link>http://patlatyj.com/exordium-orationis</link>
		<comments>http://patlatyj.com/exordium-orationis#comments</comments>
		<pubDate>Sat, 08 Mar 2008 17:59:38 +0000</pubDate>
		<dc:creator>patlatyj</dc:creator>
		
		<category><![CDATA[Blog-related]]></category>

		<guid isPermaLink="false">http://patlatyj.blogtanic.info/blog-related/exordium-orationis</guid>
		<description><![CDATA[Hello. My real name is Rodik, I can be know as &#8216;roddik&#8217;, &#8216;patlatyj&#8217; or &#8216;Hategrinder&#8217;. I&#8217;m from Ukraine and speak English, German, Ukrainian and Russian. Starting this blog I plan to share my (both positive and negative) experience of creating an Internet-based passive income source, let it be a network of automated blogs, some kind [...]]]></description>
			<content:encoded><![CDATA[<p>Hello. My real name is Rodik, I can be know as &#8216;roddik&#8217;, &#8216;patlatyj&#8217; or &#8216;Hategrinder&#8217;. I&#8217;m from Ukraine and speak English, German, Ukrainian and Russian. Starting this blog I plan to share my (both positive and negative) experience of creating an Internet-based passive income source, let it be a network of automated blogs, some kind of service, a silly white-hat site or whatever else my sore imagination will be able to think up. Anything I shall face on the road to the dream e.g. Wordpress plugins, different (and maybe off-topic) ideas may also appear hear, so don&#8217;t be surprised. I don&#8217;t know, whether I&#8217;m going to get what I want, but the intention is important, right? So don&#8217;t be too cruel and stay aware, that errāre humānum est.</p>
]]></content:encoded>
			<wfw:commentRss>http://patlatyj.com/exordium-orationis/feed</wfw:commentRss>
		</item>
	</channel>
</rss>
