This is straight from Google, I’m including it here because I couldn’t agree more:
Interesting sites will increase their
recognition on their own
This is pretty simple stuff. You can work to include quality keywords in your content, but nothing will build traffic like quality content. Quality content builds word of mouth, it builds social buzz, it builds back-links (other sites linking to you). These are all signals Google uses to asses the quality of a website. These are all things you want.
Links are important! Links within your site and to other sites are valuable to search engines for figuring out what the page is about. They also make it easier for users to navigate your pages. Any time you include a link to another page the text that is used for that hyperlink should be descriptive. For examples linking to an article about Improving SEO for search engines is better than saying “see yesterdays post here.”
Break up your content. Paragraphs make writing easier to understand, they also make search engines happy. A giant block of text looks like garbage to humans and robots, so insert some white space. Similarly, all kinds of disparate information on one page can be confusing. Make sure you are providing a clear hierarchy for your site with logical navigation. Use headings to your advantage, these tags make your text easier to read by breaking it up into an outline.
Be original. Stealing content from other sites is just plain wrong. Rewording others content is lazy and rewording your own content across your site is too. All three of these can result in Google lowering your search engine ranking. If you have to use duplicate data, like a printer friendly version of a page, include the other version in your robots.txt file. This is a file on your site that will ensure that the search engine robots don’t index sides that shouldn’t be indexed.
Don’t over use rich media. Web designers will often try and make text more attractive by using non-web-safe fonts and embedding them in images. If you can’t copy and paste text from your website, you’ve got text embedded in images. Such text can’t be indexed by search engines and it’s often frustrating for users who may want to copy and paste. This is another reason I dislike Flash, you can’t copy and paste it. When you do use images, be sure to fill out the <alt> tags. These provide a description of the image to the search engine and the user if the image can not be displayed. They also act like the link text if your images is being used as a hyperlink. To check if your images have alt text just hover over them for a few seconds with your cursor. A description should pop up.
Google has people, actual people, searching the web and making sure websites follow their rules. There are all kinds of tricks out there that fall under bad SEO practice. One such trick is making text match the background color so the user can’t see it, but the search engine can. This is a sure fire way to get your site penalized. To check if your site has this kind of SEO Voodoo, go to your page and hit ctrl+a or edit->select all. This will highlight all your text and if suddenly you notice blocks of keywords, you have hidden text. Just remember: if it doesn’t improve user experience, don’t do it.