<?xml version="1.0" encoding="utf-8"?>
<!-- generator="wordpress/1.2" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
>

<channel>
	<title>php9.com, a php developer weblog</title>
	<link>http://www.php9.com</link>
	<description>calin's blog: a php developer weblog covering web programming, web services, search engine news and too many more</description>
	<copyright>Copyright 2005</copyright>
	<pubDate>Wed, 11 May 2005 14:51:27 +0000</pubDate>
	<generator>http://wordpress.org/?v=1.2</generator>

		<item>
		<title>the php9.com blog has moved to blogHi</title>
		<link>http://www.php9.com/index.php?p=52</link>
		<comments>http://www.php9.com/index.php?p=52#comments</comments>
		<pubDate>Wed, 11 May 2005 14:49:57 +0000</pubDate>
		
	<category>General</category>		<guid>http://www.php9.com/index.php?p=52</guid>
		<description>This blog has upgraded to blogHi! since months. Entries are here for historical reasons only

The new address is: http://php9.bloghi.com

To update your news readers, here is the new RSS Feed.

Wordpress was nice for novice bloggers. Now it's time to get serious (shameless self-promotion)
  </description>
		<content:encoded><![CDATA[	<h3>This blog has upgraded to <a href="http://bloghi.com">blogHi!</a> since months. Entries are here for historical reasons only</h3>
	<h3>The new address is: <a href="http://php9.bloghi.com">http://php9.bloghi.com</a></h3>
	<h3>To update your news readers, here is the new <a href="http://php9.bloghi.com/rss2.hi">RSS Feed</a></h3>
.</p>
	<p>Wordpress was nice for novice bloggers. Now it&#8217;s time to get serious (shameless self-promotion)
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=52</wfw:commentRSS>
	</item>
		<item>
		<title>adwords reply</title>
		<link>http://www.php9.com/index.php?p=51</link>
		<comments>http://www.php9.com/index.php?p=51#comments</comments>
		<pubDate>Wed, 16 Feb 2005 09:28:23 +0000</pubDate>
		
	<category>General</category>		<guid>http://www.php9.com/index.php?p=51</guid>
		<description>They did reply in the end. I received their fraud report message, listing the webpage How do I report suspected invalid clicks? , with the notice that investigating this issue takes 3-4 weeks and has to be very well documented. I'll probably run the report, mostly for environmental reasons.  </description>
		<content:encoded><![CDATA[	<p>They did reply in the end. I received their fraud report message, listing the webpage <a href="https://adwords.google.com/support/bin/answer.py?answer=6432&#038;hl=en">How do I report suspected invalid clicks? </a>, with the notice that investigating this issue takes 3-4 weeks and has to be very well documented. I&#8217;ll probably run the report, mostly for environmental reasons.
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=51</wfw:commentRSS>
	</item>
		<item>
		<title>uncovering the newest google associate program</title>
		<link>http://www.php9.com/index.php?p=50</link>
		<comments>http://www.php9.com/index.php?p=50#comments</comments>
		<pubDate>Tue, 15 Feb 2005 13:45:26 +0000</pubDate>
		
	<category>General</category>		<guid>http://www.php9.com/index.php?p=50</guid>
		<description>As I wrote about this adwords issue on Sunday, you would think some sort of reaction would have happened. Especially since it is core business for the company I was talking about. I thought the same, that they would somehow react to my mails and warnings. Not only to repay ...</description>
		<content:encoded><![CDATA[	<p>As I wrote about this <a href="http://www.php9.com/index.php?p=49">adwords issue</a> on Sunday, you would think some sort of reaction would have happened. Especially since it is core business for the company I was talking about. I thought the same, that they would somehow react to my mails and warnings. Not only to repay me in some way for the faked clicks, repair the<br />
unpleasant image I am starting to build about adwords, but most importantly to stop this from happening again in the future. Again, who knows to what scale this already happened for some less technical savvy adwords buyers.</p>
	<p>Well guess what, it&#8217;s been no reaction so far. Not even an acknowledgement mail that hello we are taking this into consideration. Zip &#038; Nada</p>
	<p>Being cynical, I should say that it&#8217;s in fact in Google&#8217;s advantage. All these fakers, as long as they are not noticed by anybody, generate money for Google. People pay money to Adwords, these money move to google&#8217;s pockets and a small share goes to the fakers. Shareholders are happy, money roll out. Sounds like a great associate program to me. Good luck with it, because you lost me here. If I don&#8217;t get any reply these days, adwords is history for me</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=50</wfw:commentRSS>
	</item>
		<item>
		<title>adwords+adsense fraud robot</title>
		<link>http://www.php9.com/index.php?p=49</link>
		<comments>http://www.php9.com/index.php?p=49#comments</comments>
		<pubDate>Sun, 13 Feb 2005 11:04:19 +0000</pubDate>
		
	<category>General</category>		<guid>http://www.php9.com/index.php?p=49</guid>
		<description>I really wonder why Google, Overture and the kind don't reveal what is the exact amount of fraud clicks in their Adwords types of programs. The percentage must be huge, and probably it would discourage some guys from continuing their PPC campaigns. However transparency would help building up the idea ...</description>
		<content:encoded><![CDATA[	<p>I really wonder why Google, Overture and the kind don&#8217;t reveal what is the exact amount of fraud clicks in their Adwords types of programs. The percentage must be huge, and probably it would discourage some guys from continuing their PPC campaigns. However transparency would help building up the idea of a healthy business. But let me stop this blabla and get to the real issue.</p>
	<p>I run some user tracking scripts, based on log analysis, something that I have developed myself. I run this on a few websites that I own. One of them, a really young website, is under a global Adwords campaign for some quite popular search terms, at the exact PPC survival rate. This campaign run fine since a few weeks, but yesterday it experienced something interesting. 30 times during one day, at different hours, the same Internet user supposedly clicked on an Adsense advertisment. I have the IP, the User agent and the Adsense client ID, and I&#8217;m willing to share it to the ones that should take care of this.  The same thing repeated on a smaller scale with other IPs but the same Adsense client id. Therefore I&#8217;d say this is a Adsense fake clicker robot, touching my Adwords campaign. To speculate, after looking at this faker, I&#8217;d say this is a custom made script, and this idea alarms me even more. The level of amateurism is really surprising! No further clicks from the homepage, no proxy used and so on. </p>
	<p>Luckily for me, as I said this already, I do spend the minimum for my Adwords campaigns. Therefore this Adsense faker got really little for faking clicks on my ads. However I have to wonder, what happens to all the websites that don&#8217;t run this level of log analysis and do spend more on clicks. Hidden under the Adwords content clicks section, with little to zero defense available to faked clicks, who stands there to protect the Adwords campaign payers?</p>
	<p>With all the avancement in the API direction and stuff, it&#8217;s really surprising that basic issues like this coordinated Adsense-Adwords click-fraud campaigns are not addressed properly. I hate to repeat myself, but I wish there were more transparency here.</p>
	<table WIDTH=588 BORDER=1 CELLPADDING=1 CELLSPACING=3>
		<col WIDTH=96><br />
		<col WIDTH=33><br />
		<col WIDTH=439></p>
	<tr>
	<td COLSPAN=3 WIDTH=578>
	<p CLASS="western"><u><a HREF="http://bloghi.com/admin/status.php?m=patterns&amp;sId=xxx.xxx.xxx.xxx">xxx.xxx.xxx.xxx</a></u><br />
				- <u><a HREF="http://www.whois.sc/xxx.xxx.xxx.xxx">whois?</a></u><br />
				- &quot;Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)&quot;</p>
	</td>
	</tr>
	<tr>
	<td WIDTH=96>
	<p CLASS="western"><font FACE="Verdana, sans-serif"><font SIZE=1 STYLE="font-size: 7pt">Sat<br />
				Feb 12 3:18:00</font></font></p>
	</td>
	<td WIDTH=33>
	<p CLASS="western"><font FACE="Verdana, sans-serif"><font SIZE=1 STYLE="font-size: 7pt">-</font></font></p>
	</td>
	<td WIDTH=439>
	<p CLASS="western"><u><a HREF="http://pagead2.googlesyndication.com/pagead/ads?client=ca-pub-xxxxxx-hidden-xxxxxx&amp;dt=1108174675650&amp;format=160x600_as&amp;output=html&amp;url=http://gslin.org/2005/01/24/432/&amp;u_h=768&amp;u_w=1024&amp;u_ah=708&amp;u_aw=1024&amp;u_cd=32&amp;u_tz=480&amp;u_his=3&amp;u_nplug=6&amp;u_nmime=19"><font SIZE=1 STYLE="font-size: 7pt"><font FACE="Verdana, sans-serif">http://pagead2.googlesyndication.com/pagead/ads?client=ca-pub-xxxxxx-hidden-xxxxxx&amp;d&#8230;</font></font></a></u></p>
	</td>
	</tr>
	<tr>
	<td WIDTH=96>
	<p CLASS="western"><font FACE="Verdana, sans-serif"><font SIZE=1 STYLE="font-size: 7pt">Sat<br />
				Feb 12 3:18:01</font></font></p>
	</td>
	<td WIDTH=33>
	<p CLASS="western"><font FACE="Verdana, sans-serif"><font SIZE=1 STYLE="font-size: 7pt">1</font></font></p>
	</td>
	<td WIDTH=439>
	<p CLASS="western"><u><a HREF="http://bloghi.com/"><font SIZE=1 STYLE="font-size: 7pt"><font FACE="Verdana, sans-serif">/<br />
				</font></font></a></u>
				</p>
	</td>
	</tr>
	<tr>
	<td WIDTH=96>
	<p CLASS="western"><font FACE="Verdana, sans-serif"><font SIZE=1 STYLE="font-size: 7pt">Sat<br />
				Feb 12 3:40:23</font></font></p>
	</td>
	<td WIDTH=33>
	<p CLASS="western"><font FACE="Verdana, sans-serif"><font SIZE=1 STYLE="font-size: 7pt">1342</font></font></p>
	</td>
	<td WIDTH=439>
	<p CLASS="western"><u><a HREF="http://pagead2.googlesyndication.com/pagead/ads?client=ca-pub-xxxxxx-hidden-xxxxxx&amp;dt=1108176018216&amp;format=160x600_as&amp;output=html&amp;url=http://gslin.org/2004/12/17/329/&amp;u_h=768&amp;u_w=1024&amp;u_ah=708&amp;u_aw=1024&amp;u_cd=32&amp;u_tz=480&amp;u_his=2&amp;u_nplug=6&amp;u_nmime=19"><font SIZE=1 STYLE="font-size: 7pt"><font FACE="Verdana, sans-serif">http://pagead2.googlesyndication.com/pagead/ads?client=ca-pub-xxxxxx-hidden-xxxxxx&amp;d&#8230;</font></font></a></u></p>
	</td>
	</tr>
	<tr>
	<td WIDTH=96>
	<p CLASS="western"><font FACE="Verdana, sans-serif"><font SIZE=1 STYLE="font-size: 7pt">Sat<br />
				Feb 12 3:40:24</font></font></p>
	</td>
	<td WIDTH=33>
	<p CLASS="western"><font FACE="Verdana, sans-serif"><font SIZE=1 STYLE="font-size: 7pt">1</font></font></p>
	</td>
	<td WIDTH=439>
	<p CLASS="western"><u><a HREF="http://bloghi.com/"><font SIZE=1 STYLE="font-size: 7pt"><font FACE="Verdana, sans-serif">/<br />
				</font></font></a></u>
				</p>
	</td>
	</tr>
	<tr>
	<td WIDTH=96>
	<p CLASS="western"><font FACE="Verdana, sans-serif"><font SIZE=1 STYLE="font-size: 7pt">Sat<br />
				Feb 12 3:53:14</font></font></p>
	</td>
	<td WIDTH=33>
	<p CLASS="western"><font FACE="Verdana, sans-serif"><font SIZE=1 STYLE="font-size: 7pt">770</font></font></p>
	</td>
	<td WIDTH=439>
	<p CLASS="western"><u><a HREF="http://pagead2.googlesyndication.com/pagead/ads?client=ca-pub-xxxxxx-hidden-xxxxxx&amp;dt=1108176787748&amp;format=160x600_as&amp;output=html&amp;url=http://gslin.org/2005/02/08/496/&amp;u_h=768&amp;u_w=1024&amp;u_ah=708&amp;u_aw=1024&amp;u_cd=32&amp;u_tz=480&amp;u_his=3&amp;u_nplug=6&amp;u_nmime=19"><font SIZE=1 STYLE="font-size: 7pt"><font FACE="Verdana, sans-serif">http://pagead2.googlesyndication.com/pagead/ads?client=ca-pub-xxxxxx-hidden-xxxxxx&amp;d&#8230;</font></font></a></u></p>
	</td>
	</tr>
	<tr>
	<td WIDTH=96>
	<p CLASS="western"><font FACE="Verdana, sans-serif"><font SIZE=1 STYLE="font-size: 7pt">Sat<br />
				Feb 12 3:53:15</font></font></p>
	</td>
	<td WIDTH=33>
	<p CLASS="western"><font FACE="Verdana, sans-serif"><font SIZE=1 STYLE="font-size: 7pt">1</font></font></p>
	</td>
	<td WIDTH=439>
	<p CLASS="western"><u><a HREF="http://bloghi.com/"><font SIZE=1 STYLE="font-size: 7pt"><font FACE="Verdana, sans-serif">/<br />
				</font></font></a></u>
				</p>
	</td>
	</tr>
	<p>	</col></col></col></table>
	<p>and this stuff goes on and on&#8230;
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=49</wfw:commentRSS>
	</item>
		<item>
		<title>Google Referral Program</title>
		<link>http://www.php9.com/index.php?p=48</link>
		<comments>http://www.php9.com/index.php?p=48#comments</comments>
		<pubDate>Thu, 03 Feb 2005 08:38:30 +0000</pubDate>
		
	<category>General</category>		<guid>http://www.php9.com/index.php?p=48</guid>
		<description>Probably to sustain their heavy projected growth, Google launched a Referral Program for Adsense and Adwords.

They pay $20 for every new paying customer your refer, so it's quite a greedy program. Somehow it remembers me of eBay's new member gold rush, reflected by their affiliate program. It's weird also how ...</description>
		<content:encoded><![CDATA[	<p>Probably to sustain their <a href="http://www.thestreet.com/tech/georgemannes/10206944.html">heavy projected growth</a>, Google <a href="http://www.google.com/referral/info.html">launched a Referral Program</a> for Adsense and Adwords.</p>
	<p>They pay $20 for every new paying customer your refer, so it&#8217;s quite a greedy program. Somehow it remembers me of eBay&#8217;s new member gold rush, reflected by their affiliate program. It&#8217;s weird also how they target only the US. They somehow managed to create the impression of a global company. Probably this US focus says a lot about the focus of local Adsense/Adwords investments. </p>
	<p>It is targeted at small and medium businesses: <a href="http://www.google.com/referral/faq.html#6">What makes a good Google referral program candidate?</a>. The Tech article at the beginning of the post answers why they target this level.</p>
	<p>Another interesting part: If you are using Adsense already, but not Adwords, you can save money by refering yourself: <a href="http://www.google.com/referral/faq.html#22b">Will I earn a commission if I sign up to become an AdWords advertiser myself?</a>. Same goes the other way.</p>
	<p>You might want to try the &#8220;new thing", I&#8217;s gonna be a hype, like adsense at first; and probably it won&#8217;t last long. So , <a href="http://services.google.com/inquiry/referral_apply">start applying!</a>. Relax, I don&#8217;t get anything if you do that
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=48</wfw:commentRSS>
	</item>
		<item>
		<title>global PPC keywords map: private or public</title>
		<link>http://www.php9.com/index.php?p=47</link>
		<comments>http://www.php9.com/index.php?p=47#comments</comments>
		<pubDate>Tue, 01 Feb 2005 13:08:56 +0000</pubDate>
		
	<category>General</category>		<guid>http://www.php9.com/index.php?p=47</guid>
		<description>I'd like to see a global keywords map together with the PPC for these keywords. As this reflects not only the world economy, but also local or global trends, I think this might belong to the public interest domain. I'd like to see such a move from one of the ...</description>
		<content:encoded><![CDATA[	<p>I&#8217;d like to see a global keywords map together with the PPC for these keywords. As this reflects not only the world economy, but also local or global trends, I think this might belong to the public interest domain. I&#8217;d like to see such a move from one of the major PPC engine providers. </p>
	<p>These companies can also map together related keywords, classify them under topics. Related keywords would be grouped together, and the PPC costs would split in more smooth curves. Probably a 3d map would emerge, of an incredible complexity. However understanding this map <strong>would </strong>maybe <strong>make us wiser</strong>.</p>
	<p>I&#8217;m sure the top Google Adwords/Overture/Espotting executives build themselves this map. It&#8217;s crucial business information for them, helping resources allocation. </p>
	<p>Probably Google would be the last company doing this, as Adwords hides the PPC cost. Luckily, there are websites out there listing : <a href="http://www.sorve.com/adsense.htm">High Paying Google Adsense Keywords</a>. And the <a href="http://www.google.com/apis/adwords/">Google Adwords API</a> could help.
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=47</wfw:commentRSS>
	</item>
		<item>
		<title>if the web would be a blog, should we rss it? or is this like a pandora box</title>
		<link>http://www.php9.com/index.php?p=46</link>
		<comments>http://www.php9.com/index.php?p=46#comments</comments>
		<pubDate>Wed, 19 Jan 2005 09:34:30 +0000</pubDate>
		
	<category>Web Services News</category>
	<category>Search Engines World</category>
	<category>AWIS: Alexa Web Information Service</category>		<guid>http://www.php9.com/index.php?p=46</guid>
		<description>MSN Search Beta is getting closer and closer to its production launch. What is nice about this launch is that they seem to experiment with innovative ideas. For example about one week ago, MSN Search Beta has added a RSS feed for its web results.  Invisible to the average ...</description>
		<content:encoded><![CDATA[	<p><a href="http://beta.search.msn.com/">MSN Search Beta</a> is getting closer and closer to its production launch. What is nice about this launch is that they seem to experiment with innovative ideas. For example about one week ago, MSN Search Beta has added a <a href="http://blogs.msdn.com/msnsearch/archive/2005/01/11/351064.aspx">RSS feed for its web results</a>.  Invisible to the average user, by just adding &#038;format=rss to the results url, the format returned by the engine becomes RSS 2.0, a wide-spread XML syndication format. </p>
	<p>In the future, they might add a button in the search page, something similar to the Find24x7 web search results: <a href="http://find24x7.com/?q=canon+digital+rebel">find24x7: canon digital rebel</a>. The RSS feed was there since the engine started (nov 2004). Here would be the RSS feed for the search result:  <a href="http://find24x7.com/rss/canon+digital+rebel.xml"><img alt="RSS Feed for 'canon digital rebel'" src="http://find24x7.com/images/rss.gif" height="14" width="36" border="0" align="absmiddle" /></a>. The point is that the technical side of this thing is not so hard to implement. I&#8217;m not some big expert in this, however conceptually, there are a few problems I&#8217;d like to share with you:</p>
	<ul>
	<li>is RSS an open web service? definitely yes</li>
	<li>is RSS perceived as a result of human created content? Well, you&#8217;ll have to help me here, but the answer here is imho yes</li>
	<li>RSS generally assume &#8220;dated&#8221; entries, like blogs, or articles publishing etc. How can the web results be &#8220;dated"?</li>
	</ul>
	<p>RSS might be the way to start an almost horizontal penetration of the blogging market. People might use it, add these RSS feeds to their news readers. RSS news readers &#038; aggregators have a nice way of storing any &#8220;read&#8221; posts (in our cases web pages), therefore a history of visited pages, for a certain interesting search term would be definitely helpful. This could provide a helpful service to the internet community. There are plenty of RSS crawlers already, they would pick these web result pages and add them to directories. However there&#8217;s a slight danger here: in that probably they&#8217;d mix human generated content with automated result, opening the door to RSS spamming. Web Spamming would turn into RSS spamming then. This wouldn&#8217;t definitely be ethical. I&#8217;ll stop this speculative monologue and let you share your thoughts
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=46</wfw:commentRSS>
	</item>
		<item>
		<title>AWSProductData -> AWSECommerceService and other ECS4API bugfixes</title>
		<link>http://www.php9.com/index.php?p=45</link>
		<comments>http://www.php9.com/index.php?p=45#comments</comments>
		<pubDate>Thu, 13 Jan 2005 08:16:57 +0000</pubDate>
		
	<category>ECS 4.0: Amazon E-commerce Service</category>		<guid>http://www.php9.com/index.php?p=45</guid>
		<description>Users of the ECS 4.0 class, please upgrade your scripts from AWSProductData to AWSECommerceService. The class is already upgraded, you might want to download the new one, or just operate the modification over your existing configuration.

This is an old problem that came with the beta of ECS 4.0. The need ...</description>
		<content:encoded><![CDATA[	<p>Users of the ECS 4.0 class, please upgrade your scripts from AWSProductData to AWSECommerceService. The class is already upgraded, you might want to download the new one, or just operate the modification over your existing configuration.</p>
	<p>This is an old problem that came with the beta of ECS 4.0. The need for change was repeatedly raised over the last year by the ECS team. There were countless deadlines for the upgrade, many of them I refused to consider myself. It seems that now they really want to make this step: <a href="http://forums.prospero.com/n/mb/message.asp?webtag=am-assocdevxml&#038;msg=7613.1&#038;ctx=128">ECS 4: Please Stop using AWSProductData</a>.</p>
	<p>There is also <a href="/index.php?p=24#update13012005">a bigger update to the main class</a>, because there was an unexpected Editorial Reviews bug (a change on Amazon side) and also an object allocation bug from me. Thank you for all your feedback!
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=45</wfw:commentRSS>
	</item>
		<item>
		<title>orkut community search down again</title>
		<link>http://www.php9.com/index.php?p=44</link>
		<comments>http://www.php9.com/index.php?p=44#comments</comments>
		<pubDate>Wed, 12 Jan 2005 17:55:23 +0000</pubDate>
		
	<category>General</category>		<guid>http://www.php9.com/index.php?p=44</guid>
		<description>
I really hate to sound mean, but it's the second day that the Orkut's community search does not work. In the main page, if anybody goes to the Communities tab, one is able to see the communities he subscribed to (after some while). However if anybody tries the search there, ...</description>
		<content:encoded><![CDATA[	<p><a href="/images/articles/orkut-500.jpg"><img hspace="5" src="/images/articles/orkut-500.jpg" alt="orkut 500" align="right" /></a><br />
I really hate to sound mean, but it&#8217;s the second day that the <a href="http://www.orkut.com/">Orkut</a>&#8217;s community search does not work. In the main page, if anybody goes to the Communities tab, one is able to see the communities he subscribed to (after some while). However if anybody tries the search there, this page is retuned: <br />As I said, it&#8217;s the second day the server behaves this way. I would have written to them, if there were some way to contact them, but I couldn&#8217;t find one, therefore I&#8217;m complaining here, in my blog. It&#8217;s strange that the very search feature doesn&#8217;t work, and google was supposed to be all about search.</p>
	<p> Another interesting stuff I just found out: The very google engine <a href="/images/articles/orkut-google.jpg">shows a bad image for orkut. This image</a>  means that by the time Orkut was crawled, it was completelly down. (btw, did I mention that this makes me admire again how unbiased the google search results really are)</p>
	<p>I wonder how does this social networking experiment is perceived on the inside by Google. I mean they started out nice, with a few webservers and a couple of engineers. I guess the tiny &#8220;in affiliation with Google&#8221; message at the bottom of the page made the traffic of the website at least a thousand times more the amount it would have normally received. If it were that much of an experiment, it should have started, in my humble opinion, without that message. Anyway, I hope they fix it and, if this experiment is not too much ahead its time, allocate more resources to it.
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=44</wfw:commentRSS>
	</item>
		<item>
		<title>desktop search news</title>
		<link>http://www.php9.com/index.php?p=43</link>
		<comments>http://www.php9.com/index.php?p=43#comments</comments>
		<pubDate>Wed, 12 Jan 2005 14:57:06 +0000</pubDate>
		
	<category>General</category>		<guid>http://www.php9.com/index.php?p=43</guid>
		<description>After Google released its desktop search application in october, the local computer search market came to life. 

In December 7, 2004,  Copernic announces the availability of a new and improved version of its award-winning Copernic Desktop Search. 

The Ask Jeeves Desktop search tool, in beta, offers an interesting pack ...</description>
		<content:encoded><![CDATA[	<p>After <a href="/index.php?p=23">Google released its desktop search</a> application in october, the local computer search market came to life. </p>
	<p>In December 7, 2004,  Copernic announces the availability of a new and improved version of its award-winning <a href="http://www.copernic.com/en/products/desktop-search/index.html">Copernic Desktop Search</a>. </p>
	<p>The <a href="http://sp.ask.com/docs/desktop/">Ask Jeeves Desktop search tool</a>, in beta, offers an interesting pack of features too, and is under a constant update.</p>
	<p>Bundled with the MSN toolbar came Microsoft&#8217;s reply to all this buzz. About a month ago:</p>
	<blockquote><p> Microsoft has launched its long anticipated desktop search application, and it&#8217;s packed with promising features and tools that make it a strong contender coming out the gate.  <a href="http://searchenginewatch.com/searchday/article.php/3447271">Read more</a></p></blockquote>
	<p>With software from X1, specialised in Windows search, Yahoo launched yesterday a beta version of a new Yahoo Desktop Search tool. The tool is available at <a href="http://desktop.yahoo.com/">http://desktop.yahoo.com/</a>. It searches PDF documents also</p>
	<p>Autonomy, another leader in Enterprise Search, launched its desktop search under the name <a href="http://www.autonomy.com/content/Products/Interfaces/IDOL_Desktop.html">IDOL Enterprise Desktop Search</a>.</p>
	<p>An interesting comparison will shape itself over the coming months (here&#8217;s a <a href="http://www.goebelgroup.com/desktopmatrix.htm">comparison attempt from Goebel group</a>). All this stuff is so new that some tools probably still lack a clear business model, and came to life as a reply to a competitor&#8217;s tool. As a leader, Google&#8217;s tool is <a href="http://www.google.com/search?q=desktop+search+security+hole">exposed to vulnerabilities</a>. However they already shape the market trend by trying to make local results available to third parties apps. </p>
	<p>As for SEO concerns, it&#8217;s going to be definitely interesting to watch how much will these tiny personal Googles/Yahoos/AskJeeves will each tell about their &#8220;mother ship&#8221; engines.</p>
	<p>The battle between these giants announces as fierce, and mostly on the longer run.
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=43</wfw:commentRSS>
	</item>
		<item>
		<title>Security in PHP</title>
		<link>http://www.php9.com/index.php?p=42</link>
		<comments>http://www.php9.com/index.php?p=42#comments</comments>
		<pubDate>Tue, 11 Jan 2005 20:00:24 +0000</pubDate>
		
	<category>PHP Programming</category>		<guid>http://www.php9.com/index.php?p=42</guid>
		<description>the PHP team recently wrote a security warning to all PHP developers. A recent Web Worm named NeverEverSanity revealed a security problem in phpBB, the popular message board application. Therefore a global security warning was raised:
Every remote exploit can be avoided with very careful input validation. If you are writing ...</description>
		<content:encoded><![CDATA[	<p>the PHP team recently wrote a security warning to all PHP developers. A recent Web Worm named NeverEverSanity revealed a security problem in phpBB, the popular message board application. Therefore a global security warning was raised:</p>
	<blockquote><p>Every remote exploit can be avoided with very careful input validation. If you are writing an application that asks for a user&#8217;s name and age, check and make sure you are only getting characters you would expect. Also make sure you are not getting too much data that might overflow your backend data storage or whatever manipulation functions you may be passing this data to. A variation of the remote exploit is the XSS or cross-site scripting problem where one user enters some javascript that the next user then views.
</p></blockquote>
	<p>Bottom line is that security issues can raise anytime from external libraries bundled with php, and here the average developer has little control, but that on the server side validation, there are still many lacks, in many existing applications around. I&#8217;d say this is a must read for any web developer.</p>
	<p>more:  <a href="http://www.php.net/security-note.php">http://www.php.net/security-note.php</a>
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=42</wfw:commentRSS>
	</item>
		<item>
		<title>are we witnessing the wave two?</title>
		<link>http://www.php9.com/index.php?p=39</link>
		<comments>http://www.php9.com/index.php?p=39#comments</comments>
		<pubDate>Mon, 13 Dec 2004 16:49:08 +0000</pubDate>
		
	<category>World news</category>		<guid>http://www.php9.com/index.php?p=39</guid>
		<description>Could we witness wave two of post-communist transformations in the eastern European block?

I hope you are all familiar with the first wave that broke the empire that paralyzed the eastern Europe for decades. Starting with the Berlin wall that falled in 1989, the first wave of post-communist transformations started to ...</description>
		<content:encoded><![CDATA[	<h1>Could we witness <strong>wave two</strong> of post-communist transformations in the eastern European block?</h1>
	<p>I hope you are all familiar with the first wave that broke the empire that paralyzed the eastern Europe for decades. Starting with the <a href="http://www.google.com/search?q=Berlin+wall+fall">Berlin wall</a> that falled in 1989, the first wave of post-communist transformations started to shape the face of eastern Europe. In most of the countries in the region, former communist rulers were taken out, and democratic regimes started to emerge.</p>
	<p>These days, Ukraine was facing an incredible internal pressure. The whole country was waiting for a decision about the validity of the recently run elections. Finally, the Supreme court in Ukraine declared that the elections were faked,  and that new elections have to occur. The opposition ruled by mr. Victor Jushchenko is supposed to win the next elections, and seem to represent the will of the people.</p>
	<p><img src="/images/articles/BasescuvsNastase.jpg" align="right" alt="Basescu vs. Nastase in the last TV duel" />A similar thing happened in Romania, my homeland. Since 2000, the former communist party was ruling the country, with major corruption scandals, freedom of press and media. There were two presidential elections, and the first round was plagued by frauds and complaints. The opposition, ruled by <a href="http://www.basescu.ro/">mr. Traian Basescu</a>, the former mayor or Bucharest, succeeded in round two for presidency. The success was so unexpected, that internally it is perceived almost as a revolution. Romanians did not experience such an enthusiasm for years. There are many hopes in Romania today for the new democratic regime, and the political future of Romania is under a deep transformation this very day.</p>
	<p>These two democratic changes in Easter Europe that happen right now make me think that we are witnessing a <strong>wave two of post-communist transformations</strong>. Wave one, 1989-90, shaped a new direction for these countries, and now, 15 years later, communist mentalities were again defeated. I think it is a victory of the democracy itself, and I hope the best for all countries involved.
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=39</wfw:commentRSS>
	</item>
		<item>
		<title>Amazon Associates opportunity</title>
		<link>http://www.php9.com/index.php?p=41</link>
		<comments>http://www.php9.com/index.php?p=41#comments</comments>
		<pubDate>Mon, 13 Dec 2004 10:43:50 +0000</pubDate>
		
	<category>Affiliate ideas</category>		<guid>http://www.php9.com/index.php?p=41</guid>
		<description>If you are an&amp;nbsp;Amazon associate that:

is not technically skilled 
masters the&amp;nbsp;English language 
has a fair amount of criticism as a regular consumer 
like to read/write product editorial reviews

then there's an opportunity that&amp;nbsp;you&amp;nbsp;might find both interesting and rewading. Contact me at    </description>
		<content:encoded><![CDATA[	<p>If you are an&nbsp;Amazon associate that:</p>
	<ul>
	<li>is <strong>not</strong> technically skilled </li>
	<li>masters the&nbsp;English language </li>
	<li>has a fair amount of criticism as a regular consumer </li>
	<li>like to read/write product editorial reviews</li>
	</ul>
	<p>then there&#8217;s an opportunity that&nbsp;you&nbsp;might find both interesting and rewading. Contact me at <a href="mailto:please copy e-mail"><img align="absmiddle" src="/images/articles/prophp.gif" /></a> </p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=41</wfw:commentRSS>
	</item>
		<item>
		<title>metamorphosing particular RSS Feeds in the Simplest Shop</title>
		<link>http://www.php9.com/index.php?p=40</link>
		<comments>http://www.php9.com/index.php?p=40#comments</comments>
		<pubDate>Sun, 12 Dec 2004 09:02:46 +0000</pubDate>
		
	<category>Web Development and Programming</category>
	<category>Search Engine Optimization</category>		<guid>http://www.php9.com/index.php?p=40</guid>
		<description>RSS is an extensible markup language (XML)-based Web content syndication format. Originally developed for use with My Netscape , RSS is a standardized format for structuring site content for exchange and virtual "channel" publishing. RSS is in use in the Simplest Shop as a publishing stream for site reviews, and ...</description>
		<content:encoded><![CDATA[	<p>RSS is an extensible markup language (XML)-based Web content syndication format. Originally developed for use with My Netscape , RSS is a standardized format for structuring site content for exchange and virtual &#8220;channel&#8221; publishing. RSS is in use in the <a href="http://simplest-shop.com">Simplest Shop</a> as a publishing stream for site reviews, and is split by topic.</p>
	<p>Here are some of the RSS feeds that currently exist:</p>
	<ul>
	<li><a href="http://simplest-shop.com/reviews.xml?mode=games">Computer game reviews</a></li>
	<li><a href="http://simplest-shop.com/reviews.xml?mode=electronics">Consumer electronic reviews</a></li>
	<li><a href="http://simplest-shop.com/reviews.xml?mode=dvd">Reviews about DVDs</a></li>
	<li><a href="http://simplest-shop.com/reviews.xml?mode=software">Software reviews</a></li>
	<li><a href="http://simplest-shop.com/reviews.xml?mode=kitchen">Household devices reviews</a></li>
	</ul>
	<p>There is also a paid reviews feed available: <a href="http://simplest-shop.com/pay4review.xml">Pay for Review</a>, which groups all paid feeds across the entire website.</p>
	<p>The XML document which represents the RSS feed appears as HTML to most of the modern web browsers around. This transformation is achieved by a XSL transformation that is performed on the client side. This transformation is triggered by this line:</p>
	<p><code> &lt;?xml-stylesheet type="text/xsl" href="/xslt/rss.xsl" media="screen"?&gt;</code></p>
	<p>that is placed in the head of the RSS document. The first line defines the encoding, then the XML-stylesheet is defined in this XSL file: <a href="http://simplest-shop.com/xslt/rss.xsl">http://simplest-shop.com/xslt/rss.xsl</a>. The transformation ensures that the raw and pretty-much unreadable XML lines appear as a regular HTML document to the user. I have the XSL document above from <a href="http://www.russellbeattie.com/notebook/">Russel Beatie</a>, who maintains a really popular weblog; you can use it. The XSL document contains the logic of the transformation, and the effective layout is in the main simplest shop CSS file. The CSS lines that define the layout are here:</p>
	<ol class="code">
/*<br />
	rss feed<br />
*/</p>
	<p>#container{<br />
	margin-top: 24px;<br />
	margin-bottom: 36px;<br />
	margin-left: 72px;<br />
	margin-right: 72px;<br />
}</p>
	<p>#header{<br />
	padding-top: 5px;<br />
}</p>
	<p>#footer{<br />
	text-align: center;<br />
	background-color:#EBFFD7;<br />
	font-weight: bold;<br />
	border-top:1px solid #CCCCCC;<br />
	padding:10px;</p>
	<p>}</p>
	<p>.post{<br />
	background-color: #FFFFFF;<br />
	border: 1px solid #808080;<br />
	padding:15px;<br />
	margin-bottom:20px;<br />
}</ol>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=40</wfw:commentRSS>
	</item>
		<item>
		<title>let there be quiet general elections in Romania!</title>
		<link>http://www.php9.com/index.php?p=38</link>
		<comments>http://www.php9.com/index.php?p=38#comments</comments>
		<pubDate>Sun, 28 Nov 2004 11:52:31 +0000</pubDate>
		
	<category>General</category>		<guid>http://www.php9.com/index.php?p=38</guid>
		<description>Today Romanian people vote for the Romanian President and the Parliament. The choice is between the ruling ex-communist PSD and a centrist alliance of the Liberal and Democrat parties. Recently accepted in  NATO, Romania is heading towards European Union integration in (hopefully) 2007. Part of the Eastern european block, ...</description>
		<content:encoded><![CDATA[	<p><img src="/images/articles/romania.gif" align="right" />Today Romanian people vote for the Romanian President and the Parliament. The choice is between the ruling ex-communist PSD and a centrist alliance of the Liberal and Democrat parties. Recently accepted in  NATO, Romania is heading towards European Union integration in (hopefully) 2007. Part of the Eastern european block, made mostly of former-sovietic countries, Romania is the direct neighbour of Ukraine.</p>
	<p><a id="more-38"></a></p>
	<p>Romania still has major problems:  poverty, lack of economical freedom, major corruption scandals. To any foreign analyst, the country gives the feeling of a controlled dictatorship. The latest 4 years ruled by ex-communists did not convince the western european powers that the country is on its right way towards real democracy. The reforms were performed too slow; the state-owned black-holes of the economy are still voiding the country budget. Basically the 4 years meant slow improvements to the common people; because of the left-orientation of the ex-comunists; but meant little improvements on a country scale. On the other hand, the opposition made little to convince the regular person that it has a true alternative to the way the country is currently ruled. There are doubts that, if the liberal and democratic parties win, the power will be given away in peace.</p>
	<p>You must have heard of the <a href="http://news.google.com/news?hl=en&#038;ned=us&#038;q=ukraine">huge scandal with the Ukraine elections</a>. Romania is Ukraine&#8217;s neighbour, and my hopes are that the scandal there will not repeat in my homeland. There are many similarities, in that communists ruled Ukraine as well for 4 years. </p>
	<p>Romania crossed 50 years of an extreme communist dictator (Ceausescu), and the revolution in 1989 that took him away was bloody and cruel: the former leader was executed, and thousands of people died on the streets for their dream of freedom. I hope that, if the state power will rotate, it will be a peaceful process</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=38</wfw:commentRSS>
	</item>
		<item>
		<title>php5 and Java</title>
		<link>http://www.php9.com/index.php?p=36</link>
		<comments>http://www.php9.com/index.php?p=36#comments</comments>
		<pubDate>Fri, 19 Nov 2004 10:54:29 +0000</pubDate>
		
	<category>PHP Programming</category>		<guid>http://www.php9.com/index.php?p=36</guid>
		<description>Getting back to the roots: PHP5 is catching up fast:

PHP5 comes out, and I get to know it and love it. Then I realized as I'm reading Java examples in articles and books - they all make sense now! PHP5 is just similar enough to Java that if you know ...</description>
		<content:encoded><![CDATA[	<p>Getting back to the roots: PHP5 is catching up fast:</p>
	<blockquote><p>PHP5 comes out, and I get to know it and love it. Then I realized as I&#8217;m reading Java examples in articles and books - they all make sense now! PHP5 is just similar enough to Java that if you know PHP5, you can at least understand Java.
</p></blockquote>
	<p>Read more : <a href="http://www.onlamp.com/pub/wlg/5946">http://www.onlamp.com/pub/wlg/5946</a><br />
Also a must-read for anyone starting with PHP5:</p>
	<p><a href="http://www.zend.com/php5/andi-book-excerpt.php">http://www.zend.com/php5/andi-book-excerpt.php</a>
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=36</wfw:commentRSS>
	</item>
		<item>
		<title>the future of search looks pretty much like the past?</title>
		<link>http://www.php9.com/index.php?p=34</link>
		<comments>http://www.php9.com/index.php?p=34#comments</comments>
		<pubDate>Fri, 12 Nov 2004 13:42:49 +0000</pubDate>
		
	<category>Search Engines World</category>		<guid>http://www.php9.com/index.php?p=34</guid>
		<description>Microsoft let us all see yesterday how the software giant sees the future of search inthe Beta of the MSN.com search. I guess everybody was expecting huge press releases and intensive media coverage. So far this has not happened; it has been a quiet launch. 



The new search engine moves ...</description>
		<content:encoded><![CDATA[	<p>Microsoft let us all see yesterday how the software giant sees the future of search inthe <a href="http://beta.search.msn.com">Beta of the MSN.com search</a>. I guess everybody was expecting huge press releases and intensive media coverage. So far this has not happened; it has been a quiet launch. </p>
	<p><a id="more-34"></a></p>
	<p>The new search engine moves from a techpreview to a beta stage; and the results relevancy is already impressive. There are also interesting innovations like the +SearchBuilder, or the questions answering machine, however how much these things will improve the search engine experience overall is subject to debates. There&#8217;s a strong power in the algo behind the new msn.com; however doesn&#8217;t seem to bring anything trully revolutionary out there. </p>
	<p><b>Algorithm</b><br />
The MSN beta search results for major keyword sets don&#8217;t contain the shocking relevancy everybody was expecting. Of course, the SERPs relevancy is impressive, but so is google&#8217;s, or yahoo&#8217;s. After using it a little, here are the points that seem to be different:<br />
- msn seems to me to be less exposed to spam<br />
- <a href="http://beta.search.msn.com/results.aspx?q=miserable+failure">google bombing</a> attempts don&#8217;t affect it that much<br />
- the data index seem way bigger than any other engine out there. For the search terms I tried, msn had two times more results than the sum of all google and yahoo search result pages. Some search engine analysists say that the bigger the search engine index is, the more power it has; so I guess the beta launch brings Msn.com on the top in the fight against the &#8220;invisible web". This enormous search index might also justify the <a href="http://www.php9.com/index.php?p=27">fury behind the new Googlebot</a></p>
	<p><b>Design</b><br />
On the frontend side also, msn beta seems a &#8220;microsofized&#8221; google; with little or less innovation. </p>
	<p>The overture paid results eat half of the screen. I hoped that running this beta will allow microsoft not to overload the page with paid results; unfortunatelly this didn&#8217;t happen. Overture by far overpasses Google adwords; and the paid results are extremelly relevant; however was this overloading really necessary? </p>
	<p>Google still shapes the way web search engines look like. Even giants like <a href="http://search.yahoo.com/">Yahoo! Web Search</a> or MSN Search are too scared to bring innovation into this field. The same big logo over the centered search box, news, images search etc; same results with/without bolding flowing one under the other. Of course managers tend to assume that part of google&#8217;s success was its design; so they all copy it. Is it like this? Or was it that google algos were so good that regular search engines users associate nowadays good result sets with google result page layout.</p>
	<p>Anyway a great new engine out there. I guess Microsoft will need now a way to channel searches to it; I&#8217;m pretty sure they&#8217;ll find some ways to do it. I&#8217;d drop the google toolbar anytime; the green line is becoming more and more annoying.</p>
	<p>A deep analysis of the new engine <a href="http://searchenginewatch.com/searchday/article.php/3434261">Microsoft Unveils its New Search Engine - At Last</a> by Chris Sherman
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=34</wfw:commentRSS>
	</item>
		<item>
		<title>GOOG: to buy or to buy</title>
		<link>http://www.php9.com/index.php?p=33</link>
		<comments>http://www.php9.com/index.php?p=33#comments</comments>
		<pubDate>Wed, 10 Nov 2004 14:18:37 +0000</pubDate>
		
	<category>Search Engines World</category>		<guid>http://www.php9.com/index.php?p=33</guid>
		<description>I was just searching the web for "buy stock", and here's what came out: 




Seriously now, if somebody searches the web through Google for "buy google stock", first results are all kind of "market experts" that warn you against buying stocks from them, generously sharing 10 reasons not to go ...</description>
		<content:encoded><![CDATA[	<p>I was just searching the web for &#8220;buy stock", and here&#8217;s what came out: <a id="more-33"></a></p>
	<p><img src="/images/articles/goog.gif" style="border: 1px solid #6DB6B6;"  align="left" alt="buy stock search results" /></p>
	<p><br clear="left" /><br />
Seriously now, if somebody searches the web through Google for <a href="http://www.google.com/search?q=buy+google+stock">&#8220;buy google stock&#8221;</a>, first results are all kind of <a href="http://www.prweb.com/releases/2004/4/prweb116225.htm">&#8220;market experts&#8221;</a> that warn you against buying stocks from them, generously sharing 10 reasons not to go with them etc. This in the very Google search results. Via so-called press releases, these guys managed to get on top in Google for anti-Goog purposes. My post might even help them stay there. All this in the conditions that GOOG stock doubled and keeps rising. </p>
	<p>Weird right?
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=33</wfw:commentRSS>
	</item>
		<item>
		<title>find24x7.com taking search one step further</title>
		<link>http://www.php9.com/index.php?p=32</link>
		<comments>http://www.php9.com/index.php?p=32#comments</comments>
		<pubDate>Wed, 10 Nov 2004 12:13:43 +0000</pubDate>
		
	<category>AWIS: Alexa Web Information Service</category>		<guid>http://www.php9.com/index.php?p=32</guid>
		<description>Find24x7.com has recently been launched. Whereas most search engines nowadays help you search for information, the focus of the new web search engine is on finding information; therefore taking search one step further.



The web search website is one of the first applications using AWIS data (Alexa Web Information Service). AWIS ...</description>
		<content:encoded><![CDATA[	<p><a href="http://find24x7.com/"><br />
<h3 style="color:#f50;display:inline;margin-right:10px;text-decoration:none;font-weight: bold;">Find24x7.com</h3>
</a> has recently been launched. Whereas most search engines nowadays help you search for information, the focus of the new web search engine is on finding information; therefore taking search one step further.</p>
	<p><a id="more-32"></a></p>
	<p>The web search website is one of the first applications using AWIS data (Alexa Web Information Service). AWIS is a free beta service offered by online superstore Amazon.com. AWIS gives developers access to data collected by the Alexa Web Crawl. Alexa, which was acquired by Amazon.com in 1999, uses a Web Crawl technology to collect data about Web site information and usage. </p>
	<p>Over 100 Terabytes of data and a search map of over 4 bilion Internet Addresses is waiting for your command. Why not give it a try?
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=32</wfw:commentRSS>
	</item>
		<item>
		<title>Mutu: soccer&#8217;s roller coaster</title>
		<link>http://www.php9.com/index.php?p=31</link>
		<comments>http://www.php9.com/index.php?p=31#comments</comments>
		<pubDate>Mon, 08 Nov 2004 21:57:04 +0000</pubDate>
		
	<category>General</category>		<guid>http://www.php9.com/index.php?p=31</guid>
		<description>(this post is world sport). My co-nationals rarelly make the news. However there's a scandal since about 2 weeks in the entire european footbal. Adrian Mutu, the romanian football player from Chelsea UK was caught on drugs by his club. In Europe, this generated a huge scandal in professional soccer; ...</description>
		<content:encoded><![CDATA[	<p>(this post is world sport). My co-nationals rarelly make the news. However there&#8217;s a scandal since about 2 weeks in the entire european footbal. <a href="http://news.google.com/news?q=mutu">Adrian Mutu</a>, the romanian football player from Chelsea UK was caught on drugs by his club. In Europe, this generated a huge scandal in professional soccer; the clubs wanted top penalty because the players shouldn&#8217;t take drugs and play, so Chelsea, his club, one of the biggest in UK, fired the player before he was actually suspended by English FA. This was a huge mistake from them; read on:</p>
	<p><a id="more-31"></a></p>
	<p>The club handled the scandal extremelly weird. To the world press it appeared as a personal vendetta; instead of a professional behaviour. Chelsea didn&#8217;t expect the official decision in the drug&#8217;s case and fired my co-national before the decision was reached. Chelsea thought Mutu will be out of the playing ground for two years, and completelly careless to the person, they fired Mutu, making him &#8220;free of contract", this means that he is suddenly free to choose any club he wants at no charge.</p>
	<p>Image Chelsea&#8217;s surprise when Mutu was only suspended for 7 months! They paid about 25 million dollars for this guy, they fired him before waiting for the official decision, expected him out of football for 2 years and yet he succeeds not getting penalised.</p>
	<p>In another sudden moves, Mutu fired his agents right today, and the latest news is that Juventus Turin, the big Italian football club has just sent him a payment advance. The big hit is that Juventus gets this guy for free; after the stupid Chelsea paid so much on him.</p>
	<p>I think Chelsea has an attitude problem; I hope the UK press will touch the subject
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=31</wfw:commentRSS>
	</item>
		<item>
		<title>new Googlebot, cleaning the slow Internet trash</title>
		<link>http://www.php9.com/index.php?p=30</link>
		<comments>http://www.php9.com/index.php?p=30#comments</comments>
		<pubDate>Mon, 08 Nov 2004 18:41:32 +0000</pubDate>
		
	<category>Search Engines World</category>		<guid>http://www.php9.com/index.php?p=30</guid>
		<description>A killer is out there on the Internet; next victim can be your website! Ok, it's not a killer, but a crawler, and it doesn't really kill, but puts slow websites on their knees. Since just a few weeks, the Crawling robot from Google gives many websites in the world ...</description>
		<content:encoded><![CDATA[	<p>A killer is out there on the Internet; next victim can be your website! Ok, it&#8217;s not a killer, but a crawler, and it doesn&#8217;t really kill, but puts slow websites on their knees. Since just a few weeks, the Crawling robot from Google gives many websites in the world <a href="http://www.webmasterworld.com/forum3/26384.htm">a hard time</a>.</p>
	<p><a id="more-30"></a></p>
	<p>As it&#8217;s almost a year since the devastating <a href="http://www.google.com/search?q=florida+update">Florida update</a>, speculations say that Google is preparing a new weapon. The one face of this possible new weapon could be this new crawler; requesting webpages at a demential rate of 50-150 webpages per second.</p>
	<p>Actually let&#8217;s think about this a little; the new crawler wasn&#8217;t supposed to harm the Internet in any way, as <a href="http://www.google.com/governance/conduct.html">the motto says</a>, nor to make webmasters go nuts. So what&#8217;s wrong with the new strategy then?</p>
	<p>Well, fact is that I personally am cought on a bad position by this new crawler. I released a website a few months ago and hoped to see a smooth and easy search engines raising. So I programmed this website, pretty DB intensive; with about 40-60 MySQL calls per page; pretty much over the 20 recommended limit, but I hoped it will stand. I then loaded quite a lot of data in the MySQL tables also; a few tables exceed a few million rows. The website stood pretty fine under testing, it used quite a bit of memory, but went live without big problems. I honestly thought it will stand normal crawling; and it did stand up-until a few weeks, since the new crawler started hitting it. At about 40 requests per second, the database went in LaLaLand, and it&#8217;s there ever since. Every attempt to restart the db daemon gives another hours of break, until the crawler starts hitting it again.</p>
	<p>So what is the message here? I&#8217;m getting to the title of my post here. Well, the message this crawler brings to the world is that my website and its kind are far from ready for the next Internet, and that bad programmed websites are trash and have nothing to do on the Internet today. So the bad programmed websites should head for a congregation soon, by syndicating their complaints, or they will be out of the new index Google is preparing. </p>
	<p>I wouldn&#8217;t mind having only fast websites as results in Google. There was a so called usability rule; that any website pages should load <a href="http://www.google.com/search?q=%22loaded+within+8+seconds%22">in under 8 seconds</a>; and 8 secs is already an eternity. How about 1 second? How about half a second loading time? Think about how much time in your life you would save if all the websites you visit would obey this rule.
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=30</wfw:commentRSS>
	</item>
		<item>
		<title>theories turn real after all: Shopping.com</title>
		<link>http://www.php9.com/index.php?p=29</link>
		<comments>http://www.php9.com/index.php?p=29#comments</comments>
		<pubDate>Fri, 05 Nov 2004 13:37:17 +0000</pubDate>
		
	<category>Affiliate ideas</category>		<guid>http://www.php9.com/index.php?p=29</guid>
		<description>back in November 2002, I was discussing an affiliate idea that I thought at the time would empower affiliate marketing in the future. Now, about two years later, it is nice to see parts of this idea in practice at Shopping.com



I'm no big specialist, but in just a few words, ...</description>
		<content:encoded><![CDATA[	<p>back in November 2002, I was <a href="http://forums.prospero.com/n/mb/message.asp?webtag=am-assocdevxml&#038;msg=1133.1&#038;maxT=2">discussing an affiliate idea</a> that I thought at the time would empower affiliate marketing in the future. Now, about two years later, it is nice to see parts of this idea in practice at Shopping.com</p>
	<p><a id="more-29"></a></p>
	<p>I&#8217;m no big specialist, but in just a few words, affiliate marketing assumes that part of a big company sales are not handled internally, but outsourced to a group of affiliate marketing specialists. These affiliate specialists, or affiliates, funnel part of the big company sales in return of a sales commission. They aren&#8217;t necessarily on the big company&#8217;s payroll as employees, they are external parties handling sales.</p>
	<p>In the online e-commerce area, affiliate marketing took many faces: affiliate links, price comparison websites, e-mail marketing etc. Affiliates have become more and more inventive in creating ways to channel significant sales on Target Companies websites. </p>
	<p><a href="/images/articles/affiliate-commission.gif"><img src="/images/articles/affiliate-commission2.gif" align="right" border="0" hspace="10" alt="Current Commission model" /></a><strong>Current Commission model: </strong> The most common affiliate design follows: visitors land on affiliate web-pages, e-mails, marketing campaigns, and if they follow the sales link and run a purchase on the Target Company&#8217;s website, then the affiliate is paid with a Commission. The benefits in this basic model are mostly for the affiliates and the target company. The visitors are &#8220;passed away&#8221; between these two sales segments. In the future, there is no actual reason why a visitor would still use the affiliate gateway; instead he could just go directly to the Target Company. This model is what powers regular price comparison websites today, and affiliate links. The visitor has the possibility to see the Target Company&#8217;s products in a way the affiliate indended to, but all this structure is a short-term model for the Affiliate, because it lacks a clear existance reason.</p>
	<p>The foundation of affiliate marketing can be slightly altered. The whole point is to focus on the visitor, and ways to make his Affiliate visit more rewarding.</p>
	<p><a href="/images/articles/back-paid-commission.gif"><img src="/images/articles/back-paid-commission2.gif" align="right" border="0" hspace="10" alt="Back-Pay Commission model" /></a> <strong>Back-Pay Commission model: </strong>In this model, recently adopted by <a href="http://www.Shopping.com/">Shopping.com</a>, the Affiliate decides to split the commission it receives from the Target Company with the visitor. The Affiliate, in our case Shopping.com, decides to count which sales the Visitors triggered, and on each sale, they pay back the visitor with a percentage from their earnings. Considering what marketing power this top E-commerce Price Comparison website has, it is likelly that this move will change the affiliate marketing world. This all depends on how fast and well the Target Companies perceive this model, and when and how will the big Target Companies follow this game. The obvious advantage with this model is that the Affiliate suddently has a strong reason to exist, because sales made through it will return a part of Visitor&#8217;s money back. The hassle with it is that the Affiliate has to track which sale he did actually intermediate, which sale was not returned back to the Target Company etc</p>
	<p>Another model I humbly proposed, two years ago, is still on the drawing board. However, compared to the hassle the Shopping.com model is, this one could turn into a successful model (in another 2 years maybe):</p>
	<p><a href="/images/articles/shared-commission.gif"><img src="/images/articles/shared-commission2.gif" align="right" border="0" hspace="10" alt="Shared Commission model" /></a><strong>Shared Commission model: </strong> In this model, the Affiliate decides to split the commission it receives from the Target Company with the visitor on the fly. However the Affiliate does nothing in particular, except for this decision. The whole process is handled by the Target Company. What the Visitor actually sees on the Target Company&#8217;s website, if he travels his way through the Affiliate channel, is a cheaper price than at a direct visit. The Affiliate serves then as a discounter-creator, and the Visitor will be more than happy to head his way in the future as well. A discounted price turns into better sales for the Target Company as well, so all parts benefit from this approach. This model also shifts the discount processing to the Target Company&#8217;s playground, making the job easier to both the Affiliate and the Visitor.</p>
	<p>It&#8217;s really easy to put in the Affiliate place Amazon Associates, and instead of Target Company Amazon.com. Actually Amazon.com sort of does this internally already, I&#8217;ll let you fine industry observers reply back with the exact model. But the strength of this model makes it work with any other affiliate program out there.</p>
	<p>I&#8217;m not a business man, and these ideas can well be attacked again, like they were two years ago. I&#8217;m just a humble web developer after all. The perspective towards all this might change however, considering that industry leaders adopted them.
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=29</wfw:commentRSS>
	</item>
		<item>
		<title>/bin/rm: Argument list too long.</title>
		<link>http://www.php9.com/index.php?p=28</link>
		<comments>http://www.php9.com/index.php?p=28#comments</comments>
		<pubDate>Wed, 03 Nov 2004 16:26:49 +0000</pubDate>
		
	<category>Shell Scripting</category>		<guid>http://www.php9.com/index.php?p=28</guid>
		<description>After years working with FreeBSD, I encountered a limitation of rm. Fact is that "rm -rf *" cannot remove more than 1024 files at once. There is however an easy workaround.



I have a html caching directory filled in with files generated on the fly by the webserver. It is my ...</description>
		<content:encoded><![CDATA[	<p>After years working with FreeBSD, I encountered a limitation of rm. Fact is that &#8220;rm -rf *&#8221; cannot remove more than 1024 files at once. There is however an easy workaround.</p>
	<p><a id="more-28"></a></p>
	<p>I have a html caching directory filled in with files generated on the fly by the webserver. It is my daily routine to manually clean this directory. However the new googlebot crawler paid me a visit with more than 250k spidered pages per day; therefore the filesystem limitations were encountered.</p>
	<p>I tried:</p>
	<blockquote><p>% rm -rf *<br />
/bin/rm: Argument list too long.</p></blockquote>
	<p>A short check on this directory</p>
	<blockquote><p>% find . -type f|wc -l<br />
   21043</p></blockquote>
	<p>issues 21,043 files to remove, way more the 1,024 limit rm can handle. Therefore I typed:</p>
	<blockquote><p>% find . -type f |xargs rm</p></blockquote>
	<p>which did the job.  The reason the removal now worked is that find created a list of files that were then sent one by one to the rm command via xargs.
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=28</wfw:commentRSS>
	</item>
		<item>
		<title>Googlebot at war: crawler behaving erratically</title>
		<link>http://www.php9.com/index.php?p=27</link>
		<comments>http://www.php9.com/index.php?p=27#comments</comments>
		<pubDate>Sat, 30 Oct 2004 10:15:34 +0000</pubDate>
		
	<category>Search Engines World</category>		<guid>http://www.php9.com/index.php?p=27</guid>
		<description>Updated, read below
On a website of mine, this Camera Shop, Googlebot behaved yesterday in a completely irrational way. On that website, Googlebot usually "reads" about 1-200 pages a day. The traffic is quite low also: around 250 visitors per day.



Yesterday,  a Googlebot/2.1 crawler coming from 66.249.66.205 literally sieged the ...</description>
		<content:encoded><![CDATA[	<p><span style="color:red">Updated, read below</span><br />
On a website of mine, this <a href="http://shop.php9.com">Camera Shop</a>, Googlebot behaved yesterday in a completely irrational way. On that website, Googlebot usually &#8220;reads&#8221; about 1-200 pages a day. The traffic is quite low also: around 250 visitors per day.</p>
	<p><a id="more-27"></a></p>
	<p>Yesterday,  a Googlebot/2.1 crawler coming from 66.249.66.205 literally sieged the website. In one day it requested more than 250,000 pages from this website. At first I thought it follows a given pattern, but the fact is that this crawler was randomly reading pages from that site, without a predefined path. If I were to calculate the average requests per second, (250,000/(24*3600)), this issues around 2,89 requests per second, which is not that much. However this particular crawler performed batched requests; this means that it paused for minutes, and then ferociously read dozens of webpages again.  I hoped it does not exceed a threshold of 10 pages per second; or 20, you would think this would kill any database driven website. My hopes were wrong:<br />
<code><br />
cat shop.php9.com.20041029 | grep Googlebot |  awk -F - &#8216;{print $3}&#8217; | sort | uniq -c | sort -r | head<br />
47  [29/Oct/2004:21:33:44<br />
44  [29/Oct/2004:08:23:21<br />
41  [29/Oct/2004:21:33:42<br />
41  [29/Oct/2004:08:36:29<br />
41  [29/Oct/2004:08:23:19<br />
40  [29/Oct/2004:08:43:23<br />
40  [29/Oct/2004:08:36:25<br />
40  [29/Oct/2004:08:34:20<br />
39  [29/Oct/2004:10:12:13<br />
39  [29/Oct/2004:09:22:17<br />
</code></p>
	<p>As this small measurement shows, there were seconds when the crawler exceeded 40 requests per second; and once issued 47 requests per second</p>
	<p>Note:  this IP  <a href="http://www.whois.sc/66.249.66.205">definitely belongs to Google</a> . There are no new links pointing to this website, nothing new happening there since quite sometime, nothing that I know of that would justify such a rage.</p>
	<p>Today everything is calme again. This never happened in the past, and I guess won&#8217;t happen again soon. I wrote to webmaster@google.com, but i should have written to /dev/null better; I guess they never read that.</p>
	<p><span style="color:red">Update 02.11.2004:</span><br />
I was wrong about the Google Support. They did reply:<br />
&#8220;We are sorry about any excessive strain Google is causing your web servers. If you would like us to slow down the rate at which Googlebot crawls your site, please send us a copy of your most recent weblog that lists Googlebot, and we will pass your request on to our engineers. &#8220;<br />
The access_log for that day is about 80MB. This makes me believe these &#8220;website shootings&#8221; doesn&#8217;t happen on a large scale.</p>
	<p>By now also, Googlebot started to crawl again my webpages. The daily average is far lower now, around 30k requests/day. The greediness is still the same though:</p>
	<p><code><br />
% cat access_log  | grep Googlebot |  awk -F - &#8216;{print $3}&#8217; | sort | uniq -c | sort -r | head<br />
  40  [01/Nov/2004:18:17:28<br />
  39  [01/Nov/2004:18:16:50<br />
  36  [01/Nov/2004:18:17:22<br />
  35  [01/Nov/2004:19:17:06<br />
  35  [01/Nov/2004:19:15:51<br />
  35  [01/Nov/2004:18:17:32<br />
  35  [01/Nov/2004:18:17:29<br />
  35  [01/Nov/2004:18:17:21<br />
  34  [01/Nov/2004:19:17:09<br />
</code></p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=27</wfw:commentRSS>
	</item>
		<item>
		<title>PHP leaks memory myths</title>
		<link>http://www.php9.com/index.php?p=25</link>
		<comments>http://www.php9.com/index.php?p=25#comments</comments>
		<pubDate>Thu, 28 Oct 2004 08:49:52 +0000</pubDate>
		
	<category>PHP Programming</category>		<guid>http://www.php9.com/index.php?p=25</guid>
		<description>I read this plot a lot: "PHP isn’t so great at being a daemon... ". Variations to it: PHP is a leaking bastard, in cli mode it consumes the whole system resources etc. It's rumoured in blogs all around

Therefore anybody thinking of building an enterprise-ready PHP-based solution thinks not only ...</description>
		<content:encoded><![CDATA[	<p>I read this plot a lot: &#8220;PHP isn’t so great at being a daemon&#8230; &#8220;. Variations to it: PHP is a leaking bastard, in cli mode it consumes the whole system resources etc. It&#8217;s rumoured in blogs all around</p>
	<p>Therefore anybody thinking of building an enterprise-ready PHP-based solution thinks not only twice about it, but maybe considers other programming languages. If PHP is only suitable for the frontend, why should a company invest in hiring and training developers that are so one-sided-only oriented? </p>
	<p>I think besides the &#8220;coolness&#8221; factor that most php developers try to spread around , a sense of reality should be present as well. It is my direct experience as a PHP Programmer that PHP does not leak memory, if the script is written the right way. I have cron-jobs (php in cli mode) processing XML or CSV files of over 30 million lines and these scripts run just fine. I watch the memory usage on these scripts carefully, of course these scripts consume memory, but this does not increase exponentially at all. In fact these scripts run just fine.</p>
	<p>I&#8217;m not saying that there are no PHP libraries out there that do cause memory leaks. I mean if I created a function with a static array in it, and keep growing the array on every function call, of course at a point PHP will exceed its memory limit and die. But again, this is not the language&#8217;s fault, but the programmer&#8217;s.
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=25</wfw:commentRSS>
	</item>
		<item>
		<title>ECS 4.0 API</title>
		<link>http://www.php9.com/index.php?p=24</link>
		<comments>http://www.php9.com/index.php?p=24#comments</comments>
		<pubDate>Mon, 18 Oct 2004 20:03:59 +0000</pubDate>
		
	<category>PHP Programming</category>
	<category>ECS 4.0: Amazon E-commerce Service</category>		<guid>http://www.php9.com/index.php?p=24</guid>
		<description>Now everybody heard of Amazon.com. Since two and a half years now, everybody also knows  that Amazon.com has released an API to access its huge catalogs. The Amazon Web Services or AWS was discussed many times in the media; many innovative ways of exploring it appeared over time.



Beginning this ...</description>
		<content:encoded><![CDATA[	<p>Now everybody heard of Amazon.com. Since two and a half years now, everybody also knows  that Amazon.com has released an API to access its huge catalogs. The Amazon Web Services or AWS was discussed many times in the media; many innovative ways of exploring it appeared over time.</p>
	<p><a id="more-24"></a></p>
	<p>Beginning this month, (October 2004), Amazon.com released its Web Services SDK Version 4.0, code named Amazon E-Commerce Service (ECS 4.0). Together with the name change, many more background changes happened. ECS 4.0 brings in a new and improved architecture, a far better &#8220;technical look", interactive error handling, and a <a href="http://www.amazon.com/gp/aws/sdk">well structured online help</a>.</p>
	<p>As AWS 2.0 is still around, we might assume that AWS 3.0 will still live long time from now. However, it will not benefit from Amazon.com technical support, and at some point in the future the branch might deprecate and die. ECS 4.0 is a strong and mature service, benefits from fully from Amazon.com support and Web Services users should consider upgrading.</p>
	<p>The package consists of a few files, spreaded over a few directories. There is a simple classes structure, with a Xml class handling Xml processing and a Product class, handling live retrieval and pre-processing. The layer separation is achieved in the main controller, that first runs the data preparation layer and then the display layer.</p>
	<p>&lt;Technical description starts here&gt;</p>
	<p>The main controller is the file <a href="php/source/ECS4.0API-sources/example4.phps">example4.php</a>. This controller loads the global configuration:<a href="php/source/ECS4.0API-sources/common/config4.phps">config4.php</a>, then loads classes definitions: <a href="php/source/ECS4.0API-sources/classes/product4.phps">product4.php</a> and <a href="php/source/ECS4.0API-sources/classes/xml4.phps">xml4.php</a>, and the functions definitions: <a href="php/source/ECS4.0API-sources/functions/general.phps">general.php</a>.<br />
The data layer starts in <a href="php/source/ECS4.0API-sources/modules/fetch4.phps">fetch4.php</a>, that first retrieves the Amazon.com basic data, filters the live Products one-by-one with the Product::processXmlEntity() method of the <a href="php/source/ECS4.0API-sources/classes/product4.phps">Product class</a>, and then builds a ProductCollector, that contains the display-ready Product entities. The processed products under ProductCollector are passed to the display layer, <a href="php/source/ECS4.0API-sources/modules/display.phps">display.php</a>, that runs every Product entity through a display form <a href="php/source/ECS4.0API-sources/layout/example4.phps">example4.php</a></p>
	<p>&lt;/Technical description finishes here&gt;</p>
	<p>Here is a short <b>list of features</b> this package has:<br />
 - built using intuitive and simple classes<br />
 - separated layers<br />
 - it&#8217;s failsafe oriented: implements a failsafe remote retrieval function file_get_contents_failsafe in <a href="php/source/ECS4.0API-sources/functions/general.phps">general.php</a>. This function works in Windows and Unix as well, (trying successively curl/fopen/fsockopen) and also automatically retries eventual failed live feed attempts (during beta Ecs 4.0 used to failed unexpectedly)<br />
 - uses a PHP5&#8217;s SimpleXml-like Xml class. This means that whenever PHP5 becomes wide adopted, upgrading this Xml class to the native PHP5 Xml processing methods will be much easier.<br />
 - encapsulates pre-processing and retrieval<br />
 - runs on REST, which is significantly faster than SOAP</p>
	<p>Here is a short <b>installation guide</b>:</p>
	<p>1. download the <a href="php/source/ECS4.0API.zip">full ECS4.0API package zipped</a>.<br />
2. copy all files to your webserver.<br />
3. place your SubscriptionId in the file <a href="php/source/ECS4.0API-sources/common/config4.phps">common/config4.php</a>. You will get one free at http://webservices.amazon.com/<br />
4. place your Amazon.com Associate Id in the same configuration file <a href="php/source/ECS4.0API-sources/common/config4.phps">common/config4.php</a>.<br />
5. point your browser to the main controller example4.php<br />
&#8230; edit the display layer, the stylesheet to fit your needs</p>
	<p>You&#8217;ll need to enter a search term and select the proper SearchIndex.</p>
	<p>The demo for this package is available here: <a href="/example4.php">ECS 4.0 API demo</a>. Currently the webserver running php9.com is hosted in Germany, so disregard any slight delays in the reply. &lt;Technical explanation starts here&gt; Consider that first your request travels from your physical location to Germany, then the package queries Amazon.com (physically located in the US), then the reply comes back to our webserver and then the final code is sent to you. There is a general half a second delay for Interner packages &#8220;travelling&#8221; across the ocean, so at least a second delay happens. &lt;/Technical explanation ends here&gt;Once installed on your webserver and querying your local Amazon, the speed is impressive.</p>
	<p>The package comes with a <a href="http://www.gnu.org/copyleft/lesser.html">LGPL license</a> which should encourage creative ways of using it. </p>
	<p>Please let me know your eventual problems with installation or usage; I would gladly help you. With your feedback, the package will definitely improve.</p>
	<p><a name="update13012005"><br />
<font color="red"><b>Updated 13th January 2005</b></font><br />
</a></p>
	<ul>
	<li><a href="/index.php?p=45">AWSProductData -> AWSECommerceService</a> and from beta: <a href="php/source/ECS4.0API-sources/common/config4.phps">common/config4.php</a>: <br />
you need to replace line 72 (the  ECS4.0 root path) with this line:</p>
	<p>define(&#8217;ECS4_AMAZON_BASE_URL&#8217;,'http://webservices.amazon.com/onca/xml?Service=AWSECommerceService&#8217;);</p>
	</li>
	<li>Editorial reviews update: <a href="php/source/ECS4.0API-sources/layout/example4.phps">layout/example4.php</a> line 51 and 52</li>
	<li>repeated customer reviews bug: <a href="php/source/ECS4.0API-sources/modules/fetch4.phps">modules/fetch4.php</a> moved object definition inside the loop: $Product = new Product4();</li>
	</ul>
	<p>Thank you for all the fixes and patience, and sorry for the bugs! Calin</p>
	<p><font color="gray"><b>Shameless Selfpromotion!</b> If you need to enhance the package in special ways, or customize it to your needs, you might consider  our <a href="/php-mysql-development.html">professional php development</a> service.</font>
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=24</wfw:commentRSS>
	</item>
		<item>
		<title>Google Desktop search (codename  Puffin) is available!</title>
		<link>http://www.php9.com/index.php?p=23</link>
		<comments>http://www.php9.com/index.php?p=23#comments</comments>
		<pubDate>Thu, 14 Oct 2004 16:40:18 +0000</pubDate>
		
	<category>Search Engines World</category>		<guid>http://www.php9.com/index.php?p=23</guid>
		<description>I just received an E-mail from the Google Weblog mailing list. Just about now, the Google Desktop Search is available. It installs a Windows application on the local computer and runs a webserver (like Apache, but a tiny Google, running on http://127.0.0.1:something/) locally. Also installs an icon in the system ...</description>
		<content:encoded><![CDATA[	<p>I just received an E-mail from the <a href="http://google.blogspace.com/">Google Weblog mailing list</a>. Just about now, the <a href="http://desktop.google.com/">Google Desktop Search</a> is available. It installs a Windows application on the local computer and runs a webserver (like Apache, but a tiny Google, running on http://127.0.0.1:something/) locally. Also installs an icon in the system tray; like the gmail notifier and lets me run the search from there. After low-resources indexing (it should take a few hours), I will be able to search my local computer as I did over the Internet. I wonder what does &#8220;one-time indexing&#8221; imply; I hope it&#8217;s not that they create a full index just once and then run updates every time I change anything- I&#8217;d say this would slow things down significantly, because the desktop search would act like an antivirus (triggered by any FileSystem event).</p>
	<p><a id="more-23"></a></p>
	<div align="center">
<img style="border: 1px solid" src="/images/articles/google_desktop_search.gif" height="405" width=535" alt="Google desktop search still indexing" />
</div>
	<p>A new era in local search opens with this tool. The sleeping Microsoft giant should react soon. I bet it now regrets delaying the search focus in WinFS.<br />
Runs on XP or Windows 2000 SP 3+ for now. Indexes only these types of documents:<br />
- Outlook / Outlook Express<br />
- AOL Instant Messenger<br />
- Internet Explorer<br />
- Text<br />
- Word Excel PowerPoint </p>
	<p>It does index the temporary internet files;  this is quite weird as they are temporary and usually address Internet locations, so it appears to search the Internet locally. At first glance, it looks like an advanced Windows Explorer, however after only a few minutes of using it the impression changes. </p>
	<p>When going to the main google website now, a new tab appears called Desktop. If I run a search in the main google and the search term has local matches as well, identically to the froogle or google news teasers, now I have Google Desktop Search teasers in front of the organic results, together with the last modification date. Weird is that sometimes I have Google Desktop results there, then Froogle results, and only after the two the organic results - so they move lower and lower in the page.<br />
The hype should be  gone in about one week; but I wonder how many surprises the tool still has.
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=23</wfw:commentRSS>
	</item>
		<item>
		<title>AWIS in action: future directions concerns</title>
		<link>http://www.php9.com/index.php?p=22</link>
		<comments>http://www.php9.com/index.php?p=22#comments</comments>
		<pubDate>Mon, 11 Oct 2004 16:50:38 +0000</pubDate>
		
	<category>AWIS: Alexa Web Information Service</category>		<guid>http://www.php9.com/index.php?p=22</guid>
		<description>The recently released Alexa Web Information Service exposes a great level of detail in accessing website properties. Traffic ranking, subdomains list, related sites, website contact information, even the Stock Ticker, if available, are all present in the information AWIS returns back. As an example, have a look at "Amazon seen ...</description>
		<content:encoded><![CDATA[	<p>The recently released Alexa Web Information Service exposes a great level of detail in accessing website properties. Traffic ranking, subdomains list, related sites, website contact information, even the Stock Ticker, if available, are all present in the information AWIS returns back. As an example, have a look at <a href="http://simplest-shop.com/dirurl/http://www.amazon.com/">&#8220;Amazon seen through AWIS&#8221;</a>. A high number of customizable options allow only pieces or groups of the data to be retrieved (these clusters of data are available for playing <a href="http://www.awszone.com/scratchpads/rest/awis/UrlInfo.aws">here</a>). These &#8220;data clusters&#8221; are the same ResponseGroups that were brought out by the recently production Amazon E-Commerce Service.</p>
	<p><a id="more-22"></a></p>
	<p>The tree structure AWIS exposes is the result of many years of Internet crawling. The results of the Alexa crawling robots  that seemed to power only the <a href="http://www.waybackmachine.org/">WayBack machine</a>, or Alexa.com paid top websites were also used to build an Internet Map that today has over 4 billions URLs. All this information is now made available in a simple programmatical way to over 50,000 developers involved with Amazon Web Services.</p>
	<p>There are multiple variables in the future of AWIS equation.  I&#8217;m exploring some ideas here:</p>
	<p>- AWIS is not coming directly from Amazon.com, but from Alexa.com, a subsidiary of Amazon.com. People trust Amazon, Alexa.com is in small Amazon, but not identical to it.<br />
- AWIS is similar to Amazon E-Commerce Service. They launched together, they could follow the same evolution patterns. If one of them goes the paid route, would the other one follow?<br />
- Does AWIS have to stay free to survive? Definitelly it would gather a bigger market if it stayed free. However, as a new tool, there could be pressures in making all the programming effort profitable on the short run.<br />
- For the developers &#8220;used&#8221; to AWS, AWIS is not that far away. Conceptual wise, in the shopping area there are categories that have products underneath; in the AWIS world, categories contain websites.<br />
- possible concerns, if AWIS ever becomes a big player, of ranking websites on the amount of Amazon associate revenue they generate, as AWIS and AWS are all products of the same company.</p>
	<p>Business analysts put a lot of confidence in <a href="http://a9.com">A9</a>, the Amazon.com Web Search division. A9 in its core is powered by AWIS. Would AWIS be some sort of gateway to A9 for somehow passing forth the tremendous amount of innovation that AWS gathered?
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=22</wfw:commentRSS>
	</item>
		<item>
		<title>AWIS in action: simple directory structure</title>
		<link>http://www.php9.com/index.php?p=21</link>
		<comments>http://www.php9.com/index.php?p=21#comments</comments>
		<pubDate>Fri, 08 Oct 2004 18:32:13 +0000</pubDate>
		
	<category>AWIS: Alexa Web Information Service</category>		<guid>http://www.php9.com/index.php?p=21</guid>
		<description>Together with the main ECS 4.0 web services platform launch, Amazon.com and Alexa.com released a beta service in the websites information area under the codename AWIS. Here is a small example of using this service in the newly acquired simple Shopping Directory, using the "hot" web service from AWIS and ...</description>
		<content:encoded><![CDATA[	<p>Together with the main ECS 4.0 web services platform launch, Amazon.com and Alexa.com released a beta service in the websites information area under the codename AWIS. Here is a small example of using this service in the newly acquired <a href="http://simplest-shop.com/dir/Top.html">simple Shopping Directory</a>, using the &#8220;hot&#8221; web service from AWIS and XSLT server-side transformation.</p>
	<p>Under this shopping directory, users can now browse a tree-like structure that is mainly buit on the dmoz.org open directory structure, but using AWIS as data provider. Top 5 websites are listed also. This data is available through AWIS&#8217;s Category Operation type. The background PHP script fetches the XML from AWIS, transforms it server-side with XSLT into html that is then presented to the visitor. If you are interested in this XSLT file, I can offer it for download. It would be possible to skip the PHP processing on the server side and pass the XSLT file to AWIS directly.</p>
	<p>The API Google released for about 3 years now failed to penetrate the market, mostly because they lack a clear business model that powers a fast and safe market penetration. The service is also plagued by the 1,000 queries/day limit. Hopefully AWIS will trigger growth in this area, by stimulating a healthy competition. Already this daily limit is 10,000/day with AWIS, and it&#8217;s in beta. Hopefully the price for the post-beta AWIS will be low enough to encourage further growth and support real business development. It will be interesting to see the results of challenging 50,000 developers with a (yet) free service
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=21</wfw:commentRSS>
	</item>
		<item>
		<title>Amazon E-Commerce Service 4.0 steps out of beta</title>
		<link>http://www.php9.com/index.php?p=20</link>
		<comments>http://www.php9.com/index.php?p=20#comments</comments>
		<pubDate>Mon, 04 Oct 2004 11:19:56 +0000</pubDate>
		
	<category>AWS: Amazon Web Services</category>		<guid>http://www.php9.com/index.php?p=20</guid>
		<description>Amazon.com has just released its Version 4.0 of the Web Services package under the new name: Amazon E-Commerce Service 4.0.  Enhanced product information, detailed price data, an improved and well structured online documentation reveal a commitment into a strong and serious web services architecture.



 ECS 4.0 provides unprecedented access ...</description>
		<content:encoded><![CDATA[	<p>Amazon.com has just released its Version 4.0 of the Web Services package under the new name: Amazon E-Commerce Service 4.0.  Enhanced product information, detailed price data, an improved and well structured online documentation reveal a commitment into a strong and serious web services architecture.</p>
	<p><a id="more-20"></a></p>
	<blockquote><p> ECS 4.0 provides unprecedented access to Amazon’s product data and E-Commerce functionality allowing developers, Web site owners and merchants to leverage the data and functionality that Amazon uses to power its own E-Commerce business. It provides access to detailed product and pricing information for all items across all Amazon product categories – this information includes detailed product attributes, product images and customer-supplied content such as reviews, Wish Lists and Listmania lists. In addition, ECS 4.0 provides advanced search, remote shopping cart and enhanced Wish List search capabilities for enhancing and personalizing your Web site or application</p></blockquote>
	<p>ECS 4.0 is the latest in e-commerce web services tools. With it, Amazon.com makes another quiet step in building the B2C  internet Empire. </p>
	<p> <img src='http://www.php9.com/wp-images/smilies/icon_exclaim.gif' alt=':!:' /> An interesting beta web service comes from Alexa.com,  as well. The Alexa Web Information Service, comes into play, providing an alternative to <a href="http://www.google.com/apis/">Google API</a>. Hopefully a healthier competition in websearch and websites information area wil be the beginning of a next generation of innovative web applications and businesses.</p>
	<p>Read more on the <a href="http://www.amazon.com/webservices">Amazon.com Web Services main page</a> or the :<br />
- <a href="http://home.businesswire.com/portal/site/google/index.jsp?ndmViewId=news_view&#038;newsId=20041004005430&#038;newsLang=en">BusinessWire ECS 4.0 press release</a><br />
- <a href="http://biz.yahoo.com/bw/041004/45430_1.html">Yahoo Biz press release</a><br />
- <a href="http://www.webpronews.com/news/ebusinessnews/wpn-45-20041004NewAmazonWebServices.html">WebProNews report</a><br />
- <a href="http://seattle.dbusinessnews.com/shownews.php?newsid=2078">daily business seattle news</a><br />
- or the <a href="http://phx.corporate-ir.net/phoenix.zhtml?c=97664&#038;p=IROL-NewsText&#038;t=Regular&#038;id=622545&#038;">original press release</a>
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=20</wfw:commentRSS>
	</item>
		<item>
		<title>AWS4 made backward-compatible: a suggestion</title>
		<link>http://www.php9.com/index.php?p=19</link>
		<comments>http://www.php9.com/index.php?p=19#comments</comments>
		<pubDate>Fri, 01 Oct 2004 09:44:08 +0000</pubDate>
		
	<category>AWS: Amazon Web Services</category>		<guid>http://www.php9.com/index.php?p=19</guid>
		<description>Even if Amazon Web Services (AWS) V4.0 is still only in beta, it proves to be a powerful application. From a design perspective, it breaks backwards compatibility; so its main goal is to open new spheres of web services applications. However the vast majority of AWS REST applications around are ...</description>
		<content:encoded><![CDATA[	<p>Even if Amazon Web Services (AWS) V4.0 is still only in beta, it proves to be a powerful application. From a design perspective, it breaks backwards compatibility; so its main goal is to open new spheres of web services applications. However the vast majority of AWS REST applications around are using AWS version 3.0, so upgrading them to AWS 4.0 (Amazon E-Commerce Service codenamed ECS 4.0) will not be an easy task. </p>
	<p><a id="more-19"></a></p>
	<p>AWS 3.0 will be around for quite some time, so nothing urges in upgrading. In fact some of the Amazon Web Services users will prefer the stability and reliability of version 3.0, despite its imperfections. However the ones that will want to upgrade will see that it is no easy task, because of all the design changes.</p>
	<p>To ease the transition, <strong>features of AWS 4.0 can be triggered in AWS 3.0</strong>. How? Using XSLT transformations. XSLT can ensure that the renamed fields present in AWS 4.0 are mapped to old fields in AWS 3.0 and the new fields present only in AWS 4.0 are mapped to new fields in AWS 3.0, fields that AWS 3.0 applications can harness. </p>
	<p><img src="/images/articles/aws423.gif" alt="aws 4 backwards compatible" height="152" width="572" /></p>
	<p>Amazon makes XSLT transformations even easier by handling all the processing on their end. The only condition is that the right XSLT file is referenced by the application call. Now that the suggestion is here, I hope the XSLT gurus will come with a solution to this
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=19</wfw:commentRSS>
	</item>
		<item>
		<title>Amazon Web Services V4 demo: ItemSearch PHP API</title>
		<link>http://www.php9.com/index.php?p=18</link>
		<comments>http://www.php9.com/index.php?p=18#comments</comments>
		<pubDate>Sun, 26 Sep 2004 18:52:29 +0000</pubDate>
		
	<category>AWS: Amazon Web Services</category>		<guid>http://www.php9.com/index.php?p=18</guid>
		<description>Here's a primitive demo for a small package I am going to release the next days built for Amazon Web Services V4. 

http://www.php9.com/example4.php

This example works on the REST interface like the previous packages, uses a XML parsing class smilar to PHP5's SimpleXML, and is built with proper separation layers. You ...</description>
		<content:encoded><![CDATA[	<p>Here&#8217;s a primitive demo for a small package I am going to release the next days built for Amazon Web Services V4. </p>
	<p><a href="http://www.php9.com/example4.php">http://www.php9.com/example4.php</a></p>
	<p>This example works on the REST interface like the previous packages, uses a XML parsing class smilar to PHP5&#8217;s SimpleXML, and is built with proper separation layers. You can play with it, it fetches and displays the (eventual) error returned by AWS4 so that learning-by-using it should be easier. It uses the Large ResponseGroup, which means quite a lot of data comes back (product properties, editorial reviews, user reviews). Compared to the previous result set, the level of detail that comes with aws4 is impresive:</p>
	<p>Aws4PHPApi:<br />
<a href="http://www.php9.com/example4.php?Search=php&#038;Mode=Books&#038;go=go">http://www.php9.com/example4.php?Search=php&#038;Mode=Books&#038;go=go</a></p>
	<p>previous Amazon API:<br />
<a href="http://www.php9.com/amazon.php">http://www.php9.com/amazon.php</a></p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=18</wfw:commentRSS>
	</item>
		<item>
		<title>The one great G</title>
		<link>http://www.php9.com/index.php?p=17</link>
		<comments>http://www.php9.com/index.php?p=17#comments</comments>
		<pubDate>Fri, 24 Sep 2004 18:44:42 +0000</pubDate>
		
	<category>Search Engines World</category>		<guid>http://www.php9.com/index.php?p=17</guid>
		<description>Today started nothing different than yesterday. I first opened my G-PC, the one I received as a prize for my formula:

G-AW + G-AS = G-AD 

G-AW (former AdWords) and G-AS (previous AdSense) are nowadays united under G-AD. They now work together, exchanging money all the time without my outside intervention. ...</description>
		<content:encoded><![CDATA[	<p>Today started nothing different than yesterday. I first opened my G-PC, the one I received as a prize for my formula:</p>
	<blockquote><p>G-AW + G-AS = G-AD </p></blockquote>
	<p>G-AW (former <a href="https://adwords.google.com/select/">AdWords</a>) and G-AS (previous <a href="https://www.google.com/adsense/">AdSense</a>) are nowadays united under G-AD. They now work together, exchanging money all the time without my outside intervention. I remember the days I used to twist keywords in G-AW and pay them back with my G-AS revenue. Then when G-AD just started, it begin buying keywords into G-AW by itself with the knowledge from G-AS. Then this circle became fully automated for guys like me. People say I am quite rich due to this idea, and nobody believes me when I say that I don&#8217;t see much of this money as it just circles inside G-AD all the time</p>
	<p><a id="more-17"></a><br />
Anyway so I said I started my G-PC. G-PC is the end-user division of the G-SA, the <a href="http://www.google.com/appliance/">Google search appliance</a> that took over the obsolete PCs. I tell this to kids all the time: G-PC comes preinstalled with G-OS, the so-called Operating System everybody uses nowadays.</p>
	<p>G-OS took as usual under 0,5 seconds  to start. I am pretty sure G-OS has sometimes glitches, I even had it once started in more than 3 seconds! Nobody believes me when I say this; they all say that G-OS main goal is to have every start time <a href="http://www.google.com/search?q=%22than+half+a+second%22+google">under 0,5 secs</a>, and they mean what they say. Could be that I was wrong, then</p>
	<p>G-PC came as I said with G-OS. G-OS is not an operating system as I used to know it. It has just one box where I type everything I want to know. I think they called this box G-Browser in the early days. Ok so I wanted to type in the box &#8220;G-Office", like in every morning, but guess what? &#8220;G-Office&#8221; was already typed in there. So it is either that I am getting old, or maybe G-OS made an update over night from the WWW. Ooops, I keep forgetting. It&#8217;s called GGG nowadays</p>
	<p>Facts:<br />
<a href="https://adwords.google.com/select/">AdWords</a><br />
<a href="https://www.google.com/adsense/">AdSense</a><br />
<a href="http://www.google.com/search?q=%22than+half+a+second%22+google">search results under 0,5 secs</a></p>
	<p>Speculations:<br />
<a href="http://www.infoworld.com/article/04/06/18/25OPstrategic_1.html">G-PC</a><br />
<a href="http://www.kottke.org/04/04/google-operating-system">G-OS</a><br />
<a href="http://www.cre8asiteforums.com/viewtopic.php?t=15494">GBrowser</a></p>
	<p>Say Gheese <img src='http://www.php9.com/wp-images/smilies/icon_smile.gif' alt=':)' />
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=17</wfw:commentRSS>
	</item>
		<item>
		<title>faked referrals: another search engine bombing method explained</title>
		<link>http://www.php9.com/index.php?p=15</link>
		<comments>http://www.php9.com/index.php?p=15#comments</comments>
		<pubDate>Wed, 15 Sep 2004 11:47:54 +0000</pubDate>
		
	<category>Search Engine Optimization</category>		<guid>http://www.php9.com/index.php?p=15</guid>
		<description>In their desperate quest for incoming links, some small websites use black hat SEO techniques. In general these techniques bring advantages on the short run and hurt terribly on the longer run. Some of these techniques have the property of passing unnoticed for a while, until search engines catch up ...</description>
		<content:encoded><![CDATA[	<p>In their desperate quest for incoming links, some small websites use black hat SEO techniques. In general these techniques bring advantages on the short run and hurt terribly on the longer run. Some of these techniques have the property of passing unnoticed for a while, until search engines catch up and learn to identify and treat them as spam. We&#8217;ll explain here the <strong>faked referrals</strong> technique, also known as <a href="http://www.google.com/search?q=referrer+spam">referrer spam</a>, an old and not so old method; also clearly showing the way to fix it.<br />
<a id="more-15"></a></p>
	<p><strong>Problem:</strong><br />
In short, the problem lies in log analysis results left unprotected. Many webmasters  these days install online log analysis software to study the visitors behaviour, gather traffic reports etc. The unexperienced ones allow the results of this software to be accessed online by everyone. If a certain section is present in the reporting configuration, the <strong>referrals section</strong>, a malicious webmaster can easily create a program that takes advantage of that to display a link back to his website. If this method is applied to many websites that have their reports online and unprotected, this can raise a number of &#8220;fake links&#8221; back to the malicious website, as effect raising its search engines ranking</p>
	<p><strong>Solution:</strong><br />
Webmasters have to password protect their web reports. Webalizer reports, AWStats reports have to come by default with a protection mechanism, so that this method is no longer exploitable. If you have this problem with your website, your ISP should help you protect the server reports.</p>
	<p>The referrals section of log analysis software contains normally legitimate referrals (websites linking to yours). If you left your reports unprotected, these websites would theoretically benefit legitimately from having a link back to them. However, as we just shown, this opens the door to malicious attackers, raising an unnecessary risk that can be avoided.</p>
	<p>We won&#8217;t give specific examples (these examples will be influenced by this article in time), but our analysis showed that there are quite a few websites using this method already. We&#8217;ll show the principle here, and let you have your own conclusions. Once brought to the public awareness, the solution has to enter the Webmaster&#8217;s ABC.</p>
	<p>As far as we saw, the webmasters using this method are short-runners, which would explain why this method was somehow tolerated until now and no clear action was taken against it. This issue was <a href="http://www.highrankings.com/forum/index.php?showtopic=6312">discussed in forums</a> before, however it was not recognized as  a problem.</p>
	<p>There&#8217;s a wide rainbow of legitimate methods to raise website traffic. Search Engine Optimization, properly used, involves natural growth and does not need nasty techniques like this one. These kind of methods use a window of opportunity to bring unfair advantages and have to be sanitized. To give you an ideea of how much impact this bombing method can have, as of today, 15 September 2004, there are  <strong>74,600</strong> unprotected webalizer reports: <a href="http://www.google.com/search?q=%22Total+Referrers%22+%22Usage+Statistics+for%22">Google search for: &#8220;Total Referrers&#8221; &#8220;Usage Statistics for&#8221;</a>
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=15</wfw:commentRSS>
	</item>
		<item>
		<title>google PageRank is dead; long live the PageRank</title>
		<link>http://www.php9.com/index.php?p=14</link>
		<comments>http://www.php9.com/index.php?p=14#comments</comments>
		<pubDate>Sun, 12 Sep 2004 11:44:53 +0000</pubDate>
		
	<category>Search Engine Optimization</category>		<guid>http://www.php9.com/index.php?p=14</guid>
		<description>Search engine optimization (SEO) is by nature a highly dynamic business, where clients expect that the SEO companies they hire to deliver better rankings fast. As soon as the indicators of these results don't update fast enough, these very basic result indicators that served well in the past can be ...</description>
		<content:encoded><![CDATA[	<p>Search engine optimization (SEO) is by nature a highly dynamic business, where clients expect that the SEO companies they hire to deliver better rankings fast. As soon as the indicators of these results don&#8217;t update fast enough, these very basic result indicators that served well in the past can be sacrificed. Is SEO an imature industry because of this? or is it that it is so dynamic that even the search engines that brought SEO to life can&#8217;t keep up with it<br />
<a id="more-14"></a></p>
	<p>Google PageRank, the little gray indicator in the Google Toolbar, used to be a the strongest indicator of how well a site ranked in Google. In time it started to loose significance; being at first accompanied, then replaced by other traffic indicators like no. of links in google, inbound links etc. These days, it seems to start vanishing from the seo charts, partly encouraged by a lack of interest from Google side (more than 2 months delay), partly by its increasing failure to represent a real website ranking.</p>
	<p>In time, the Google PageRank became the favourite SEO toy. With all this IPO bubble, Google allocates nowadays far fewer resources to the web search. This is quite clear since it also started so many adjacent projects, lab projects, image projects etc. It&#8217;s also hard to keep up with a never-sleeping army of SEO Gurus that decrypt any new ranking algorithms before they even reach production.</p>
	<p>As a result of this undergoing battle, it is not uncommon for many sites these days to have an &#8220;inflated PageRank"; this means an artificially high PageRank. There are a number of tricks to get this, some of them in the &#8220;black hat&#8221; category, some of them well known and accepted, and some secrets, like in any business. In its hidden fortress, Google might have foreseen this, and started to shift focus from it. If the interest will fade, Google PR will deprecate and die naturally. If not, it will reburn and get in the mainstream of SEO hub</p>
	<p>So to stay highly dynamix, the SEO business is now at a point where it sacrifices its very own indicators. <a href="http://www.webpronews.com/ebusiness/seo/wpn-4-20040909GooglePageRankIsDead.html">Google PageRank is dead</a>, long live the real PageRank. </p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=14</wfw:commentRSS>
	</item>
		<item>
		<title>PHP becoming Java</title>
		<link>http://www.php9.com/index.php?p=13</link>
		<comments>http://www.php9.com/index.php?p=13#comments</comments>
		<pubDate>Thu, 09 Sep 2004 14:23:44 +0000</pubDate>
		
	<category>PHP News</category>		<guid>http://www.php9.com/index.php?p=13</guid>
		<description>The latest september Developershed.com magazine (PDF document) raises some concerns about the future directions PHP might take under two driving forces. On one hand there's the community of developers that require a natural and organic evolution. On the other hand, the PHP Core team managed by Zend, the  company, ...</description>
		<content:encoded><![CDATA[	<p>The latest <a href="http://www.developershed.com/download.php?page=9&#038;file=plugin/PlugIn_magazine_september2004.pdf">september Developershed.com magazine</a> (PDF document) raises some concerns about the future directions PHP might take under two driving forces. On one hand there&#8217;s the community of developers that require a natural and organic evolution. On the other hand, the PHP Core team managed by Zend, the  company, and the financial interests of the investors behind it.<br />
<a id="more-13"></a></p>
	<blockquote><p>PHP5 has been unleashed to the developer community, boasting of an improved object model on the path of becoming &#8220;fully integrated with Java"&#8230;The re-writing of the object model is great, especially for Zend&#8217;s business plan and possibly for many Java developers. However, what does it all mean for the PHP community at large and their development needs?</p></blockquote>
	<p>As a Cover Story, the article sunds a little bombastic; I did not take it 100% serious. However it tries to bring a &#8220;big picture&#8221; perspective over PHP future, and this is a positive goal.  Zend has a lot of responsibility &#8220;driving&#8221; php around, and the PHP developers have to be aware if  major shifts occur.
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=13</wfw:commentRSS>
	</item>
		<item>
		<title>simple PHP fix to the duplicated www.domain.com -> domain.com content problem</title>
		<link>http://www.php9.com/index.php?p=12</link>
		<comments>http://www.php9.com/index.php?p=12#comments</comments>
		<pubDate>Wed, 08 Sep 2004 10:45:48 +0000</pubDate>
		
	<category>PHP Programming</category>
	<category>SEO tricks</category>		<guid>http://www.php9.com/index.php?p=12</guid>
		<description>Back in 1999, prefixing domain names with www became superfluous. As a result, search engines these days treat www.myDomain.com and myDomain.com as two different web pages. This raises the issue of duplicate content, which can negatively impact on search engine ratings. We'll offer here a short fix to this problem.


Google ...</description>
		<content:encoded><![CDATA[	<p>Back in 1999, prefixing domain names with www <a href="http://webword.com/moving/wwwremoval.html">became superfluous</a>. As a result, search engines these days treat www.myDomain.com and myDomain.com as two different web pages. This raises the issue of duplicate content, which can negatively impact on search engine ratings. We&#8217;ll offer here a short fix to this problem.<br />
<a id="more-12"></a></p>
	<p>Google will rank differently these pages: http://www.myDomain.com/something, compared to http://myDomain.com/something, even if these two pages have exactly the same content. Yahoo treats these pages <a href="http://www.webmasterworld.com/forum35/2122-2-10.htm">the same way</a>, because low level speaking, these two webpages <strong>are different</strong>. This issue was <a href="http://www.google.com/search?q=%22without+www%22">discussed many times</a> in the past on webmaster forums. </p>
	<p>Quite obvious, this can turn into a problem if search engines see this is happening on your website. Some search engine optimizers claim that this would be a major problem with many websites today. Fixes do exist, involving Apache server configuration changes  in .htaccess, but my personal experience showed they are not foolproof.</p>
	<p>On the server side, PHP can operate this redirect for you. PHP offers you a wide range of control over parameters, eventual server ports etc. Here is the PHP code that &#8220;takes&#8221; the user from <strong>http://www.myDomain.com/anything</strong> to <strong>http://myDomain.com/anything</strong> by preserving the search engine rating and the <a href="http://www.google.com/search?q=google+pagerank">PageRank</a></p>
	<ol class="phpcode">
	<li class="phpcode">&lt;?php</li>
	<li class="phpcmnt">//////////////////////////////////</li>
	<li class="phpcmnt">// retrieving the server host name</li>
	<li class="phpcode">if (preg_match("/^www.(.*?)$/i", $_SERVER["HTTP_HOST"], $serverName)) {</li>
	<li class="phpcmnt">   // issue a seo friendly 301 redirect</li>
	<li class="phpcode">   header("HTTP/1.1 301 Moved Permanently");</li>
	<li class="phpcmnt">   // redirect target</li>
	<li class="phpcode">   header("Location: http://". $serverName[1] . $_SERVER["REQUEST_URI"]);</li>
	<li class="phpcode">   exit(); </li>
	<li class="phpcode">}</li>
	<li class="phpcmnt">// PR safe redirect from http://www.php9.com</li>
	<li class="phpcmnt">//////////////////////////////////</li>
	<li class="phpcode">?&gt;</li>
	</ol>
	<p>What this code (source available <a href="/php/source/www-redirect.phps">here</a>) has as a plus, is the special <a href="http://www.google.com/search?q=301+redirect">301 header</a>, that &#8220;tells&#8221; the browsers and search engines that this is a permanent change. This special status code ensures that the search engines preserve the page rank of each page across the redirect. Just copy&#038;paste this code at the beginning of your php scripts, before any output was sent to the browser.</p>
	<p>To see this code in action, try this <a href="http://www.simplest-shop.com/Digital,Cameras--1-281052-camera.html">digital cameras</a> page.</p>
	<p>Actually this search engine tip belongs to the webmaster&#8217;s ABC. Some hosting companies will operate a similar redirect for you automatically, so you wouldn&#8217;t need to worry, but this is not always the case. </p>
	<p>Thanks to <a href="http://www.geocities.com/seo_advice/">Dilip</a> for raising this issue
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=12</wfw:commentRSS>
	</item>
		<item>
		<title>Amazon Web Services V4.0 in beta</title>
		<link>http://www.php9.com/index.php?p=9</link>
		<comments>http://www.php9.com/index.php?p=9#comments</comments>
		<pubDate>Tue, 07 Sep 2004 11:49:14 +0000</pubDate>
		
	<category>Web Services News</category>		<guid>http://www.php9.com/index.php?p=9</guid>
		<description>The Amazon Web Services 4.0 (AWS 4.0) beta* test is now open to anyone who wishes to participate. 
AWS 4.0 seems to offer many improvements compared to earlier versions.  We'll have a look at some of the major changes here 


Data improvements:


	Access to more products: Apparel, Jewelry, Gourmet Foods, ...</description>
		<content:encoded><![CDATA[	<blockquote><p>The Amazon Web Services 4.0 (AWS 4.0) beta* test is now open to anyone who wishes to participate. </p></blockquote>
	<p>AWS 4.0 seems to offer many improvements compared to earlier versions.  We&#8217;ll have a look at some of the major changes here<br />
<a id="more-9"></a></p>
	<p><strong>Data improvements:</strong></p>
	<ul>
	<li>Access to more products: Apparel, Jewelry, Gourmet Foods, Sports &#038; Outdoors, and Beauty products are now available via AWS 4.0</li>
	<li>Each image has now the height and the width accessible in a programmatic way. Maybe this is the oldest request concerning images that can be traced back to AWS 1.0 and now it is fixed</li>
	<li>Each product comes now with more technical information. For example AWS4.0 brings the number of pages for each book, the Aspect Ratio for most of the DVDs, the region code and much more</li>
	</ul>
	<p><strong>Architectural changes:</strong></p>
	<ul>
	<li>Response groups offer a far better picture towards product attributes than previous request types. In earlier versions, a AsinSearch could have a type of heavy or lite, which would either return the full product data set, or a limited part of it. Now it is possible to access separately each ItemAttributes, the list of categories that product belongs to, etc</li>
	<li>The error codes are now far more readable, which means that a whole new window of opportunity opens for desktop&#038;learning applications to emerge. It is much easier to correct a query when you get back exactly what was wrong in it</li>
	</ul>
	<p>With its 4.0, Amazon.com does not bring any revolutionary features in. This is no surprise, since even now, more than two years from the initial V1.0 release, Amazon.com competition did not enter the webservices area with full strength. Version 4.0 is however a shift from the older versions, breaking backwards compatibility, and this represents again a challenge. New platforms, new tools are awaited that will take advantage of the full power of AWS4. Hopefully at first the full attention of the Amazon.com AWS team will be on stabilizing the platform until it embraces full production usage.</p>
	<p>Read more on the official <a href="http://www.amazon.com/exec/obidos/tg/browse/-/3435361">Amazon.com Web Services page</a>
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=9</wfw:commentRSS>
	</item>
		<item>
		<title>a tool to obtain browse Amazon nodes Ids</title>
		<link>http://www.php9.com/index.php?p=8</link>
		<comments>http://www.php9.com/index.php?p=8#comments</comments>
		<pubDate>Sat, 07 Sep 2002 11:35:41 +0000</pubDate>
		
	<category>AWS: Amazon Web Services</category>		<guid>http://www.php9.com/index.php?p=8</guid>
		<description>You might have seen this if you tried this site's search engine, it contains now teasers from Amazon for the words you are looking for. Also the menu of any page contains links to the homepages of these shops.

Introduction

These shops are created using the base amazon class, with the demo ...</description>
		<content:encoded><![CDATA[	<p>You might have seen this if you tried this site&#8217;s search engine, it contains now teasers from Amazon for the words you are looking for. Also the menu of any page contains links to the homepages of these shops.<br />
<a id="more-8"></a></p>
	<h3>Introduction</h3>
	<p>These shops are created using the base amazon class, with the demo available here. They all share the same code base, and most of the data comes from the Amazon API. I won&#8217;t describe the features of these shops, because any potential buyer can see that for himself. What I will say is that, in the creation step of each of them, I needed a fast way to get the node Ids from Amazon.</p>
	<h3>Context</h3>
	<p>What the current Amazon API V1, 2 or 3 doesn&#8217;t offer yet is a possibility to browse the nodes available on the site. One of the reasons for this is that on their main site Amazon.com often have virtual nodes, that are not accessible through the current Web Services. To overcome this, any of you that want to create a shop have to manually build a local category tree and try each node in particular to see if this is a real node or not, and check to see if it has products underneath.</p>
	<h3>Code alternative</h3>
	<p>Instead of doing this manual work, you can have a script generate these Amazon browse nodes Ids automatically. The script is available <a href="/php/source/browse_nodes.phps">here</a>. What this script does is to parse the best sellers list from Amazon.com site and builds PHP code with the category structure. If you think that the category tree needs more explanation, please ask. It is just an array of nodes, where each node has a parent and a son (if available). But the output code can be radically changed to fit your site&#8217;s particular purpose.</p>
	<p>A sample way to start this code is using this command in an Unix Shell:<br />
wget &#8220;http://localhost/browse_nodes.php?sNode=Tech%20Books&#8221; -O nodes.php</p>
	<h3>Sample output</h3>
	<p>This way the output of the script is stored in nodes.php. Here is a sample of this file:</p>
	<p>$arNode[5]=array(<br />
&#8216;name&#8217;=>&#8217;Tech Books&#8217;,<br />
&#8216;over&#8217;=>array(<br />
69765,3448,87,3508,549646,549726,4134,549652,285844,3652,3756,3839,4053,3510,565690,554894,557154<br />
),<br />
&#8216;under&#8217;=>array()<br />
);</p>
	<p>$arNode[69765]=array(<br />
&#8216;name&#8217;=>&#8217;Home &#038; Office&#8217;,<br />
&#8216;over&#8217;=>array(<br />
549678,87,549684,69766,549656,549686,549680,549676,549682,549658,549662<br />
),<br />
&#8216;under&#8217;=>array(5)<br />
);<br />
&#8230; </p>
	<p>The script runs now a 3 level deep browsing of Amazon nodes recursively and runs for about 10 minutes for a big Amazon category, like technical books on an average internet connection. The depth is easilly changeable, and also the script&#8217;s output. What you could also find useful is to change the default $BrowseId = 5 to whatever your starting node Id is, and the sNode to the name of this node. </p>
	<h3>Drawback</h3>
	<p>The main drawback of this script is that it parses URLs instead of using an internet service, but as long as this information is not available through a more elegant channel this remains the only viable solution. It may sound incredible, but there are even commercial packages that parse Amazon Web pages searching for product data, and I like to assume that the main pages layout is more likelly to change compared to the best sellers list pages, but this is just a guess of course. If Amazon ever radically changes the site&#8217;s design, it would be interesting to see how many sites would suddenly go temporarily offline. </p>
	<p>Feel free to use this script and improve it.<br />
If you use it, you should include a link on your page to http://www.php9.com. The link  should be like this:</p>
	<p>Powered by <a href="http://www.php9.com/">php9.com weblog</a></p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=8</wfw:commentRSS>
	</item>
		<item>
		<title>Camera shop with PHP: the simplest digital camera shop</title>
		<link>http://www.php9.com/index.php?p=10</link>
		<comments>http://www.php9.com/index.php?p=10#comments</comments>
		<pubDate>Mon, 05 Aug 2002 13:13:13 +0000</pubDate>
		
	<category>AWS: Amazon Web Services</category>		<guid>http://www.php9.com/index.php?p=10</guid>
		<description>During the past week I have been busy extending the Amazon Webservices class. I added support for heavy XML parsing, instead of using the XSL transformation from Amazon which I found unreliable.


Then I thought of writing an application that 'looks' nicer, because why not, this is what everybody is looking ...</description>
		<content:encoded><![CDATA[	<p>During the past week I have been busy extending the Amazon Webservices class. I added support for heavy XML parsing, instead of using the XSL transformation from Amazon which I found unreliable.<br />
<a id="more-10"></a></p>
	<p>Then I thought of writing an application that &#8216;looks&#8217; nicer, because why not, this is what everybody is looking for. I thought of some hot topic in current sales, found the Amazon.com category and build this simple digital camera shop:</p>
	<p><a href="http://shop.php9.com/camera.php">http://shop.php9.com/camera.php</a></p>
	<p>The only hardcoded items are node ids from Amazon, which are not yet easy to browse in this XML release. They represent the categories on the left side, in the navigation side. The shop runs on 11 files with a code that is not product ready, but works as a demo.</p>
	<p>I am using the templates mechanism from the base Amazon_WebService class that is available here:</p>
	<p><a href="/index.php?p=6">http://www.php9.com/index.php?p=6</a></p>
	<p>The class is used to display the products contained in a category, the search results (like in the <a href="/amazon.php">Amazon PHP API</a>), the product page with its accessories and related products.</p>
	<p>For the categories pages there is a caching layer which doesn&#8217;t come inbetween the feed from XML Amazon and the parser because in this case the PHP script would need to parse the XML file at every call. The caching mechanism is HTML Caching. You can see a basic design of this caching layer here:</p>
	<p><img src="/images/articles/caching.jpg" height="139" width="477" />
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=10</wfw:commentRSS>
	</item>
		<item>
		<title>PHP Amazon API</title>
		<link>http://www.php9.com/index.php?p=6</link>
		<comments>http://www.php9.com/index.php?p=6#comments</comments>
		<pubDate>Wed, 24 Jul 2002 10:06:32 +0000</pubDate>
		
	<category>PHP Programming</category>
	<category>AWS: Amazon Web Services</category>		<guid>http://www.php9.com/index.php?p=6</guid>
		<description>Now everybody heard of Amazon.com. What not everybody knows that Amazon released an API to access its huge catalogs. What this basically means is that each developer can access the information from Amazon following some simple protocols and every site owner can enhance his own website with content and features ...</description>
		<content:encoded><![CDATA[	<p>Now everybody heard of Amazon.com. What not everybody knows that Amazon released an API to access its huge catalogs. What this basically means is that each developer can access the information from Amazon following some simple protocols and every site owner can enhance his own website with content and features from Amazon.<br />
<a id="more-6"></a> </p>
	<p>The Amazon API comes as a simple Webservice. Here are the first Web services that they have exposed:<br />
- Product Display : The ability to search for and retrieve product information from the Amazon.com catalog.<br />
- Shopping Cart : The ability to add Amazon.com products to shopping carts, wish lists, and registries from third party locations.</p>
	<p><strong>Update:</strong> If you plan to make use of the scripts offered on this website, you should not modify the current dev token that belongs to me. </p>
	<p>The current listed implementation of Amazon webservices uses Keyword searches. It has basically the same results as searching the books catalog online. As any developer/webmaster can see in the &#8220;Amazon.com Web Services Developers Kit v 1.0&Prime; document, a lot of other Amazon features are exposed. This would imply extending the base structure I present here.</p>
	<p>There are multiple approaches from a developer&#8217;s point of view. The simplest one deals with SOAP and web services classes already implemented in PHP. You could also extend the PEAR&#8217;s XMLParser object to parse Amazon results. The reason I did not choose these directions is because they require additional extensions installed with PHP. What I currently use is the XML parsing package that comes embedded in PHP, so it is slightly more general.</p>
	<p>What basically happens in this implementation is that the search word entered by the used is embedded into a XML url that is then retrieved from Amazon.com. Then PHP builds a nice display for the information received.</p>
	<p>I should let the code talk for itself. Here is the main controller, with a small search form for Amazon:</p>
	<p><a href="http://www.php9.com/php/source/amazon.phps">http://www.php9.com/php/source/amazon.phps</a></p>
	<p>As you see, the actual code is very small. Then here is the class used in the controller to parse the XML returned by Amazon. </p>
	<p><a href="http://www.php9.com/php/source/amazon_class.phps">http://www.php9.com/php/source/amazon_class.phps</a></p>
	<p><strong>Update: </strong> Then the configuration file. I need to remember you that you should not change the DEVELOPER_TOKEN constant. The current license key belongs to me. However you need to change the ASSOCIATE_ID constant with a one from Amazon. You also need to do the same change in the file php9-data-to-html.xsl, the engine for the XSLT transformation.The current constant set belongs to me also.</p>
	<p><a href="http://www.php9.com/php/source/amazon_config.phps">http://www.php9.com/php/source/amazon_config.phps</a></p>
	<p>And here is the layout template used to build the output from the XML document retrieved from Amazon. It is parsed every time a book record is retrieved, so the output rendering is the fastest possible.</p>
	<p><a href="http://www.php9.com/php/source/amazon_layout.phps">http://www.php9.com/php/source/amazon_layout.phps</a></p>
	<p>And here is the XSLT document used to build the HTML product page document from the XML document retrieved from Amazon. </p>
	<p><a href="http://www.php9.com/php9-data-to-html.xsl">http://www.php9.com/php9-data-to-html.xsl</a></p>
	<p>Here you have the full package zipped.</p>
	<p><a href="http://www.php9.com/php/source/amazon.zip">http://www.php9.com/php/source/amazon.zip</a></p>
	<p>And of course a demo: <a href="http://www.php9.com/amazon.php">http://www.php9.com/amazon.php</a></p>
	<p>As the project improved a lot during the latest months, I created a freshmeat project here:<br />
<a href="http://freshmeat.net/projects/amazon_webservice_api/">http://freshmeat.net/projects/amazon_webservice_api/</a></p>
	<p>and a class collection in the extensive package provided by Manuel Lemos:<br />
<a href="http://www.phpclasses.org/browse.html/package/642.html">http://www.phpclasses.org/browse.html/package/642.html</a></p>
	<p><strong>Updates: </strong></p>
	<p><em>04.10.2003</em> The scripts have been configured to use <span style="color:red">AWS version 3.0</span>, because the old versions will no longer be supported. </p>
	<p><em>04.10.2003 </em>The main connection class contains now a system locking mechanism which will improve the overall reliability and performance of your websites during &#8220;hard aws times". If you are using a global caching mechanism, and you don&#8217;t want to cache empty or malformed webpages, you can use a global variable called $_GLOBALS[&#8217;bFeedError&#8217;] that you set to false before calling the scripts and then check if the value changed to true after the webservices call. In case the feed times our or failes, this constant will be set to true and you can avoid caching bad formed content, </p>
	<p><em>04.10.2003</em> The amazon_class.php contains now most of the current tags present in the xml file from Amazon. </p>
	<p>Feel free to use it and improve. I am open to suggestions.
</p>
]]></content:encoded>
		<wfw:commentRSS>http://www.php9.com/wp-commentsrss2.php?p=6</wfw:commentRSS>
	</item>
		<item>
		<title>Using PHP for Rich Text Format RTF</title>
		<link>http://www.php9.com/index.php?p=5</link>
		<comments>http://www.php9.com/index.php?p=5#comments</comments>
		<pubDate>Tue, 23 Jul 2002 09:49:09 +0000</pubDate>
		
	<category>PHP Programming</category>		<guid>http://www.php9.com/index.php?p=5</guid>
		<description>Recently, I had a brief stint with RTF (Rich Text Format) files. I had to write an RTF file and send an RTF file as attachment in mail. Initially it was a pain to understand the RTF file format. Its header part was apparently the most confusing part. But when ...</description>
		<content:encoded><![CDATA[	<p>Recently, I had a brief stint with RTF (Rich Text Format) files. I had to write an RTF file and send an RTF file as attachment in mail. Initially it was a pain to understand the RTF file format. Its header part was apparently the most confusing part. But when I had some understanding of the header, the remaining task was not that difficult. Here, I am not going to provide you with codes for writing an RTF, but I&#8217;ll help you understand how this can be achieved. Once this is clear, you can write your own class to write an RTF, or for that matter convert a file to RTF.<br />
<a id="more-5"></a> </p>
	<p>First, I wished to have a first hand idea of how an RTF source looks like for a simple string like, &#8220;PHP for rich text format". Hold your breath, here it is&#8230;. </p>
	<p>{rtf1ansiansicpg1252uc1<br />
deff0deflang1033deflangfe1033{fonttbl{f0fromanfcharset0fprq2<br />
{*panose 02020603050405020304}Times New<br />
Roman;}{f16fromanfcharset238fprq2 Times New Roman CE;}<br />
{f17fromanfcharset204fprq2 Times New Roman<br />
Cyr;}{f19fromanfcharset161fprq2 Times New Roman Greek;}<br />
{f20fromanfcharset162fprq2 Times New Roman<br />
Tur;}{f21fromanfcharset186fprq2 Times New Roman Baltic;}}<br />
{colortbl;red0green0blue0;red0green0blue255;red0green255blue255;<br />
red0green255blue0;<br />
red255green0blue255;red255green0blue0;red255green255blue0;<br />
red255green255blue255;<br />
red0green0blue128;red0green128blue128;red0green128blue0;<br />
red128green0blue128;<br />
red128green0blue0;red128green128blue0;red128green128blue128;<br />
red192green192blue192;}<br />
{stylesheet{widctlparadjustright fs20cgrid snext0 Normal;}{*cs10<br />
additive Default Paragraph Font;}}</p>
	<p>{info{title PHP for rich text format}{author sujith nair}{operator<br />
naukri.com}<br />
{creatimyr2002mo5dy3hr17min21}{revtimyr2002mo5dy3hr17min21}<br />
{version1}{edmins0}{nofpages1}<br />
{nofwords0}{nofchars0}{*company Info Edge (I) Pvt<br />
Ltd}{nofcharsws0}{vern89}}<br />
widowctrlftnbjaenddocformshadeviewkind1viewscale100<br />
pgbrdrheadpgbrdrfoot<br />
fet0sectd<br />
linex0endnheresectdefaultcl<br />
{*pnseclvl1pnucrmpnstart1pnindent720pnhang{pntxta .}}<br />
{*pnseclvl2pnucltrpnstart1pnindent720pnhang{pntxta<br />
.}}{*pnseclvl3pndecpnstart1pnindent720pnhang<br />
{pntxta .}}{*pnseclvl4pnlcltrpnstart1pnindent720pnhang{pntxta<br />
)}}{*pnseclvl5pndecpnstart1<br />
pnindent720pnhang{pntxtb (}{pntxta<br />
)}}{*pn