tony spencer It's Just Links Sat, 19 Oct 2013 14:31:31 +0000 hourly 1 Americans need SEO and Ayima is now taking orders Thu, 09 Apr 2009 13:04:43 +0000 tony I’m officially for hire. We’ll to clarify, not me as an individual but me and an incredible army of SEO’s on the other side of the pond. I’ve accepted a very generous offer to become a partner in Ayima.

For years now I’ve had this small message on the footer of my site to keep my phone from ringing too much. I simply didn’t have the infrastructure necessary to deal with big clients and as a result turned down big leads that came my way:

But that’s coming down and work has already begun on the first US clients that are hungry for serious results in the SERPs. Last month I spent a week with Mike Nott, Mike Jacobson, and Rob Kerry learning about the processes they’ve established, reviewing results for existing clients and getting demos of Ayima’s custom software (ohhhh the power they have there is mouth watering) it was a no brainer for me: this team has built an agency that is hands down, the best at delivering powerful results. And I’m not talking about a few rankings on lame, easy keywords. They have already hit it out of the park for large blue chip clients in the most difficult sectors such as:

  • Finance
  • Gaming
  • Travel
  • Cell Phones

Ayima is hands down, the best, results driven SEO agency out there and I’m both flattered and thrilled to be bringing this excellence to the US market.

They have fun doing it too :)


]]> 2
What are the odds? Wed, 28 Jan 2009 16:28:08 +0000 tony Today I was perusing some stock photography for a website today and something looked very familiar about the background of this image:


I jumped over to the local listing for The Morning Times in Raleigh on and sure enough I was right. That photo was certainly taken in the upstairs lounge area:


There were over 8,500 photos in the search I was browsing through.

As I then sifted through zimmytws’s portfolio on iStockPhoto I saw more great shots of Raleigh. Excellent work zimmytws. Send me a message one day and I’ll meet you for a coffee.

]]> 0
If you get this in MySQL Lock wait timeout exceeded; try restarting transaction Fri, 24 Oct 2008 00:57:39 +0000 tony I ran into this crap when I needed to purge a massive number of records from a database. All you need to do is edit the timeout setting in your MySQL config file.

On my Mac it is located at : /etc/my.cnf

Uncomment the line:

innodb_lock_wait_timeout = 50

And change the setting to 500 (its seconds)

Restart mysql and rerun your query.

sudo launchctl unload -w /Library/LaunchDaemons/com.mysql.mysqld.plist
sudo launchctl load -w /Library/LaunchDaemons/com.mysql.mysqld.plist

If you make this change on a production server you may want to set it back to the default setting. I don’t know what the consequences of a long timeout setting would be.

]]> 2
The Subprime Banking Crisis Explained Mon, 29 Sep 2008 16:02:38 +0000 tony This brilliant skit would be very funny if the current state of affairs weren’t so sad and frightening right now. My favorite part is “I like enhanced. I’d buy anything that had the word enhanced in it!” :)

John Bird and John Fortune (the Long Johns) brilliantly, and accurately, describing the mindset of the investment banking community in this satirical interview.

]]> 1
Open Finder in Current Folder from Terminal Tue, 12 Aug 2008 01:37:57 +0000 tony Here is a super handy little trick that I know I’ll be using a lot from now on as I must have thought about it so many times in the past. You find yourself messing with some files in Terminal and the find the need to jump to the current location in Finder:

open .

So easy breezy.

open finder from bash

]]> 3
A feature that Yahoo has that I wish Google had: Wed, 30 Jul 2008 13:13:30 +0000 tony can't spell

Google sometimes I know better than you and want to see results without you thinking for me.

]]> 0
Ruby Could Replace my Python Crawler Pretty Soon Mon, 28 Jul 2008 19:30:30 +0000 tony One of my developers just sent me some truly incredible stats about Ruby 1.9 and its threading performance.

20 threads * 100,000 iterations
Ruby 1.9 = 1.54 s.
Ruby Enterprise = 3.01 s.
JRuby 1.1.2 = 5.82 s.
Jython 2.2.1 = 11.86 s.
Python 2.5.2 = 12.32 s.
Ruby 1.8.7 = 22.68

Since our attempt at testing Ruby as a crawler really wasn’t all that much slower than Python it could be really interesting to see what will happen with Ruby 1.9.

The blog post about the test (Its in Polish)

]]> 6
I’m convinced Twitter needs a complete rewrite Thu, 03 Jul 2008 18:33:29 +0000 tony … from scratch. Yeah the performance is incredibly horrible and I really feel like I could take a small chunk of that $15 million and immediately make the performance rock, but I am starting to feel like the developers who built it complete cocked it all up. The damn thing can’t even store my replies right and I’ve heard others complain of this. I take it is bad AJAX code and I think they should reconsider using AJAX for basic functions.

I replied to @benwills‘ tweet :


but if you click on the ” in reply to benwills” link in my reply it goes to the wrong tweet.

]]> 2
Twitter is giving Rails a bad name Thu, 05 Jun 2008 19:24:51 +0000 tony twitterificUggh. Rebuild it already. Its only a few actions. It wasn’t built for this kind of app.

Python, C, Perl, whatever.

]]> 2
Google Crawling HTML Forms IS Harmful to Your Rankings Tue, 03 Jun 2008 18:39:14 +0000 tony A couple of months ago Google officially announced it would be “exploring some HTML forms to try to discover new web pages“. I imagine more than a few SEO’s were baffled by this decision as was I but were probably not too concerned about the decision as Google promised us all “this change doesn’t reduce PageRank for your other pages” and would only increase your exposure in the engines.

During the month of April I began to notice a lot of our internal search pages were not only indexed but outranking the relevant pages for a user’s query. For instance, if you Googled “SubConscious Subs” the first page to appear in the SERP’s would be something like:

rather than the page for the establishment:

This wasn’t just a random occurrence. It was happening a lot and in addition to the landing pages being far less relevant for the user, they weren’t optimized for the best placement in the search engines so they were appearing in position #20 instead of say position #6. These local search pages even had pagerank usually between 2 and 3.

Hmm, Just How Bad is This Problem

Eventually I began to realize how often I was running into this in Google, noticed my recent, slow, decline in traffic and it occurred to me this may be a real problem. I’ve never linked to any local search pages on and I couldn’t see that anyone else had either. I queried to find out how many search pages Google had indexed:

Google submits forms

Whoa. 5,000+ pages of junk in the index with pagerank. I slept on it for a night, got up the next morning and plugged in

Disallow: /ads/search?q=*

in robots.txt (and threw in a meta robots noindex on those pages for safe measure). Within a week we saw a big improvement in rankings due to properly optimized pages trumping crap and traffic is up 25% since the change and back to trending upwards weekly instead of stagnant, slow decline.

Get outta here!

Bit of Advice

The robots.txt disallow works but it is slow to remove the URL’s from Google’s index. I added the meta noindex tag to the search pages a week later and saw much faster results.

]]> 5