Chapter 23. unDE Architecture: Navigation

Nikolay (unDEFER) Krivchenkov


Recently I happened to meet with mobile phone Samsung SGH-D780 Duos. It is phone with two SIM-cards, but it is not about that. Since the first edition of the book by Alan Cooper "The inmates are running the asylum" mentioned in the previous article has passed more than 10 years. However this strange thought in the header remains till now true. On phone interface it is possible to tell that its different parts (music player, calls processor, radio, voice recorder etc.) were written by the different poorly linked developers teams. A simple sign of the crude interface -- operation with a wireless headset. So to make through it a call -- just dial a number with audio connection. To play music in music player through headphones, regardless of the audio connections, it is necessary to select "play via Bluetooth stereo headset" and then to select desired device. I'm certainly not against a choice, but after all it is possible to make that by default the previous choice worked automatically. But dictophone record or music in the browser it is impossible to listen via the Bluetooth headset at all.

Let's consider on example of headsets a difference between tasks and the goals of users. This difference is well underlined in Alan Cooper's books and its knowledge is useful to us further for unDE interface development.

Let's consider two users who wish to listen to music by means of the mobile device everywhere, including street or transport. Their task is single, but the goals can be absolutely different. Suppose the first user wishes to listen to music with maximum quality and that extraneous sounds did not disturb to it. Then he select headset with closed headphones allowing to close ears from penetration of sounds from outside. This person will increase music volume at maximum if sound insulation of headphones constrains sounds from the outside insufficiently.

The second user wishes that his life has background music, but thus to keep in touch with the outside world: to hear that to him have told a quiet voice, to hear noise from coming nearer car on the street from safety reasons. Headphones of open type become a choice of such user for certain and it will never set maximum volume. And even on the contrary - will often set its minimum if around not so noisy.

Thus the task of these users identical (to listen to music), and here the goals are absolutely opposite (to keep or not in touch with the outside world) and therefore the choice of product for this goals will be very different. For this reason goal-directed interface design is so important. Alan Cooper writes in his books about this.

Having made so long digression we'll come to the essential of this article: "Navigation". I should mark that the navigation design in phone Samsung SGH-D780 is fulfilled well. In the majority of menu the pointer by default is set on the item selected last time. It is very convenient at travel on menus tree and execution from time to time of similar operations. Such behaviour completely corresponds to the main unDE idiom of navigation.

However, in unDE will also act Zoom-interface. Thus there are two variants of implementation of transition between documents. Suppose we are in some directory with documents. Each document in this directory is displayed in the form of its preview. The preview looks so as document was last time on the screen when it was edited. At approaching the document on screen automatically appears the page which we edited last time. It looks natural and simple until you have to think about the reverse action - moving away. At moving away on the one hand there should occur zoom view a document, and on the other hand (at some point) - moving to more top level hierarchy of documents. Since zoom out to the limit will lead to unrecognizability of the document on preview, an user often will use other mechanism of navigation (not zoom in/out) to go up. The use of absolutely different mechanisms to solution similar tasks is inadmissible. Therefore despite interesting properties of such navigation organisation including described in the penultimate paragraph of "General interface sketch", article, lately I more tend to other way.

Documents previews will look thus as book cover. When zoom in to it so that it fills all viewport of the document we automatically go to the content, zoom in the content will be detailed and eventually we will already view the document text. It is important to note that edited text will not be shown in a pages layout mode immediately. Such behaviour leads to appearance of horizontal scrollbars at zooming in and to ineffective using of space at zooming out. Much better at zooming in to reduce quantity of words per line and automatically to transfer them. At zooming out back - to increase quantity of words allocated on a line, and thereby significantly to increase volume of text allocated on the screen, effectively using space. Now such behaviour well-known to us on browsers. We will extend it and for text processor and we will divide the task of documents creation into subtasks of a set and marking text, thereby having simplified the task of creation of competently issued documents. At text marking it will be impossible to edit the text directly, but pressing of one key it will be possible to solve such tasks as an insert of a nonbreakable space, a page break, line break without creation of new paragraph.

At zooming out transition to more top detail level will be carried out as soon as the size of main text of current level becomes less than 8 points. Thus at return approach by default the increase centre will be allocated there where we were last time. Change of centre of approach can be carried out for example by the right mouse button. However all it still is subject to discussion.

At this time our study Blender approached the most interesting part -- animation creation. The first 3D-animation created by us is named "Ice fall to glass of water". You can view it on Youtube or download in MP2 format. Rendering time of this animation is 2 days on the computer with processor about 1,7 Hz. And on modelling has left in total about one week. Naturally the second time the same can be created much faster. And if glass had strict cubic shape, and it would not be desirable to create splasing out glass effect it would be possible to spend less time (including processor). You can easily find other video with demonstrating of fluids simulation in Blender - in some there used cubic shapes of vessels, in others - not transparent liquids and vessels (for example, milk and a ceramic bowl). Know - that such animations to create to be realistic in Blender much easier. Logo