Doblets for Dummies

Doblets for Dummies

Mark Hooijkaas, $Revision: 1.1.1.1 $, $Date: 2000/10/12 02:15:31 $

Introduction

What is a Doblet

A Doblet is a "distributed object". This means that it is a "software object" that is distributed over several computers.

A software object basically can be anything you can imagine running on a computer. Examples are dice, notebooks, card game, documents, video games, musicplayer, .....

The distributed nature of doblets, means that several computers interact to provide the behaviour of the object. This means that if the object is ditributed over your computer and the computers of several friends that they all use the same object that you see. If you throw the dice, all your friends see it and vice versa. Other computers need not necessary have humans involved. A doblet can also be a ticker tape view on your computer that retrieves its real-time stock quotes from another (server) computer.

Why should I use doblets

So doblets are distributed objects...... Now why would I need those things?

Whenever you want to do something that involves multiple computers, there might be a doblet to do that. If you want to play Yathzee with a couple of friends just start 5 dice doblets, and possibly a notepad for keeping scores and you are all set to play. If you want to use to your calendar from anywhere in the world, just connect to your calendar doblet on the server computer and add an appointment.

Now it is true that the scenario's described above are already possible with certain technologies

  1. There already exist many different chat applications with all kinds of different features (whiteboards, voice chat, video chat, and many different kind of games).
  2. There already exist many web services in which you can search, view and manipulate very different kinds of information (financial data, calendars, mailing lists, .....)
Doblets try to add something extra to these existing technologies:
  1. For chat applications it will be much easier to add new functionality (objects) to your doblet environment, instead of using dedicated applications for each feature. Having all features in one environment, makes it easier to combine different features (e.g. inventging a game that uses dice and a whiteboard).
  2. For web services, the service can be much more interactive than the standard show-me-a-new-page (document retrieval) behaviour. Seeing your stock portolio change over time, with red lights signalling problems, would be possible without continuously clicking for a new page.
The most important improvement would be to use all these different features and services from one software application: your DobletBrowser. You only need to install and learn to use one application, your DobletBrowser to connect to all kinds of different doblets. Just like you can do all kinds of different things from your web browser by retrieving all kinds of webpages.

The doblet environment

The DobletBrowser

As a user you will mostly use the DobletBrowser to be able to use doblets. Whenever you want to use a certain kind of doblet, you just type in the url of that doblet in your DobletBrowser (of course it will also be possible to use a list of favorite url bookmarks from your browser, or to use hyperlinks from webpages or other doblets). The DobletBrowser will then connect to the doblet indicated by that url and download the part of that object that needs to be on your computer (the client code).

The whole process of connecting to a doblet with a doblet browser is very similar and just as easy as requesting a webpage with a web browser. In fact the only difference (apart form underlying techniques and protocols) is that doblets in general are more interactive objects, while webpages are more static pages. In fact webpages and doblets will probably be integrated in various ways:

The DobletServer and Doblicator

Scenarios