Friday, July 30, 2004

Spatial vs Navigation User Interface (Editorial)

Many operating systems are choosing if they want their file organization as spatial or as navigational in design for users... Spatial design builds around the fact that it's easier for users to locate objects by their location, size, view, colors and so on that don't change without the users explicit actions. Navigational design builds around the fact that instead of browsing every object in it's own window, you browse from a single location using functionality like history, bookmarks and path jumping to easily go through deep levels of objects. The problem is that choosing either one has it's limitations. While spatial might be superior for small simple users who don't have much objects it's a pain for using on web-sites or with users who have a vast amount of information to organize. Their is always a maximum a mind can remember and asking the user to remember the location of 1,000 collections is not the way to go. Asking him to organize in to fewer collections just makes it harder to scroll to object 100 in the collection. While navigational browsing might not remember anything you tell it, it eases large browsing requirements. Not that spatial is not an excellent design, but it's more useful for objects you use frequently since their position & size can jump immediately to mind. Screens Environment will merge between the two. Every object can be browsed spatially, navigational or even both. Just like a file system where you can have shortcuts to files, Screens Environment has shadows of windows. A window shadow receives all the information from the original window but can override for the shadow properties like position, size and view. Changing the original window does affect the shadow (apart from overridden properties) but a change on the shadow does not affect the original. This allows to navigate through every spatial object with a single window view. The browser window (navigational) allows to shadow another object and override it's position, size and view to the properties of the browser window without hurting your existing spatial settings. Users have been using alias/shortcuts for years, why not apply this for the desktop. You can open any object in spatial or navigational view (if you open an object in navigational view from a spatial window, a browser window is displayed) without hurting the spatial design. Even web-sites which normally you use navigational methods you can set a specific web-site to be spatial (usefull for thumbnail web-sites) where every page has it's own window representation. You can of course remove spatial properties from objects if you wont be using the objects to much soon or you can even set an expire date like a year away since will you actually remember that an editorial was in the top left a year later... I have trouble remembering who I was chatting to yesterday. Of course actions are more than words... but this gives my general view on the matter.

Key to Action mapping

At the beggining it was simple... all PalmOS devices had the same button layout. Then came the jog-dial from Sony, the direction pad from PalmOS and then the Zodiac extra buttons. Keys are good things... they provide extra uses for the device from starting more applications with a single tap to playing games with more functionality, different key layout for different devices are going to change even more. Screens Environment solves this from the core. Instead of applications checking if 'hardbutton1' or 'hardbutton2' was pressed, they check if 'left' or 'right' event was recieved. So instead of applications checking for keys, they check for actions. You can even receive multiple actions at once like fire+left or jump+fire. While applications can still deal with buttons if they need to, it's not recommended. By having Screens Environment do this for you, it allows every application written for Screens Environment to able to be hardware-button independent. In the system, each action is attached to a key however you can specify a 'global' profile or even for each application (like games) in one single window without having to move between each application properties and modifying the key mapping. These will allow hardware designers to able to design the device for thier users and not for the operating system.

Thursday, July 29, 2004


This is my first blog posting... anywhere... wish me luck I am still having trouble with the object storage in it's design of link relationships. If anyone can help please join me on MSN Messenger at For first time users... while I cannot go through the entire feature set of this environment the key parts are as follows: 1. The environment is still in development... it does not exist yet... nor is thier a demo/screenshots 2. The release will cost 15$ but it will come with a demo version available 3. While the first releases wont support external applications, you will able to use the enviroment for it's launcher/organization features. 4. Screens environment has a window/layer components to allow users to have a desktop like enviroment right on thier PalmOS devices. 5. Screens environment works on any device from PalmOS 3.0 to PalmOS Cobalt/Garnet 6. If you want a free release or want to speed up development, chat with me as much as you can on MSN Messenger. Chat is what moves this project more than anything. Blog specific ideas can be posted in the comments section. Enjoy