main bit This page looks very fancy in a modern browser, with "stylesheets" and "layout" and thing, but frankly I prefer the way you're seeing it here. Congratulations for not crumbling to the Browser Upgrade Initiative! Support the Web Designer Downgrade Conclusion!
a man slumped on his desk, from 'The Sleep of Reason Produces
      Monsters'

Oblomovka

oblomovitis

latest entry

this year
2006
2006
2005
2004
2003
2002
2001

rss

search entries:

usual, suspect

need to know

haddock

boingboing

current thrills

Thinking List

Delicious Links

EFF DeepLinks

sponsors

David McBride

Adewale Oshineye

Diggory, Andrew, and Matt R.

writing

ancient notes

why I like 802.11
senate committee letter
oscon2003
ms and free software

code

ubiquity
webolodeon
wat
tagling
haiku

info

e-mail

homepage

pgp etc

amazon wishlist

oblomov

the book

    October 2007    
Su Mo Tu We Th Fr Sa
    1  2  3  4  5  6
 7  8  9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31         
                    
<<Sep Nov>>

Currently:

2007-10-10

H-T-T-P, You Know Me

I've now had a few nightmares, I am sorry to report. Recurrent nightmares, or at least endless rehashing of the NIGHTMARE THAT IS MY BOURGEOUS LIFE was what led my subconscious to forgo the whole dreaming thing for the last few years. It's not too bad, though - my last nightmare had dragons in it. We hid under the kitchen table; very effective. Then, Mike Myers turned up and filmed the new Austin Powers in my bedsit. He's uch more humble in real life. And by "real life", here I mean "in my dream".

So, a lot of people smershed my mentioning of the old P2P revolution in the last entry with my general thinking about the future move to the edge. I hadn't intended to make a direct comparison, but it's worth noting, as many did, the changes in the network since the glory days of 2001, and how that would effect creating edge services now, as the P2Pers were trying to do then.

First, and most obviously, the massacre of dial-up users is proceding as planned. There are still plenty of them out there, but we no longer have to feel guilty if we do not care about them. More importantly, always-on Net connections are pretty much everywhere. Even dynamic IPs are generally fairly static in the medium term. Hooray!

Second, the realisation by most protocol-designers that it's an HTTP world, and that we just try and communicate in it. HTTP was a fantastic fit for the early net, so good in fact the modern Net has now co-evolved to be a good fit with HTTP. Nobody cares a goat's fig about NAT because it don't mess with the HTTP -- and that's one of the main reasons the Internet is now so NATty. That makes everybody lean toward HTTP to work well in this new infrastructure. One of the reasons why REST stuff just works is that it lives in HTTP space, so there are no sudden moves. P2P protocols have always had HTTP elements, but I think it may be true that whatever develops next in the peer-to-peer realm will just look like local webservers talking in a RESTy way with other webservers - or to talk with humans or other userspace applications (I count humans as a "userspace application").

A corollary of this is that I think you really have to just deal with everything else that comes with HTTP -- including DNS. All the old P2P dances have sexy URLs of their own devising, and hashes, and DHTs, and all that jazz -- but without popping up in DNS-land, these servers are just invisible to everyone. Even Microsoft's own P2P DNS-a-like, PNRP, falls into this category. Sure, your machine may be announcing to other Microsoft peers that it's My-Computer474342.pnrp.net, until Microsoft does the obviously sensible thing and starts resolving those addresses in standard DNS (please somebody write in and tell me they do) , those addresses are just burial plots in a walled garden.

(John Gilmore once proposed a decentralised solution to this problem, whereby the toppest level domain would actually determine which protocol the IP service should use to find the rest of the domain. The current TLDs would be grandfathered in as '.com.icann', '.net.icann', etc. You wouldn't need to change any URLs, because search domain '.icann' would be default. But 'My-Computer743473.pnrp.' would run using Microsoft's P2P name-finding algorithm, '7a7898bef783ed731aaf.bittorrentilikehashes.bittorent.' would find a bittorrent resource, and so on. Obviously this would reduce ICANN's role to one Postel-looking geek adding a list of protocols onto a list and chatting to the BIND guys. Since that geek wouldn't need a multi-million travel budget, it will never happen.)

But I digress. The key point here is that if you can control your own DNS, and your can control your own webserver, you're pretty much ready to go as a generic everything server on the Net, whether you're hanging off the edge, or partying in the affluent middle zones.

Oh, you say, but what about NAT! What about the unreliability of the edge! What about if the kitchen table was made of wood, and the dragon just went RAAAARGGGGH and breathed fire over the top of it?

These, and other nightmares, I will discuss after this word from my sponsors.


Stop the Spying!

The Democrats are currently considering caving to the White House on granting retroactive immunity to the telecommunication companies for breaking the law and spying on your phone calls. It's all going to happen this week. If you haven't already, please call the Congressional leadership and tell them not to give an amnesty for lawbreakers.

2007-10-05

Death by Boredom

The two background themes of this blog conspire: my digestive problem is keeping me awake, and stopping my dreams. Well at least I'm not fitfully asleep, dreaming that there's a small weasel biting the left side of my trunk or something.

Lots of great conversations with people about my ongoing flailing ideas here. I am awful at replying to email, because by the time I've found the reply button, there's another email to read and oh, bright shiny blog thing, but I did read them all. Even the guy who said that I'd just rediscovered Ray Ozzie's Groove (sorry if I was a bit rude in my reply, Andre).

What made me rub my hands with glee was that all of the replies were by people who I know are much smarter than me, which means I'd managed to fulfil my primary aim of expressing an idea so irritatingly vaguely that better heads will fill it in for me.

A telltale of my favourite smart people is that they don't prematurely pessimize, which is to blindly announce "Well that would never work because X, Y, and Z". Buzzkill. No, my kind of smart people go "Well, you'll have to fix X first, which I think you could do by doing A, B, and -- oooh, I bet we could solve 'Z' with some string and that doorknob over there! Let's go!"

However, to speed things along, I'm now explaining to such people there's a class of problems that I don't even want to fix in this thought experiment (which, to remind everyone, is -- what happens if we push to the edge everything that we're currently throwing onto Google Documents and other Web-based services). Examples of this class of problem in my gedankenexperiment are:

These are examples of problems that I hand-wavily announce will bore themselves to death. That is to say, I don't want to talk about them, because I believe they are very dull, and I am confident there are clever people who don't find them quite as boring as me will solve them for me.

There is risk here. You do have to be careful of what problems you assume will die of boredom, because sometimes they turn on you and bore your entire future vision to death instead.

NAT traversal is a good example of that. NAT traversal is a tremendously dull topic that was far too boring for most of the people excited about P2P technologies in 2001 to think about for very long (although the ones that did find it fascinating kept the rest of us up until 4AM drawing funny diagrams). They had a revolution to lead! Endless opportunity lay just beyond the horizon!

P2P was what Web 2.0 was supposed to be, incidentally, five years earlier, almost literally (the Web 2.0 conference came from Emerging Technology which came from the ashes of P2Pcon). Sadly, P2P never developed escape velocity, and the entire fledgling industry collapsed more-or-less into BitTorrent and Groove, and that was that. NAT traversal was one of the problems that still hinders it, as is the fact that client PCs generally don't act like servers, but vanished off and on the networks in irritating ways. By the time you'd coped with constantly self-dismantling networks and impossible to reach edge nodes, I understand most P2P developers wanted to gnaw their own legs off in tedium. The endless opportunity had to be endlessly postponed while everyone fixed this one last problem with getting the Network to work over firewalls, and with constantly changing dynamic IPs, and a whole rats-nest of other dull issues.

If you want a more modern way of thinking of the risks of a boring problem, think of the utterly dull issue of cross-platform JavaScript compatibility. An entire generation of AJAXian prototypes died on intranets because they weren't cross-platform, and it took decent JS frameworks and know-how built by Stakhanovite miners in the dark pits of tedium.

But we prevailed! The problem, pinned down by the corpses of endless headslapping programming hours, finally died of its own boredom, and JavaScript ultimately came into its own. About seven years later than anyone imagined.

Boring problems can heavily delay the arrival of the future, but they don't really change the game.

So because we are all Buckminster Fullerish futurists here, let's airily discount them. Our problems with bandwidth, at least in the United States, are down to awful, creaking monopolies, that will slowly die choking on their own gorged subsidies and foul bellhead toxins (and if not, there's always China). The fragility of harddrives isn't going to last another generation.

The unreliability of consumer connections, though. Um. I don't know whether this is a problem that will die or be fatal. One could argue that it was what actually *did* kill the P2P unboom. Certainly, unreliability is something that the Internet is supposed to deal well with, and when it doesn't, we could certainly do with some deliciously generalisable solutions. It's not like it's not a problem if you keep servers where they're supposed to be, in yonder cloud. When your main server goes down, what do you do? And can you do that when your edge server drops off the Net a couple of minutes every day, or a bunch of seconds every hour?

Oh, all right. Have your damn comments. You're just going to pile on and say you don't have the slightest idea what I'm talking about, and have I tried peppermint tea, aren't you?

|


                                                                                                                                                                                                                                                                                                           

petit disclaimer:
My employer has enough opinions of its own, without having to have mine too.