Page 1 of 1

A new COMMAND KEY would bring new generation of OS

PostPosted:Thu Dec 24, 2009 6:02 pm
by thinhtq
by Tran Quang Thinh
Windows based OS marked the really significant role in 1995 with the birth of Windows 95. After dozen years of developing, windows show some drawbacks which may slow down skillful user.
Have you ever thought of a Windows_based OS without Mouse?
In these days, many children learn computer since they are at young ages. When about 18-20 years old, they are actually good user who can type or work on PC as fast as I do today (an user with 10 years of experience). This kind of OS design would make skilled user work more efficiently as I explained more as follows.
Now a day an user needs to work many application simultaneously, especially with user in Office, they might be as follows:
1. Winword
2. Excel
3. Windows Explorer
4. Internet Explorer
5. Print manager
6. Outlook/ Outlook express
7. Games
However, the sticky or smooth movement between Windows is not very easy. In fact, in order to move from Winword window to Excel window, you have to use mouse (taking few seconds to find mouse and look for proper window). Another way is that you press combined keys such as Alt + TAB to move sequentially to Excel window. Let’s imagine if you just push a button to call a command window, then you type “goto excel1” you will be at Excel window. This is clearly save time of users.
An advantage here is that you find it easily to remember a command like speaking expression than remember two keys ALT & TAB without any clues to remind you about next or previous windows.
Moreover, the menus or buttons on a control window are always limited. You cannot arrange a lot of menus on a small area. In constrast, the commands are unlimited. Let’s ispect an example, if you want to change selected font to Arial 11 with blue color, how can you do with current Winword? You have to move the mouse to font box, then choose arial, then press TAB to next input and type 11 (size). What happens if you just push a key then type: “font arial size 11”The comparison of Windows with New Windows
As convention, I call the new Windows OS “TalkWindows”, that means this new OS could
support talking or voice commands better than the former.
This table shows some disadvantages of Windows and how they are made good in Talk

Windows.

1. Windows
User needs to find or look into menus then run after windows. So he becomes slave rather than master of Windows.

Disadvantages of using mouse:
* When using mouse to locate a menu and start an application or function, we have to look at the mouse to see the exact position so that we are distracted by this action
* Thinking progress becomes slowly .
* Mouse used by only hand with active index finger to click to run a task.

Moving the mouse to locate menu’s position make us boring as well as cannot accumulate
experience throughout the time.
2. New OS
When user calls or requests (here means does simple actions), the menus or windows appears immediately.
The frequency to use mouse reduce considerably much
* We could use keyboard in almost all tasks
* Thinking is not stopped or distracted by viewing.
* Could use all fingers when typing, thus the speed of INPUT is faster.

Should be make user become concentrated and interested thanks to the self-studying process as we learn a language or writing.
For example, the more skill an UNIX user is, the shorter command he type.


Windows Start button:
1. Fixed position
2. Do not show the point of thinking

Start by a think point:
3. Flexible position or thinking point
4. Show the working process

Some main key points
Command Line Call key (CLC key or TALK KEY): is a special key which help the user to call the command prompt (this appears in some Maxcintos PC and then removed). In Windows OS, it is Windows and Menu keys. However, these two keys are not preferred by users. I think this is basic of inheritance theory. The command prompt which will appear is not normal command prompt, we call it Special Command Box (SCB) and see more in “Structure of Talk OS or Object Oriented OS” section.
Undoubtedly, the newly supposed OS will start by Command Line Call key (CLC key), but that key is change to flexible key. What is flexible key? Let’s imagine when you are working in certain progress and you suddenly press this key, the new OS is able to sense the current context, and do suitable action depends on this point of progress. For example, when you are working in Winword, then you press CLC key, it will show you the menus or functions which support operation in Winword like font format, alignment, or an option for the whole document. When you are at the desktop and press CLC key, it should help you do some tasks which are concerned to short cuts, icons on the desktop or some things relating to OS.

Object-oriented application
Every application could be considered as an object – defined similarly to objects in programming languages such as C++ or Visual Basic. As a result, they may include two main parts: method and property. Methods could be considered as functions, which fulfills a specific task basing on parameters provided to them. For example, an instance of Winword may implement the task with this syntax: format font arial 15p, it will format the selected paragraph in active document with the font named Arial and the size 15 point. The second part, property, means the data of that object.

This data could be changed or affected by application when it calls a method. In the former example, the document is considered as data or property.
A new point in an instance of application is that each of them has a gate, or an interface for the whole instance. When the OS wants to ask this instance to do a job, it has to talk to the application via this gate or interface.
Based on the above supposition, I suggest the operation of the CLC Key to work like this:
1. When CLC key is pressed, the OS would be called. At the mean time, OS needs to identify the current context or active windows in which the user are working.
2. The OS shows a command like, it looks like a google search text box on google search homepage.
3. Certainly, the user then puts the commands in the text box, then the OS will runs.
4. Based on the current context, OS may translate the commands into OS standard in order to fulfill them properly
However, I would clarify these steps by the following example:
Example 1:
When people are working on the Winword, he would like to make a copy of the current document to the backup directory, say C:\backup, he could do like this:
1. Press CLC key to make the command box appear
2. Type: win copy this to C:\backup
It may be explained that: win means this command should be implemented in Windows Context, copy this means copy this current document. It is clear that the commands look like DOS/UNIX

commands to some extent.
Example 2:
When a user is working on the Winword, he would like to change all text to the red color and

Tahoma font in size of 13 points he would do like this:
1. Press CLC key
2. Type: Select All
3. Press Enter key
4. Type: font color red size 13
5. Press Enter key
Explanation: When user types: Select All and tries to run, the OS understands that the current context is active document in Winword. OS will send this command to Winword through Winword’s gate (interface) and then this gate forwards the command to Winword to fulfill.

Consequently, all the characters in active document are selected.
Next, the user types in: font color red size 13, the OS also find that there is no WIN keyword (to do it at OS level), so that it give that command to Winword. As mentioned above, Winword continues to change the font color and the size as requested.
The new OS will have a lot of threads or tubes which cross all the instances of applications to convey the command in command box. The user may manage all the threads which could be called threads of thinking, so he becomes the manager of all system.

Key hub, which helps to define key-set for each application. Thanks to the invention of USB interface, now we could easily organize a key-hub, which allows some keyboards to connect to.

As we know, with the multi-touched screen, Apple has gained a huge success because people find out their interactions are more convenient. However, some activities when using this touched screen or mouse are not fully satisfied by users either. In reality, each user tends to use specific some high frequent keys depends on their work environment. For example, when witness some engineers or people who work in designing building, I found they use mouse and extended keys very much.
A businessman often use applications such as MS Office, Ms Project.. which actually need them to use some functions like format fonts, paragraph arrangement, and the jump among documents and section within a document. In my opinion (as an support engineer), when Windows support a lot of drivers and make it easier to setup the system, it does not support for application like that.

Application or system setup is rare task (just few times for long time of using PC) while some applications is used quite frequently but users still need time to find menu and command to run it day by day.
Key-set for application means we could make specialized keyboard for every application. For example, Winword key-set includes some keys like New, Format, Adjust, Save.. Multi-touch technology has gained a great success, in particular case of iPhone. However, I think touch screen is not enough, we should have a special keys like push, pull, turn, pick.. like currently real activities and then the application would be intuitive and flexible. In order to do that, we need: 1. each key in key-set could be defined as combination of keys, then when user press a key in key-set, that mean they press some keys such as CLOSE; 2: message exchange between applications, for example, when this key pressed, the CLOSE command would send to specific application in the same way you press CLC key and then type CLOSE command. This means a key is equal to serial of normal keys, such as CLOSE key is equal to press serially C-L-O-S-E.

Then this CLOSE message is translated to currently active application or others depends on the syntax of command line. This helps users to map menus or function to a specialized key which has a shape suitable to that function. Therefore, Windows could allow third parties to develop specialized keyboard for application (many types of keys) accordingly.

Search for menus or buttons: this idea is from many Oracle application allow you to search command or menu then put it on your running applications. Moreover, the rapid development of Google shows that user do not want to remember information or menu/command. Therefore, command search or menu search feature should be enabled. Thanks to that users could easily search a command or menus if they remember some features or function of those menus or buttons. Then they could use them or put them on working areas (which is more flexible than current customized menus). In fact, with the complexity of Windows, more commands and menus should be searched by search box (I recommend to use SCB). When we allow application object to have properties and methods (like .NET programming) and allow users to transfer message to application object properly help users to remember easily and manipulate on application. More than that, users could remember commands logically.

Naming Application and Short Command line: this is idea is from the fact that we often call an objects a name in order to remember. We should use this theory when working with application on Windows. For example, while doing on Winword for a document, I could press CLC key to call SCB, then type: NAME docu1. After that, I could recall it by typing: JUMP TO docu1.

Mouse on area, which different from current mouse is working on point or some points. Mouse areas mean we could define a size of a mouse (for example a circle or rectangle where mouse take effect). This is from the fact that people in reality do not care about exact position to interact with object. To combine this with specialized keyboard, it is very convenient. Which allow you to manipulate object very fast. For instance, when a mouse area is on a Winword application, I use a SCROLL key of application keys (this key has a shape like rotated button on cassette), my action will highlight buttons serially such as I move my mouse over those buttons. When I press on MINIMIZE button, the application is in mouse-area would be minimized.

Supposed components of Talk OS (New OS)
1. Basic theory
a. We find it easy to remember sentence or speaking which familiar with natural language.
b. Modern users could type or input faster if the commands contains normal characters than special characters such as @#$$%, etc.
For example: you could type “ls to fileA” faster than “ls > C:\fileA.txt”
c. If we have limited commands, we could record those commands and use voice recognizer to translate voices into commands. Even users who are restricted by particular voices could update their special voices to database for recognition. In fact, audio equipment are quite popular today.
d. We normally remember a part of whole system. For example, you just remember “change font” rather than the whole command or menu such as “1. Open Format menu; 2. Run Font; 3. Change fonts”. Therefore, the assistance for user to find out requested buttons and menus which are concerned to a subject or words is necessary.
e. To use syntax like Windows.Close, Text.font= arial .. is rememberable and convenient.

2. Structure of Talk OS or Object Oriented OS.
a. Talk OS
i. Command Interpreter
1. Syntax database
I. English sentence -> interpreted to commands
II. A certain language -> English -> commands
III. Voices recognition for popular commands such as: goto, directory, make, delete…
IV. I suggest commands with full sentences like PASCAL language or Visual Basic, this could help us to support Voice commands
2. Function for change/update voice command or text command
3. Function for execute commands
4. Some examples of commands
I. Show desktop
II. Set font = 14
III. New mail to xyz@abc.com
IV. Copy to new winword document
V. Goto windows excel1
VI. Open ie site www.msn.com then activate Winword
ii. Command windows
1. Command window is where people type TEXT command or speak VOICE command. They could directly type TEXT there or they could speak a sentence, this sentence appears as a TEXT command then the user could correct before running that command.
2. Short keys to activate command window (as Winkey + R). Here I suggest only ONE KEY not two keys for activating command windows. This key is kernel of INTERFACE between user and OS as well as applications. I call this key “TALK KEY” (referred as CLC key above).
3. Command window is illustrated on picture below with areas
I. Text input for commands
II. Options for command: Windows command, Web search or Windows help
III. Result area where all the results are displayed
IV. Google.com website could be considered as an example of command window.
iii. Windows
Windows in Talk OS are same as current windows. There are some features mentioned below.
1. Menu or command is colorful and grouped into areas for easy usage or addressed.
2. There is auto-scroll mode, where all menus of certain function (for example Tools in Winword) automatically scroll. If user want to run or choose a menu, he just presses Enter key.
3. Window may be multiple directions compared to currently 2 directions. I suggest to scroll horizontally to gain control table of active windows (when you scroll vertically, you are paging up or down). Therefore there are some changes:
I. Control window (windows with button, menu, or command line list..) occupy full screen. There is filter to view just menu, buttons or command list.
II. On control windows, there are many sections with different colors. When you are working on control buttons, you just surf through buttons by color and take a second to address a button.
III. Buttons in control window could be arranged or sorted on a sheet like excel sheet. Therefore, user could reach a button by pressing specific combined keys as AA, AF, F8, A4….
b. Applications
i. User could call the command window in any active windows. For example, while working with Excel, they just push TALK KEY and the command window appears.
ii. Each application could consist of two parts, method and property which are familiar with Visual Basic Programmers.
iii. Property
1. This is data concerned to specific data of application or user.
2. For example, in Winword application, property could be: selected text, paragraph, font, options, table..
3. In Excel, property could be: sheet1, sheet2, cells, font, result
4. In Windows Explorer, property should be: directory, files, style..
iv. Method
1. Each application has a lot of functions of specific types such as menu, button, and command.
v. Talk OS gate: where application exchanges controls with Talk OS
c. Relationship between application and Talk OS
i. Common interface diagram
ii. Data exchange
iii. Control exchange
3. Some examples of using Talk OS
a. Example of commands while working with Windows Explorer
i. List files
ii. Copy C:\temp\a.txt to D:\temp\b.txt
iii. Rename D:\mydoc\abc.txt to xyz.doc
iv. Copy/ Rename/ Cut/ New Document…
b. Example of commands when using both Winword and Windows Explorer
i. Print file
ii. Save File to other path
iii. New Email
iv. Insert file to Word
c. Example of commands when using some applications and Windows Explorer
i. Print All Current Word
ii. Sort All Windows Ring/ Square
d. Example and analysis about thinking point of user
i. Using Mail/Document/Sheet
ii. Using many application to update a project
4. Used as Firmware to WINDOWS
a. General installation
i. Shortcut or short key: may be Start key.
ii. Customized by users.
iii. Execution Key (should be Enter)
b. Update voice command
i. Define TEXT command and VOICE command
ii. Mapping between TEXT and VOICE commands.
iii. Define Windows macros, command scripts
iv. Mapping commands to macros
5. Language training progress
a. Training of abbreviations
b. Training for voice commands
i. Standard voice command
ii. Customized voices which users try to input will replace standard voices.
iii. Display voice command on command window so that user could change before running.
c. Training of complicated sentences
6. Other components:
This is other component in Command window when user run a command but this command is not right or run immediately.
a. Three options on command window (like Google.com webpage) that are
i. Windows command
ii. Internet
iii. Windows Help
b. Report of suggested commands with button results
i. For example when user type: “font format”, there are some suggested buttons would appear.
ii. Report is combination of text and command and menu
c. Mechanism to use result (buttons, menus, commands, services, attributes) as fast as possible.