What a personal computer should look like

This is what Ithink a personal
computer should look like. To really know, one should actually have one
which conforms to the ideas I express below. I have written them down as
they came to my mind with no special order.

I would like to receive your comments on my thoughts. You think I'm wrong, or
right? You know about a personal computer which does all I request? Please
write me: private@claudio.ch.

What do I want it for

The remarkable feature of the computer is, that it is a device which can
serve multiple purposes at the same time, depending on the software it runs.
Besides that it is able to store massive amounts of information in diverse
formats: text, pictures, audio and video.

So I'd like to condensate as much as possible into one portable box.
Regarding information, I want it to hold what now is dispersed in photo
albums, cassette tapes, CDs, VHS cassettes etc. Technology might not be
at the point where I can store everything today, but at the current rate
of increas of storage densitiy, that's only a matter of time.

As an example: Shortly after I got my Powerbook, I met with some
high-school buddies. At some point we started to talk about the
elementary school class reunion two of us were at, and how some people
seemed to look the same now as they were then, and others were hard to
recognise. I had my laptop with me, and on it a copy of my web pages,
including the ones with the pictures of the class reunion and the old
school pictures. So I could show to the others, because I had them all
with me.

But I also want it to replace as many devices I have in my
houshold.
Basically I want it to be able to perform all those function, which it can perform
without a drastically different change in design. Should it be able to replace
your portable tape recorder? Yes, it can, most computers today have audio in- and
output as well as a pair small loadspeaker. Should you be able to cook your meals
with it. Not with todays technology, as turning it into an oven would drastically change its
shape and make it no more a portable device. But maybe future technology
may allow it to add the capability of operate as microvave oven, without
changing size and weight, or compromise the other functionalities...

It's a notepad

The most important requirement is, that it should be very similar to the tool
I use mostly, beside my workstation, and this is paper and pencil. So it has
to be a pen operated notepad.

But not just a PDA thing. I want to use this
computer for all my needs, and not just as a replacement for my agenda. So it
has to have a color screen as large as an ISO A4 paper sheet (similar to US
letter format). It has to be (almost) as powerful as todays notebook/desktop
personal computer/workstation.

I have owned a Palm III for a bit more than a year. I used it also to
carry with me some not too long text, to read during longer train
travels. Yes, it works. But now I've got a PowerBook. It's a great
difference, if the display can show you only unformatted text in a 5x7
font on a small, black and white only screen showing just 20 lines with
40 characters, or if you can view a full page of a PDF document with
nice formatting, drawings and color pictures on a 14" screen like the
one on my laptop.

One way to overcome the display size limitation of PDAs, is the use of
those virtual reality headsets, or the devices which, using a laser beam,
draw directly on your retina. I view this as half a solution. It solves the
problem for yourself. But what if you want to look at some documents together
with a few other persons, not equipped with such devices?

Why not speech input/output

Some think the future personal computer will be a very small device without
keyboard and display. You would communicate with this personal computer using
speech, you would talk to it, and it would answer you.

In my opinion this vision is wrong, for two main reasons.

First graphics/pictures can't be transported very well through speech, which
is purely text oriented. Very often I use pencil and paper when I try to
explain something to somebody, as little sketches help a lot. In various
scientific and technical disciplines diagrams and other graphical means are
used to convey information.

Second, there are many occasions where talking is not appropriate. Picture
just that, you are a professor lecturing in front of 200 students who take
personal notes using a speech input word processor. I guarantee you will go
mad.

Nevertheless, I could imagine very well to have speech input and output on a
notepad, as an additional communication mean. Besides the obvious application,
i.e. using speech to enter text, I can think of these other uses of speech
input.

One kind is what I call "within the application use". Let's say you are using
some program, which has a great range of commands. So the menu becomes quite
large and deep, and it takes often several steps until you reach the
sub-sub-sub-menu containing the command you want to execute. Speech input
could offer an easy way to select the command, you just say what you want.

The other kind I call "out of band communication". Imagine this, you are in
the midst of using an application, and suddenly wonder, whether it is time to
stop your work, because you have some meeting to attend, or other appointment.
You normaly would have to interrupt your work, to start your agenda
application, lookup the information, then close that application. It would be
way easier, if you could, without interrupting your work just ask:"Computer -
when is my next appointment?" and get a spoken answer.

Battery life

After how many minutes do you have to recharge the batteries of your sheet of
paper or your pencil? Ok, stupid question. In any case a battery life of 2-3
hours is unacceptable. I have to be able to use the thing during the whole
day. It has to work while I'm awake, and may rest only when I'm sleeping. So
16-20 hours of usage, after a recharging time of maximal 4 hours are
acceptable. The charging time should not be more than that even if I let it
continue work.

Boot time

How much time does it take to boot a sheet of paper? Yes I'm stuck with stupid
questions. What I want to say is, that a sheet of paper is ready immediately,
while most personal computer or workstation take minutes to boot up. This is
unacceptable. A modern processor can execute something in the order of 1'000'000'000
instructions per
seconds. Using a flash ROM for storing the most important parts of the
OS and the basic applications, should make it possible for the notepad to come
up in less than a second.

What's true for system startup is of course true also for switching it off. It
should not take any time. The system should always be in a state were one can
shut it off, with minimal data loss.

Responsiveness

--- Nothing takes more than 0.1 second to do.
---

This bold statement is here to say, that I want a computer that feels
fast. Microprocessor speeds have increased by many order of
magnitudes in the last years. Nevertheless when I'm using a computer today, I
often have the impression, everything is as slow as ten or twenty years ago.
Part of this feeling may come from me not remembering anymore how it was back
then.

But part of it comes from the fact, that while applications themselves may be
faster, e.g. the spreadsheet will compute 1000 times faster, the user
interface is written in such a way, that the interaction steps are still/again
slow. Or the operating system (OS) is written in a way to cause this effect.
E.g. most modern OS swap out memory of processes which were idle for some
time. When I then click on the window of such an application it takes some
seconds, until it reacts on my click. This gives me the impression of a slow
system.

Thats why I request, that OS and applications be designed taking the 0.1
second rule into account. I think a system which would rather leave out some
features in favor for showing a very responsive behavior would suit me more,
than one with zillions of features of which I probably would use only a small
subset anyway.

To login or not login

I have up to now seen two kind of operating systems. There are those like DOS,
which do not require one to log in. The drawback is, of course, that whoever
has access to your computer can read and modify all your data. Then there are
those like Unix or Windows NT, where you have to log in, before being able to
use it. The drawback is, that you have perform some useless operation (log in)
before you can start to do your actual work, very unsimilar to your piece of
paper, which is ready for use immediately.

Besides that there exists a third possibility, which I have seen in
"specialized devices" like terminal servers. You can use a subset of functions
immediately, but have to identify yourself, to use more "privileged"
operations. E.g. when you switch the notepad on, you would be able to
immediately use it to toss down some notes. But to be able to permanently
store them, you would have to log in.

I could imagine, that the boundary between non-privileged functions and
privileged functions could be user-defined, and could go through applications.
Let's take an appointment calendar as an example. I could imagine, that it's
possible to call up the calendar even without logging in. It would then show
you when I have appointments, and when I'm free, but you could not see, what
the appointment text says. This information would show up only after "logging
in".

A further idea would be that the computer tracks user interaction and
from this determines a probability, that it is used by user a or user b
or somebody unknown. Each action which needs protection from abuse has a
threshold assigned. E.g modifying the agenda of user a is allowed, if
the probability that user a is using the computer is greater than 70%
while digitally signing an e-mail with user a's key requires a
probability of more than 99.9%.

Doing something which only user a can do, e.g. entering some
complicated passphrase will increase probability to be very near to
100%. Doing nothing will decay probability over time. Doing something
which user a would not do, e.g. giving a wrong answer when asked for the
passphrase would drop probability to a value very near to 0%.

Daydreaming about key generation

When you log in, you have to provide some secret key, the password. This is
also true, when you encrypt some data. Usually, the key is just some text. In
case of a notepad, the text is written by you by hand. Instead of converting
the trail of ink to actual text (character recognition) and use the text as
key, one could use the ink directly to generate the key. So a drawing could be
used as key as well.

What I imagine (without knowing, if it is possible to do) is this. One writes
or draws something two or more times. The key generator analyses these two or
more drawings and extracts the features which are identical in all of them, an
somehow computes a key out of it. Depending on the features found the key
could be larger or shorter. The more complex the drawing, the larger the key.
The more similar the two or more copies are, the larger the key.

In the following three examples, the first would result in a short key,
because it is a simple drawing and the third one would result in a short key,
because the three versions of the drawing differ very much. The second example
would have the longest key of the three.

The reason for doing more than one drawing is obviously, to make the key
generator know how good you are in reproducing it. If all copies are almost
identical, then you will get a large key. But when you later want to use the
key, your have to reproduce your drawing almost exactly. If you take the first
example above, then you have to reproduce a cross looking like an X. One
looking like a plus-sign (+) would lead to a different key. On the other hand,
for the third example you must just draw something which resembles a car to
recreate your original key.

Screen

I already mentioned color and that it should have the size of a "normal" sheet
of paper. Additionally I'd appreciate, if I would not need a special pen to
write on it, not only because I fear I would not find it, just when I need it
urgently. I think that a pad which reacts on pressure, and maybe can even
register the amount of pressure, could be the basis for a more larger area of
applications.

I could imagine the notepad as the input device for all appliances in my
house. Suppose your television, Radio, CD player, all connected via a LAN.
When you are at home, you "connect" (may be wireless) your notepad to it. You
would get on your screen an impression of the panel of the appliances, which
you could manipulate, by simply pressing the buttons with your
fingers.

I mentioned earlier, the virtual reality glasses type of display. One thing
which I think I would dislike with theses, is the lack of connection between
input and output device. Immagine a drawing program. Using it with the mouse
has its limitation, so that computer artists prefer to use a graphic tablet
as input device. And even this seems unsatisfactory, as now Watcom, a producer
of such tablets, introduces tablets with an integrated screen, so that
output and input device are merged. So one argument more in favor of the
notepad.

Handwriting recognition: to do or not to do?

On the Palm PDA, when you enter an address, each letter is immediately recognized by the device
and stored as the recognized letter. This is the right way to do for this kind
of application, because its purpose is to store the information in a way so
that it can be retrieved later by some search on the data. So the computer has
to know that your ink is a sequence of ASCII/Unicode characters and has to
know the values of the characters.

On the other hand, I produce often notes and sketches which have a very
limited lifetime. In these cases, an immediate recognition process would be
hindering. I would be forced to correct wrongly recognized characters. This is
extra work, which is not worth doing, which takes time, and which hinders the
normal flow of work.

So both modes should be offered, and there should be an option, to change your
mind later, and request, that a note you have written at an earlier time is
converted to characters, or whatever is appropriate.

User's view of the file system

Some thoughts, how the file system could look like to the user, without
knowing, if this is better or even worse than what we have today. One should
actually try it, to be able to judge it.

A "traditional" file system has two components. There are files, which are a
composition of a name and a heap of data. The name is used to refer to the
data. Directories have also a name, and some data. The data is defined to be a
list of names of other directories and files.

I would try to leave away file and directory names. The way to locate a file
would be through query on the content instead of a name.

Some sort of directories would still exist, and enable to attach different
files one to another. Directories could not be accessed directly. Rather there
would exist operations like "show me all other files attached to this file, or
this collection".

While it would be possible to put directories into other directories, they
would not be forced to belong to a single tree. The norm are files and
directories which don't have parents.

I had the idea of using queries, because I felt that quite often you use
traditional directories to structure your files according to some criteria.
Sometimes, you'd like to structure the files according different criteria, and
this leads to a great bunch of "symbolic links" or "aliases".

The public domain software I install on my workstation is a good example. I
install each package in a directory like /opt/amaya so that I can
easily find all files belonging to amaya. But then I have symbolic links in
/usr/local/bin and /usr/local/man and so on to the
same files, so that I have all binaries and all man-pages in one
place.

With queries I could define the "/opt/amaya" directory as a view on all files
belonging to the amaya package and "/usr/local/bin" directory as a view on all
executable files.