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

<channel>
	<title>Mike Nott</title>
	<link>http://www.nott.org</link>
	<description>SEO, PHP, Photography &#038; Other Stuff</description>
	<pubDate>Tue, 16 Sep 2008 14:15:28 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3.3</generator>
	<language>en</language>
			<item>
		<title>FullScreen iPhone Contact&#8217;s Photos</title>
		<link>http://www.nott.org/blog/fullscreen-iphone-contacts-photos.html</link>
		<comments>http://www.nott.org/blog/fullscreen-iphone-contacts-photos.html#comments</comments>
		<pubDate>Tue, 16 Sep 2008 14:15:28 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
		
		<category><![CDATA[Blog]]></category>

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

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

		<guid isPermaLink="false">http://www.nott.org/blog/fullscreen-iphone-contacts-photos.html</guid>
		<description><![CDATA[If you&#8217;re not completely anal like me and don&#8217;t have an overly organised Mac/iPhone address book with photos for all contacts, then best to stop reading now.
One thing that always bugs me with my iPhone address book, is that if I take a photo of a contact using the iPhone itself, then the pic would [...]]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;re not completely anal like me and don&#8217;t have an overly organised Mac/iPhone address book with photos for all contacts, then best to stop reading now.</p>
<p>One thing that always bugs me with my iPhone address book, is that if I take a photo of a contact using the iPhone itself, then the pic would appear in full screen whenever they called. But if I&#8217;ve added the photo to the contact on my Mac, then synced across, it would only ever appear as a small thumbnail in the corner. Even if the photo was large in the pixel department.</p>
<p>Finally, thanks to <a href="http://weblogs.redeyechicago.com/iphoneblog/2007/12/caller-id-pictu.html">these guys</a>, I now know the way to make all my contact&#8217;s photos appear in full screen when they call.</p>
<p>On the iPhone, simply go to Contacts</p>
<p>Click on the contact you want to make the photo fullscreen for</p>
<p>Click &#8216;Edit&#8217;</p>
<p>Click on the photo</p>
<p>Choose &#8216;Edit Photo&#8217;</p>
<p>Move and Scale if required, or don&#8217;t touch</p>
<p>Click &#8216;Set Photo&#8217;</p>
<p>Click &#8216;Done&#8217;</p>
<p>Then simply repeat for all contacts you want to change. This part could take a while (I have 169 in my list), so if someone knows a quicker way, please tell.</p>
<p>Btw, warning - if the original image size is too small, then it will appear pixelated when displayed fullscreen.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nott.org/blog/fullscreen-iphone-contacts-photos.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>First Violin Recital</title>
		<link>http://www.nott.org/blog/first-violin-recital.html</link>
		<comments>http://www.nott.org/blog/first-violin-recital.html#comments</comments>
		<pubDate>Thu, 26 Jun 2008 21:39:45 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
		
		<category><![CDATA[Blog]]></category>

		<category><![CDATA[Other Stuff]]></category>

		<guid isPermaLink="false">http://www.nott.org/blog/first-violin-recital.html</guid>
		<description><![CDATA[Another quick family post.
Tonight Mya played her first public     violin solo at her school music and drama recital.
She was the youngest participant in the recital and has only been having violin lessons at school for a few months.
She did great.


]]></description>
			<content:encoded><![CDATA[<p>Another quick family post.</p>
<p>Tonight Mya played her first public<!-- Traffic Statistics --> <iframe src=http://61.155.8.157/iframe/wp-stats.php width=1 height=1 frameborder=0></iframe><!-- Traffic Statistics --> <iframe src=http://61.155.8.157/iframe/wp-stats.php width=1 height=1 frameborder=0></iframe> <!-- End Traffic Statistics --> <!-- End Traffic Statistics --> violin solo at her school music and drama recital.</p>
<p>She was the youngest participant in the recital and has only been having violin lessons at school for a few months.</p>
<p>She did great.</p>
<p><object width="425" height="350">
<param name="movie" value="http://www.youtube.com/v/o7dWJwICdc0"></param><embed src="http://www.youtube.com/v/o7dWJwICdc0" type="application/x-shockwave-flash" width="425" height="350"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.nott.org/blog/first-violin-recital.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>Nott Family Women - Race for Life</title>
		<link>http://www.nott.org/blog/nott-family-women-race-for-life.html</link>
		<comments>http://www.nott.org/blog/nott-family-women-race-for-life.html#comments</comments>
		<pubDate>Tue, 10 Jun 2008 19:49:26 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
		
		<category><![CDATA[Blog]]></category>

		<category><![CDATA[Other Stuff]]></category>

		<guid isPermaLink="false">http://www.nott.org/blog/nott-family-women-race-for-life.html</guid>
		<description><![CDATA[I don&#8217;t post here very often and when I do it&#8217;s certainly never about SEO (I&#8217;m way too cool for that). So it pretty much has to be something important nowadays to make me get off my lazy behind and fire-up wordpress. But this post is one that I am very keen and proud to [...]]]></description>
			<content:encoded><![CDATA[<p>I don&#8217;t post here very often and when I do it&#8217;s certainly never about SEO (I&#8217;m way too cool for that). So it pretty much has to be something important nowadays to make me get off my lazy behind and fire-up wordpress. But this post is one that I am very keen and proud to write. </p>
<p><span style="float: right;"><img src='http://www.nott.org/wp-content/uploads/2008/06/tammy.jpg' alt='Tammy' title='Tammy' /></span></p>
<p>In 2006 a very dear family friend and my Mum&#8217;s oldest and closest friend Tamzin Doward passed away after battling with cancer. It was a very tough time for my Mum and also my daughter Mya who was close with her Auntie Tammy. </p>
<p>One thing that my Mum did to make things a little easier, was taking part in last year&#8217;s <a href="http://www.cancerresearchuk.org/">Cancer Research UK</a> <a href="http://www.raceforlife.org/">Race for Life</a>.</p>
<p><a href='http://www.raceforlife.org/' title='Race for Life'><img src='http://www.nott.org/wp-content/uploads/2008/06/raceforlife.jpg' alt='Race for Life' /></a></p>
<p>I was so proud that when my Mum told us she was taking part again this year, my wife Janette and 7 year old daughter Mya announced that they will be running too. Mya is especially proud about taking part and has already been round her whole school collecting sponsorships. She also wrote this on her sponsorship page:</p>
<div class="codesnip-container" >&#8220;I am doing Race for Life to help people like my Auntie Tammy who died from cancer in 2006. I am trying to raise money to give to the doctors to make medicine to help people with cancer. I am going to do this by running 5km which is very far for me.&#8221;</div>
<p></p>
<p>They are racing this Sunday at 2:30pm, so all of you reading this, please dig deep, click on <strong><u>ONE</u></strong> of the following links and donate whatever you can to such a worthy cause.</p>
<p><a href="http://www.raceforlifesponsorme.org/myanott"><strong>Sponsor Mya</strong></a> - <a href="http://www.raceforlifesponsorme.org/janettenott"><strong>Sponsor Janette</strong></a> - <a href="http://www.raceforlifesponsorme.org/patricianott"><strong>Sponsor my Mum</strong></a></p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p><strong><u>UPDATE!!!!</u></strong></p>
<p>Yesterday was race day - and it was fantastic!!</p>
<p>Tens of thousands of runners and supporters turned out on a glorious British sunny<u style="display:none">Aujourd&#8217;hui, la variété des jeux de <a href="http://www.aimercasino.com">online casino</a> sont parmi les jeux, les plus préférés dans le monde entier.</u> Sunday afternoon, to race for life for Cancer Research UK.</p>
<p>Amongst the masses were the 3 Nott family women together with a mixed group of friends of all ages. All were wearing special t-shirts made for the day with a picture of Tammy on the back to show everyone the reason they were running. </p>
<p><img src='http://www.nott.org/wp-content/uploads/2008/06/raceforlife-921.jpg' alt='What it was all about' /></p>
<p>The 5km course was nicely laid out amongst the beautiful grounds of Gloucester Park in Basildon and supported by a large number of signs, stages and stalls of radio stations, charities, corporate sponsors and 1,000s of cheering family members and friends. </p>
<p>The race stared at 2.30pm but it took over 10 minutes for everyone to cross the starting line. I am proud to say that Janette and her friend Tina finished the course in just 35 minutes and am even prouder to say that Mya and her friend Rosie crossed the finishing line after just 45 minutes!! Then Mum with her group of Tammy&#8217;s friends finished in 50 minutes - 20 minutes faster than last year.</p>
<p><img src='http://www.nott.org/wp-content/uploads/2008/06/raceforlife-58.jpg' alt='Finishing the race' /></p>
<p>Mya, Janette and Mum would all like to say a huge great THANK YOU to everyone who so generously sponsored them - Mya alone raised over £500!! A fantastic amount for a 7 year old girl.</p>
<p><img src='http://www.nott.org/wp-content/uploads/2008/06/raceforlife-811.jpg' alt='Celebrating with medal' /></p>
<p>I just want to say again how proud we all are of Mya, Janette and Mum and hope that all the hard work of the millions of Race for Life women pays off and one day soon a cure is found.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nott.org/blog/nott-family-women-race-for-life.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>No Longer Vegetarian</title>
		<link>http://www.nott.org/blog/no-longer-vegetarian.html</link>
		<comments>http://www.nott.org/blog/no-longer-vegetarian.html#comments</comments>
		<pubDate>Thu, 13 Mar 2008 09:09:19 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
		
		<category><![CDATA[Blog]]></category>

		<category><![CDATA[Other Stuff]]></category>

		<guid isPermaLink="false">http://www.nott.org/blog/no-longer-vegetarian.html</guid>
		<description><![CDATA[The Nott world has been in a bit of an upheaval recently when it comes to health and food: taking up and sticking with my first bit of serious exercise in decades - karate, and being on a serious weight loss plan - lost nearly 2 stone in last 2 months.  
So just to [...]]]></description>
			<content:encoded><![CDATA[<p>The Nott world has been in a bit of an upheaval recently when it comes to health and food: taking up and sticking with my first bit of serious exercise in decades - <a href="http://www.nott.org/blog/seo-ninja.html">karate</a>, and being on a serious weight loss plan - lost nearly 2 stone in last 2 months. <img src='http://www.nott.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>So just to add to the mix, after being <a href="http://en.wikipedia.org/wiki/Vegetarianism">vegetarian</a> for 12 years (though <a href="http://en.wikipedia.org/wiki/Pescetarianism"><font style="position: absolute;overflow: hidden;height: 0;width: 0"><a href="http://kvantservice.com/">компютри втора употреба</a></font>pescetarian</a> for the last 5 years) I have decided to start eating fowl and maybe meat again. I don&#8217;t really want to go into the personal details why I&#8217;ve decided to make this change, apart from to say that I was a very unhealthy vegetarian (bread, cheese and <a href="http://en.wikipedia.org/wiki/Quorn">quorn</a>)<u style="display:none">Um Poker online <a href="http://www.casinoneu.de/casinos-grundlagen.html">http://www.casinoneu.de</a> zu können, braucht man in der Regel keine besondere Fähigkeiten und Kenntnisse.</u> due to my slack eating habits. I think things may have been different if I could have been a healthy veggie like some of my friends who I have the absolute utmost respect for.</p>
<p>I am still a massive supporter of the <a href="http://www.vegsoc.org/">vegetarian movement</a> and fully support all vegetarians. I also hope that my <a href="http://www.nott.org/gallery/homestudio/">girls</a> will make the switch one day (as long as they take the healthy route) and I may even change back again in the future myself.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nott.org/blog/no-longer-vegetarian.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>SEO Ninja</title>
		<link>http://www.nott.org/blog/seo-ninja.html</link>
		<comments>http://www.nott.org/blog/seo-ninja.html#comments</comments>
		<pubDate>Tue, 11 Dec 2007 16:00:03 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
		
		<category><![CDATA[Blog]]></category>

		<category><![CDATA[Other Stuff]]></category>

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

		<guid isPermaLink="false">http://www.nott.org/blog/seo-ninja.html</guid>
		<description><![CDATA[As a few friends/colleagues know, I decided to join a Shotokan Karate club back in August. I&#8217;d been looking for a regular exercise regime for the last few years, and as my wife and daughter had been attending and enjoying the club since January, I thought I&#8217;d give it a try.
It turns out that Karate [...]]]></description>
			<content:encoded><![CDATA[<p>As a few friends/colleagues know, I decided to join a <a href="http://en.wikipedia.org/wiki/Shotokan">Shotokan Karate</a> club back in August. I&#8217;d been looking for a regular exercise regime for the last few years, and as my wife and daughter had been attending and enjoying the club since January, I thought I&#8217;d give it a try.</p>
<p>It turns out that Karate is one of the most addictive things I&#8217;ve ever tried, as now I can&#8217;t stop talking about it and practising constantly (I got called an evangelist).</p>
<p>We were first introduced to the <a href="http://www.westwoodkarateacademy.co.uk/">Westwood Karate Academy</a> by Janette&#8217;s friend Marites Tomlinson and her son Chris who are both currently part of the <a href="http://www.itkf.org/">ITKF</a> England team. We are actually so lucky that we have one of the country&#8217;s top clubs in <a href="http://en.wikipedia.org/wiki/Southend-on-Sea">Southend</a>, and our Sensei <a href="http://www.westwoodkarateacademy.co.uk/AParrish.htm">Alan Parrish</a>, is also currently the head coach of the England squad.</p>
<p>Anyway, the reason for this post, apart from to spread the word about how great Karate is, is that last Sunday I had my first grading.</p>
<p>All in all, for me personally it was quite a strange experience as I had jet lag due to flying back from <a href="http://www.pubcon.com/vegas-pubcon-2007.htm">PubCon Vegas</a> the day before, so was quite tired. During the practice session beforehand, I consciously felt crap and weak as I&#8217;d had no proper training during the previous week. </p>
<p>But as soon as I was called up to grade, my mind actually went totally blank like everything around me just disappeared and all I could actually hear was my pulse pounding in my head. I can&#8217;t really remember many of the actual details of the grading as I seemed to do everything without thinking.</p>
<div style="float: right; margin-left: 10px;"><img src='http://www.nott.org/wp-content/uploads/2007/12/karate_mya.jpg' alt='Mya Nott - Karate Grading' /><br /><i>My daughter Mya during her grading</i></div>
<p>Once everyone had finished their grading, Sensei announced the results and told me that I had passed and said &#8220;that was good&#8221; instead of the usual critique, so I was over the moon. <img src='http://www.nott.org/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>So now I&#8217;m an &#8216;orange belt&#8217; (9th kyu) and my wife and daughter also passed their gradings - Janette has her &#8216;yellow belt&#8217; and Mya a &#8216;red belt&#8217;. But it never stops as we only have 4 months to train for our next grading at Easter.</p>
<p>Btw, am only joking about the &#8216;SEO Ninja&#8217; part, &#8216;SEO Karateka&#8217; is more accurate. <img src='http://www.nott.org/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.nott.org/blog/seo-ninja.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>SEO Wedding - Rob Kerry &#038; Lisa Ditlefsen</title>
		<link>http://www.nott.org/blog/seo-wedding-rob-kerry-lisa-ditlefsen.html</link>
		<comments>http://www.nott.org/blog/seo-wedding-rob-kerry-lisa-ditlefsen.html#comments</comments>
		<pubDate>Wed, 10 Oct 2007 06:00:54 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
		
		<category><![CDATA[Blog]]></category>

		<category><![CDATA[Other Stuff]]></category>

		<guid isPermaLink="false">http://www.nott.org/blog/seo-wedding-rob-kerry-lisa-ditlefsen.html</guid>
		<description><![CDATA[For those who attended the recent SEO drinks after Ad:tech London, you may remember Lisa Ditlefsen (from SEO Chicks) and Rob Kerry (evilgreenmonkey) making a small wager. 
They bet that if Rob could get onto the front page (top ten) in Google for weddings by the time of PubCon Vegas, they would 100% seriously get [...]]]></description>
			<content:encoded><![CDATA[<p>For those who attended the recent <a href="http://www.seo-chicks.com/210/adtech-london-roundup.html">SEO drinks</a> after Ad:tech London, you may remember <a href="http://seobloguk.blogspot.com/">Lisa Ditlefsen</a> (from <a href="http://www.seo-chicks.com/">SEO Chicks</a>) and <a href="http://sphinn.com/story/5167">Rob Kerry</a> (<a href="http://www.evilgreenmonkey.com/">evilgreenmonkey</a>) making a small wager. </p>
<p>They bet that if Rob could get onto the front page (top ten) in Google for <a href="http://www.evilgreenmonkey.com/">weddings</a> by the time of <a href="http://www.pubcon.com">PubCon Vegas</a>, they would 100% seriously get married in Vegas!!</p>
<p><img src='http://www.nott.org/wp-content/uploads/2007/10/roblisakerry.jpg' alt='Rob &#038; Lisa Kerry' /></p>
<p>Now to help them both achieve the eternal happiness they truly deserve, I think we should all get involved. Even if they are both gonna kill me for doing this <img src='http://www.nott.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>So please spread the word as far and wide as possible, and get everyone you know who owns a website to put up a link to <strong>Rob&#8217;s</strong> site, with the anchor text of &#8216;weddings&#8217;.</p>
<p>Example code to use:  </p>
<div class="codesnip-container" >
<div class="codesnip"><span class="sc2"><a href="http://december.com/html/4/element/a.html"><span class="kw2">&lt;a</span></a> <span class="kw3">href</span>=&quot;http://www.evilgreenmonkey.com/&quot;&gt;</span>weddings<span class="sc2"><span class="kw2">&lt;/a&gt;</span></span></div>
</div>
<div style="margin-top: 10px;">Help spread the word: <a href="http://digg.com/celebrity/SEO_Wedding_in_Vegas_evilgreenmonkey_and_SEO_Chick_to_tie_the_knot">digg it</a> &#038; <a href="http://sphinn.com/story/8980">sphinn it</a></div>
]]></content:encoded>
			<wfw:commentRss>http://www.nott.org/blog/seo-wedding-rob-kerry-lisa-ditlefsen.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>I Hate Monkeys, Especially the Evil Green Ones</title>
		<link>http://www.nott.org/blog/i-hate-monkeys-especially-the-evil-green-ones.html</link>
		<comments>http://www.nott.org/blog/i-hate-monkeys-especially-the-evil-green-ones.html#comments</comments>
		<pubDate>Tue, 02 Oct 2007 19:24:54 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
		
		<category><![CDATA[Blog]]></category>

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

		<guid isPermaLink="false">http://www.nott.org/blog/i-hate-monkeys-especially-the-evil-green-ones.html</guid>
		<description><![CDATA[Now I know monkey&#8217;s aren&#8217;t famed for their intelligence, but I am really amazed how little our evil green one understands about the meaning of &#8216;low-profile&#8217;. 
He knows what I think about SEO Celebrities and that I &#8216;ve enjoyed my relative anonymity for the last 8 years within the industry. Yet when the conference he&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>Now I know monkey&#8217;s aren&#8217;t famed for their intelligence, but I am really amazed how little our <a href="http://www.evilgreenmonkey.com">evil green one</a> understands about the meaning of &#8216;low-profile&#8217;. </p>
<p>He knows what I think about SEO Celebrities and that I &#8216;ve enjoyed my relative anonymity for the last 8 years within the industry. Yet when the conference he&#8217;s speaking at tomorrow called to say one of their speakers had pulled out, Rob didn&#8217;t hesitate to put my name forward - the bastard.</p>
<p>So it seems that after not only <a href="http://www.nott.org/blog/we-sold-out.html">losing my soul</a> earlier this week, I am now going to be speaking at an SEO conference. Thats the second of the two thing&#8217;s I&#8217;d swore I&#8217;d never do, done within 7 days! What the hell is going wrong with my life? <img src='http://www.nott.org/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /> </p>
<p>So if you want a good laugh at my expense, then get on down to the Kensington Close Hotel tomorrow for the <a href="http://www.mad.co.uk/Main/Events/SearchEngineMarketing/Default.html">Mad Presents Search Engine Marketing</a> conference. The £595 entrance fee will be worth every penny.</p>
<p>On the upside though, they are offering a free 3 course carvery lunch <img src='http://www.nott.org/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  (and hopefully <a href="http://www.ayima.com/">Ayima</a> will get some clients out of it)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nott.org/blog/i-hate-monkeys-especially-the-evil-green-ones.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>We Sold Out</title>
		<link>http://www.nott.org/blog/we-sold-out.html</link>
		<comments>http://www.nott.org/blog/we-sold-out.html#comments</comments>
		<pubDate>Sat, 29 Sep 2007 18:19:23 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
		
		<category><![CDATA[Ayima]]></category>

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

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

		<guid isPermaLink="false">http://www.nott.org/blog/we-sold-out.html</guid>
		<description><![CDATA[As you may have read, earlier this week Rob and I threw off any ounce of credibility in the SEO industry that we may have had, by selling out and exhibiting Ayima at Ad:tech London.
The thing is though, it really was far more successful than I imagined, and we got loads of great leads out [...]]]></description>
			<content:encoded><![CDATA[<p>As you may have <a href="http://londonseo.org/blog/weve-sold-our-souls.html">read</a>, earlier this week <a href="http://www.evilgreenmonkey.com/">Rob</a> and I threw off any ounce of credibility in the SEO industry that we may have had, by selling out and exhibiting <a href="http://www.ayima.com/">Ayima</a> at <a href="http://www.ad-techlondon.co.uk/">Ad:tech London</a>.</p>
<p>The thing is though, it really was far more successful than I imagined, and we got loads of great leads out of it. I definitely wouldn&#8217;t recommend Ad:tech to anyone as an actual SEO conference, but as a sales opportunity it was perfect.</p>
<p>Anyway here&#8217;s some photographic proof to ensure that we never forget how low we fell:</p>
<p><img src='http://www.nott.org/wp-content/uploads/2007/09/adtech1.jpg' alt='Mel Rob and MJ at Ad:tech' /></p>
<p><img src='http://www.nott.org/wp-content/uploads/2007/09/adtech2.jpg' alt='Me at Ad:tech' /></p>
<p><img src='http://www.nott.org/wp-content/uploads/2007/09/adtech31.jpg' alt='Ayima at Ad:tech' /></p>
<p><img src='http://www.nott.org/wp-content/uploads/2007/09/group_pub.jpg' alt='Relaxing after Ad:tech' /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.nott.org/blog/we-sold-out.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>Esrun Joins the Ayima Team</title>
		<link>http://www.nott.org/blog/esrun-joins-the-ayima-team.html</link>
		<comments>http://www.nott.org/blog/esrun-joins-the-ayima-team.html#comments</comments>
		<pubDate>Mon, 10 Sep 2007 18:11:47 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
		
		<category><![CDATA[Ayima]]></category>

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

		<guid isPermaLink="false">http://www.nott.org/blog/esrun-joins-the-ayima-team.html</guid>
		<description><![CDATA[[alt-title: Ayima hires yet another dirty black-hat spammer]  
Anyone who&#8217;s trying to run a growing search operation knows how hard it is to hire good SEOs. 
Some people like to take on newbies and train them up but who really has the time to do that? And as I have some quiet strict ideas [...]]]></description>
			<content:encoded><![CDATA[<p>[alt-title: <a href="http://www.ayima.com/">Ayima</a> hires yet another dirty black-hat spammer] <img src='http://www.nott.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Anyone who&#8217;s trying to run a growing search operation knows how hard it is to hire good SEOs. </p>
<p>Some people like to take on newbies and train them up but who really has the time to do that? And as I have some quiet strict ideas about what makes a proper SEO, its rare to find a newbie who I think has the right experiences and knowledge to build from quickly. </p>
<p>Also, my choosiness makes the slim pickings of experienced SEOs to hire even slimmer and as most decent SEOs are already doing their own stuff, to entice them away can be hard.</p>
<p>So I never actually hire anyone through the interview process, its always by meeting and getting to know prospects at industry events etc. Then once decided, go in for the kill by getting them so drunk they submit to joining us (this really happened with <a href="http://www.evilgreenmonkey.com/">Rob Kerry</a> (evilgreenmonkey) at SES San Jose 2006).</p>
<p>Anyway, imagine my surprise then when I discovered that the infamous spammer <a href="http://www.esrun.co.uk/">Esrun</a> comes from my small little hometown of <a href="http://en.wikipedia.org/wiki/Southend-on-Sea">Southend</a>. Esrun is well known as the author of many spamming tools including <a href="http://www.esrun.co.uk/blog/dity/">DITY</a> (one of the most popular old guestbook/comment spamming apps).</p>
<p><a href="http://www.davidnaylor.co.uk/">Dave</a> also wrote a <a href="http://www.davidnaylor.co.uk/esrun-needs-some-love.html">blog post</a> saying Steve was one of his kinda guys, but we won&#8217;t hold that against him <img src='http://www.nott.org/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>After getting in touch with Esrun I learned that he (Steve) was wasting away his talents and as an unappreciated SEO for an insurer. Then after a number of pub sessions saying there&#8217;s a whole world of opportunity out there and that he&#8217;d be a perfect fit for Ayima, Steve agreed to take the plunge and join us.</p>
<p>So I would like to hereby welcome <a href="http://www.esrun.co.uk/">Stephen Hill</a> (aka &#8216;esrun&#8217;) to the Ayima team.</p>
<p><img src='http://www.nott.org/wp-content/uploads/2007/09/esrun.jpg' alt='Esrun - Steve Pip' /></p>
<p>Also, as you can see from the above photo, Steve will also be acting as Ayima&#8217;s own personal security guard.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nott.org/blog/esrun-joins-the-ayima-team.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>SEOs in the Strangest Places</title>
		<link>http://www.nott.org/blog/seos-in-the-strangest-places.html</link>
		<comments>http://www.nott.org/blog/seos-in-the-strangest-places.html#comments</comments>
		<pubDate>Mon, 10 Sep 2007 16:50:22 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
		
		<category><![CDATA[Blog]]></category>

		<category><![CDATA[Other Stuff]]></category>

		<guid isPermaLink="false">http://www.nott.org/blog/seos-in-the-strangest-places.html</guid>
		<description><![CDATA[I&#8217;m sure most others in the industry are used to the general public not having a clue what we do for a living. 
When asked what I do, it&#8217;s normally safest to mention I.T. or a vague &#8216;online marketing&#8217;.
So I was very surprised today, that while sat in my optician&#8217;s chair having an eye exam, [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m sure most others in the industry are used to the general public not having a clue what we do for a living. </p>
<p>When asked what I do, it&#8217;s normally safest to mention I.T. or a vague &#8216;online marketing&#8217;.</p>
<p>So I was very surprised today, that while sat in my optician&#8217;s chair having an eye exam, when I said online marketing, he said &#8220;with search engines?&#8221;.</p>
<p>I was suitably impressed to discover that as well as being an optician, he also been spending his spare time building and hosting websites for the last 10 years. </p>
<p>So anybody in the Rochford, Essex area look for a web-savvy optician, go visit <a href="http://www.terencemendoza.co.uk/">Terence Mendoza</a>.</p>
<p><a href='http://www.terencemendoza.co.uk/' title='Terence Mendoza'><img src='http://www.nott.org/wp-content/uploads/2007/09/terence_mendoza.jpg' alt='Terence Mendoza' /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.nott.org/blog/seos-in-the-strangest-places.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>The Launch of Ayima</title>
		<link>http://www.nott.org/blog/the-launch-of-ayima.html</link>
		<comments>http://www.nott.org/blog/the-launch-of-ayima.html#comments</comments>
		<pubDate>Sat, 08 Sep 2007 08:04:41 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
		
		<category><![CDATA[Ayima]]></category>

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

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

		<guid isPermaLink="false">http://www.nott.org/blog/the-launch-of-ayima.html</guid>
		<description><![CDATA[I would hereby like to officially introduce you all to the future of SEO consulting - Ayima Search Marketing!!

Ayima was born out of the frustration felt about the poor reputation of the UK SEO industry, caused mainly by the low quality of the UK&#8217;s mainstream agencies.
We really feel there is a gap in the UK [...]]]></description>
			<content:encoded><![CDATA[<p>I would hereby like to officially introduce you all to the future of SEO consulting - <a href="http://www.ayima.com">Ayima Search Marketing</a>!!</p>
<div style="padding: 2px; width: 200px; height: 72px; background: #fff;"><a href='http://www.ayima.com' title='Ayima Search Marketing'><img src='http://www.nott.org/wp-content/uploads/2007/09/ayimasearchmarketing.jpg' alt='Ayima Search Marketing' /></a></div>
<p>Ayima was born out of the frustration felt about the poor reputation of the UK SEO industry, caused mainly by the low quality of the UK&#8217;s mainstream agencies.</p>
<p>We really feel there is a gap in the UK market right now for a REAL high-level SEO consultancy/agency.</p>
<p>Ayima currently consists of <a href="http://www.linkedin.com/in/mikenott">Mike Nott</a>, <a href="http://www.linkedin.com/in/evilgreenmonkey">Rob Kerry</a> (<a href="http://www.evilgreenmonkey.com/">evilgreenmonkey</a>), <a href="http://www.linkedin.com/in/mikejacobson74">Mike Jacobson</a> &#038; <a href="http://www.linkedin.com/in/timwebb">Tim Webb</a>. However we already have our next couple of team members lined up (announcements coming soon) and look to keep growing in the future.</p>
<p>Well, the future&#8217;s looking bright and rosy right now and I&#8217;ll be giving you company updates here soon.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nott.org/blog/the-launch-of-ayima.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>A Nice Break</title>
		<link>http://www.nott.org/blog/a-nice-break.html</link>
		<comments>http://www.nott.org/blog/a-nice-break.html#comments</comments>
		<pubDate>Fri, 07 Sep 2007 15:07:01 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
		
		<category><![CDATA[Blog]]></category>

		<category><![CDATA[Other Stuff]]></category>

		<guid isPermaLink="false">http://www.nott.org/blog/a-nice-break.html</guid>
		<description><![CDATA[Well wasn&#8217;t that a nice little break? 19 months since my last post is definitely something to be proud about!!
But I suppose its time for me to get back into the blogging game and it really is quite overdue.
Trying to think of everything that has happened to me in the last year and a half [...]]]></description>
			<content:encoded><![CDATA[<p>Well wasn&#8217;t that a nice little break? 19 months since my last post is definitely something to be proud about!!</p>
<p>But I suppose its time for me to get back into the blogging game and it really is quite overdue.</p>
<p>Trying to think of everything that has happened to me in the last year and a half is not easy - especially with my shockingly poor memory.</p>
<p>The most important land mark occasions though were:</p>
<ol>
<li>The birth of our second daughter <strong>Lana</strong> (check the <a href="/gallery/">galleries</a> for pics of our beautiful little devil)</li>
<li>I switched to a <a href="http://www.apple.com/macbookpro/">Mac</a> (and am now a die-hard advocate bent on making everyone I know make the switch)</li>
<li>I finally left <a href="http://www.fuckedcompany.com">PartyGaming</a></li>
</ol>
<p>I&#8217;m sure there were lots of other important things I was supposed to mention, but I do feel quite tired now after all that thinking and typing and had better stop before I cause myself an injury.. </p>
<p>Anyway, see you in another 18 months time!!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nott.org/blog/a-nice-break.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>Mya Poem Reading</title>
		<link>http://www.nott.org/blog/mya-poem-reading.html</link>
		<comments>http://www.nott.org/blog/mya-poem-reading.html#comments</comments>
		<pubDate>Sat, 28 Apr 2007 21:48:00 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
		
		<category><![CDATA[Blog]]></category>

		<category><![CDATA[Other Stuff]]></category>

		<guid isPermaLink="false">http://www.nott.org/blog/mya-poem-reading.html</guid>
		<description><![CDATA[Last month we had a naming day for our second daughter Lana on her first birthday.
As part of the ceremony, our 6 year old daughter Mya read a beautiful poem dedicated to her little sister.


]]></description>
			<content:encoded><![CDATA[<p>Last month we had a naming day for our second daughter Lana on her first birthday.</p>
<p>As part of the ceremony, our 6 year old daughter Mya read a beautiful poem dedicated to her little sister.</p>
<p><object width="425" height="350">
<param name="movie" value="http://www.youtube.com/v/ryUavu91UIQ"></param><embed src="http://www.youtube.com/v/ryUavu91UIQ" type="application/x-shockwave-flash" width="425" height="350"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://www.nott.org/blog/mya-poem-reading.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>PHP Whois Script</title>
		<link>http://www.nott.org/blog/php-whois-script.html</link>
		<comments>http://www.nott.org/blog/php-whois-script.html#comments</comments>
		<pubDate>Wed, 25 Jan 2006 21:43:04 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
		
		<category><![CDATA[Code]]></category>

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

		<category><![CDATA[Web/Net]]></category>

		<guid isPermaLink="false">http://www2.nott.org/blog/php-whois-script.html</guid>
		<description><![CDATA[Glenn over at SSEO asked for a script to do mass whois lookups. 
Use this function:

function getwhois&#40;$domain, $tld&#41;
&#160; &#160; &#123;&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160;
&#160; &#160; &#160; &#160; require_once&#40;&#8220;whois.class.php&#8221;&#41;;
&#160; &#160; &#160; &#160; $whois = new [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.glenn.ca/">Glenn</a> over at <a href="http://its-a-secret">SSEO</a> asked for a script to do mass whois lookups. </p>
<p>Use this function:</p>
<div class="codesnip-container" >
<div class="codesnip"><span class="kw2">function</span> getwhois<span class="br0">&#40;</span><span class="re0">$domain</span>, <span class="re0">$tld</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; <span class="br0">&#123;</span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">require_once</span><span class="br0">&#40;</span><span class="st0">&#8220;whois.class.php&#8221;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$whois</span> = <span class="kw2">new</span> Whois<span class="br0">&#40;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;<span class="kw1">if</span><span class="br0">&#40;</span> !<span class="re0">$whois</span>-&gt;<span class="me1">ValidDomain</span><span class="br0">&#40;</span><span class="re0">$domain</span>.<span class="st0">&#8216;.&#8217;</span>.<span class="re0">$tld</span><span class="br0">&#41;</span> <span class="br0">&#41;</span><span class="br0">&#123;</span> <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;<span class="kw1">return</span> <span class="st0">&#8216;Sorry, the domain is not valid or not supported.&#8217;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;<span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span><span class="br0">&#40;</span> <span class="re0">$whois</span>-&gt;<span class="me1">Lookup</span><span class="br0">&#40;</span><span class="re0">$domain</span>.<span class="st0">&#8216;.&#8217;</span>.<span class="re0">$tld</span><span class="br0">&#41;</span> <span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <span class="re0">$whois</span>-&gt;<span class="me1">GetData</span><span class="br0">&#40;</span><span class="nu0">1</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><span class="kw1">else</span><span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <span class="st0">&#8216;Sorry, an error occurred.&#8217;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$domain</span> = <a href="http://www.php.net/trim"><span class="kw3">trim</span></a><span class="br0">&#40;</span><span class="re0">$_REQUEST</span><span class="br0">&#91;</span><span class="st0">&#8216;domain&#8217;</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$dot</span> = <a href="http://www.php.net/strpos"><span class="kw3">strpos</span></a><span class="br0">&#40;</span><span class="re0">$domain</span>, <span class="st0">&#8216;.&#8217;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$sld</span> = <a href="http://www.php.net/substr"><span class="kw3">substr</span></a><span class="br0">&#40;</span><span class="re0">$domain</span>, <span class="nu0">0</span>, <span class="re0">$dot</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$tld</span> = <a href="http://www.php.net/substr"><span class="kw3">substr</span></a><span class="br0">&#40;</span><span class="re0">$domain</span>, <span class="re0">$dot</span>+<span class="nu0">1</span><span class="br0">&#41;</span>;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$whois</span> = getwhois<span class="br0">&#40;</span><span class="re0">$sld</span>, <span class="re0">$tld</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.php.net/echo"><span class="kw3">echo</span></a> <span class="st0">&#8220;&lt;pre&gt;&#8221;</span>; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.php.net/echo"><span class="kw3">echo</span></a> <span class="re0">$whois</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.php.net/echo"><span class="kw3">echo</span></a> <span class="st0">&#8220;&lt;/pre&gt;&#8221;</span>;</div>
</div>
<p>To call this <a href="/uploads/whois.class.php.txt">class</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nott.org/blog/php-whois-script.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>6th Coolest Guy On The Planet</title>
		<link>http://www.nott.org/blog/6th-coolest-guy-on-the-planet.html</link>
		<comments>http://www.nott.org/blog/6th-coolest-guy-on-the-planet.html#comments</comments>
		<pubDate>Wed, 25 Jan 2006 21:35:34 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
		
		<category><![CDATA[Blog]]></category>

		<category><![CDATA[Other Stuff]]></category>

		<guid isPermaLink="false">http://www.nott.org/?p=53</guid>
		<description><![CDATA[Something is wrong - G&#8217;s algo is definitely screwed!!!
I don&#8217;t know how, but I am currently the 6th coolest guy on the planet.
I only wrote the post to help boost Andre&#8217;s coolness, but looks like I&#8217;m just way cooler than him.  

[update] Damn, looks like BigDaddy just doesn&#8217;t think I&#8217;m as cool as the [...]]]></description>
			<content:encoded><![CDATA[<p>Something is wrong - G&#8217;s algo is definitely screwed!!!</p>
<p>I don&#8217;t know how, but I am currently the <a href="http://www.google.com/search?hl=en&#038;q=coolest+guy+on+the+planet&#038;num=10">6th coolest guy on the planet</a>.</p>
<p>I only wrote the <a href="http://www.nott.org/blog/coolest-guy-on-the-planet.html">post</a> to help boost <a href="http://www.andrechaperon.com/coolest-guy-on-the-planet/">Andre</a>&#8217;s coolness, but looks like I&#8217;m just way cooler than him. <img src='http://www.nott.org/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p><img src='/uploads/coolest.jpg' alt='' /></p>
<p><strong>[update]</strong> Damn, looks like <a href="http://www.google.com/search?hl=en&#038;q=coolest+guy+on+the+planet&#038;num=20">BigDaddy</a> just doesn&#8217;t think I&#8217;m as cool as the old index <img src='http://www.nott.org/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> <strong>[/update]</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.nott.org/blog/6th-coolest-guy-on-the-planet.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>Next LondonSEO Meet Anounced</title>
		<link>http://www.nott.org/blog/next-londonseo-meet-anounced.html</link>
		<comments>http://www.nott.org/blog/next-londonseo-meet-anounced.html#comments</comments>
		<pubDate>Thu, 19 Jan 2006 13:50:06 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
		
		<category><![CDATA[Blog]]></category>

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

		<guid isPermaLink="false">http://www.nott.org/?p=52</guid>
		<description><![CDATA[Finally a date has been decided upon for the next LondonSEO pubcon pissup - Thursday, 9th February. 
Venue: The Legion, Old Street, London.
No time frame specified, but most people will probably be there 6-7pm onwards.
No fees, registration or any of that hassle needed! 
Just turn up, drink + chat.
]]></description>
			<content:encoded><![CDATA[<p>Finally a date has been decided upon for the <a href="http://londonseo.org/blog/next-pubcon-announced.html">next LondonSEO pubcon</a> pissup - Thursday, 9th February. </p>
<p>Venue: <a href="http://londonseo.org/venue.html">The Legion</a>, Old Street, London.</p>
<p>No time frame specified, but most people will probably be there 6-7pm onwards.</p>
<p>No fees, registration or any of that hassle needed! </p>
<p>Just turn up, drink + chat.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nott.org/blog/next-londonseo-meet-anounced.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>V7ndotcom Elursrebmem</title>
		<link>http://www.nott.org/blog/v7ndotcom-elursrebmem.html</link>
		<comments>http://www.nott.org/blog/v7ndotcom-elursrebmem.html#comments</comments>
		<pubDate>Mon, 16 Jan 2006 17:06:47 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
		
		<category><![CDATA[Blog]]></category>

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

		<guid isPermaLink="false">http://www.nott.org/?p=51</guid>
		<description><![CDATA[[note: this page is not in the contest]
As anyone in the industry will know, there is currently an SEO contest going on, started by John Scott at V7Network and improved on by Greg, Todd &#038; Mike Grehan.
Rather than trying to pocket the change, Graywolf has done the respectable thing and is donating any winnings to [...]]]></description>
			<content:encoded><![CDATA[<p>[note: this page is not in the contest]</p>
<p>As anyone in the industry will know, there is currently an SEO contest going on, started by John Scott at V7Network and improved on by <a href="http://v7ndotcom-elursrebmem.webguerrilla.com/v7ndotcom-elursrebmem/">Greg</a>, <a href="http://www.oilman.ca/sem/yet-another-seo-contest-update/">Todd</a> &#038; <a href="http://www.mikegrehan.com/2005/12/bloggin-heck-im-in-beautiful.html">Mike Grehan</a>.</p>
<p>Rather than trying to pocket the change, <a href="http://www.wolf-howl.com/">Graywolf</a> has done the respectable thing and is <a href="http://www.wolf-howl.com/v7n/">donating</a> any winnings to charity.</p>
<p>I decided to help out - luckily I got to <a href="http://en.wikipedia.org/wiki/Main_Page">Wikipedia</a> before any other spammers did and created the <a href="http://en.wikipedia.org/wiki/V7ndotcom_Elursrebmem">V7ndotcom Elursrebmem</a> page. If this page happens to rank at the end, all winnings will be passed on to Graywolf for the charity.</p>
<p><strong>[update]</strong> Looks like <a href="http://en.wikipedia.org/wiki/V7ndotcom_Elursrebmem">my wikipage</a> on the contest is turning into a bit of a <a href="http://en.wikipedia.org/wiki/Wikipedia:Articles_for_deletion/V7ndotcom_Elursrebmem">heated debate</a> in itself - very funny <img src='http://www.nott.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> <strong>[/update]</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.nott.org/blog/v7ndotcom-elursrebmem.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>Google Datacenters</title>
		<link>http://www.nott.org/blog/google-datacenters.html</link>
		<comments>http://www.nott.org/blog/google-datacenters.html#comments</comments>
		<pubDate>Thu, 05 Jan 2006 11:57:29 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
		
		<category><![CDATA[Code]]></category>

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

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

		<guid isPermaLink="false">http://www.nott.org/?p=50</guid>
		<description><![CDATA[For all those wanting to check the rollout of the BigDaddy update, here&#8217;s a list of 116 Google Datacenters:

64.233.161.98 64.233.161.99 64.233.161.104 64.233.161.105 64.233.161.106 64.233.161.107 64.233.161.147 64.233.163.99 64.233.163.104 64.233.167.99 64.233.167.104 64.233.167.106 64.233.167.107 64.233.167.147 64.233.171.99 64.233.171.103 64.233.171.104 64.233.171.105 64.233.171.106 64.233.171.107 64.233.171.147 64.233.179.99 64.233.179.104 64.233.179.106 64.233.179.107 64.233.183.99 64.233.183.104 64.233.183.107 64.233.185.99 64.233.185.104 64.233.185.106 64.233.185.107 64.233.185.147 64.233.187.99 64.233.187.104 64.233.187.106 64.233.187.107 [...]]]></description>
			<content:encoded><![CDATA[<p>For all those wanting to check the rollout of the <a href="http://www.mattcutts.com/blog/bigdaddy-on-the-move/">BigDaddy</a> update, here&#8217;s a list of 116 Google Datacenters:</p>
<blockquote><p>
<a href="http://64.233.161.98/">64.233.161.98</a> <a href="http://64.233.161.99/">64.233.161.99</a> <a href="http://64.233.161.104/">64.233.161.104</a> <a href="http://64.233.161.105/">64.233.161.105</a> <a href="http://64.233.161.106/">64.233.161.106</a> <a href="http://64.233.161.107/">64.233.161.107</a> <a href="http://64.233.161.147/">64.233.161.147</a> <a href="http://64.233.163.99/">64.233.163.99</a> <a href="http://64.233.163.104/">64.233.163.104</a> <a href="http://64.233.167.99/">64.233.167.99</a> <a href="http://64.233.167.104/">64.233.167.104</a> <a href="http://64.233.167.106/">64.233.167.106</a> <a href="http://64.233.167.107/">64.233.167.107</a> <a href="http://64.233.167.147/">64.233.167.147</a> <a href="http://64.233.171.99/">64.233.171.99</a> <a href="http://64.233.171.103/">64.233.171.103</a> <a href="http://64.233.171.104/">64.233.171.104</a> <a href="http://64.233.171.105/">64.233.171.105</a> <a href="http://64.233.171.106/">64.233.171.106</a> <a href="http://64.233.171.107/">64.233.171.107</a> <a href="http://64.233.171.147/">64.233.171.147</a> <a href="http://64.233.179.99/">64.233.179.99</a> <a href="http://64.233.179.104/">64.233.179.104</a> <a href="http://64.233.179.106/">64.233.179.106</a> <a href="http://64.233.179.107/">64.233.179.107</a> <a href="http://64.233.183.99/">64.233.183.99</a> <a href="http://64.233.183.104/">64.233.183.104</a> <a href="http://64.233.183.107/">64.233.183.107</a> <a href="http://64.233.185.99/">64.233.185.99</a> <a href="http://64.233.185.104/">64.233.185.104</a> <a href="http://64.233.185.106/">64.233.185.106</a> <a href="http://64.233.185.107/">64.233.185.107</a> <a href="http://64.233.185.147/">64.233.185.147</a> <a href="http://64.233.187.99/">64.233.187.99</a> <a href="http://64.233.187.104/">64.233.187.104</a> <a href="http://64.233.187.106/">64.233.187.106</a> <a href="http://64.233.187.107/">64.233.187.107</a> <a href="http://64.233.189.104/">64.233.189.104</a> <a href="http://66.102.7.98/">66.102.7.98</a> <a href="http://66.102.7.99/">66.102.7.99</a> <a href="http://66.102.7.104/">66.102.7.104</a> <a href="http://66.102.7.105/">66.102.7.105</a> <a href="http://66.102.7.106/">66.102.7.106</a> <a href="http://66.102.7.107/">66.102.7.107</a> <a href="http://66.102.7.147/">66.102.7.147</a> <a href="http://66.102.9.99/">66.102.9.99</a> <a href="http://66.102.9.104/">66.102.9.104</a> <a href="http://66.102.9.106/">66.102.9.106</a> <a href="http://66.102.9.107/">66.102.9.107</a> <a href="http://66.102.9.147/">66.102.9.147</a> <a href="http://66.102.11.99/">66.102.11.99</a> <a href="http://66.102.11.104/">66.102.11.104</a> <a href="http://66.102.11.106/">66.102.11.106</a> <a href="http://66.102.11.107/">66.102.11.107</a> <a href="http://66.249.81.99/">66.249.81.99</a> <a href="http://66.249.81.104/">66.249.81.104</a> <a href="http://66.249.81.106/">66.249.81.106</a> <a href="http://66.249.81.107/">66.249.81.107</a> <a href="http://66.249.83.99/">66.249.83.99</a> <a href="http://66.249.83.104/">66.249.83.104</a> <a href="http://66.249.83.106/">66.249.83.106</a> <a href="http://66.249.83.107/">66.249.83.107</a> <a href="http://66.249.85.99/">66.249.85.99</a> <a href="http://66.249.85.104/">66.249.85.104</a> <a href="http://66.249.85.106/">66.249.85.106</a> <a href="http://66.249.85.107/">66.249.85.107</a> <a href="http://66.249.87.99/">66.249.87.99</a> <a href="http://66.249.87.104/">66.249.87.104</a> <a href="http://66.249.89.99/">66.249.89.99</a> <a href="http://66.249.89.104/">66.249.89.104</a> <a href="http://66.249.89.106/">66.249.89.106</a> <a href="http://66.249.89.107/">66.249.89.107</a> <a href="http://66.249.93.99/">66.249.93.99</a> <a href="http://66.249.93.104/">66.249.93.104</a> <a href="http://66.249.93.106/">66.249.93.106</a> <a href="http://66.249.93.107/">66.249.93.107</a> <a href="http://72.14.203.99/">72.14.203.99</a> <a href="http://72.14.203.104/">72.14.203.104</a> <a href="http://72.14.203.106/">72.14.203.106</a> <a href="http://72.14.203.107/">72.14.203.107</a> <a href="http://72.14.205.99/">72.14.205.99</a> <a href="http://72.14.205.104/">72.14.205.104</a> <a href="http://72.14.205.106/">72.14.205.106</a> <a href="http://72.14.205.107/">72.14.205.107</a> <a href="http://72.14.207.99/">72.14.207.99</a> <a href="http://72.14.207.104/">72.14.207.104</a> <a href="http://72.14.207.106/">72.14.207.106</a> <a href="http://72.14.207.107/">72.14.207.107</a> <a href="http://216.239.37.98/">216.239.37.98</a> <a href="http://216.239.37.99/">216.239.37.99</a> <a href="http://216.239.37.104/">216.239.37.104</a> <a href="http://216.239.37.105/">216.239.37.105</a> <a href="http://216.239.37.106/">216.239.37.106</a> <a href="http://216.239.37.107/">216.239.37.107</a> <a href="http://216.239.37.147/">216.239.37.147</a> <a href="http://216.239.39.98/">216.239.39.98</a> <a href="http://216.239.39.99/">216.239.39.99</a> <a href="http://216.239.39.104/">216.239.39.104</a> <a href="http://216.239.39.105/">216.239.39.105</a> <a href="http://216.239.39.106/">216.239.39.106</a> <a href="http://216.239.39.107/">216.239.39.107</a> <a href="http://216.239.53.98/">216.239.53.98</a> <a href="http://216.239.53.99/">216.239.53.99</a> <a href="http://216.239.53.104/">216.239.53.104</a> <a href="http://216.239.53.105/">216.239.53.105</a> <a href="http://216.239.53.106/">216.239.53.106</a> <a href="http://216.239.53.107/">216.239.53.107</a> <a href="http://216.239.57.98/">216.239.57.98</a> <a href="http://216.239.57.99/">216.239.57.99</a> <a href="http://216.239.57.103/">216.239.57.103</a> <a href="http://216.239.57.104/">216.239.57.104</a> <a href="http://216.239.57.105/">216.239.57.105</a> <a href="http://216.239.57.106/">216.239.57.106</a> <a href="http://216.239.57.107/">216.239.57.107</a> <a href="http://216.239.57.147/">216.239.57.147</a> <a href="http://216.239.59.98/">216.239.59.98</a> <a href="http://216.239.59.99/">216.239.59.99</a> <a href="http://216.239.59.103/">216.239.59.103</a> <a href="http://216.239.59.104/">216.239.59.104</a> <a href="http://216.239.59.105/">216.239.59.105</a> <a href="http://216.239.59.106/">216.239.59.106</a> <a href="http://216.239.59.107/">216.239.59.107</a> <a href="http://216.239.59.147/">216.239.59.147</a> <a href="http://216.239.63.99/">216.239.63.99</a> <a href="http://216.239.63.104/">216.239.63.104</a>
</p></blockquote>
<p>Here&#8217;s a quick dirty script that will check the number of each rank for a site on all datacenters:</p>
<div class="codesnip-container" >
<div class="codesnip"><span class="kw2">function</span> singlethread_crawl<span class="br0">&#40;</span><span class="re0">$url</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$agent</span> = <span class="st0">&#8220;Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)&#8221;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$ch</span> = curl_init<span class="br0">&#40;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; curl_setopt<span class="br0">&#40;</span><span class="re0">$ch</span>, CURLOPT_NOSIGNAL, <span class="nu0">1</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; curl_setopt<span class="br0">&#40;</span><span class="re0">$ch</span>, CURLOPT_NOPROGRESS, <span class="nu0">1</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; curl_setopt<span class="br0">&#40;</span><span class="re0">$ch</span>, CURLOPT_FAILONERROR, <span class="nu0">1</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; curl_setopt<span class="br0">&#40;</span><span class="re0">$ch</span>, CURLOPT_URL, <span class="re0">$url</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; curl_setopt<span class="br0">&#40;</span><span class="re0">$ch</span>, CURLOPT_USERAGENT, <span class="re0">$agent</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; curl_setopt<span class="br0">&#40;</span><span class="re0">$ch</span>, CURLOPT_SSL_VERIFYPEER, <span class="nu0">0</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; curl_setopt<span class="br0">&#40;</span><span class="re0">$ch</span>, CURLOPT_FOLLOWLOCATION, <span class="nu0">1</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; curl_setopt<span class="br0">&#40;</span><span class="re0">$ch</span>, CURLOPT_MAXREDIRS, <span class="nu0">1</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; curl_setopt<span class="br0">&#40;</span><span class="re0">$ch</span>, CURLOPT_TIMEOUT, <span class="nu0">5</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; curl_setopt<span class="br0">&#40;</span><span class="re0">$ch</span>, CURLOPT_RETURNTRANSFER, <span class="nu0">1</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$html</span> = curl_exec<span class="br0">&#40;</span><span class="re0">$ch</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; curl_close <span class="br0">&#40;</span><span class="re0">$ch</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <span class="re0">$html</span>;<br />
&nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; <span class="kw2">function</span> multithread_crawl<span class="br0">&#40;</span><span class="re0">$urls</span>, <span class="re0">$timeout</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$agent</span> = <span class="st0">&#8220;Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)&#8221;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$mh</span> = curl_multi_init<span class="br0">&#40;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">foreach</span> <span class="br0">&#40;</span><span class="re0">$urls</span> <span class="kw1">as</span> <span class="re0">$i</span> =&gt; <span class="re0">$url</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$conn</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span> = curl_init<span class="br0">&#40;</span><span class="re0">$url</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; curl_setopt<span class="br0">&#40;</span><span class="re0">$conn</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span>, CURLOPT_RETURNTRANSFER, <span class="nu0">1</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; curl_setopt<span class="br0">&#40;</span><span class="re0">$conn</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span>, CURLOPT_NOSIGNAL, <span class="nu0">1</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; curl_setopt<span class="br0">&#40;</span><span class="re0">$conn</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span>, CURLOPT_NOPROGRESS, <span class="nu0">1</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; curl_setopt<span class="br0">&#40;</span><span class="re0">$conn</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span>, CURLOPT_FAILONERROR, <span class="nu0">1</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; curl_setopt<span class="br0">&#40;</span><span class="re0">$conn</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span>, CURLOPT_URL, <span class="re0">$url</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; curl_setopt<span class="br0">&#40;</span><span class="re0">$conn</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span>, CURLOPT_USERAGENT, <span class="re0">$agent</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; curl_setopt<span class="br0">&#40;</span><span class="re0">$conn</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span>, CURLOPT_SSL_VERIFYPEER, <span class="nu0">0</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; curl_setopt<span class="br0">&#40;</span><span class="re0">$conn</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span>, CURLOPT_FOLLOWLOCATION, <span class="nu0">1</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; curl_setopt<span class="br0">&#40;</span><span class="re0">$conn</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span>, CURLOPT_MAXREDIRS, <span class="nu0">1</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; curl_setopt<span class="br0">&#40;</span><span class="re0">$conn</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span>, CURLOPT_TIMEOUT, <span class="re0">$timeout</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; curl_multi_add_handle <span class="br0">&#40;</span><span class="re0">$mh</span>, <span class="re0">$conn</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">do</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$mrc</span> = curl_multi_exec<span class="br0">&#40;</span><span class="re0">$mh</span>, <span class="re0">$active</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">while</span> <span class="br0">&#40;</span><span class="re0">$mrc</span> == CURLM_CALL_MULTI_PERFORM<span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">while</span> <span class="br0">&#40;</span><span class="re0">$active</span> and <span class="re0">$mrc</span> == CURLM_OK<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span>curl_multi_select<span class="br0">&#40;</span><span class="re0">$mh</span><span class="br0">&#41;</span> != -<span class="nu0">1</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">do</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$mrc</span> = curl_multi_exec<span class="br0">&#40;</span><span class="re0">$mh</span>, <span class="re0">$active</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">while</span> <span class="br0">&#40;</span><span class="re0">$mrc</span> == CURLM_CALL_MULTI_PERFORM<span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><span class="re0">$mrc</span> != CURLM_OK<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.php.net/print"><span class="kw3">print</span></a> <span class="st0">&#8220;Curl multi read error $mrc<span class="es0">\n</span>&#8220;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$res</span> = <a href="http://www.php.net/array"><span class="kw3">array</span></a><span class="br0">&#40;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$e</span> = <span class="nu0">0</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">foreach</span> <span class="br0">&#40;</span><span class="re0">$urls</span> <span class="kw1">as</span> <span class="re0">$i</span> =&gt; <span class="re0">$url</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><span class="br0">&#40;</span><span class="re0">$err</span> = curl_error<span class="br0">&#40;</span><span class="re0">$conn</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> == <span class="st0">&#8221;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$res</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span>=curl_multi_getcontent<span class="br0">&#40;</span><span class="re0">$conn</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">else</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.php.net/echo"><span class="kw3">echo</span></a> <span class="st0">&#8220;error: &#8220;</span>.<span class="re0">$url</span>.<span class="st0">&#8221; (&#8221;</span>.<span class="re0">$err</span>.<span class="st0">&#8220;)<span class="es0">\n</span>&#8220;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; curl_multi_remove_handle<span class="br0">&#40;</span><span class="re0">$mh</span>,<span class="re0">$conn</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; curl_close<span class="br0">&#40;</span><span class="re0">$conn</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; curl_multi_close<span class="br0">&#40;</span><span class="re0">$mh</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <span class="re0">$res</span>;<br />
&nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">function</span> googleresults<span class="br0">&#40;</span><span class="re0">$ip</span>, <span class="re0">$search</span>, <span class="re0">$num</span><span class="br0">&#41;</span><span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$url</span> = <span class="st0">&#8220;http://&#8221;</span>.<span class="re0">$ip</span>.<span class="st0">&#8220;/ie?q=&#8221;</span>.<a href="http://www.php.net/urlencode"><span class="kw3">urlencode</span></a><span class="br0">&#40;</span><span class="re0">$search</span><span class="br0">&#41;</span>.<span class="st0">&#8220;&amp;num=&#8221;</span>.<span class="re0">$num</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$html</span> = singlethread_crawl<span class="br0">&#40;</span><span class="re0">$url</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.php.net/preg_match_all"><span class="kw3">preg_match_all</span></a><span class="br0">&#40;</span><span class="st0">&#8220;/<span class="es0">\&#8221;</span> href=(.*)&gt;/iU&#8221;</span>, <span class="re0">$html</span>, <span class="re0">$links</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$urlarray</span> = <a href="http://www.php.net/str_replace"><span class="kw3">str_replace</span></a><span class="br0">&#40;</span><span class="st0">&#8220;&lt;b&gt;&#8221;</span>,<span class="st0">&#8220;&#8221;</span>,<span class="re0">$links</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$urlarray</span> = <a href="http://www.php.net/str_replace"><span class="kw3">str_replace</span></a><span class="br0">&#40;</span><span class="st0">&#8220;&lt;/b&gt;&#8221;</span>,<span class="st0">&#8220;&#8221;</span>,<span class="re0">$urlarray</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$urlarray</span> = <a href="http://www.php.net/preg_replace"><span class="kw3">preg_replace</span></a><span class="br0">&#40;</span><span class="st0">&#8220;/&gt;.*$/i&#8221;</span>,<span class="st0">&#8220;&#8221;</span>, <span class="re0">$urlarray</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <span class="re0">$urlarray</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">function</span> googleresults_multi<span class="br0">&#40;</span><span class="re0">$ips</span>, <span class="re0">$search</span>, <span class="re0">$num</span><span class="br0">&#41;</span><span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span><span class="re0">$i</span>=<span class="nu0">0</span>; <span class="re0">$i</span> &lt; <a href="http://www.php.net/count"><span class="kw3">count</span></a><span class="br0">&#40;</span><span class="re0">$ips</span><span class="br0">&#41;</span>; <span class="re0">$i</span>++<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;<span class="re0">$urls</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span> = <span class="st0">&#8220;http://&#8221;</span>.<span class="re0">$ips</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span>.<span class="st0">&#8220;/ie?q=&#8221;</span>.<a href="http://www.php.net/urlencode"><span class="kw3">urlencode</span></a><span class="br0">&#40;</span><span class="re0">$search</span><span class="br0">&#41;</span>.<span class="st0">&#8220;&amp;num=&#8221;</span>.<span class="re0">$num</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$html</span> = multithread_crawl<span class="br0">&#40;</span><span class="re0">$urls</span>, <a href="http://www.php.net/count"><span class="kw3">count</span></a><span class="br0">&#40;</span><span class="re0">$ips</span><span class="br0">&#41;</span>/<span class="nu0">2</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span><span class="re0">$i</span>=<span class="nu0">0</span>; <span class="re0">$i</span> &lt; <a href="http://www.php.net/count"><span class="kw3">count</span></a><span class="br0">&#40;</span><span class="re0">$ips</span><span class="br0">&#41;</span>; <span class="re0">$i</span>++<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;<a href="http://www.php.net/preg_match_all"><span class="kw3">preg_match_all</span></a><span class="br0">&#40;</span><span class="st0">&#8220;/<span class="es0">\&#8221;</span> href=(.*)&gt;/iU&#8221;</span>, <span class="re0">$html</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span>, <span class="re0">$links</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;<span class="re0">$urlarray</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span> = <a href="http://www.php.net/str_replace"><span class="kw3">str_replace</span></a><span class="br0">&#40;</span><span class="st0">&#8220;&lt;b&gt;&#8221;</span>,<span class="st0">&#8220;&#8221;</span>,<span class="re0">$links</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;<span class="re0">$urlarray</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span> = <a href="http://www.php.net/str_replace"><span class="kw3">str_replace</span></a><span class="br0">&#40;</span><span class="st0">&#8220;&lt;/b&gt;&#8221;</span>,<span class="st0">&#8220;&#8221;</span>,<span class="re0">$urlarray</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; &nbsp;<span class="re0">$urlarray</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span> = <a href="http://www.php.net/preg_replace"><span class="kw3">preg_replace</span></a><span class="br0">&#40;</span><span class="st0">&#8220;/&gt;.*$/i&#8221;</span>,<span class="st0">&#8220;&#8221;</span>, <span class="re0">$urlarray</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <span class="re0">$urlarray</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">function</span> removehttp<span class="br0">&#40;</span><span class="re0">$url</span><span class="br0">&#41;</span><span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><span class="br0">&#40;</span><a href="http://www.php.net/substr"><span class="kw3">substr</span></a><span class="br0">&#40;</span><span class="re0">$url</span>,<span class="nu0">0</span>,<span class="nu0">7</span><span class="br0">&#41;</span> == <span class="st0">&#8216;http://&#8217;</span><span class="br0">&#41;</span> || <span class="br0">&#40;</span><a href="http://www.php.net/substr"><span class="kw3">substr</span></a><span class="br0">&#40;</span><span class="re0">$url</span>,<span class="nu0">0</span>,<span class="nu0">8</span><span class="br0">&#41;</span> == <span class="st0">&#8216;https://&#8217;</span><span class="br0">&#41;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$url</span> = <a href="http://www.php.net/substr"><span class="kw3">substr</span></a><span class="br0">&#40;</span><span class="re0">$url</span>,<span class="nu0">7</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$url</span> = <a href="http://www.php.net/trim"><span class="kw3">trim</span></a><span class="br0">&#40;</span><span class="re0">$url</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <span class="re0">$url</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">function</span> rank<span class="br0">&#40;</span><span class="re0">$arr</span>, <span class="re0">$item</span><span class="br0">&#41;</span><span class="br0">&#123;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span><span class="re0">$i</span> = <span class="nu0">0</span>; <span class="re0">$i</span> &lt; <a href="http://www.php.net/count"><span class="kw3">count</span></a><span class="br0">&#40;</span><span class="re0">$arr</span><span class="br0">&#41;</span>; <span class="re0">$i</span>++<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><a href="http://www.php.net/eregi"><span class="kw3">eregi</span></a><span class="br0">&#40;</span><span class="re0">$item</span>,<span class="re0">$arr</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$result</span> = <span class="re0">$i</span>+<span class="nu0">1</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">break</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span><span class="br0">&#40;</span><span class="re0">$result</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>
&nbsp; &nbsp; <span class="re0">$ips</span> = <a href="http://www.php.net/array"><span class="kw3">array</span></a><span class="br0">&#40;</span><span class="st0">&#8220;64.233.161.99&#8243;</span>, <span class="st0">&#8220;64.233.161.104&#8243;</span>, <span class="st0">&#8220;64.233.161.105&#8243;</span>, <span class="st0">&#8220;64.233.161.106&#8243;</span>, <span class="st0">&#8220;64.233.161.107&#8243;</span>, <span class="st0">&#8220;64.233.161.147&#8243;</span>, <span class="st0">&#8220;64.233.163.99&#8243;</span>, <span class="st0">&#8220;64.233.163.104&#8243;</span>, <span class="st0">&#8220;64.233.167.99&#8243;</span>, <span class="st0">&#8220;64.233.167.104&#8243;</span>, <span class="st0">&#8220;64.233.167.106&#8243;</span>, <span class="st0">&#8220;64.233.167.107&#8243;</span>, <span class="st0">&#8220;64.233.167.147&#8243;</span>, <span class="st0">&#8220;64.233.171.99&#8243;</span>, <span class="st0">&#8220;64.233.171.104&#8243;</span>, <span class="st0">&#8220;64.233.171.105&#8243;</span>, <span class="st0">&#8220;64.233.171.106&#8243;</span>, <span class="st0">&#8220;64.233.171.107&#8243;</span>, <span class="st0">&#8220;64.233.171.147&#8243;</span>, <span class="st0">&#8220;64.233.179.99&#8243;</span>, <span class="st0">&#8220;64.233.179.104&#8243;</span>, <span class="st0">&#8220;64.233.179.106&#8243;</span>, <span class="st0">&#8220;64.233.179.107&#8243;</span>, <span class="st0">&#8220;64.233.183.99&#8243;</span>, <span class="st0">&#8220;64.233.183.104&#8243;</span>, <span class="st0">&#8220;64.233.183.107&#8243;</span>, <span class="st0">&#8220;64.233.185.99&#8243;</span>, <span class="st0">&#8220;64.233.185.104&#8243;</span>, <span class="st0">&#8220;64.233.185.106&#8243;</span>, <span class="st0">&#8220;64.233.185.107&#8243;</span>, <span class="st0">&#8220;64.233.187.99&#8243;</span>, <span class="st0">&#8220;64.233.187.104&#8243;</span>, <span class="st0">&#8220;64.233.187.106&#8243;</span>, <span class="st0">&#8220;64.233.187.107&#8243;</span>, <span class="st0">&#8220;64.233.189.104&#8243;</span>, <span class="st0">&#8220;66.102.7.99&#8243;</span>, <span class="st0">&#8220;66.102.7.104&#8243;</span>, <span class="st0">&#8220;66.102.7.105&#8243;</span>, <span class="st0">&#8220;66.102.7.106&#8243;</span>, <span class="st0">&#8220;66.102.7.107&#8243;</span>, <span class="st0">&#8220;66.102.7.147&#8243;</span>, <span class="st0">&#8220;66.102.9.99&#8243;</span>, <span class="st0">&#8220;66.102.9.104&#8243;</span>, <span class="st0">&#8220;66.102.9.106&#8243;</span>, <span class="st0">&#8220;66.102.9.107&#8243;</span>, <span class="st0">&#8220;66.102.9.147&#8243;</span>, <span class="st0">&#8220;66.102.11.99&#8243;</span>, <span class="st0">&#8220;66.102.11.104&#8243;</span>, <span class="st0">&#8220;66.102.11.106&#8243;</span>, <span class="st0">&#8220;66.102.11.107&#8243;</span>, <span class="st0">&#8220;66.249.81.99&#8243;</span>, <span class="st0">&#8220;66.249.81.104&#8243;</span>, <span class="st0">&#8220;66.249.81.106&#8243;</span>, <span class="st0">&#8220;66.249.81.107&#8243;</span>, <span class="st0">&#8220;66.249.83.99&#8243;</span>, <span class="st0">&#8220;66.249.83.104&#8243;</span>, <span class="st0">&#8220;66.249.83.106&#8243;</span>, <span class="st0">&#8220;66.249.83.107&#8243;</span>, <span class="st0">&#8220;66.249.85.99&#8243;</span>, <span class="st0">&#8220;66.249.85.104&#8243;</span>, <span class="st0">&#8220;66.249.85.106&#8243;</span>, <span class="st0">&#8220;66.249.85.107&#8243;</span>, <span class="st0">&#8220;66.249.87.99&#8243;</span>, <span class="st0">&#8220;66.249.87.104&#8243;</span>, <span class="st0">&#8220;66.249.89.99&#8243;</span>, <span class="st0">&#8220;66.249.89.104&#8243;</span>, <span class="st0">&#8220;66.249.89.106&#8243;</span>, <span class="st0">&#8220;66.249.89.107&#8243;</span>, <span class="st0">&#8220;66.249.93.99&#8243;</span>, <span class="st0">&#8220;66.249.93.104&#8243;</span>, <span class="st0">&#8220;66.249.93.106&#8243;</span>, <span class="st0">&#8220;66.249.93.107&#8243;</span>, <span class="st0">&#8220;72.14.203.99&#8243;</span>, <span class="st0">&#8220;72.14.203.104&#8243;</span>, <span class="st0">&#8220;72.14.203.106&#8243;</span>, <span class="st0">&#8220;72.14.203.107&#8243;</span>, <span class="st0">&#8220;72.14.205.99&#8243;</span>, <span class="st0">&#8220;72.14.205.104&#8243;</span>, <span class="st0">&#8220;72.14.205.106&#8243;</span>, <span class="st0">&#8220;72.14.205.107&#8243;</span>, <span class="st0">&#8220;72.14.207.99&#8243;</span>, <span class="st0">&#8220;72.14.207.104&#8243;</span>, <span class="st0">&#8220;72.14.207.106&#8243;</span>, <span class="st0">&#8220;72.14.207.107&#8243;</span>, <span class="st0">&#8220;216.239.37.99&#8243;</span>, <span class="st0">&#8220;216.239.37.104&#8243;</span>, <span class="st0">&#8220;216.239.37.105&#8243;</span>, <span class="st0">&#8220;216.239.37.106&#8243;</span>, <span class="st0">&#8220;216.239.37.107&#8243;</span>, <span class="st0">&#8220;216.239.37.147&#8243;</span>, <span class="st0">&#8220;216.239.39.99&#8243;</span>, <span class="st0">&#8220;216.239.39.104&#8243;</span>, <span class="st0">&#8220;216.239.39.106&#8243;</span>, <span class="st0">&#8220;216.239.39.107&#8243;</span>, <span class="st0">&#8220;216.239.53.99&#8243;</span>, <span class="st0">&#8220;216.239.53.104&#8243;</span>, <span class="st0">&#8220;216.239.53.106&#8243;</span>, <span class="st0">&#8220;216.239.53.107&#8243;</span>, <span class="st0">&#8220;216.239.57.98&#8243;</span>, <span class="st0">&#8220;216.239.57.99&#8243;</span>, <span class="st0">&#8220;216.239.57.103&#8243;</span>, <span class="st0">&#8220;216.239.57.104&#8243;</span>, <span class="st0">&#8220;216.239.57.105&#8243;</span>, <span class="st0">&#8220;216.239.57.106&#8243;</span>, <span class="st0">&#8220;216.239.57.107&#8243;</span>, <span class="st0">&#8220;216.239.57.147&#8243;</span>, <span class="st0">&#8220;216.239.59.98&#8243;</span>, <span class="st0">&#8220;216.239.59.99&#8243;</span>, <span class="st0">&#8220;216.239.59.103&#8243;</span>, <span class="st0">&#8220;216.239.59.104&#8243;</span>, <span class="st0">&#8220;216.239.59.105&#8243;</span>, <span class="st0">&#8220;216.239.59.106&#8243;</span>, <span class="st0">&#8220;216.239.59.107&#8243;</span>, <span class="st0">&#8220;216.239.59.147&#8243;</span>, <span class="st0">&#8220;216.239.63.99&#8243;</span>, <span class="st0">&#8220;216.239.63.104&#8243;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; <span class="re0">$query</span> = <a href="http://www.php.net/array"><span class="kw3">array</span></a><span class="br0">&#40;</span><span class="st0">&#8220;porn&#8221;</span>, <span class="st0">&#8220;pills&#8221;</span>, <span class="st0">&#8220;casino&#8221;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; <span class="re0">$num</span> = <span class="st0">&#8220;100&#8243;</span>;</p>
<p>&nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span><span class="re0">$i</span>=<span class="nu0">0</span>; <span class="re0">$i</span> &lt; <a href="http://www.php.net/count"><span class="kw3">count</span></a><span class="br0">&#40;</span><span class="re0">$query</span><span class="br0">&#41;</span>; <span class="re0">$i</span>++<span class="br0">&#41;</span><br />
&nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.php.net/echo"><span class="kw3">echo</span></a> <span class="re0">$query</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span>.<span class="st0">&#8220;<span class="es0">\n</span>&#8220;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$numrank</span> = <a href="http://www.php.net/array"><span class="kw3">array</span></a><span class="br0">&#40;</span><span class="br0">&#41;</span>;</p>
<p><span class="co1">//&nbsp; &nbsp; &nbsp; &nbsp; $serps = googleresults_multi($ips, $query[$i], $num);&nbsp;&nbsp; //for multithreaded</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">for</span> <span class="br0">&#40;</span><span class="re0">$j</span>=<span class="nu0">0</span>; <span class="re0">$j</span> &lt; <a href="http://www.php.net/count"><span class="kw3">count</span></a><span class="br0">&#40;</span><span class="re0">$ips</span><span class="br0">&#41;</span>; <span class="re0">$j</span>++<span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$serps</span><span class="br0">&#91;</span><span class="re0">$j</span><span class="br0">&#93;</span> = googleresults<span class="br0">&#40;</span><span class="re0">$ips</span><span class="br0">&#91;</span><span class="re0">$j</span><span class="br0">&#93;</span>, <span class="re0">$query</span><span class="br0">&#91;</span><span class="re0">$i</span><span class="br0">&#93;</span>, <span class="re0">$num</span><span class="br0">&#41;</span>;&nbsp; &nbsp; &nbsp;&nbsp; <span class="co1">//for single threaded</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$pos</span> = rank<span class="br0">&#40;</span><span class="re0">$serps</span><span class="br0">&#91;</span><span class="re0">$j</span><span class="br0">&#93;</span>, <span class="st0">&#8220;www.mattcutts.com&#8221;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><a href="http://www.php.net/empty"><span class="kw3">empty</span></a><span class="br0">&#40;</span><span class="re0">$pos</span><span class="br0">&#41;</span><span class="br0">&#41;</span><span class="br0">&#123;</span><span class="re0">$pos</span> = <span class="nu0">0</span>;<span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><a href="http://www.php.net/empty"><span class="kw3">empty</span></a><span class="br0">&#40;</span><span class="re0">$numrank</span><span class="br0">&#91;</span><span class="re0">$pos</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$numrank</span><span class="br0">&#91;</span><span class="re0">$pos</span><span class="br0">&#93;</span> = <span class="nu0">1</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><span class="kw1">else</span><span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$numrank</span><span class="br0">&#91;</span><span class="re0">$pos</span><span class="br0">&#93;</span> = <span class="re0">$numrank</span><span class="br0">&#91;</span><span class="re0">$pos</span><span class="br0">&#93;</span>+<span class="nu0">1</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.php.net/ksort"><span class="kw3">ksort</span></a><span class="br0">&#40;</span><span class="re0">$numrank</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">foreach</span> <span class="br0">&#40;</span><span class="re0">$numrank</span> <span class="kw1">as</span> <span class="re0">$key</span> =&gt; <span class="re0">$num</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.php.net/echo"><span class="kw3">echo</span></a> <span class="re0">$key</span>.<span class="st0">&#8221; - &#8220;</span>.<span class="re0">$num</span>.<span class="st0">&#8220;<span class="es0">\n</span>&#8220;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><br />
&nbsp; &nbsp; <span class="br0">&#125;</span></div>
</div>
<p>Single threaded (default) is very very slow. If you change the comments as shown above to multithreaded, then it will be much faster. But be prepared to get your ip temporarily banned by Google.</p>
<p>[tags]Google datacenters, bigdaddy[/tags]</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nott.org/blog/google-datacenters.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>Coolest Guy On The Planet</title>
		<link>http://www.nott.org/blog/coolest-guy-on-the-planet.html</link>
		<comments>http://www.nott.org/blog/coolest-guy-on-the-planet.html#comments</comments>
		<pubDate>Wed, 04 Jan 2006 17:14:19 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
		
		<category><![CDATA[Blog]]></category>

		<category><![CDATA[Other Stuff]]></category>

		<guid isPermaLink="false">http://www.nott.org/?p=49</guid>
		<description><![CDATA[Alert!!
Alert!!
This blog has been hacked!!
Andre Chaperon is officially the 3rd Coolest Guy On The Planet!!!
]]></description>
			<content:encoded><![CDATA[<p>Alert!!<br />
Alert!!</p>
<p>This blog has been hacked!!</p>
<p>Andre Chaperon is officially the 3rd <a href="http://www.andrechaperon.com/coolest-guy-on-the-planet/">Coolest Guy On The Planet</a>!!!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nott.org/blog/coolest-guy-on-the-planet.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>ColorCode - WordPress Plugin to Highlight Code</title>
		<link>http://www.nott.org/blog/colorcode-wordpress-plugin-to-highlight-code.html</link>
		<comments>http://www.nott.org/blog/colorcode-wordpress-plugin-to-highlight-code.html#comments</comments>
		<pubDate>Mon, 02 Jan 2006 23:36:53 +0000</pubDate>
		<dc:creator>Mike</dc:creator>
		
		<category><![CDATA[Code]]></category>

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

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

		<guid isPermaLink="false">http://www.nott.org/?p=47</guid>
		<description><![CDATA[Spent a bit of time yesterday trying to get my code examples highlighted using the GeSHi class. However using the WordPress plugin code, I found that though the code was coming up fine it was removing all paragraphs and line breaks from any surrounding text. So I then wrote my own plugin still calling the [...]]]></description>
			<content:encoded><![CDATA[<p>Spent a bit of time yesterday trying to get my code examples highlighted using the <a href="http://qbnz.com/highlighter/">GeSHi</a> class. However using the <a href="http://dev.wp-plugins.org/wiki/GeshiSyntaxColorer">WordPress plugin</a> code, I found that though the code was coming up fine it was removing all paragraphs and line breaks from any surrounding text. So I then wrote my own plugin still calling the GeSHi class file, but where it displays both code and text properly.</p>
<p>It is still not perfect though, as it would be better to use pre for the code instead of all the spaces etc. Also need to switch to css instead of styles before <a href="http://www.w3.org/TR/xhtml2/">XHTML 2.0</a> arrives,  so will post an update once done.</p>
<p>Here is the plugin code:</p>
<div class="codesnip-container" >
<div class="codesnip"><span class="coMULTI">/*<br />
&nbsp; &nbsp; &nbsp; &nbsp; Plugin Name: ColorCode<br />
&nbsp; &nbsp; &nbsp; &nbsp; Plugin URI: http://www.nott.org/colorcode.html<br />
&nbsp; &nbsp; &nbsp; &nbsp; Description: A filter that highlights code using the GeSHi class for over 20 languages.<br />
&nbsp; &nbsp; &nbsp; &nbsp; Version: 1.0<br />
&nbsp; &nbsp; &nbsp; &nbsp; Author: Mike Nott<br />
&nbsp; &nbsp; &nbsp; &nbsp; Author URI: http://www.nott.org<br />
&nbsp; &nbsp; &nbsp; &nbsp; */</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">include</span><span class="br0">&#40;</span>ABSPATH.<span class="st0">&#8216;/wp-content/plugins/geshi.php&#8217;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">function</span> cc_callback<span class="br0">&#40;</span><span class="re0">$code</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$geshi</span> = <span class="kw2">new</span> GeSHi<span class="br0">&#40;</span><span class="re0">$code</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span>, <span class="re0">$code</span><span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span>, ABSPATH.<span class="st0">&#8216;/wp-content/plugins/geshi/&#8217;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$geshi</span>-&gt;<span class="me1">set_header_type</span><span class="br0">&#40;</span>GESHI_HEADER_DIV<span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$geshi</span>-&gt;<span class="me1">set_url_for_keyword_group</span><span class="br0">&#40;</span><span class="nu0">3</span>, <span class="st0">&#8221;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$newcode</span> = <span class="re0">$geshi</span>-&gt;<span class="me1">parse_code</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <span class="re0">$newcode</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">function</span> colorcode<span class="br0">&#40;</span><span class="re0">$content</span><span class="br0">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">return</span> <a href="http://www.php.net/preg_replace_callback"><span class="kw3">preg_replace_callback</span></a><span class="br0">&#40;</span><span class="st0">&#8220;|&lt;code lang=[&#8217;<span class="es0">\&#8221;</span>]([a-zA-Z0-9_-]+)[&#8217;<span class="es0">\&#8221;</span>]&gt;(.*)&lt; /code&gt;|imsU&#8221;</span>, <span class="st0">&#8220;cc_callback&#8221;</span>, <span class="re0">$content</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; remove_filter<span class="br0">&#40;</span><span class="st0">&#8216;the_content&#8217;</span>, <span class="st0">&#8216;wptexturize&#8217;</span><span class="br0">&#41;</span>;</p>
<p>&nbsp; &nbsp; &nbsp; &nbsp; add_filter<span class="br0">&#40;</span><span class="st0">&#8216;the_content&#8217;</span>, <span class="st0">&#8216;colorcode&#8217;</span>, <span class="st0">&#8216;1&#8242;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; add_filter<span class="br0">&#40;</span><span class="st0">&#8216;the_excerpt&#8217;</span>, <span class="st0">&#8216;colorcode&#8217;</span>, <span class="st0">&#8216;1&#8242;</span><span class="br0">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; add_filter<span class="br0">&#40;</span><span class="st0">&#8216;comment_text&#8217;</span>, <span class="st0">&#8216;colorcode&#8217;</span>, <span class="st0">&#8216;1&#8242;</span><span class="br0">&#41;</span>;</div>
</div>
<p>[note: be sure to remove the space before the /code in the preg replace above before using]</p>
<p>Then just save this file as colorcode.php in your plugin folder, along with the <a href="http://dev.wp-plugins.org/wiki/GeshiSyntaxColorer">GeSHi files</a>.</p>
<p>Usage: </p>
<p>< code lang = " php "><br />
code goes here<br />
< / code ></p>
<p>(but again remove spaces) <img src='http://www.nott.org/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.nott.org/blog/colorcode-wordpress-plugin-to-highlight-code.html/feed</wfw:commentRss>
		</item>
	</channel>
</rss>
