<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>From Accessibility to Zope &#187; Blogging</title>
	<atom:link href="http://blog.mauveweb.co.uk/category/blogging/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.mauveweb.co.uk</link>
	<description>experiments in contemporary web development</description>
	<lastBuildDate>Thu, 18 Aug 2011 23:26:00 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Fonts and font-family</title>
		<link>http://blog.mauveweb.co.uk/2010/02/03/fonts-and-font-family/</link>
		<comments>http://blog.mauveweb.co.uk/2010/02/03/fonts-and-font-family/#comments</comments>
		<pubDate>Wed, 03 Feb 2010 19:10:54 +0000</pubDate>
		<dc:creator>mauve</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://blog.mauveweb.co.uk/?p=362</guid>
		<description><![CDATA[Yesterday, on Twitter, I watched a discussion emerge as one person I follow pointed out that another person's hosted wordpress.com blog was illegible on her computer, with all of the content appearing in ugly bold italics.
While we never got to the bottom of that issue (I couldn't reproduce it), it's worth backing up and examining [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday, on Twitter, I watched a discussion emerge as one person I follow pointed out that another person's hosted wordpress.com blog was illegible on her computer, with all of the content appearing in ugly bold italics.</p>
<p>While we never got to the bottom of that issue (I couldn't reproduce it), it's worth backing up and examining font use on the web.</p>
<p><strong>Fonts, unlike any other aspect of web browser rendering, depend on the platform, not the browser version.</strong></p>
<p>The reason is simple: fonts are not bundled with the browser, but with the operating system, or installed with some creative applications.</p>
<p>If you select fonts based on how they look on your computer, they will look different on another computer with a different set of fonts installed. Also, fonts are matched by name in <acronym title="Cascading Style Sheets">CSS</acronym>, so when you write</p>
<p><code language="css">font-family: "Helvetica", "Arial", sans-serif;</code></p>
<p>you are requesting a font named "Helvetica", then one named "Arial", then the default sans-serif fonts. This is a very common thing for people to write, because Helvetica is a popular choice on Mac, Arial is a popular choice on Windows, and sans-serif is a catch-all. The intention is to select a nice sans-serif font on each platform.</p>
<p>Unfortunately, "Helvetica" can exist on Windows and Linux as well as Mac. Helvetica has been around as a typeface since 1957, and there are different versions of it around &#8211; by what route, or with what degree of intellectual property infringement, I do not know. There are also <a href="http://en.wikipedia.org/wiki/Helvetica#Helvetica">a fair number of variants</a> that your computer might also consider, if they are installed.</p>
<p>On Linux, Helvetica was historically an X bitmap font (ugly, impractical things that are now effectively dead). These days it is generally an fontconfig alias for a free sans-serif font, but renders with iffy hinting and kerning, perhaps to conform to the original font's metrics (ie. it has been shoehorned into exactly the same space, so that printed publications don't come out wrong). I actually find this font quite uncomfortable to read.</p>
<p>On Windows, you may occasionally find Helvetica exists, perhaps even as the same font, installed on its own, or with some software suite, but if you do you'll find several browsers on Windows render fonts with Microsoft's ClearType renderer optimised for legibility, not the Mac's quality-optimised renderer, also used in Safari 3 on Windows. Microsoft own fonts have been tweaked to work well with ClearType &#8211; others may not. Linux is (as ever) more flexible: it's possible to configure the amount of hinting to use through fontconfig, although most users will keep their distribution's defaults.</p>
<p>Ultimately it's an impenetrable picture &#8211; you cannot be sure that the fonts you list will give anything like the browsing experience you were expecting. The same overall picture applies with serif fonts and monospace fonts.</p>
<p>The best solution (unless you want to try downloadable fonts, which I wouldn't recommend for body fonts) is to side-step the specifics of fonts entirely and delegate to the user/browser/operating system. There are three suitable aliases for font families: <code>sans-serif</code>, <code>serif</code>, and <code>monospace</code>. These will reliably give you a good font of that category. There are two other aliases, <code>cursive</code> and <code>fantasy</code> which are too poorly defined &#8211; you could get practically anything.</p>
<p>Is this really the only option? If you're prepared to go to the enormous lengths required, can you not pick a list of named fonts, test broadly and claim it works? Well, yes, if you test broadly enough you can get say 99.9% coverage. Unfortunately, that's not always good enough.</p>
<p>The topic of a site turns out to significantly affect the statistics of users that visit it. For example, a site about Linux will get more Linux hits. A site about using Photoshop will get most hits from people with Adobe Creative Suites installed, and that <a href="http://blogs.adobe.com/typblography/CS3fonts.html">comes with fonts</a>. So as a theme designer, what was 99%+ for you could be 90% for some of the people who use your theme.</p>
<p>So, in summary, stick to the safe fonts: sans-serif, serif and monospace. Fonts that are ubiquitious and designed for the screen are also quite safe &#8211; Arial and Verdana. You might be able to find some other safe places <a href="http://www.codestyle.org/css/font-family/index.shtml">by consulting statistics</a> if you are feeling creatively hemmed in. But please, don't make font assumptions.</p>]]></content:encoded>
			<wfw:commentRss>http://blog.mauveweb.co.uk/2010/02/03/fonts-and-font-family/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RSS: Error-prone</title>
		<link>http://blog.mauveweb.co.uk/2009/06/24/rss-error-pron/</link>
		<comments>http://blog.mauveweb.co.uk/2009/06/24/rss-error-pron/#comments</comments>
		<pubDate>Wed, 24 Jun 2009 11:19:51 +0000</pubDate>
		<dc:creator>mauve</dc:creator>
				<category><![CDATA[Blogging]]></category>

		<guid isPermaLink="false">http://blog.mauveweb.co.uk/?p=301</guid>
		<description><![CDATA[I subscribe to only about a dozen RSS or Atom feeds, but more than half of them suffer from one problem or another.

Intermittently dumping a dozen duplicate posts.
Dumping a dozen duplicate posts on every refresh.
Duplicating the most recent post on every refresh.
Double-escaping HTML entities, so I see &#38;ldquo;, &#38;rdquo;, &#38;hellip; and such like in post [...]]]></description>
			<content:encoded><![CDATA[<p>I subscribe to only about a dozen <acronym title="Really Simple Syndication">RSS</acronym> or Atom feeds, but more than half of them suffer from one problem or another.</p>
<ul>
<li>Intermittently dumping a dozen duplicate posts.</li>
<li>Dumping a dozen duplicate posts on every refresh.</li>
<li>Duplicating the most recent post on every refresh.</li>
<li>Double-escaping <acronym title="HyperText Markup Language">HTML</acronym> entities, so I see <code>&amp;ldquo;</code>, <code>&amp;rdquo;</code>, <code>&amp;hellip;</code> and such like in post names.</li>
<li><acronym title="eXtensible Markup Language">XML</acronym> syntax errors causing total feed outage until some improperly encoded post drops off the feed.</li>
<li>&lt;pre&gt; code snippets that have lost their formatting.</li>
<li>And, of course, the occasional snippet of <acronym title="HyperText Markup Language">HTML</acronym> that doesn't work as intended when removed from the context of the original <acronym title="HyperText Markup Language">HTML</acronym> document and embedded in <acronym title="Really Simple Syndication">RSS</acronym>.</li>
</ul>
<p>I often have to search for <a href="http://pipes.yahoo.com/">Pipes</a> to get a useful feed, which is a consequence of the way <acronym title="Really Simple Syndication">RSS</acronym> specifies only a data format, not an obligation on producers, an architectural flaw I've discussed before.</p>
<p>But quite aside from this, it seems that a significant proportion of feeds aren't implemented properly.</p>
<p>Obviously we can blame developers for bugs, but the design of <acronym title="Really Simple Syndication">RSS</acronym> may well be a contributing factor. The process of encapsulating <acronym title="HyperText Markup Language">HTML</acronym> fragments in <acronym title="eXtensible Markup Language">XML</acronym> is not as straightforward as it looks. The requirement for a unique ID for each post at first glance does not look onerous. But does the ID correspond to the specific version of a post? Or does it correspond to the current version, however it may have changed since it was first published?</p>
<p><acronym title="Really Simple Syndication">RSS</acronym> may be useful, but it should also just work, and it doesn't. Developers and standardistas alike should start thinking why.</p>]]></content:encoded>
			<wfw:commentRss>http://blog.mauveweb.co.uk/2009/06/24/rss-error-pron/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wordpress Audio Player</title>
		<link>http://blog.mauveweb.co.uk/2009/01/09/wordpress-audio-player/</link>
		<comments>http://blog.mauveweb.co.uk/2009/01/09/wordpress-audio-player/#comments</comments>
		<pubDate>Fri, 09 Jan 2009 11:58:33 +0000</pubDate>
		<dc:creator>mauve</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[Components]]></category>

		<guid isPermaLink="false">http://blog.mauveweb.co.uk/?p=226</guid>
		<description><![CDATA[Martin Laine's Wordpress Audio Player seems to have quite a broad penetration, but having seen it in a couple of places, I want to add that I think it's an excellent. When not playing, it's a plain, unintrusive icon that clearly indicates an option to play a sound, and which smoothly expands to a straightforward, [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.1pixelout.net/">Martin Laine</a>'s <a href="http://wpaudioplayer.com/">Wordpress Audio Player</a> seems to have quite a broad penetration, but having seen it in a <a href="http://www.timminchin.com/media/">couple</a> of <a href="http://www.badscience.net/2009/01/the-barefaced-cheek-of-these-characters-will-never-cease-to-amaze-and-delight-me/">places</a>, I want to add that I think it's an excellent. When not playing, it's a plain, unintrusive icon that clearly indicates an option to play a sound, and which smoothly expands to a straightforward, clutter-free player. By changing the colour scheme, you could make this fit with nearly any website style, and unlike many alternatives it will not draw attention away from your text or audio content.</p>]]></content:encoded>
			<wfw:commentRss>http://blog.mauveweb.co.uk/2009/01/09/wordpress-audio-player/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Exploring publishing models</title>
		<link>http://blog.mauveweb.co.uk/2008/02/06/exploring-publishing-models/</link>
		<comments>http://blog.mauveweb.co.uk/2008/02/06/exploring-publishing-models/#comments</comments>
		<pubDate>Wed, 06 Feb 2008 22:17:18 +0000</pubDate>
		<dc:creator>mauve</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[Content Management]]></category>

		<guid isPermaLink="false">http://blog.mauveweb.co.uk/2008/02/06/exploring-publishing-models/</guid>
		<description><![CDATA[I have been increasingly drawn into the world of blogging over the past few years. It is sometimes claimed that the blogosphere represents an information publishing revolution, and I wouldn't disagree. Blogs are, in their simplest terms, a simplified content management system that has very simple and clear semantics and a very low barrier to [...]]]></description>
			<content:encoded><![CDATA[<p>I have been increasingly drawn into the world of blogging over the past few years. It is sometimes claimed that the blogosphere represents an information publishing revolution, and I wouldn't disagree. Blogs are, in their simplest terms, a simplified content management system that has very simple and clear semantics and a very low barrier to entry. I sell customised blogs to my clients on exactly that basis. They are the cheapest websites we can offer.</p>
<p>Blogs <strong>are</strong> a trade off. Blogs make publishing easy, but the value of the collected content doesn't increase as fast the quantity of posts increases, not in a single blog nor in the blogosphere as a whole. The archives of the blogosphere are hard to navigate. Where information can be found it may be wrapped up in reams of prose or buried way down in the comments. Most of the value of a blog lies in the most recent posts &#8211; the ones advertised at the top of the first page and the <acronym title="Really Simple Syndication">RSS</acronym> feed. This, of course, is perfectly suited to news.</p>
<p>One comparison I could draw is with wikis. Wikis offer collaborative editing and this tends to increase the quality of the content as a whole (if the rate of improvement outpaces the rate of vandalism). Wikis are as a whole more up-to-date than blogs too, because old articles linger indefinitely in the archives of blogs, whereas wiki pages are replaced in situ. Personally I find a single wiki &#8211; Wikipedia &#8211; more useful than the entire blogosphere. It's a very complex comparison to draw and an endlessly debatable one, but wikis offer a model which allows discussion or documentation of topics which are deeply interwoven &#8211; which is almost everything. Blogs mediate the actual mechanics of a single discussion better.</p>
<p>For professional publishing, we should try to identify and capitalise on the benefits of both of these models. It's very tempting for me just to tack a blog onto a finished website so there is a channel for the owners to communicate with users, but lots of professional sites end up fronted by a rather dull blog, filled with unedifying news and other tidbits the authors think might engender some interest or at least turn up in search results. Instead, the heavily hyperlinked nature of a wiki could allow visitors to click from this sequential news to in-depth information, and collaborative editing (internally not publically, of course) could increase the quality of the content they find better than a shallow hierarchy of authors and editors.</p>
<p>I'd be interested to know if there's an advantage to releasing content in "issues" like a magazine. I wonder in particular if visitors can get more engaged in a site when it complete refreshes once a week than when there's a slow but steady drip of articles. Not a great proportion of sites do this although I can think of a few (<a href="http://www.theonion.com/">The Onion</a>, <a href="http://linuxgazette.net/">Linux Gazette</a>). By publishing in issues your <acronym title="Really Simple Syndication">RSS</acronym> feed becomes an invitation, not a medium in itself, an approach which would partly quench my long-standing gripes about <acronym title="Really Simple Syndication">RSS</acronym>. But spending a fortnight writing and editing articles could be much more valuable than a constant drip of articles. But above all it could allow time to create unique and engaging graphic design for dynamic content, a holy grail for the web industry, and something I'll talk about another time.</p>]]></content:encoded>
			<wfw:commentRss>http://blog.mauveweb.co.uk/2008/02/06/exploring-publishing-models/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Writing an RSS client</title>
		<link>http://blog.mauveweb.co.uk/2007/02/13/writing-an-rss-client/</link>
		<comments>http://blog.mauveweb.co.uk/2007/02/13/writing-an-rss-client/#comments</comments>
		<pubDate>Tue, 13 Feb 2007 16:14:32 +0000</pubDate>
		<dc:creator>mauve</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[RDF]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://blog.mauveweb.co.uk/2007/02/13/writing-an-rss-client/</guid>
		<description><![CDATA[Interestingly, my latest paid project is to build an RSS reader. I am doing this not out of bloody-minded determination to reinvent the wheel, and I would be perfectly happy to adapt an existing project to work in the way I want, but none of the apps I have seen or tried does what I [...]]]></description>
			<content:encoded><![CDATA[<p>Interestingly, my latest paid project is to build an <acronym title="Really Simple Syndication">RSS</acronym> reader. I am doing this not out of bloody-minded determination to reinvent the wheel, and I would be perfectly happy to adapt an existing project to work in the way I want, but none of the apps I have seen or tried does what I want it to do.</p>
<p>This project is a desktop feed notifier. It will poll feeds and pop up messages (non-intrusively) either when it starts or when it first sees them.</p>
<p>I have mentioned my views on <acronym title="Really Simple Syndication">RSS</acronym> before, but happily they don't conflict this project. Because this is aimed at intranet service notifications there is a contract between producer and consumer, not merely a shared protocol.</p>
<p>I think that one good aspect of <acronym title="Really Simple Syndication">RSS</acronym> is its ubiquity. Several apps already in use in this Intranet are <acronym title="Really Simple Syndication">RSS</acronym>-aware and can be wired into this system with a minimum of work.</p>
<p>Without wanting to revisit the previous arguments too much, I might as well summarise them for completeness. I can envisage only two useful strategies for a syndication format:</p>
<ul>
<li><strong>Fixed contract: </strong>Specify a unique set of obligations for producer and consumer including both syntax and semantics. eg. <acronym title="Really Simple Syndication">RSS</acronym> 0.90</li>
<li><strong>Negotiated contract: </strong>Specify obligations of syntax, but encourage producers to offer a complete semantic representation, and allow consumers to build a customised syndication from within it. eg. <acronym title="Resource Description Framework">RDF</acronym>.</li>
</ul>]]></content:encoded>
			<wfw:commentRss>http://blog.mauveweb.co.uk/2007/02/13/writing-an-rss-client/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Big World Travelog</title>
		<link>http://blog.mauveweb.co.uk/2007/01/03/big-world-travelog/</link>
		<comments>http://blog.mauveweb.co.uk/2007/01/03/big-world-travelog/#comments</comments>
		<pubDate>Wed, 03 Jan 2007 10:58:06 +0000</pubDate>
		<dc:creator>mauve</dc:creator>
				<category><![CDATA[Artwork]]></category>
		<category><![CDATA[Blogging]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Web Design]]></category>

		<guid isPermaLink="false">http://blog.mauveweb.co.uk/2007/01/03/big-world-travelog/</guid>
		<description><![CDATA[I finished updated my brother's blog over New Year, and I'm now quite happy with it. I spent ages on a graphical title block in Inkscape. I'm not totally satisfied with the caricatures who are a little more cartoony than I would have liked. The new theme is based on K2, which I do think [...]]]></description>
			<content:encoded><![CDATA[<p>I finished updated <a href="http://worldtour.echit.co.uk/">my brother's blog</a> over New Year, and I'm now quite happy with it. I spent ages on a graphical title block in Inkscape. I'm not totally satisfied with the caricatures who are a little more cartoony than I would have liked. The new theme is based on K2, which I do think is pretty.</p>
<p>I had a strange bug with the Google Maps on the gallery which I found after a bit of searching was caused by Google Maps not supporting embedding within <acronym title="eXtensible HyperText Markup Language">XHTML</acronym>. But I'm pleased that the thumbnailing/unthumbnailing works so well. Previously the map enlarged and reduced; this is much less intrusive in either state.</p>
<p>I did have to disable all of K2's shiny Javascript features to make it work with my Javascript (for map markers) <img src='http://blog.mauveweb.co.uk/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' />  But they were a <acronym title="User Interface">UI</acronym> disaster anyway. One of the advantages to <acronym title="JavaScript">JS</acronym> over Flash is that it allows us not to create horrific new <acronym title="User Interface">UI</acronym> paradigms. So going to great lengths to do so is missing the point.</p>]]></content:encoded>
			<wfw:commentRss>http://blog.mauveweb.co.uk/2007/01/03/big-world-travelog/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Theme Ideas</title>
		<link>http://blog.mauveweb.co.uk/2006/11/13/new-theme-ideas/</link>
		<comments>http://blog.mauveweb.co.uk/2006/11/13/new-theme-ideas/#comments</comments>
		<pubDate>Mon, 13 Nov 2006 22:28:02 +0000</pubDate>
		<dc:creator>mauve</dc:creator>
				<category><![CDATA[Artwork]]></category>
		<category><![CDATA[Blogging]]></category>
		<category><![CDATA[Web Design]]></category>

		<guid isPermaLink="false">http://blog.mauveweb.co.uk/2006/11/13/new-theme-ideas/</guid>
		<description><![CDATA[The other day I doodled some ideas for themes for this blog. Not really based around web design. Just interesting concepts, hopefully.
  ]]></description>
			<content:encoded><![CDATA[<p>The other day I doodled some ideas for themes for this blog. Not really based around web design. Just interesting concepts, hopefully.</p>
<p><a id="p36" rel="attachment" class="imagelink" title="Chocolate" href="http://blog.mauveweb.co.uk/2006/11/13/new-theme-ideas/chocolate/"><img width="150" height="104" id="image36" alt="Chocolate" src="http://blog.mauveweb.co.uk/wp-content/uploads/2006/11/chocolate.png" /></a> <a id="p37" rel="attachment" class="imagelink" title="Tentacles" href="http://blog.mauveweb.co.uk/2006/11/13/new-theme-ideas/tentacles/"><img width="132" height="188" id="image37" alt="Tentacles" src="http://blog.mauveweb.co.uk/wp-content/uploads/2006/11/tentacles.png" /></a> <a id="p38" rel="attachment" class="imagelink" title="Chocohellic" href="http://blog.mauveweb.co.uk/2006/11/13/new-theme-ideas/chocohellic/"><img width="132" height="188" id="image38" alt="Chocohellic" src="http://blog.mauveweb.co.uk/wp-content/uploads/2006/11/tentacle_chocolate.png" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.mauveweb.co.uk/2006/11/13/new-theme-ideas/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why I&#039;m not sold on RSS</title>
		<link>http://blog.mauveweb.co.uk/2006/10/14/why-im-not-sold-on-rss/</link>
		<comments>http://blog.mauveweb.co.uk/2006/10/14/why-im-not-sold-on-rss/#comments</comments>
		<pubDate>Sat, 14 Oct 2006 17:56:35 +0000</pubDate>
		<dc:creator>mauve</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://blog.mauveweb.co.uk/2006/10/14/why-im-not-sold-on-rss/</guid>
		<description><![CDATA[I don't know if I'm the only one but I've just never gotten on with RSS (under the umbrella of which I include Atom too). Nothing I've read about it resolves these open questions:

What is RSS for?
Why is  RSS the best way to do&#8230; whatever it is that it's for?

I think that RSS's history [...]]]></description>
			<content:encoded><![CDATA[<p>I don't know if I'm the only one but I've just never gotten on with <acronym title="Really Simple Syndication">RSS</acronym> (under the umbrella of which I include Atom too). Nothing I've read about it resolves these open questions:</p>
<ul>
<li>What is <acronym title="Really Simple Syndication">RSS</acronym> <em>for</em>?</li>
<li>Why is  <acronym title="Really Simple Syndication">RSS</acronym> the best way to do&#8230; whatever it is that it's for?</li>
</ul>
<p>I think that <a href="http://en.wikipedia.org/wiki/RSS_%28file_format%29#Incompatibilities"><acronym title="Really Simple Syndication">RSS</acronym>'s history</a> lends credibility to the fact that nobody really has the answers to those questions.</p>
<p><span id="more-27"></span>I discussed this recently with <a href="http://personal.earlsoft.co.uk/">Dee</a> on <acronym title="Internet Relay Chat">IRC</acronym>, and I think we both started to understand one another's views on the subject. He said he was a fan because it allowed him to set up notifications when websites were changed, and since then I've been using it for the same purpose. I added a couple of feeds to Thunderbird and yes, I can now easily see when a website has new content.But that hasn't really address the difficulties I have with the concept:</p>
<p><strong>Linear view of a complex data structure</strong></p>
<p>One of the strangest things about <acronym title="Really Simple Syndication">RSS</acronym> is that it's been shoehorned into a variety of applications where it isn't ideal. Most dynamic sites will have a very rich structure and <acronym title="Really Simple Syndication">RSS</acronym> is merely one projection of that structure onto a sequence. It's usually chronological, but it's always inflexible.</p>
<p>You are robbed of the richness of structure that the web interface provides. It's possible that the web author has gone to great lengths to provide a user-friendly way to navigate around the site and you're missing it by viewing merely a sequence of excerpts.</p>
<p>All blogs have a list of posts which correspond to the <acronym title="Really Simple Syndication">RSS</acronym> feed. The problem is that there's usually much more on the page that you will miss out on.</p>
<p>Suppose I blog about cocktails (Cocktails are a really good example, that I spotted in Sean Kelly's screencasts about <a href="http://plone.org/">Plone</a>. Cocktails are colourful, visual and rich in content: they have histories and ingredients). Maybe in the sidebar of each post I have a widget that links to other cocktails &#8211; a random cocktail, and "if you like this cocktail, you may enjoy these". Suppose I allow the posts to be filtered by what ingredients are available, and also by category/tag. The webpage also lets you sort the list in ways other than chronologically &#8211; by votes or by alcohol content. I've also got <acronym title="Asynchronous JavaScript and XML">AJAX</acronym> which pulls a little glossary popup on clicking arbitary terms. All very slick, integrated and non-linear. It's still a blog because the front page shows the most recently added articles. But an <acronym title="Really Simple Syndication">RSS</acronym> feed of the blog wouldn't expose any of the richness. And surely that richness is what makes the difference between a brilliant site and Yet Another Blog?</p>
<p>To an extent there's a conscious choice that you might be cutting yourself off from that functionality by choosing to read it using <acronym title="Really Simple Syndication">RSS</acronym>, but that doesn't detract from the argument that <acronym title="Really Simple Syndication">RSS</acronym> isn't particularly appropriate.</p>
<p>A simpler example &#8211; a photoblog. Each post has a mini-gallery attached. The <acronym title="Really Simple Syndication">RSS</acronym> feed can't (as standard) describe a gallery as nested within the articles &#8211; it can only provide the <acronym title="eXtensible HyperText Markup Language">XHTML</acronym> markup to describe how it looks.</p>
<p>Wordpress has to provide two feeds: one for posts and one for comments.</p>
<p>As I understand it, <acronym title="World Wide Web Consortium">W3C</acronym>'s <acronym title="Resource Description Framework">RDF</acronym> format <em>can </em>describe these kinds of data structures and that seems much more appropriate. The argument that <acronym title="Really Simple Syndication">RSS</acronym> is 'Really Simple' is nonsense: <acronym title="Really Simple Syndication">RSS</acronym> is universally generated and consumed by software, not humans, so the complexity of the description is irrelevant to users.</p>
<p><strong>Nobody knows what <acronym title="Really Simple Syndication">RSS</acronym> is for</strong></p>
<p><acronym title="Really Simple Syndication">RSS</acronym> isn't for anything specific. People use it in different ways. I recently looked through a list of aggregators on Windows, and I tried half a dozen, which lets me be somewhat authoritative on the subject. The aggregators vary between software which merely pops up a notification when there's new content, and full-blown power tools for notifying, merging and reading dozens of feeds. There is almost no commonality among feature sets. Firefox's <acronym title="Really Simple Syndication">RSS</acronym> folders don't notify, they just silently list items. And then there's Planet, which creates a webpage by merging feeds.</p>
<p>This makes it difficult, as far as I'm concerned, to conceptualize uses for <acronym title="Really Simple Syndication">RSS</acronym>. If authors don't know what their audience would like to do, then how can they know that <acronym title="Really Simple Syndication">RSS</acronym> is providing the capabilities they want to provide? And so I suspect many authors just blindly provide a basic <acronym title="Really Simple Syndication">RSS</acronym> feed, in case visitors want to do something with it.</p>
<p><acronym title="Really Simple Syndication">RSS</acronym> <em>nominally</em> does syndication &#8211; ie. it can allow publishers to collect and republish new articles, or adverts from other sources. This requires metadata, and to provide the requisite metadata requires some knowledge of the problem domain &#8211; knowledge which blog maintainers users don't have and which <acronym title="Really Simple Syndication">RSS</acronym> doesn't encapsulate (although <acronym title="Dublin Core">DC</acronym> does).</p>
<p>More importantly, what does <acronym title="Really Simple Syndication">RSS</acronym> do for me that I can't do without a new format? I can already poll for updates on a page by using an <acronym title="HyperText Transfer Protocol">HTTP</acronym> query like</p>
<p>HEAD / <acronym title="HyperText Transfer Protocol">HTTP</acronym>/1.0<br />
If-Modified-Since: time-I-last-checked</p>
<p>and waiting for 200 Ok rather than 304 Not Modified.</p>
<p>If I was intending to improve on such a scheme I would think about using notification rather than polling. Or simply notify that there's something to poll.</p>
<p><strong>Non-normalized <acronym title="eXtensible Markup Language">XML</acronym></strong></p>
<p><acronym title="Really Simple Syndication">RSS</acronym> is bad <acronym title="eXtensible Markup Language">XML</acronym>. It's rather ambivalent about using namespaces, allowing namespaces for <acronym title="Dublin Core">DC</acronym> and others, but the main problem is that it doesn't use namespaces to embed <acronym title="HyperText Markup Language">HTML</acronym> content (and in most versions, doesn't provide a default namespace). Instead it usually (I think it's possible to do the right thing, but it doesn't appear that this happens in the wild) embeds the <acronym title="HyperText Markup Language">HTML</acronym> and escapes it as <acronym title="Character Data (DTD Type)">CDATA</acronym> either with an explicit <acronym title="Character Data (DTD Type)">CDATA</acronym> section or character entities.</p>
<p>This is undeniably bad form. It means that to parse <acronym title="Really Simple Syndication">RSS</acronym> you need not only an <acronym title="eXtensible Markup Language">XML</acronym> parser but a tagsoup <acronym title="Standard General Markup Language">SGML</acronym> parser. And all the functionality that has been built for <acronym title="eXtensible Markup Language">XML</acronym> is lost. Validation, transformation, query, character-set awareness. Embedding structured data within <acronym title="eXtensible Markup Language">XML</acronym> <acronym title="Character Data (DTD Type)">CDATA</acronym> is equivalent to storing non-normalized data in a relational database.</p>
<p>The argument that "well, we need to put <acronym title="HyperText Markup Language">HTML</acronym> in there if that's what people are blogging in" doesn't hold water. The requirements of the format must be defined by what the consumers of the feed need. Data consumers want to work with a known data type, not whatever language I happen to be blogging in.</p>
<p>Atom is better <acronym title="eXtensible Markup Language">XML</acronym> but still allows for mixed content formats.</p>
<p><strong><acronym title="Really Simple Syndication">RSS</acronym> is linked with blogging </strong></p>
<p>I think that the overall problem here is that <acronym title="Really Simple Syndication">RSS</acronym> has found popularity through an ill-informed blogging movement, and although I do find <em>tech blogs</em> both informative and genuinely useful, the vast majority of blogs are the mindless musings of boring idiots about their boring lives and their talentless attempts at artistic creativity, written in poor English, and with lots of banners along the lines of "The <acronym title="Star Trek: The Next Generation">ST:TNG</acronym> character you are most like is Deanna Troi"; banners acquired by filling out an online questionnaire of questionable accuracy whose main purpose was to display advertising to users.</p>
<p>When such people are powering an information publishing revolution, you are bound to end up with specifications which are poorly drafted, argued over and forked, don't know what problem they are trying to solve, or how to solve them, and have vastly different qualities of implementation.</p>
<p>This is not a good process for developing interoperable data formats.</p>]]></content:encoded>
			<wfw:commentRss>http://blog.mauveweb.co.uk/2006/10/14/why-im-not-sold-on-rss/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Planet HantsLUG</title>
		<link>http://blog.mauveweb.co.uk/2006/09/19/planet-hantslug/</link>
		<comments>http://blog.mauveweb.co.uk/2006/09/19/planet-hantslug/#comments</comments>
		<pubDate>Tue, 19 Sep 2006 16:57:29 +0000</pubDate>
		<dc:creator>mauve</dc:creator>
				<category><![CDATA[Blogging]]></category>

		<guid isPermaLink="false">http://blog.mauveweb.co.uk/?p=12</guid>
		<description><![CDATA[My namesake Alan Pope has added this blog to Planet HantsLUG. Hello HantsLUG people!
]]></description>
			<content:encoded><![CDATA[<p>My namesake <a href="http://popey.com/">Alan Pope</a> has added this blog to <a href="http://www.hantslug.org.uk/planet">Planet HantsLUG</a>. Hello <a href="http://www.hantslug.org.uk/">HantsLUG</a> people!<a href="http://popey.com/"><br />
</a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.mauveweb.co.uk/2006/09/19/planet-hantslug/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SVG Kubrick Source</title>
		<link>http://blog.mauveweb.co.uk/2006/09/18/svg-kubrick-source/</link>
		<comments>http://blog.mauveweb.co.uk/2006/09/18/svg-kubrick-source/#comments</comments>
		<pubDate>Mon, 18 Sep 2006 18:01:43 +0000</pubDate>
		<dc:creator>mauve</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[Open-source]]></category>
		<category><![CDATA[SVG]]></category>

		<guid isPermaLink="false">http://blog.mauveweb.co.uk/?p=8</guid>
		<description><![CDATA[One of the first things I wanted to do with Oli's blog was start making minor alterations to the default Kubrick theme (which I really like, incidentally) in my favourite vector graphics editor, Inkscape. However, after searching the web for the source, I eventually found that the original source was a Photoshop file &#8211; one [...]]]></description>
			<content:encoded><![CDATA[<p>One of the first things I wanted to do with <a href="http://worldtour.echit.co.uk/">Oli's blog</a> was start making minor alterations to the default Kubrick theme (which I really like, incidentally) in my favourite vector graphics editor, <a href="http://www.inkscape.org/">Inkscape</a>. However, after searching the web for the source, I eventually found that the original source was a Photoshop file &#8211; one that the GIMP couldn't open.</p>
<p>Frankly, I don't think this is a very good show for an application which purports to be open-source. Anyway, as a result I pulled Wordpress's assets into Inkscape and reconstructed the graphics, as closely as I could, tracing the originals.</p>
<p>The result is <a href="http://www.mauveweb.co.uk/misc/kubrick/">an <acronym title="Scalable Vector Graphics">SVG</acronym> file and a shell script to extract the assets</a>. The assets should all be replaced together because the match isn't quite pixel perfect, but if you do replace them you shouldn't notice the difference.</p>]]></content:encoded>
			<wfw:commentRss>http://blog.mauveweb.co.uk/2006/09/18/svg-kubrick-source/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

