SEO and WordCamp

I attended the first WordCamp on Saturday, August 5 in San Francisco. While I’ve heard no official headcount, I’d estimate about 200 bloggers rallied at the Swedish American Hall to bond over a shared enthusiasm for the bundle of open-source code that drives the words you’re reading right now. Sessions were loose and informal discussions, befitting the ad-hoc nature of the event, and covered topics of varying levels of geekery from writing compelling content to the hows and whys of microformats.

Though my anti-social tendencies meant I barely spoke to anyone all day, it was overall an enjoyable and informative experience. With the exception of one particular session that stuck in my craw.

At 4pm, Neil Patel and Cameron Olthuis of Advantage Consulting Services took the platform to lead a discussion on search engine optimization (SEO) as it pertains to WordPress. With all due respect to Neil and Cameron, the discussion was disjointed, overwrought, jargon-heavy and focused too much on “how to cater to search engines” and not enough on “how to make your website findable and relevant.” It was far too symptomatic of exactly what’s wrong with the SEO cottage industry, where the emphasis tends to be on quantity over quality.

But rather than stand up to hijack the conversation and steer it onto the track I think it should have been on (nobody likes That Guy), I simply left the room. And now I’m issuing corrections from the safety and relative anonymity of my own blog.

“Search engine optimization” is a misnomer. What we should be talking about is content optimization — making content valuable, relevant, and findable. If you can do that, search engines will work as they should, without any special hacks or chicanery.

Content is for people

It begins with the obvious: computers are stupid. They cannot think or comprehend the human languages in which our content is encoded. A human being can read a length of text and discern the abstract thought behind it, but a nonsentient machine only sees a sequence of bits. They require specific instructions to format a bunch of plain text into something readable by humans. So we invent computer languages like HTML, which consists of structural markers indicating the nature of the human-language content those markers delineate. We can then program computers to parse those embedded structural markers, or tags, and react accordingly.

A computer can’t grasp the meaning of a paragraph, but it can be instructed that a paragraph begins at <p> and ends at </p>, and is hence comprised of all the symbols and strings between. Especially sophisticated programs can even locate patterns and extrapolate that some strings of symbols match other strings of symbols, and we call those programs search engines.

Now that we understand how browsers and search engines work, we can comfortably disregard them. Search engines are tools, not entities. The content you create is meaningless to the search engines, so stop trying to create content for them. Google is not your audience. Write content for people, and give it the simple structure machines require to serve their human masters.

Search engines exist to allow people to find the precise snippet of information they need in the vast sea of mostly-garbage that covers the web. Good search engines are good because they satisfy a human need. Gaming the system — exploiting the inner workings of search tools in order to inflate your site’s ranking or visibility — will only yield short-term results at best, and will ultimately force search engineers to rewrite their software to filter out yet more garbage.

After years of abuse from inscrupulous SEO types the keyword <meta> element was rendered worthless, and search engines now ignore it. When Google pioneered their PageRank system, which factors inbound links into a site’s perceived relevance and credibility, SEO hucksters set up link farms and started spamming the universe with their trash links, and the web has suffered for it. Because search spammers stuff irrelevant keywords into alt and title attributes, search engines must now largely ignore those valuable semantic devices as well.

In short, gaming the system only damages the system, and is of no benefit to the human audience you’re trying to reach.

Making a site findable is neither voodoo nor rocket surgery. If your content is meaningful and informative, people will find it. It’s as simple as that. When your content is also structured in a way that is easily parsed by machines (here I’m pimping the web standards Kool-Aid), search engines will perform their tasks more efficiently, in turn allowing people to easily find your content.

On keywords

In SEO jargon, “keywords” are those terms and phrases that people are most likely to enter in the search field. They are the string patterns that nonsentient computers will use as the basis for their matching process. When the engine finds a match, it returns a result. Results are then sorted on various criteria: PageRank, juxtaposition with other entered terms, the semantic weight of the element the term is contained in, its position in the document heirarchy, etc. All with the goal of letting the most relevant results rise to the top so a person won’t have to dig as deep to find the information they’re after.

SEO experts talk a lot about the importance of keywords. They say keywords are given more significance when they occur near the beginning of a document, so your first paragraph should be well-saturated. A document with keywords in its <title> may rank a bit higher and will certainly display the words on the results page, so make sure your document titles are fully loaded. When keywords are repeated throughout the content, the page as a whole appears more relevant, so be sure to repeat yourself. If the keyword appears in an inbound link from another site, you’ll get a huge boost in PageRank. This is the advice you’ll get from SEO specialists, and it’s all true to varying degrees.

But it’s crap. Ignore it.

The SEO keyword game usually takes a backwards approach, encouraging authors to find out what people are searching for, then inject those terms into their content. Unfortunately this just leads to shitty content. Peppering your text willy-nilly with targeted keywords may be good for search engines, but search engines are stupid, and human beings don’t want to read a bunch of overstuffed marketspeak. Forget about “keywords” and just use the right words. Be simple, informative, and readable. People will search with the words they use every day. If you write with those words, you’ll show up in the searches. Stop worrying about the search engines and write for people.

Leading an article with an introduction that summarizes its purpose is just good writing, with a long journalistic tradition, and so search engines pay attention to the first few paragraphs. Descriptive headlines make long articles more scannable for human readers, so search engines will notice headings that are properly marked as such. When a site links to yours using a particular phrase it implies that the target document pertains to the topic, so search engines automatically apply a topcoat of credibility.

Search engines work this way because people think this way, and so it’s how people want search engines to work (circular reasoning at its best). There is no mysterious code to be cracked. When content is created for people, search engines can function as designed. Overt SEO tactics tend to obfuscate and cheapen content in order to capture eyeballs, rather than actually offering the information people are looking for. When your content satisfies a human need, humans will seek it out and lavish it with appreciation.

Welcome to the machine

After all this talk about writing content for people, it remains a plain fact that web content must be shipped and handled by machines, which brings us back to HTML. Search engine robots (spiders, crawlers, whatever you want to call them) do not read rendered text. They are user-agents, like browsers, that parse the same plaintext markup browsers parse when formatting text for display. If the markup is especially complex or malformed, the robots must work harder to glean the content from the structure, to the detriment of the content. It follows that simpler markup allows the content to stand proud.

In HTML, tags are used to indicate the nature and purpose of the content they enclose, and to differentiate one bit of text from the next. <p> means “this is a paragraph”, <ul> means “this is an unordered list” and <h1> means “this is the top-level heading.” Wrapping your content in tags that support and enhance its natural meaning will allow searchbots to “understand” it, to take some anthropomorphic license, what with computers being stupid and all. The semantics web standards advocates are always raving about is simply the craft of using the most appropriate and meaningful element for the content at hand.

Back to camp

And what does all this have to do with WordPress? As Neil noted onstage, WordPress is pretty well optimized right out of the box. It encourages clean, semantic markup — headings are headings, paragraphs are paragraphs, lists are lists. I suppose someone could build a theme bloated with dense, presentational markup if they wanted to, but I haven’t come across one lately.

So let’s take a look at the key points made at WordCamp, according to Neil’s writeup:

Add a unique meta description tag to all of your pages. Keep it short and do put tons of keywords in it. You can use the head meta description plugin to add a unique description tag automatically to each page.

The <meta name="description" /> element contains a summary description of the document’s contents, and so is a good thing to have. However, its impact on search ranking is minimal. In SEO circles, it’s usually abused as a receptacle for more keyword stuffing. Neil and Cameron emphasized that a unique description will increase the uniqueness of the entire document, thus preventing it from being relagated to those hits buried under the “omitted results” link. But the document should already be unique because it has unique content. If its content is not unique, then it should be removed from results. Let search engines do their jobs.

When a keyword is found in the content, the major search engines (Google, Yahoo and MSN) display it in context as it appears in the document. Some search engines will also display the contents of <meta name="description" /> in those rare cases where the page is a hit (for some reason), but the searched terms don’t actually appear on it. Such results are usually irrelevant to the search, so it’s a bit sleazy to fake relevance with an innaccurate description.

Modify your title tags to say the title of the post entry first and then your blog name. (or remove your blog name from the title tag all together)

Agreed wholeheartedly. This has no impact on search ranking, but will definitely increase your site’s visibility among the pool of results. It emphasizes the page title over the site name. I should probably do this myself. Right now my titles follow the “Site Name :: Archive » Post Title” model, which isn’t really ideal. At the very least I need to ditch the “Archive”, which accomplishes nothing, and the angle quote, which is typographically abusive. In fact, why am I talking about it? By the time this post goes live I will have changed my titles. There, done.

WordPress has titles (tooltip) on most of their links. They start off with “Permanent link to”, we recommend removing the “Permanent link to” part.

First off, titles are not tooltips. True, most browsers display the contents of the title attribute as a mouseover tooltip, but that is not the attribute’s purpose. A title provides additional descriptive information about the element. In the case of links, the title attribute should describe the destination, to give some further hint at what can be expected when the link is activated.

Permanent links in WordPress are given a default title of “Permanent link to Post Title,” which describes the element, but not its destination. “Permanent link” is blogger jargon, understood to mean “the URI where this post is permanently kept.” As such, the title attribute could more accurately read “Permanent location of Post Title.” It shouldn’t simply repeat the post title itself because that text already exists, making the title redundant and useless. Neil’s recommendation doesn’t help semantics and doesn’t help searchers.

Try to add good content on a regular basis to keep your blog fresh. The more the better, but quality content is generally better then quantity.

I can add nothing to this. Well stated.

Create a sitemap for your blog, you can use the Google webmaster tools.

The SEO reasoning behind sitemaps is to provide a collection of crawlable links, giving searchbots full access to index all your content. If your site has decent navigation in place already, a sitemap doesn’t give bots much they don’t already have. However, sitemaps are still very good to have for accessibility and usability reasons, especially on large sites with a complex architecture. For WordPress blogs, the sitemap can be easily accomplished with an archives page. I use Justin Blanton‘s Smart Archives plugin, but there are alternatives.

Join in on the conversation. Link and trackback to others.

Commenting on other weblogs — and giving trackback links when you write about them — will bring more traffic to your own blog. If your content is worthwhile, some of that traffic will eventually result in genuine, unsolicited links from other sites, bringing the coveted PageRank juice with it. But don’t comment just for the linkage, be sure you have something to contribute. That’s just good netizenship.

Leverage the existing mediums out there such as digg and to bring in traffic and build links.

I must conscientiously object to the use of “leverage” as a verb. But that pet peeve aside, this is just more traffic-mongering for the sake of building PageRank, and says nothing about offering content that is worth digging and bookmarking.

Parting shot

Content that works for people will succeed, content that only works for search engines is destined to fail. As more content is generated with the specific agenda of luring disembodied eyeballs, rather than actually meeting the needs of an audience, that content will become less and less viable. Today’s shady SEO tactics will become ineffective, and practitioners will resort to new and lower trickery until they eventually satisfy the rules of natural selection and go out of business. Search engines as they are today will eventually stop working when they can no longer satisfy the human need to locate valuable information. A new content-finding methodology will appear, replacing the word-based indexed search once it has become impractical.

Stop hurting the web. Write content for people, give it a clean and meaningful structure, and leave the search engines to their task.

The search engine optimization industry, like the spam trade, was spawned from opportunity rather than neccessity, and blossomed into a dubious Ouroboros, creating its own food supply to sustain itself. It’s only a matter of time until entropy breaks down and it eats its own head.


  1. Craig, I really wish you would have spoke up during the conference, believe me, we would have been more than happy to steer the conversation in that direction. I too am a big believer in doing things for the user and not the search engine. With that being said the fact remains that there are still things you can do behind the scenes that effect SEO. There’s no doubt in my mind that this is true, even today. We’ve recently optimized some blog for some big name bloggers and watched their search engine referrals increase 5X, that’s a lot when someone goes from avg 900 per day to over 5000.

    I didn’t read through your complete post because a lot of what you’re saying is wrong. One thing that jumped out at me though was your thoughts on the meta description tag. I think you fail to understand why it’s important and why. The meta descripition tags is not for the purpose of stuffing in keywords so that Google sees it as more relevant, it’s to tell the search engines that each of your pages in unique. When you do a site search for your blog how many pages does it Google say are indexed and how many pages do they actually show before the results are duplicated.

    The bottom line is that there’s still a need for SEO. You just can’t simply publish and all is good.



  2. “With that being said the fact remains that there are still things you can do behind the scenes that effect SEO.”

    Yes, so long as the reason for doing them is to improve readability/usability/accessibility for people and the semantic integrity of the document. Putting a bunch of keywords into an alt attribute might fool the search engines into thinking that image is a tad more relevant, but it can easily harm the content and inconvenience human readers. And that’s really my only beef with the SEO industry: they all too often advocate targeting the search engines and not the searchers. (Sweeping generalization, grain of salt required.)

    Indeed, I’ve not done a single thing on my own website that is geared exclusively to “SEO”. I try to write readable, useful content on a semi-regular basis. I adhere to web standards and give my content a simple, meaningful structure. I’ve made an effort to keep my content accessible to disabled readers and operable in a wide range of user-agents.

    And I do pretty well in rankings, not because I targeted Google, but simply because I’ve tried to do right by the web as a whole. Of course, I’m not selling anything and I don’t run any ads, so I’ve never actively tried to drive traffic here. Maybe I could inject more keywords into my content, even if it means the content becomes unreadable. Maybe I could stuff keywords into every available orifice, even if it makes content inaccessible and confusing. I’m sure I could do things that would haul in more eyeballs in the short term, but I prefer to appeal to the brains behind them.

    “it’s to tell the search engines that each of your pages in unique”

    Yes, but pages should be unique by actually, well, being unique. Engines filter out pages with duplicate content for a reason, why try to disrupt that? I never said a meta description was bad, in fact it’s a very good thing to have. I just don’t wish to see it abused the same way meta keywords were.

    Google returns 178 unique pages on my site and 75 duplicates. I have no meta description. Those duplicate pages are in fact duplicate pages: alternate URIs pointing to the exact same content due to cross-categorized posts. So maybe I just don’t understand what you mean by “unique”, and I’m not grasping how two pages with different content would be mistaken for duplicates, nor how two duplicate pages with different descriptions will be of any benefit to anyone.

    “The bottom line is that there’s still a need for SEO. You just can’t simply publish and all is good.”

    Unfortunately true, because so many people are writing bad content wrapped in worse markup specifically engineered to appeal to searchbots instead of people, so some content that is “simply published” (and published simply) will be buried in search results. It can’t be this way forever. I’m probably just being idealistic, envisioning a web where everything is clean and honest and content is useful and structured and search engines can do their job unfettered. But I also envision a world without spam if enough people stop responding to it that it becomes financially unsound, so call me a fool.

Comments are closed.