It’s just data

Elevator Pitch

Tim Bray: Stop the Metaphors!

Fully Disagree.  Metaphors are perfectly good thing to have, in a P.T. Barnum sense.  And, it is working.  Go with it.

The tipping point was Google Maps.  The tip of the iceberg was AJAX, and that’s the bandwagon that a number of people have jumped on.  And on balance that’s a good thing as people who previously had clung unto the idea of a fat client are starting to let go.

Of course, the rest of the iceberg was that Google had simply tiled the Earth.  In so doing, they converted a single web service (call me with a bunch of information, and I will provide you with a custom result) into a large number of individually addressable, cacheable, and scalable web resources.

What we need is more elevator pitches, not less.  When I see somebody who wants to demo for me their latest “REST based” web service, the first thing I ask is; “do you support ETags?”

And when people are trying to grasp what the web is if it isn’t a bunch of web services, remind them that the web isn’t a service (i.e., a verb) at all, it  fundamentally is a space (i.e., a noun).


I agree entirely — all language is inherently metaphoric and relational. (But maybe that’s just the old lit crit in me rearing its ugly head.) In any event, Sam, you’ve unearthed a great new meta-punny construct yourself: The Tipping Point of the Iceberg. It’s gonna take a wikifull of 2.0 deconstructors to tease that one out...

Posted by Mike Wing at

We can name it later

Tim Bray: "The Web isn’t a platform or a database or an API or an OS a cloud or a clickstream or any other of those things. In fact, the Web isn’t even a thing, it’s a mesh of agreements with a nice straightforward engineering rulebook. Play by the...

Excerpt from James Snell at

An Inconvenient Truth

Sam Ruby thinks concepts like The Tipping Point Of The Iceberg are useful. I find this acknowledgement of marketecture’s role...... [more]

Trackback from franklinmint.fm

at

Metaphors are a platform

Tim Bray doesn’t like Web metaphors: "The Web isn’t a platform or a database or an API or an OS a cloud or a clickstream or any other of those things. In fact, the Web isn’t even a thing, it’s...... [more]

Trackback from Read/WriteWeb

at

Metaphors are a platform

Tim Bray doesn’t like Web metaphors: "The Web isn’t a platform or a database or an API or an OS a cloud or a clickstream or any other of those things. In fact, the Web isn’t even a thing, it’s a mesh of agreements with a nice...

Excerpt from Read/WriteWeb at

The web is a “mesh of agreements” sounds like another metaphor. . .

Better call an English major.

Posted by Jay Fienberg at

ETags Support in Aggregators

Did you notice Sam Ruby’s new preoccupation with ETags? When he’s talking with founders about their new web services, “the first thing I ask is; 'do you support ETags?'” I’m so glad that he’s doing that, and talking about it publicly. I’ve been a...

Excerpt from dekstop weblog at

Hasty Generalizations

Jon Udell:  Only if you consider the Google maps interface of today and the MapQuest interface that existed at the time Google maps was introduced as being “roughly the same”.  I don’t.  The abstractions and patterns... [more]

Trackback from Sam Ruby

at

Fallacy of Composition

Don Box:  The optimizations that GET provide are cheap, but not free.  I continue to use my elevator pitch frequently.... [more]

Trackback from Sam Ruby

at

Sam, at the risk of sounding incredibly stupid, I’d like to ask a simple question:

Granted that one publishes a web-resource (as opposed to a full-blown web-service API) that is guaranteed never to change more than once per second, will serving it only with a “Last-Modified-Date” header and no “Etag” header have any adverse effects for either the publisher, or the consumer of the resource - or anyone in between?

I guess I always assumed that Etags were just considered more “1337” than those old-skool timestamps, or something. ;-)

Posted by Már at

Granted that one publishes a web-resource (as opposed to a full-blown web-service API) that is guaranteed never to change more than once per second, will serving it only with a “Last-Modified-Date” header and no “Etag” header have any adverse effects for either the publisher, or the consumer of the resource - or anyone in between?

No.

While it is theoretically possible to find a consumer that only supports one or the other, it is unlikely.  And caching is “just” an optimization — meaning that you only need to worry about the common cases.

But should you still be concerned about it (I wouldn’t be), the Etag could have exactly the same value as the Last-Modified date, just in double-quotes.

Posted by Sam Ruby at

I’m assuming you’re talking about web browsers? It’s not uncommon for RSS readers to support only the one or the other. Last I checked (which would have been last year some time) I found 6 supporting both, 6 supporting just one (evenly split between ET and LM), and 3 supporting neither.

Posted by James Holderness at

Thanks for the answer.

In a recent project I started out also serving Etags that were just the modification timestamp in (milli)seconds  (allows easy comparison), but I then decided against it as it seemd redundant, both in terms of bandwidth and processing time...  (It had to be highly optimized).

I never considered the possibility that some clients might only support Etags.  It seems awfully weird to write a HTTP client and only support Etags/If-None-Match ...  But that’s how it is, so I’ll probably have to deal with that one day.

Again, thanks.

Posted by Már at

WS-* vs. REST: I see the light!

So .. it took a while to get through my full head of hair and really thick skull, but I’ve finally seen the light with regards to the power and coolness of REST over WS-*. After lots of careful thinking, ably assisted by the many conversations with...

Excerpt from Sanjiva Weerawarana's Blog at

Sam Ruby: Elevator Pitch

[link]...

Excerpt from del.icio.us/jrun/rest at

That Darned Cat! - 1

The Twitter Maintenance Cat The performance of Twitter as of late has been abysmal. I’m getting tired of seeing tweets like “Wondering what happened to my last 5 tweets” and “2/3 of the updates from Twitterrific never post for me. Is this normal?”...

Excerpt from Patrick Mueller at

More Resources == Scalable

Link: Sam Ruby on Google Maps Of course, the rest of the iceberg was that Google had simply tiled the Earth. In so doing, they converted a single web service (call me with a bunch of information, and I will provide you with a custom result) into a...

Excerpt from abstract final at

Etags? I've never even heard of eTags!

Etags cure cancer! Etags let REST replace WS.* Etags help blind children understand colour. Etags are magical lightning bolts of clarity in a world of confusion. Etags can be just like date stamps but with double quotes around em . (note to self --...

Excerpt from secretGeek at

REST Can't Handle Rasters and Coverages?

There may be geospatial problems that REST can’t tackle, but access to arbitrary regions of a coverage is not one of them....

Excerpt from Entries for import cartography at

We can name it later

Tim Bray : " The Web isn’t a platform or a database or an API or an OS a cloud or a clickstream or any other of those things. In fact, the Web isn’t even a thing , it’s a mesh of agreements with a nice straightforward engineering rulebook . Play by...

Excerpt from James Snell at

We can name it later

Tim Bray : " The Web isn’t a platform or a database or an API or an OS a cloud or a clickstream or any other of those things. In fact, the Web isn’t even a thing , it’s a mesh of agreements with a nice straightforward engineering rulebook . Play by...

Excerpt from James Snell at

Erlang, Yaws, and ETags

Regarding my “RESTful Services with Erlang and Yaws” article on InfoQ.com, Sam Ruby said: This otherwise excellent article fails my ETag test. When Sam speaks, I listen, so I’ve given his feedback a lot of thought. As I wrote in a comment on Sam’s...

Excerpt from Steve Vinoski's Blog at

SOAP vs. REST - why should you really care?

For many moons, the WS-* crowd, and the RESTafarians have argued. But what are the real differences in the two approaches? Although the argument is old, I still get asked for my opinion on this quite regularly - so here it is: If you control the...

Excerpt from Applied Life at

The Web, Absorbing Fools Since 1991

I liked, really liked, Jim’s Notes from the Aussie Architectural Astronaut Assembly but do have a small 409 Conflict with the assertion “REST isn’t simple”. It is true you have to be a protocol weenie or an unconscious idiot before you can...

Excerpt from Paul Downey at

[Updated 2] Atom-PubSub module for ejabberd

As requested, the Atom PubSub bridge This module offersr an AtomPub interface to ejabberd PubSub data. Currently in two unfinished flavors, one for use with yaws embedded. One for use with ejabberd_http server Howto You need to have Yaws available....

Excerpt from Le coin de cstar - Home at

Tasty Rails Caching

Tim Bray:  While I agree with that, I claim that the potential benefits are much more than that.  Much more.  Furthermore, the upcoming Simpler Conditional Get Support is not the only arrow in Rail’s quiver, and not always... [more]

Trackback from Sam Ruby

at

Broken ETags in the Wild

I’ve had a good teacher . Just noting some of the things I’ve come across. Default Apache httpd configuration in a cluster with multiple filesystems By default , Apache httpd generates an ETag of the format inode-filesize-timestamp . A symptom of...

Excerpt from James' Pad at

ETags And Modification Times In Django

When I see somebody who wants to demo for me their latest “REST based” web service, the first thing I ask is; “do you support ETags?” — Sam Ruby, 2006 This is the second part in a series on implementing fine-grained HTTP controls and developing...

Excerpt from Defying Classification at

Flash and the Firefox Reframe Problem

So I spent the last two days trying to figure out why Firefox insists on reloading flash content whenever I flip around in my tasty javascript-y tabbed interface. You haven’t seen this? I’m not surprised, it really only occurs if you’re embedding...

Excerpt from Flavoriffic at

Add your comment