Best Practice in Web Design
Planning techniques
When planning and designing any website there are a number of supporting factors available to us as web designers. The process of designing any website before any code has been written should start on paper. This can be the most important stage setting out exactly how you want the site to look and what a user should expect from using it.

To support this stage wire frames should be created of the sites lay out this will help the designers visualise what the site will look like. But also see how a user may use the pages and help see any potential errors.
Site maps will also be a useful tool a site map lays out how each page will interact with each other. This will show how a user is expected to use the site and navigate each section. This can also help with preparing for search engine optimisation. All this planning is looking toward having a solid final product.
Canonical form is other subject that all web designers should be made aware of. One a very basic form its about where you put things and why. A web page should have a structure but the items on it should be placed there for a reason and not just thrown together. For more information on this subject you should look into Gestalt Theory. Linked to this is Information design how the information looks will effects the user and can if not properly laid out it can make unimportant information seem important.
The way a user interacts with the site is one of the most important important things to design. You should think of the type of user you will be designing for and how they will use the site. How the user interacts with it will dictate how they feel about the site and whether they stay or leave.
Semantic Mark-up and standards of coding
The W3C is the organisation which sets the standards not only for code but for a wide range of topics based on the internet including
Graphics
Browser
Accessibility
This group work towards a completely standardised version of the internet. "W3C develops technical specifications and guidelines through a process designed to maximize consensus about the content of a technical report, to ensure high technical and editorial quality" (W3C 2010). This organisation also runs the most up to date code validators on the internet. Their newvalidator unicorn validates all current versions of HTML and CSS making it a very powerful and useful tool.
Search engine concepts
So the main aim of Search Engine Optimisation (SEO) is to improve your sites visibility on the web and increase the sites traffic. Content is a great way to improve your rankings making your site as interesting and as current as possible,but also the way you write that content. Keywords should appear within your content and be repeated. Grappone and Couzin (2008 pg 264) tell us that "with more and better content, your search engine visibility will benefit in two ways. More people will want to link to it and search engines will find more unique pages to index".
Google (2010) tells us that "Sites built around user interaction and sharing have made it easier to match interested groups of people up with relevant content". If you create content that is interesting and post that to a social media site that content could go viral leading to many many link backs to your site. This increases your sites overall visibility on the web.
But, SEO should not be only thought of as a content based problem how your site is structured may be leading to problems. Google (2010) explains certain techniques that can be used
"Write easy-to-read text...
Create fresh, unique content...
Use heading tags to emphasize important text...
Format links so they're easy to spot..."
SEO is a much larger subject than I can cover here but it is something all web developers should learn.
Supporting information
Ubuntu website style guidelines