Categories
Uncategorized

Feed Checking

Dave is getting closer… He’s released a new service for people who want to be sure their feeds are in good shape.

I say getting closer because it’s a step in the right direction. It’s aimed toward people who want to make sure the feeds they have online are valid. That’s a good thing.

I went a step further. The software used to publish this site attempts to validate the feeds produced at publish time. Meaning, I create an entry, the feeds are produced, and then they are checked for validity. If I screw up and write some invalid markup, I know it right away, before the feeds ever get published.

Here’s an example: Let’s say I accidentally paste in some HTML and end up with an extraneous </a> in my text. When I render out my pages, I’d see an error like this: line 37, column 149: XML Parsing error: <unknown>:37:149: mismatched tag.

Now, here’s the interesting part. The feedvalidator doesn’t see any problems with the RSS 2.0 feed, it reports ‘No errors or warnings’ for it, but the Atom feed is the one that returns the error. Since I screwed up and created invalid markup, I’d expect an error. You can make your own call here as to whether having an unmatched </a> is screwed up or not. (Add stuff about XML, strictness, etc. if you wish.)

Oh, we also run the HTML output through Tidy to check for well-formedness, and lo and behold that stray </a> is reported by Tidy as: line 117 column 148 - Error: unexpected </a> in <p>.

Now all this does not mean that errors won’t slip through the cracks every now and then, but it makes it that much harder to let them slip through. Since we’re calling existing applications and libraries, the whole process of adding in these checks took very little time. The majority of time was spent installing the software and figuring out how it worked. There’s also less than a dozen lines of code to actually do the checks and report the errors. I know that this can’t be built into all publishing system quite so easily, but it is getting easier to do these sorts of things everyday.

Categories
Uncategorized

HTML Validator Part II

I ended up getting the W3C‘s MarkUp Validator installed properly on Mac OS X 10.2.8. There were just some minor ‘gotchas’ along the way. The best advice I can give is to READ! Yes, RTFM, and then read it again…

My software installs usually go like this: Attempt an install, with a basic skimming of the docs, and if it doesn’t work, start really reading the docs…

I ended up installing gettext, then libiconv again (as suggested) and then Text::Iconv (following David Wheeler’s notes) and that fixed the big problem….

As for the second problem, well, that’s my own stupid fault. See, I edited a config file using pico, and I forgot that when you copy text, and then paste it, it turns tabs into spaces. Since name/value pairs need to be separated by a tab, this broke things. That’s just one of those sanity check things so I think I get a free pass on that one.

So in summary, I’ve now got the W3C‘s MarkUp Validator running locally on Mac OS X. You can just feel the exciting building!

Categories
Uncategorized

HTML Validator

I finally got around to installing the W3C‘s MarkUp Validator locally. (Yes, more validators!) It’s now running on Red Hat Linux 7.2 inside the firewall, for use by the internal folks. I also attempted an install on Mac OS X 10.2.8 (using this guide) but I’m not quite there yet. I’ll be trying again…

Anyway, the install on Linux was not too difficult, requiring OpenSP, libiconv, and some perl modules. (Let’s put it this way, it’s much easier than a Bugzilla install.) I’m glad I finally did this, as another project I’m working on needs a validator installed locally.

Categories
Uncategorized

Microsoft uses Linux

Do Not Use Windows
Chris Gulker notes that Microsoft makes use of Linux, just like all those average Joe’s who use Google on a daily basis.

Linux is like that, people tend to benefit from it, often without even knowing it. I think that’s got to change, and 2004 might be the year that happens…

Categories
Uncategorized

A New Validator in Town

Dave Winer has a new RSS Validator. It appears to be using the Feed Validator source code (coming soon to SourceForge, but available today at feedvalidator.org) as the backend.

The odd thing is, it parses Atom 0.3 feeds and reports them as RSS. This was reported to Dave yesterday. The service appears to be in place to promote RSS as a syndication format, and I have no problem with that. For many uses RSS is great, and exactly what should be used. In other cases Atom is a good choice.

Obviously though, an Atom feed is not valid RSS, but the RSS Validator does not tell you this. Dave could have just disconnected the Atom stuff, and made it a pure RSS validator, but I think the high road would have been to issue a message like so:

You have attempted to validate an Atom feed. This system is for the validation of RSS feeds. If you wish to validate an Atom feed, please use the Feed Validator.

Now, if Dave really thinks RSS is superior to Atom, or has advantages Atom does not (and I’m sure it does) he would have no problem doing this.

On the other hand, if the desire is to promote RSS, and pretend Atom does not exist, well, I don’t have a good suggestion for that one…