isn't quite ashamed enough to present

jr conlin's ink stained banana

2010-05-11

:: Mapping the Circular Road

Honestly, i've been watching the HTML5/Facebook discussions a fair bit lately. Not just because i'm a huge advocate of open protocols and formats over closed environments. Not just because i'm interested in how the public will finally react to the fact that all companies value your privacy, but for many, the real value of that privacy isn't keeping the data secret from everyone else.

Although i'll be interested in watching the firestorm once that little revelation sinks into the farm belt.

No, the real reason i'm interested in following all of this is because i've been running a personal experiment for the past twenty-mumble years. There's a pendulum in computer science that swings back and forth. It generally completes a complete reversal about every three years. That pendulum is the swing between client and server.

About every three years, opinion shifts between "The Client is All Powerful!" to "This Can Only Be Done on the Server!". "Client" in this case is a distributed, loosely connected network of entities, and "Server" is a centralized core which doles out information en mass to dumb clients. This cycle hits nearly every technology that uses the internet at some point. It's just kinda sad when i read articles from folks expressing some concern or uncertainty about what the direction technology is headed.

Originally you had massive VAXen that ruled the land with VT100s slaved to their masters. Then, with the introduction of PCs and smarter terminals, programmers realized that they didn't need "Big Iron" and the clients would rule the world! Then folks realized that clients have limited storage and that those storage requirements could be satisfied by centralized data stores, which could then be distributed to a network of peer machines, which would access central servers for web info, that could be generated on the client's browser, etc. and so on ad infinitum.

So, where is the pendulum now? It's a bit difficult to say, but i'm willing to acknowledge that it's fairly strongly pointing toward "Server". There's Facebook (which holds everyone's identity), Gmail, various API services, and what-not that serve up data to fairly smart, dumb clients. Those clients aren't really doing anything more than displaying the content. There aren't lots of clients that store your Google address book and correspondence history against the associations you've built in Facebook in order to figure out what restaurant on Yelp you should all go try.

The introduction of HTML5 (and more importantly, ECMAScript, localStorage and Credentials), will eventually allow more clients to do more, and slowly shift the pendulum away from "i have to use the Facebook Server because that's where all my friends are!" In many respects, Twitter is ahead of the game in that respect, partly because they're very actively encouraging developers not to just create a stupid client, but do something richer with their API.

Likewise, as crap as i think the iPad is, it's a step toward a smarter, distributed client. Wait, did i just say that? The iPad. The "i can only do one thing, and even then only what Uncle Steve will allow", iPad? Well, yes. Because it's running a fairly advanced platform called WebKit which will allow for applications to be written and work natively. It's not quite there yet, but it's getting fairly close. It's also never going to allow browser apps to do things like connect to peers easily, but that's not going to be a problem for more open devices. In either case, you'll see clients that tie into various data stores and services in order to let you control and mine your own content that's hosted on those remote services.

Of course, by then, folks will probably be talking about some new centralized service that will provide them with a better experience than the confusing, disconnected tech that's built from some amalgamation of data points.

And thus the cycle continues.

    What do you think, sirs?

    Blogs of note
    personal that's my blog
    (The Official Blog of the Internet)
    memoirs of hydrogen guy matthew shepherd (quebec) rhapsodic.org Henriette's Herbal Blog lynne ydw i slumbering lungfish
    geek Y!Cool Thing jeremy z
    (The Official Website of the Internet)
    dave's picks ultramookie Josh Woodward derek balling simon willison
    news ars technica search engine watch

    Powered by WordPress
    Hosted on Dreamhost.