Plain Old Semantic HTML (POSH)
Welcome to the POSH home page.
- 1 Plain Old Semantic HTML (POSH)
The acronym POSH was coined on 6 April 2007 on the microformats IRC channel, by <kwijibo> as a shorthand abbreviation for posh. A discussion on among John Allsopp, Tantek Çelik, Jeremy Keith, and Chris Messina at the Microformats Dinner 2007 April 18 following Web 2.0 Expo reraised the idea of POSH and the importance of promoting the broader goal of POSH, of which microformats are built from and a proper subset thereof. For more see History.
The term Semantic HTML is a mouthful, and belies both how simple it is, how well established it is among modern web designers, and the fact that it has benefits far beyond the obvious doing the right thing for the Web by using semantic markup. We need a simple short mnemonic term that captures the essence of the concept, and is easily verbed (to posh, poshify, poshed up).
The POSH Process
What can you do to be POSH and to make your websites POSH?
- Publish POSH content. Read POSH resources and make sure your website publishes valid semantic (X)HTML, and uses semantic class names accordingly.
- Spread POSH. Encourage others to be POSH and POSHify their websites by linking to this page.
- Improve POSH. Help us gather resources to enable more people to easily POSHify their websites.
The POSH Checklist
- The first rule of POSH is that you must validate your POSH.
- Second, drop the use of TABLEs for purely presentational purposes, spacer GIFs, and presentational-html in general.
- Next, fix your Bed and Breakfast markup.
- Eliminate Anorexic Anchors.
- Use good semantic class names.
- Check out the Ma.gnolia POSH Group
Presentations which explain and advocate concepts and techniques for utilizing semantic HTML. If/when this section gets too big, we can move it to posh-presentations.
- CSS: Between the Style Sheets by Tantek Çelik (2003), specifically, see slides 3-4,6 starting with "Leaving the <B>ed & <BR>eakfast", and slide 9 "CSS & the Semantic Spectrum".
Step by step tutorials to create POSH content or upgrade existing content to POSH.
Validating your css and html A simple step by step guide to how and why you should validate your markup
Modern web design books which document good semantic HTML practices.
- Web Design in a Nutshell, Third Edition by Jennifer Niederst Robbins See Jenville.
- Microformats empowering your markup for Web 2.0 by John Allsopp. Chapter 3 is a detailed and practical overview of the appropriate use of structural, valid and semantic HTML.
Online (and off) magazines which frequently publish articles about semantic HTML. If/when this section gets too big, we can move it to posh-magazines.
Blogs that with some regularity post high quality discussions, insights, and in general have advanced the state of the art of POSH. If/when this section gets too big, we can move it to posh-blogs.
- David Baron's weblog
- Jeffrey Zeldman Presents
- meyerweb.com - Eric Meyer
- SimpleBits - Dan Cederholm (see in particular SimpleQuiz)
- Tantek Çelik
- Microformatique - John Allsopp
POSH Blog posts
Blog posts that provide specific, modern, guidance, techniques and tips for using more and better semantic HTML. If/when this section gets too big, we can move it to posh-blog-posts.
- Bed and BReakfast markup (B&BR) (2002-10-22) - avoiding nonsemantic uses of <b>old and <br>eak tags and using <h3>adings and <p>aragraphs instead.
- <A>norexic </A>nchors (2002-11-28) - use the "id" attribute on existing elements instead of adding empty
<a name="foo"></a>elements. Use rel-design-pattern for post permalinks within the document.
- A Touch of Class (2002-12-16) - introduction to proper use of the HTML 'class' attribute.
- Dive into Semantic MARKup (2002-12-31)
- Comment markup, presentation and plumbing (2003-01-04) - how to markup a list of comments, including example use of the rare "hreflang" attribute.
- Competent Classing by Eric Meyer (2004-07-18)
- More about the 'class' attribute (2004-07-20)
- Writing Semantic HTML by Jesse Skinner (2006-02-22)
- The Importance of Being POSH (2007-04-20)
- Webpatterns and websemantics (2005-11-18)
- Semantics in HTML - three part series on the past present and future of semantics HTML (2007-08-01)
Now that you've poshified your website(s), what next? Well, help spread POSH to other websites!
- Promote POSH. Make a POSH button (perhaps using semantic HTML and CSS ;) linking to this page and put it on your site, in your blogroll, in your footer, etc. Maybe even come up with a nice POSH button graphic and share it with the microformats community with a liberal license (public domain, CC-by-3.0, MIT, etc.) Like this one:
- Tell a friend. Talk to web design friends about POSH and convince and help them to poshify both their personal websites, and the websites they build for others. Blog about your experience with poshification and what steps you went through to poshify your websites.
- Come up with more ideas to help spread POSH. Here are a few.
- Hold a PoshPit - a one or half day marathon session mixing semantic HTML experts with folks who maintain/run web sites in general and see how many websites you can collectively upgrade to POSH during the course of the day.
As you read the POSH resources documented here, what other POSH resources did you find? Add them to this page.
With your experience with both poshifying your sites and helping others do so, what have you learned? What kind of issues did you run into? What questions were commonly asked? What do you feel like you need to more easily and quickly help more people poshify their content?
A brief history of references to "POSH" in this context and "plain old semantic HTML".
plain old semantic HTML
The earliest references to "plain old semantic HTML" that have been found so far are:
- 1998-05-01: Kirrily 'Skud' Robert on comp.infosystems.www.authoring.site-design - "The site is implemented in HTML 4.0 Transitional with style sheets; this means that anyone with an older browser won't get presentational markup, just plain old semantic HTML. "
- 2006-09-21 Drew's comment by on "Tables and SEO": "I’d say it’s well worth it for a variety of reasons to only use tables when you’re presenting tabular data, and use plain old semantic HTML to mark up your content in all other cases." (retrieved by Tantek 08:20, 20 Apr 2007 (PDT))
If you can find earlier references, please add them and include a brief quotation of the context of the reference to "plain old semantic HTML".