Monday, March 29, 2004

It makes sense that cars have brake lights and turn signals. But why stop there? There's more information I'd like to have about the driver in front of me, and much of it can automatically be generated.
  • The "I haven't used my turn signal in five years" signal. This warns me that the driver is likely to merge into my lane without warning.

  • The "coffee cup in use" indicator, hooked up to the driver's side cup holder, turns on for five seconds after the cup has been removed from the holder, to warn me to watch out for violent swerves due to hot liquid spills.

  • The "child in car" light turns on when the child seat is occupied (clearly this requires modified child seats with radio signals and weight detectors). Now I know if the parent is likely to weave back and forth as they reach back and try to pick up the needed toy.

  • The "music volume" indicator tells me if the driver is likely to be listening to overly loud music and have their foot too heavy on the pedal -- and unable to hear me honk.

Clearly these indicators would improve public safety, and since we know there's no cost too high to save a child's life I expect these improvements will be adopted immediately.

Friday, March 26, 2004

Ooh, I finished something new-- the seaweed stole! Eric S. thinks it looks like an octopus when I'm holding it in my lap and the ends hang down. I'm going to finish a skirt too before I start something new. More pics on my knits page.

Tuesday, March 23, 2004

John Klensin & I have been talking about how to use Jabber/XMPP and AIM (or other IM systems) with one client running, instead of two. John compiled some recommendations on that after our discussions and his experimentation, and was kind enough to let me adapt that for this post. Note that XMPP is Jabber's standardized cousin, which many Jabber implementors are moving to. For clarity I'll call both Jabber because the two are compatible.

There are two basic approaches to single-client multi-protocol IM support:
  • Use a client that supports many protocols natively. I've used Trillian to do this on Windows systems, and was happy enough to pay the $25 for Trillian Pro so that I could run the Jabber plugin within Trillian. On a Macintosh, I've started using Fire, which is free and just works (for Jabber connections, just put the whole JID (user@example.com) in the buddy "name" field.)

  • Use a client that supports Jabber natively, and a server that gateways to the other services. For example, Exodus is a focused Jabber client (it does a good job of supporting Jabber rooms which is not too common yet), and it also allows you to talk to AIM/Yahoo users through a gateway if your Jabber server has gateways.

The first problem with gateways is usability. It's hard to sort out what address to use so that a gateway understands who you want to talk to. Then, once you connect, the user on the other end sees a mangled addres for you -- one that the gateway invented so it could handle a number of users and receive their messages and route them properly. When setting up buddy permission, the other user might see a confusing message about adding you to their buddy list because not all systems have the same semantics for this step. Then once you're on each others' buddy lists, presence information might get miscommunicated. (John had some tips for getting this to work, which I put at the bottom of this post).

The second problem with gateways is privacy (or security). The way AIM and Yahoo are designed means that the gateway has to connect as you -- AIM and Yahoo weren't designed to have servers involved that aren't their direct control. So you have to tell the gateway your account and password information for it to impersonate you.

Many in the XMPP/Jabber community think gateways are the way to go in the long run, despite the usability and security problems. Here are a few reasons:
  • It's a lot of work to write a client that supports so many protocols. Coding/design effort has to go into handling all the protocols, rather than good user experience. The client may not be free after so much work -- take Trillian pro for example. But even if you're paying for Trillian Pro, its developers/designers decided not to handle all of the features of all of the systems Trillian connects to. For example, Yahoo supports an "invisible" mode, but even though Trillian connects directly to Yahoo using your Yahoo account it won't set you to "invisible".

  • It's a lot of user work to maintain two to six different accounts, which means identities, and juggle them all. What happens when I use AOL, Yahoo and Jabber with Fire, and I want to connect to a friend that uses AOL, MSN and Jabber with Trillian. Do we use AOL or Jabber? Which one works best? Do I have two listings for my friend in case one is unavailable?

  • The protocols used by AOL and Yahoo IM change frequently. Every time that happens, Trillian and Fire users have to upgrade their client software. It's less of a burden overall to upgrade a gateway that serves hundreds or thousands of users, than to upgrade all those users clients.

  • In the long run, the hope is that all IM systems will accept that IM is an Internet-wide system, not controlled by any one company. When AOL, Microsoft and Yahoo accept this, they'll start to migrate their systems towards the IETF standards that have already been put in place for IM addressing and for standard presence information formats. Then gateways will work a lot better, without so many hacks for address translation and presence information translation.


John's tips for gatewaying with Exodus
John just got gatewaying working with Exodus and documented his steps.
  • First, find a Jabber server that supports gatewaying. Not all of them do -- e.g. "jabber.org" doesn't do gatewaying. If you've already got a Jabber ID on a non-gatewaying server, you can keep it there and use a different server for gatewaying, but John doesn't recommend that -- there will be some availability hiccups as you now depend on two servers being up, not just one.

  • Next, you need to define and register with each gateway service first, the process that involves supplying your identity and password for that service and binding it to your Jabber ID.

  • Finally, to create a new buddy through a gateway, you have to put the transport type ("AIM" or whatever) in the "Contact type" field, the handle or screen name (only) in the "Contact ID" field, and the server name (in foo.bar form, not aim.foo.bar) into the "Gateway server" field. That results in a Jabber ID of ContactID@aim.foo.bar, but this shouldn't be a user issue.

Monday, March 22, 2004

Yaron posted an article on why he chose LinkedIn over Orkut, when he decided to only use one personal-connections site. My reasons for choosing only Orkut and not LinkedIn -- although for the same basic reason that I can only handle upkeep on one, not two -- are much more frivolous. Basically, Orkut looked more fun, sleeker, and more experimental. Since I use these services for a while until I get bored and then stop visiting, I look for a transitory entertainment value rather than a long-term career or business advantage.
Friends asked me to post my Korea travelogue, so here it is. I'll link in some of the more interesting pics if I get time.

Wednesday, March 17, 2004

I recently got back from two weeks in Korea -- one week for IETF meetings, and one week for sightseeing. I stayed in Seoul because there was plenty of interesting stuff to see there and nearby, including palaces, the folk museum, the modern art museum and the national museum with plenty of paleontological material from the Korean peninsula. I took a bunch of pictures but I really like this one, showing the icicles hanging off the eaves of a building in Gyeongbokgung palace.

Blog Archive

Creative Commons License
This work is licensed under a Creative Commons Attribution 3.0 Unported License.