6. “I literally can’t stand the advertising/
marketing/SEO people. They’re
making money where there is none,
simply because they’re immoral
fucktards who are capable of
badgering people just to make a little
ching. They’re paying overseas
workers crap wages to do technical
work that is immoral if not illegal, and
they do it simply to make money.”
7. “I'm not an SEO expert, but [it]
seems like SEO is something spam
sites do. If you are trying to create a
high quality destination site, just
write good content and let Google
do its job.”
- Sachin Agarwal, CEO Posterous
20. Professional Practices
• User-Centric Design
• Test-Driven Development
• DRY and Maintainable Code
• Server Performance
• Client-Side Performance
• Search Engine Considerations
21. Six Simple Rules
• Can’t outsmart Google (or Bing or Y!)
• Follow Google’s advice
• Obey conventions and standards
• Stay away from hacks
• Think like a search engine
• Think like a searcher
24. Discovery
• Links to your pages from other sites
• Links to your pages from within your site
• Your sitemap.xml
25. sitemap.xml
• Tell search engines exactly what you
want them to crawl
• sitemaps.org
• Limit: 50,000 URLs, 10MB
• Can specify multiple sitemaps with a
sitemap index
27. Generating sitemap.xml
• Write it by hand, stick it in public/
• Build a controller, action, and route
entry to respond to ‘sitemap.xml’. Use
XML Builder to generate the entries.
Cache it.
• Importantly: Strive for 100% coverage.
29. Be nice to the crawler
• Be performant. Fast server response.
Fast page load. Compress files. Use if-
modified-since header.
• Non-www vs. www - pick one.
• Ensure unique content. Use <link
rel=”canonical”/> where
approriate.
32. Don’t sabotage it
• Don’t use a 302 redirect when you
mean a 301 redirect.
• Make sure images, video, Flash,
Silverlight, and AJAX are accessible.
• See the Google Webmaster Central
Blog for details.
• Don’t change content based on region.
• Don’t require cookies to view content.
35. <title>
• Most important element to search
engines
• Think long and hard about it
• Keywords! Think like a searcher.
• Best format: Page Title | Site Name
• ProTip: Append &pws=0 for testing in
Google
38. URLs
• Override to_param for pretty URLs.
• Dashes are word separators,
underscores are not. Use dashes.
• International domains are treated as
such.
39. <meta>
• <meta name=”description”
content=”...” />
• Make it unique for every page. Use
content_for.
• Shown to users, doesn’t affect ranking.
• <meta name=”tags” ... /> is
ignored
40. Headings and Content
• <h> tags should be used appropriately.
• Page content should match what the
<title> and <h> tags refer to.
• Avoid text-indent:-9999px CSS.
• Watch out for content hijackers.