Archive for Search Engine Optimization

Semantic Markup

In the Design and content guidelines sub-section of Google’s Webmaster Guidelines there is a paragraph that reads “…. write pages that clearly and accurately describe your content”. The only way I know of achieving this objective easily is to use semantic markup. (I will give some further reading references on semantic markup at the end of this post).

Semantic markup means using html elements that are appropriate to ‘content meaning’ rather than ‘content presentation’. A simple example might be using <em> for emphasis in some cases rather than <i> for italic because <i> only tells the browser what to do and does not explain what the content represents.

Apart from helping Google :) there are other advantages in separating content from presentation and using semantic markup. For example much easier code maintenance and correct interpretation by other user agents like audio screen reader software.

However semantic markup is not a technical necessity and this is probably the reason why only a tiny minority of web designers even know what it is let alone use it when coding web pages.

From my perspective as a SEO whenever I have to make site wide changes where non-semantic markup (presentational markup) has been used I curse the web designer :) For example if I want to change list items to uppercase and the designer has coded them as <p> - list item one</br> - list item two </br> - list item three</p> then I have to make the changes on every page. If they had used <ul> <li>list item one</li> <li>list item two</li> <li>list item three</li> </ul> then I can do the same thing with one line of CSS .ul {text-transform: uppercase ;} and not have to touch any of the markup.

I also want to shoot the designer whenever I see a missed opportunity to take advantage of Google’s recommendation to describe content, simply because the designer fails to use the appropriate semantic html.

Web designers being shot for not using semantic markup 1940's style comic cartoon

If your web designer has provided a W3C validated site you might like to try their Semantic Extractor tool, which provides a basic outline of some of the semantics in your html markup. It simply examines your markup and provides a summary of important data i.e. generic metadata, related resources, defined terms, abbreviations and acronyms and an outline of the document. Prior to this post I parsed the home page of this site and this was the output:

Generic metadata and related resources.

Semantic extractor output - generic metadata and related resources

Abbreviations and acronyms.

Semantic extractor output - abbreviations and acronyms

Outline of the document.

Semantic extractor output - outline of the document

So what’s the bottom line? If you believe that Google uses (or will use in the near future) any form of semantic analysis of web pages then before you write the copy for your new web pages ensure that your designer uses semantic markup.

Further reading on semantic markup:

Comments

Finding a New Domain Name

Ryan Stout has built a great tool to help in that increasingly difficult task of finding a suitable domain name for a new site.

Called Bust a Name it has a nice JavaScript interface with a rails, MySQL and lighttpd backend.

Bust a name screenshot

Primarily a word combiner, once you have entered your words you can select similar words from a drop down list. You can sort available domains by length, readability or alphabetically. A really useful feature is that you can group keywords so that keywords in the same group are not combined. Other options allow a limited number of suffixes and prefixes with an additional checkbox to pluralize or drop the last vowel.

Using this tool I have found that augmenting the similar word feature with a thesaurus and finding additional keywords to input with Google’s Keyword Tool helps a lot in finding usable domain names.

Comments

Combine RSS Feeds with Yahoo Pipes

One of the easiest ways for a non-programmer to combine, aggregate and filter multiple RSS feeds into one is to use Yahoo! Pipes (YP). YP uses a sleek visual editor that allows the user to fetch and manipulate data sources, add user defined inputs and filter the content in a number of ways.

I used YP to combine nine* popular SEO feeds into one and then published it on pipes.yahoo.com where anybody can now use it. Try it in your favorite reader - Composite SEO News Feed.

By using the WordPress plugins FeedList and RunPHP I can also easily display the Composite SEO News Feed right here:

Composite SEO News Feed

  1. Google Logo Changes As You Type
  2. Rand Fishkin Interview
  3. Universal Truth Of Selling On The Web: Easy & Simple Wins
  4. Bing-Yahoo Combine For 25% Of Search Market Share: Hitwise
  5. YouTube Says Don’t Block Them, Join Them
  6. SearchCap: The Day In Search, September 7, 2010
  7. Daily Search Forum Recap: September 7, 2010
  8. Google’s Schmidt: ‘Next Great Stage’ Of Search Is Autonomous, Personal
  9. Link Building and Public Relations, Different or the Same? SMN Webcast Sept. 16

Remember this is the actual feed not just a graphic so whenever you are viewing this page the feed will be up to date.

When you first look at the drag and drop interface of YP it may seem a little daunting but here is a step by step using the above practical example and you can of course combine any feeds you choose.

First you need to sign in to YP with your Yahoo ID (create an ID if you don’t have one). When you’re signed in click Create a pipe and click the untitled tab to give your pipe a name. Drag a Fetch Feed into the workspace.

Drag the Fetch Feed module to the workspace.

Enter a feed url which you will find on most sites by clicking the RSS, XML or Atom link, or icon. If you see a “?” icon in the Fetch Feed module that means you have input a non-valid feed address.

Copy and paste the feed url.

Click the url icon to enter a second feed.

Click the url icon to enter a second feed.

Enter the second feed url.

Enter the second feed url.

Repeat until you have entered all the feed urls that you want to combine.

Complete the addition of feed urls.

Drag a Sort module to the workspace. Pipe the Fetch Feed module to the Sort module by clicking the circle on top of the Sort module and dragging it to the circle at the bottom of fetch module. A blue pipe will appear and connect the two.

Pipe the Fetch Feed module to the Sort module.

Sort by date in descending order by selecting PubDate from the first drop-down menu and Descending from the second drop-down menu.

Sort by date in descending order.

Drag a Truncate module to the workspace. Pipe the Sort module to the Truncate module by clicking the circle at the bottom of the Sort module and dragging it to the circle at the top of Truncate module. Enter a value for the maximum number of items you require from your combined feed.

Pipe the Sort module to the Truncate module.

Pipe the Truncate module to the Pipe Output and the Debug area will fill up with your new feed’s output.

Pipe the Truncate module to the Pipe Output.

Finally click Save and then click Publish. In the pop-up window enter a description for your pipe and when you click Publish again your Pipe will go public.

By combing YP with mashup tools like Dapper or OpenKapow you will be able to construct an RSS feed from almost anything that you can find on the Web.

*The nine feeds combined in the Composite SEO News Feed:
SEO by the SEA
Search Engine Land
Search Engine Roundtable
Matt Cutts
SEO Book
SEO Blog
SEOMoz
Threadwatch
Marketing Pilgrim

Comments

Disable Personalized Search Browser Add-ons

It happens occasionally when I am on the phone to a client, they are looking at one set of search results in Google and I am seeing a different set for exactly the same search term. In the past it’s down to us accessing different datacenters when Google are in the process of updating their index. It’s never a problem because I have just changed to accessing the same datacenter as my client by typing http://64.233.161.107 or whatever my client’s datacenter IP address happens to be at the time, into the address bar of my browser.

Now I have come across an additional problem, just once but I know it will occur with increasing frequency. My client is logged into their Google Account and is being served personalized search results which of course I cannot duplicate. When this actually happened my solution was to simply have the client sign out of their account. Also of course I had to make sure I was signed out of my Google account as well and this could become a real pain.

Recently I have found myself signing in and out of my Google account like a fiddler’s elbow and was looking for a better solution. Matt Cutts provided the clue when he mentioned at a recent conference that if you want to turn off personalized search for a particular query you just have to paste the parameter “&pws=0” to the end of your query string. That’s a nice touch but it really needs a browser extension to make it work ‘under the hood’.

So here they are - an IE and a Firefox add-on.

For IE7.

Download degsie.zip

Unzip

Close all instances of IE.

Run the unzipped DepersonalizeGoogleSearch – IE

That’s it! All searches on any Google search domain will now be appended with “&pws=0”

You can toggle (enable or disable) the add-on in the browser by going to Tools —> Manage Add-ons —> Enable or Disable Add-ons and locating “DepersonalizeGoogleSearch”.

You can uninstall the add-on in the normal way with Add/Remove programs in Windows.

For Firefox.

Download degsff.zip

Unzip

Close all instances of Firefox.

Run the unzipped DepersonalizeGoogleSearch – Firefox

That’s it! All searches on any Google search domain will now be appended with “&pws=0”

You can toggle (enable or disable) or remove the add-on in the browser by going to Tools —> Add-ons and selecting “DepersonalizeGoogleSearch”. You can also uninstall the add-on with Add/Remove programs in Windows.

If you don’t have international clients or only ever search on one Google country specific domain then you may want to look at Joost de Valk’s Google de-Personalized Search for Firefox and IE7 as an alternative.

Joost’s OpenSearch plugin uses the browser search box but if you want to opt-out of Google personalized search permanently or for long periods the DepersonalizeGoogleSearch add-on uses the regular Google search box so you can continue searching as normal.

If you do use the DepersonalizeGoogleSearch add-on any feedback would be appreciated, just leave a comment below.

Comments

Clicky

The last time I recommended a tool without reservation it was HitTail and now I am recommending another! Ideal for small to medium traffic websites and bloggers it’s an online analytics service with some useful features not found in Google Analytics.

The tool is called Clicky and is programmed by Sean Hammons who is the technical half of Roxr Software Ltd a two person company based in Portland, Oregon. Sean has a degree in psychology and it shows. Not least because the report pages are beautifully minimalist and highly addictive, as you will discover when you initially use the service.

After you have registered all you have to do is include two lines of code in the footer of every page on your site and from then on information about every click by every visitor is sent back to Clicky and logged to your account. This information includes the visitor’s IP address, geographic location, browser type, operating system, URL and page title, the date and time and where they came from. If they came from a search engine the search query is also logged.

When you log into your account there are a range of reports you can view, for example here is a partial screen shot showing some of this site’s visitors on May 21st 2007.

Clicky screen shot showing visitors

It shows the time of the visit, IP address, country of origin, operating system, browser, number of actions, duration of visit and where they came from. You can click on the links to obtain more information. For example clicking on one of the IP addresses will bring up a view showing visitor details like this.

Clicky screen shot showing visitor details

The integration of Google maps is a nice touch and the table of actions below it can prove very useful, as also can the ‘Content’ view.

Clicky screen shot showing content view

Here we can see the stats for individual pages with the option of selecting entry or exit pages only.

To keep this post a reasonable length I will not list all the functionality of Clicky but the ‘Spy’ view needs to be mentioned. It is a live view of visitors interacting with the site and comes with a health warning because it is extremely addictive! It even has an optional RSS feed so you can integrate it into your favorite feed reader.

Clicky does not have all the advanced features of Google Analytics (or other analytics software) but its presentation and real time functionality make it a more suitable choice in most cases for small to medium traffic websites and bloggers.

Clicky is free for up to 3 sites with less than 1,000 average daily page views per site but comes with a limited feature set as it is free. For $2.99/month or $19.99/year you can have up to 3 sites and 10,000 average daily page views total (between all sites) and this includes the additional features like RSS feeds, Spy, outbound link tracking, download tracking, and more. There is also a Pro/Small business version for $5.99/month or $49.99/year where you can have up to 10 sites and 50,000 average daily page views total with all the additional features (including those in development) plus SSL support.

Sean tells me that additional features in the pipeline include data export, viewing aggregate data from more than a day and analyzing traffic for individual pages (e.g. where people came from, where they went to, what searches lead to this page, etc.).

Congratulations to Roxr Software on a great tool and a great implementation.

(Disclaimer for those that don’t know me: I am not associated with Roxr Software in any way, I am not an affiliate and I never review for money).

Comments

« Previous entries