User Interface - noware/cyborg GitHub Wiki
- ability to easily access source code
- ability to easily execute programs
- ability to easily access the shell
- unified simple interface that works well on desktop and hand held device alike.
- accessing application source code
Many hand held devices have poor interfaces with source code. The conventional way of creating applications for hand held devices is via software development kits running in Integrated development environments running on desktops.
- executing programs
Hand held devices today have have refined this aspect of the interface. Simply clicking an icon will open the program. Though many hand helds only allow for one process to run at a time. This approach is inhibiting as it doesnt allow for an ecosystem of cooperating applications to function well. Each application is a single silo with all dependencies bundled together.
- access to the shell
Handheld devices need to install 3rd party applications that will give access to shell commands. In many cases these devices need to be rooted.
- unified interface
Handheld devices have a particular type of use. Large easily clickable buttons seem to be current way of doing things. This interface doesnt work well for desktop computers. Failures, for example the Unity interface, tried to unify the two interfaces. It didn’t work. Microsoft went a step further with Surface device by supplying two user interfaces. One, a desktop mode to be used with a keyboard, the other a hand held mode, with all the large buttons.
- accessing application source code
a button for opening files in edit mode is displayed. Simply moving the cursor over the file name then clicking this button which is bound to button 1 on the mouse will open the file for editing in another column.
- executing programs
a button for executing programs is displayed. So moving the cursor over the icon/work then pressing this button executes the program. This button is bound to mouse button 2. A column will be used to display the executed program.
- access to the shell
simply typing a command in any place then button 2 clicking on it will executed the shell command.
- unified interface
This unified interface emulates the Plan9 operating systems main IDE called ACME, written by Rob Pike. ACME is well designed program written in typical Unix style. The depth and scope it covers is quite astounding. It I add will be a fine interface for the advanced user to interact with the Cyborg platform. Please read [this](http://doc.cat-v.org/plan_9/4th_edition/papers/acme/)