posted by killermike on Wed 18th Apr 2007 10:07 UTC

"The Machine Itself: Software"

The machine itself - part 2 - the software

The software requirements of this projects can be divided into two parts: the application suite and the operating system. For our purposes, an OS can be further subdivided into two parts: the base operating system and the front end. For this project, the user should be unaware of the base level of the operating system.

To ensure maximum use of financial resources, the smart thing to do on a project of this sort is to make use of existing software. This principle applies to both system and application level software.

Before specifying either the user interface or that application suite, we have to arrive at a determination of what the actual application requirements of this machine are. In other words, what will people be using this computer for?

Here are some application ideas:

  • Web browsing
  • Letter writing
  • Emailing
  • Programing
  • Games
  • Photo management
  • Media playback

The operating system - the GUI

We'll start at the top, the part of the operating system that users will interact with.

The for the last 20 years or so, the 'desktop metaphor' has been the dominant conceptual force in user interface design. Unfortunately, as outlined above, novice computer users find many aspects of the typical GUI confusing.

And it's not just novice computer users either. The PDA is a technological device that has had to evolve in a way that maximises its utility. When on the phone to a colleague, who needs some contact or schedule information, one doesn't want to boot up, find the appropriate application in a menu, load it and then maximise its window. When using a PDA, you simply, press the contacts or agenda application button and instantly have access to that information.

I think that this is a point that Palm got right fairly early on with their line of PDAs: they asked themselves the questions, 'what applications do our customers need?' and 'what information do they need to be presented with by each application?'. With such a PDA, rather than spending a couple of minutes to dig up the required information, one expects to have the information within a couple of seconds.

It should be obvious, at this point, that, in terms of concept, the PDA and the Neomicro have quite a lot in common. They both offer the user a similar approach: a specialised interface optimised to run a few key applications. Having identified the design requirement imposed by the expected usage of the Neomicro, I think that we can take some inspiration from the layout of the PDA user interface.

In place of dedicated application buttons, we can use a task-bar along one edge of the screen. All applications are loaded at start up and are always present on the computer. As each application runs full-screen, this is a tabbed user interface.

The designers of PDA interfaces perhaps had the limitations of both processor power and small screen size in mind when they decided to eschew the concept of overlapping application windows. However, I suspect that, in adapting to these hardware limitations, they stumbled onto an important user interface truism: I consider overlapping windows to be a power-user feature that only serves to confuse and slow down the novice.

The keyboard of the Neomicro, would feature a pair of dedicated 'nudge' buttons to move up a task or down a task. There isn't much to be gained from forcing the user to actually select the applications on the bar with a pointer.

'click, click, click' moves us from the email application to the web browser.

'click, click, click' back to the email application.

That seems like a model that the novice could understand and use, particularly with complimentary visual and perhaps even audio affirmation of where they were and where they were moving. Some types of application work best with a multi document interface. For our design, this means that the user will move left and right between application but also up and down to move between documents.

Perhaps, a similar interface could be applied when switching between the links or text entry fields on a web site? How about a pair of dedicated buttons to switch between entry fields on a web page? The 'select as you type' link selection of Firefox could be made good use of here. The standard mouse control via the pointing device can be resorted to as a fallback on those occasions when the website layout and design don't allow selection by other means.

The application suite

I envisage five or six applications. As stated before, these applications are loaded at the beginning and always present.

The text editor

The activities of notepad, email and word processor can be combined within a single application. A menu choice moves you between three different modes. Once the user has learnt to send an email, it's a small leap to see how he or she could have saved that document, locally, to make a note or print that document out in order to send a letter. There is no need to separate word processing, note taking and emailing into distinct applications; when a person wants to work with text, they use the text editor.

The web browser

This would be based upon one of the established rendering engines. Perhaps a one of the standard browsers could be stripped down and placed in a permanent kiosk mode? Bear in mind, however, that the browser is going to have to be fairly lightweight.

The browser would, of course, make use of the dedicated function keys in place of the icon strip and pull down menus that are feature on standard, desktop browsers. So, instead of clicking on the back icon, the user presses the back button. Similarly, to find text on the page, the user presses the find button.

The web browser: web applications

As discussed above, the text editor is a program with a single set core functionality that works as an enabler to broader functionality. The web browser should be utilised in the same way. Web applications can be used to extend the application functionality of the Neomicro. We can create a web portal to enable access to the extended functionality of web apps. Perhaps a fee based, function unlocking service could be used here.

Educational applications are an area worthy of exploration. Web applications, specifically tailored to the syllabus of a given course, could be created. For example, in the case of an introductory computer programming course, in which BASIC is being used as the teaching language, the Neomicro could be extended with a simple development environment for BASIC programming. It would all be wrapped up in the consistent, easy to use environment of the Neomicro.

The key to making a success of such educational functionality would be to liaise with educational establishments to discover what sort of software their courses require. As with the other points, it is essential that the Neomicro pick its battles, rather than going head-to-head with desktop PCs. For a user pursuing, for example, a Computer Science degree, a standard desktop PC would be a more appropriate tool than the Neomicro.

Casual Gaming

'Casual gaming' is the new buzz-phrase in the world of PC game development. Casual gamers, as a group, consist of both traditional non-gamers and lapsed former gamers who can no longer make the necessary investment of time required by deep, cutting edge gaming culture. Things like fishing simulations, computerised realisations of card and board games and gambling games are the type of game that interests this new, emerging group.

To the sort of person who lies awake at night, worrying about the shader performance of their graphics card, the gaming pallet of a ``casual gamer'' might seem a bland one but the market has spoken and these people are a rising power in terms of their influence on game development trends. It would be impossible for our machine to compete directly with either a decked-out gaming PC or the latest console but casual gaming could be a valuable, under-exploited niche for our machine. Nintendo can attribute much of their early market success in latest round of the console wars to their focus on traditionally un-catered for groups of potential gamers.

In practice, gaming would be an application on the task-bar. Games would be installed via the Internet. An important economy can be made here as art and other assets from a previous generation of game development could be reused. A slightly souped up version of Doom would be within the capabilities of the Neomicro, while perhaps piquing the interests of our user base.

Table of contents
  1. "Introduction; What Was Good About It?"
  2. "What Was Good About It?; The Modern Microcomputer"
  3. "The Machine Itself: Hardware"
  4. "The Machine Itself: Software"
  5. "The Operating System; Conclusion"
e p (4)    63 Comment(s)

Technology White Papers

See More