For recreation, some people like to do NY Times crosswords
puzzles in ink. Me, I like tackling small, incremental,
computer programming tasks. A few years ago, that was
Gump, these days it is the
Feed Validator.
And until I wrote that sentence, it hadn’t occurred to me how
similar those two tasks are: the immediate goal of each is to get
consumers and producers talking about interfaces, with the ultimate
goal of improving plug and play.
As it happens, this particular morning I was coding up initial
Feed Validator support for
Media-RSS when Tim pings
me via Google Talk to
discuss a few Feed Validator issues. I point to a
section in an RFC, Tim
points to another section, we both (re-)learn something, we
both make changes, and we both deploy them.
Everybody’s happy.
Along the way, I discover that ''.encode('idna')
returns '.' in Python 2.4 and '' in
Python 2.4.2. This is important as
urljoin(baseURI,'') and
urljoin(baseURI,'.') mean completely different things
if the base is
http://www.tbray.org/ongoing/ongoing.atom.
Another lesson learned. Another lesson committed to
code. And now the Feed Validator works the same on both my
laptop and on feedvalidator.org.
In his post Recreational Programming, Sam Ruby says: For recreation, some people like to do NY Times crosswords puzzles in ink. Me, I like tackling small, incremental, computer programming tasks. I can totally relate to that, as I’m sure many...
I’m not quite sure I really understand what Content-Location is actually for, even after reading the related bit in the RFC. Darn lack of examples. Out of curiosity, how likely do you think it is that someone might accidentally use Content-Location when they meant Location?
As I see it, Content-Location means “use this as the initial value for xml:base”, and Location means “go here to find the content”. Both may affect whether or not the Feed Validator is convinced that the self link that you may provide at the feed level is accurate.
Interesting. One more thing I guess I’ll probably have to change in FeedTools before someone decides to write some kind of conformance test or something.
I’ve never been comfortable with Content-Location. It doesn’t just set the base-URI does it? It seems to be primarily for providing a direct URI for conneg’d content so that the current entity is addressable (like a cooler Etag). Used that way, its side-effect of setting the base-URI seems orthogonal and more of an annoyance, as it requires the direct URIs for every variant to have a compatible URI layout so that relative links don’t break.
RFC 2068 had Content-Base and Content-Location, but Content-Base was deleted because “...there is no simple, safe way to introduce it without a robust extension mechanism”. I don’t really get that? Why was it safe to introduce Content-Location, but not Content-Base.
I sent an email to Dave Winer and Rogers Cadenhead yesterday morning with a question: Which came first: the business disagreement or the problems with the RSS Board? If the issue between Dave Winer and Rogers Cadenhead was one of two people...
Lately, in between wedding preparations and other goings on of late, I’ve been doing some navel gazing and thinking about my enthusiasms and what’s next. And, there’s one conclusion to which I’ve come, which is yet...
Lately, in between wedding preparations and other goings on of late, I’ve been doing some navel gazing and thinking about my enthusiasms and what’s next. And, there’s one conclusion to which I’ve come, which is yet half-formed but I think...
Given the relaunch of OpenSearch, and given that OpenSearch results can be included in feeds, it seemed time to spend some of my recreational programming time on adding Feed Validator support for the OpenSearch namespace extensions. The spec is cleanly...
[more]
Mark Pilgrim: I’ve certainly been having a lot of fun with SVG. It fits in the rather mindless activity that I call recreational programming and works well with my preferred development environment...
[more]
I have been recently involved in a discussion about modifying styles for HTML elements: usually it happens by changing the class attribute of an element from one style rule to another, which are typically similar, differing only for one declaration...