| E-Mail: | jaco@donotenter.com |
| WWW: | www.donotenter.com |
Table of Contents
Graphical User InterfacesGraphical User Interfaces (GUI's) have become more important since the improvement of the hardware capability of computers - it has become the "software" engineer's answer to organizing data for the user; where before a computer's power was limited by the hardware - hardware is now leaping in-front of software's ability to organize, display and retrieve data for the user. Interface technology has made several shifts within the development of computer technology; now, new types of data organization are needed to keep-up with the memory and speed improvements of computers. Information itself needs to be re-organized in order to be presented in a format that can be useful for the "information user". The re-organization of data requires a new paradigm of evaluating relevant information. Consider the advancement of distributed networks; computing power can now be spread over an entire nation - single locations can now share in the dissemination and routing of information - unlike never before, we are now capable of processing masses of information, complex algorithms, and prove mathematical "truths" with the great speed, accuracy and completeness. The computer is a wonderful tool to sort out subtle truths hidden within a exhaustive mass of information. This has become a problem for computer users: How does one format information? What new relations are similar between different sets of information? What algorithms can be used in parallel when sorting and selecting information? Some of the problems of organizing information can be solved with hardware solutions. For example, Apple Computer in the early 80's took a bold marketing risk with their Macintosh operating system. The trend soon became an industry standard with Microsoft's Windows and Sun's X-windows supported by Motif. The involvement of many new companies supporting GUI operating systems has given the end user almost too much choice: the results are interesting: in commercial and development environments application developers have a wide choice of special packages they can use to develop software. For example, DOS users might feel comfortable with MS Windows because they don't need to toss-out their existing hardware - developers can continue to target the markets they have developed in the past. Also, programmers with a different experience on differing operating systems can now work in several operating platforms at one time. Windows allow several OS platforms to be open at one time; a user can switch between windows with a click of a mouse. Microsoft Windows will soon will gain more powerful networking ability with its new Windows NT system which will push the need for a system to link different operating systems. Windows and X are Graphical User Interfaces - they have expanded the power and flexibility of the end-user. But along with extra power, the problem of too much information surfaces. How much power is enough? Along with many of the packages available to the user, most will not be used by the user all the time. Extra options in software use-up extra memory and speed. Companies are solving this dilemma by offering a base operating system with extra options for more power( i.e. Visual C++, and Motif's widgets ). GUI's grew from the need of users to process great amounts of information. But here GUIs are leaving the Open Systems mentality because separate hardware companies are developing software particular to their hardware platform - the very problem that GUIs began to solve can easily begin all over again due to the specialty that users demand. This problem also is apparent in the development community: conventions of information depiction need to be developed in order to be useful between a wide range of cultures, technical ability, and more sublime traits such as age, sex, and religious convictions. For example, what is the best icon image for an action? Does a programmer/developer consider cultural, religious, or personal information when selecting an icon? Certainly. If the purpose is to communicate ( which it is ), then common conventions need to be used. An object in the GUIs definition holds information "behind the curtain" - behind the real meaning of an icon. The view into the computer is bidirectional. It is as important for the user to know what they want as it for the computer to know what the user wants. By setting up the data for the user and the defining processes available, the user is able to see beyond this curtain of represented icons. These objects that become familiar to the user are called constructs. They construct the join of the computer's power and the user's insightful ability to disseminate information.
RETURN TO TOP OF PAGE
Information DisseminationInformation is many things to many people. Even the use and functional importance of information is debatable between end-users ( yet, between programmers who have always used a line editor, the freedom from information might be more productive ). For example, the lowly worker might only care about the amount of his new raise; while the manager only takes an interest in how effective the raise is on the production rate on the manufacturing floor. Both viewpoints use the same data - but each has separate interpolation. Similar separated viewpoints of a software's utility exist.
,
each function
is added up as the number of tasks that a particular
software is to perform. In this example each amount of
information that is expressed and controlled will be each
.
So the cost adds up for the developer and the user. When
working with great amounts of information, the programmer
needs to consider the additive relation of information
processing. Graphical User Interfaces offer a platform
(workspaces) that simplify information - therefore, reducing
the cost of its use. John Dickinson writes:
"The promise of a consistent user interface gave the computing world hope that anyone trained to use a graphical program could easily be trained on another, because most major elements of the user interface would be the same." Footnote1 But this is NOT the case! The cost reduction ability of a GUI can become increased if the major elements of the user interface are not the same. But what has resulted, is the standardization of the kernel's ability to process data which the GUI gives it. In several cases the interface is needed logically close to the kernel; to help in the scheduling and resource management of the OS ( Macintosh ); while UNIX and Mathematica use a kernel separate from the hardware which can be governed by an external notebook GUI. Hardware offers much computing power to the user; most users want to have it all at their fingertips, even if there is no way they can use it! So research is turning to new visual tools that will reduce the development costs; along with the cost of dissemination cost of information itself when the software is used. Some of the overhead costs of information processing can be handled by hardware solutions. The use of multi-displays, virtual reality, and multi-media can simplify the classification and clarification of information. The systems of controlling these new technologies are still needed - humans just can't keep-up with all the information hardware can give them! The change in the working environment means both development in software and user mentality. But along with the introduction of new systems of information use, paradigms of information representation need to be changed; without this metaphysical growth, data is separated from its implementation. The programmer's task is to provide channels to information - and hopefully offer relations that can be applied to other groups of data. Here lies the power of GUIs. GUIs create a platform where data is "grabable" and "usable", and therefore easier to disseminate.
RETURN TO TOP OF PAGE
Solutions to the Information JungleThe introduction of Windows-Icons-Menus-Pointing (WIMP) desk tops offered an efficient answer to handling information - but new desktop solutions are on the way. WIMP gave the Macintosh in the early '80s the competitive edge in the market because it offered non-technical users a simple interface to the computer. Using icons a user could manage files and applications - Apple continued this "user-friendly" mentality by supporting an icon network desktop with it's AppleTalk Manager. The Macintosh Toolbox provides a collection of common routines that demand consistency from any application run under the Macintosh OSFootnote2. These Routines are stored in ROM; this hardware solution used the existing technology where no software answers existed. Applications are freed from defining lower processes ( GUI constructs, I/O, resources, etc.). This gives developers a solid foundation to begin programming. This foundation makes all resources standard, yet, still allows applications the freedom to work on many types of data.
fig. 1 Parts of the ToolboxBeyond the constraints that Apple placed on the location of the Toolbox handle addresses ( Apple kept the Toolbox routines proprietary due to IBM's competitive desires ), all the GUI components were available to developers. This modularity allowed many developers to concentrate on software development using high-level languages. Years latter X-Window's Motif would follow the same profitable marketing scheme. When Apple Computer, Inc. decided to commit to this platform it actually began to change the mentality of the end-user. Their goal (and gain) was to make an easy to use interface; yet, the power of the 68000 chip was still available. WIMP introduced indirect manipulation of hardware processes through firmware and created isomorphic tools that could be shared (that demanded to be shared) among applications. This technique is classified as WYSIWYG ( What You See Is What You Get ) - that is, all the powers of the interface are apparent when you need them. This technique still allowed the desktop to change according to the application - yet, the desktop could not become too crowded because information overload might occur. (A good example of information overload would be listening to several radios at the same time!) A desktop is a workspace. To much or too little information limits the workspace. Data and relational abstractions can be built from a second technique - YANTSWIBTC ( You Also Need To See What Is Behind The Curtain ) Footnote3. Here a user can define how the workspace will use the data and relations on that data. The structure of how the data will be displayed is apparent in what you notice as choices. That is, "what's behind the curtain" is apparent from the type of "curtain". One concept of a computer's ability to solve problems of information manipulation is considering a Information Workspace as the functional location were tasks get done. Tasks can be Room oriented - each room has entrances and exits as physical rooms have. Within each room constraints can be place on the functional and relational use of the data being processed ( user choices change in each room ). Each time the Workspace changes rooms the information constraints can be altered to fit into the room's function. This frees the user from defining new relations while she performs tasks on the Workspace.
RETURN TO TOP OF PAGE
Information VisualizerAlong with the events, nibbles of information, and queued
processes that an end-user might wish to manipulate is
included the complete representation of the of how this set
of information can be manipulated (i.e. the Join of all
possible events). The organization of how retrieval takes
place can be tagged along with the data, processes, etc.,
which are acted upon. Considering an
Increasing the amount of room that a user has to work in allows information to be held in low-cost storage. Consider that a monitor screen itself is a memory device - however the information is changing depending on the constrains of the output. Typical memory is considered static - at least for several microseconds; but, where a typical user may take within 10 seconds to process elementary tasks, the screen image holds a record of "work in progress". Footnote4 Within a 3D space the experimental GUI Information Visualizer uses the following methods to navigate 3D space:
Agents delegate the workload by handling searches, controlling clustering and hierarchical organization. Agents can search for particular information or hierarchical structures. For example, if a user knows that what he is looking for is in a particular structure; an agent can "look" for that structure. Real-Time Interaction, tuning the processes to the real-time human responses. Because a human is limited to how much information he can understand, it is important that a system be in place that formats the workspace response speed to meet the requirements of the application along with simplifying the displayed information. Visual Abstractions place information in perspectives that can be quickly understood. The display agents show structural relationships and context that would difficult for the user to define. Some examples of 3D visualizations:
These methods decrease the number of events (processes) and organizational structures (objects) needed to run applications. The change of Workspace definition frees the user to think more about working with information rather than defining the relations and constraints on the information being processed. For example, a desktop could be set up like the office: for printing, one goes to the shipping room, for accounting: the accounting office, for relaxation, the game room, etc.
RETURN TO TOP OF PAGE
Information MentalityGUIs have the ability to stupefy the user; it is dangerously easy to escape the world of code structures and concentrate on flying through a 3D world of data that before was never before perceptible! When considering the GRAPHICS in GUIs a developer needs to tailor the workspace within practical limits. Semiotics is the study of signs; GUIs uses signs (things that represent other things) to condense data. Icons, symbols, and indexes are used to distinguish information; yet, these are broken down even more in order to refine data:
Along with these are: lexical GUI definitions which describe how visual objects ( primitives such as lines, circles, points ) collectively form shape, size, and environment. Syntactic GUI definitions which determine the simplicity that visual objects can be used and semantic GUI definitions which express the correctness of the symbols are clustered together to display both the information and the "road-map" to the information.
RETURN TO TOP OF PAGE
GUI Construction LanguagesVisual Basic / Visual C++Microsoft's Visual Basic is a GUI construction program that helps developers design visual Microsoft windows applications. It uses a Pusedo-basic programming language similar to BASICA and GW-BASIC. Visual Basic supports:
Visual Basic opens up a form where the developer "draws" her application using the Toolbox ( a set of buttons similar to any common paint programs ) to "draw" the end-user's workspace. This is called the form; each form and tool is an object - with each object are a set of properties. The developer is freed from knowing the particular properties for each tool because the Visual Basic OS changes the constraints according to what object is being programmed. Along with each object is a shell of the object code. Links to parents and child objects are rewritten by the OS. The OS also frees the user from connecting resources to his workspace (form) - more development time can be put into relations between objects and not the objects themselves. Microsoft is introducing new additions to the GUI environment with it's line of Visual C++, OLE 2.0 (object linking and embedding), Visual Control Pack, and other packages which will speed up Windows development.
RETURN TO TOP OF PAGE
MathematicaWolfram Research, Inc. developed a software package that performs complex mathematical computations. It uses a central kernel that performs all the calculations; the front-end of the program is specific to the hardware platform being used. The front-end is defined as the Notebook ( the GUI workspace ). Notebooks are interactive GUI documents that are used to communicate to the Mathematica kernel. Within the Notebook front-end events are controlled by WIMP constructs. Commands are separated by a hierarchy of cells which contain text, graphics, I/O, etc.. The kernel and front-end can operate separately ( i.e. on different computers over the network ).
Communication with Mathematica to other programs can be done using a high-level communication standard called MathLink.
RETURN TO TOP OF PAGE
ActorActor, created by The Whitewater Group, Inc. is an object oriented development environment that runs under MS Windows. Everything in actor is an object: numbers, arrays, files, windows, etc. Objects can contain other objects - if particular to the object's definition, they are called instance variables. Methods define what the objects do - they add functionality to the objects. For example, windows have an area, color, scroll bars, and other attributes - the method definitions for the windows objects set-up these parameters. Messages are used to communicate between objects: polymorphism is sending the same message to many objects, while encapsulation messages are particular to the structure of the object. Classes group objects together with the same constructs. Different classes pass on inheritance to descendant classes.
The Actor GUI workspace consists of:
Applications written with Actor support the Windows dynamic link libraries (DLL) format so front-ends can be written with Actor that control programs written in C++, Pascal, etc. In this way, GUI applications can be used to control other programs. Lastly, these applications can be connected to the Windows GUI by making the Actor code an application (an icon in windows).
RETURN TO TOP OF PAGE
Microsoft Multimedia Development KitMicrosoft has incorporated Microsoft Word into a controlling Language that directs the "selectability" of the Windows (WIMP) environment using its Rich Text Format. *.rte files were around before the Development Kit; it allowed Window users to add sound and "events" into Word documents; but coordination between the menu control in multimedia presentations is new; not surprising, it is riddled with bugs. One real problem with present multimedia development kits is the lack of an Open Systems mentality - even the way data is stored is as varied as the number of vendors supporting multimedia; a casual comparison through the latest Computer Shopper can confuse anyone. Multimedia is as much a shift of paradigm as it is the ability to combine information into many formats. As a digression, consider the "scratch - and - smell" novelty items; they come in a garden variety of flavors - a "user" scratches the bubble-locked odorous surface to release a pungent aroma of some fruit or tropical perfume. Multimedia - pure and simple. Some scratch-and-smell stickers are shaped like a banana or peach - and likewise they smell like a banana or peach. The point here, returning from the digression, is that the targeted information is supported by several communication paths. The yellow banana shaped icon forms a metaphor; the smell supports an initial recognition - the workspace that the user has to discern a message is now increased. Leaving out the addition of taste, an improvement upon the banana shaped, banana smelling sticker might be texture, or the process of it changing from green to yellow then brown over the course of a few weeks, etc.; the point being that multimedia allows one central idea to be reinforced through several distinct communication media. This paradigm shift supports the bridging between human time restraints and computer speeds - and the multimedia system becomes a navigator - similar to GUI actor constructs. An interesting aspect of using varied media to communicate comes from the distribution of media over the network. Data can be compressed data using JPEG (Joint Photographic Expert Group) and DVI (Digital Video Interactive) compression techniques (for pictures); to name a few. Baby Bells labs is seeking to improve video transmission over LAN and WAN networks; the recent FCC ruling allowing TV pictures to be sent over public networks has prompted commercial interest in multimedia technology. This represents a "new age" in information management. Network media databases are leaving the military, medical, and business occupations and becoming common. Being futuristic, networked multimedia distribution will also affect the transportation industry: news, videos, music, even stock reports will be available on airplanes [6], cars and buses. There will be the new information companies similar to the phone and utility companies formed in a few years - the laws (perhaps the governing body) that will govern this new information have yet to be written. Even toll booths on major hi ways will help collect and distribute information over wide areas; feasibly, local information such as area maps, phone numbers, areas of interest, weather data, will be available to travelers - the DBM system to control much of this information will tend to organize control rather than storage between the user and the data [17]; in this sense, many formats of information (voice, video) are grouped together as objects. For example, all sounds make noise (class), but not all sounds are like the human voice (object). Similar to the workspace enhancement from GUI's, multimedia objects will change a computer programmer's requirement for extraneous data. An example of the multimedia paradigm shift (sure to seep into everyday life in the future) would be the addition of noise to a WIMP environment: I open a window and a soft voice says, "open", I shift to an illegal command and a loud bull-horn blows, "BBrrrrrrrr", I close the application, "close". These additions are more than "bells and whistles"; they are additions to the interface - they form audio, visual, and perhaps surprising insights for the programmer at work.
RETURN TO TOP OF PAGE
CD ROMsNo other piece of hardware has supported multimedia more than the advancement of memory storage. Simple color pictures take up megabytes of disk real-estate; when processing speed and access time catch up to memory advancements, this space can be reduced by compressing the media while the processor executes decompression algorithms for output. Where process speed is beyond the exponential, memory storage has strongly supported multimedia. Compact-disk ROM drives act as any normal directory structure connected to an operating system - with an access time of 150 Kbytes a second {300 ms access time - much slower than other media} large amounts of data can be stored in a small space. Video and Sound information when digitized becomes more easily manipulated and stored. There is less overhead when data is kept in raw ones and zeros when it is not used. If more data can be kept in one spot, processor extensive data like music and animation can be stored closer to their presentable format. In this way, less post-processing is necessary to output this data (sound and video microchips act more powerful because less conversions between data and output are needed). CD ROMs should be considered as a database - capable of storing 650 Megabytes of ones and zeros. Supported by the commercial expansion of available CD titles more than six thousand different titles are available. Of the type of CD titles on the market:
In the last 6 years (since the late 1980's) the increase of computer CD ROM titles available to the public is amazing! Prompted by the parallel technology of Music CD's, information has never been so compactly distributed. In 1990 the Library of Congress began a project to store books, movies, and historical data on CD ROMs. These collections are bundled together in a laser-disk package. Within the next five years twenty new bundles are planned to be released to the public. A user navigates through a menu system to sort through information; since the amount of information is integrated together, new multimedia operating systems are being sought to control the acquisition of organized data [11].
RETURN TO TOP OF PAGE
Project ExamplesVisual BasicVisual Basic is QBasic's and GWBasic younger relative; it uses similar language syntax with these earlier versions of Basic. What makes the VB Language so unique and powerful is the easy interface for building MS Windows applications; the interface is like a cross between a paint program and any programming editor. WIMP (Windows Icon Menu Pointer) constructs are pre-built as software objects - they can be arranged, coded, and linked with variables to the code that the programmer writes. The Task: Probability and EntropyGiven a joint probability matrix: .
My problem was to code an easy interface to input an n by n matrix and calculate normal and conditional probability matrices. Footnote5
RETURN TO TOP OF PAGE
The Programs:Each program took about 5 hours each to code - I was limited by my inexperience with the Basic Language; I found that I could not push the Language to its real power -without the use of control arrays and multiple windows. Also, I was limited to the computing environment of VB. Perhaps using the Dynamic Link Library (DLL) functions I might be able to connect the programs created with VB to a more powerful calculating Kernel - Mathematica, for example. version 1.0My first VB. program looked good, ran fine, but gave the wrong calculations - my ignorance of the problem I was trying to solve was apparent from the output. I used scroll bars to select the values for the 2 x 2 joint probability matrix - I tried several other input methods; none worked. One drawback to this version was that matrix values were not limited to summing to one - which perplexed me at first because I was getting probability values greater than one. I experimented using color to indicate when the values in the original matrix summed too one.
RETURN TO TOP OF PAGE
version 1.2My second attempt was more ambitious: solution of the probabilities and entropy values of a 4 x 4 matrix - I used a parent object to build the initial matrix and then pasted them to the form I was building; this simplified the program's construction. In order to avoid the errors from finding the log of zero I used the following subroutine to calculate the log base 2 of X: Static Function Log2 (X) If X = 0 Then Log2 = 0 Else Log2 = Log(X) / Log(2) End If End Function The program started calculating when the calculate button was pushed; in fact, all of the code that ran the calculations was "behind" this event. After coding three 4 X 4 matrices and two entropy matrices I realized that I had run out of room on the screen; my workspace was to small! One way of fixing this would be to allow multiple windows be dedicated to either probabilities or entropy. I settled for demonstrating to myself that yes, VB. could be used to build an interface for mathematical calculations.
RETURN TO TOP OF PAGE
VB Project Conclusions:Using the object driven Language Visual Basic I made a ( trivial ) computing tool to calculate probabilities and entropy; in doing this I became familiar with the problem I was solving and the Language I was using. Because a matrix calculation tool needs to be utilized to handle n by m matrices, the code to calculate the answers needs to dynamically controlled - implementing control arrays and new windows could help do this. Even with the Language's limitations, applications could be linked with to a more powerful Kernel to handle high volume computations. Microsoft's Multimedia PackagePurposeDuring my Spring Term at SUNY Institute of Technology I concentrated on learning multi-media programming using Microsoft's Multimedia Development Package. I found that sound, pictures, and animation were stored in different formats - and to successfully use this data in my applications I had to be able to convert between these data types. Often times I found the equipment I used did not read in the data in the correct format; so I spent a considerable amount of time converting my input data into usable formats. Multimedia is a new field, supported by many different vendors. Attempts to group varied different types of data together into one presentable package are to this date vendor dependent.
RETURN TO TOP OF PAGE
HardwareThe multimedia set-up consists of a 486, 50 MHz computer with 15 Megabytes of RAM, high resolution monitor, CD ROM drive, scanner, and sound interface connected to two speakers.
Even with this impressive amount of desktop computing power I still found myself waiting for processes to finish. Also, because of the many different I/O drivers needed to run everything together, conflicts between software and hardware would occur. This system reflects the fact that there is still no widely accepted standard for multimedia systems Footnote7. Sound, and picture files are stored in many different formats when inputted into the system - but when outputted they must be in one format for the presentation. SoftwareThe Microsoft multimedia Development Kit combines text, graphics, sounds, and animation together into an executable file (*.mvb) This executable file is viewed using the Viewer program - the file can also be packaged into a stand-alone application. A presentation is controlled by two file types - the Project File and the Topic File. Presentation data (pictures, sound, etc.) is contained in separate directories - organized by the Topic File into presentable windows to the user; each window is separated by a page break in the file. The Project File links all the media directories to the Viewer program.
Organization of presentation directories. Data is controlled using the Project File (*.mvp - extension); saved as a normal text file. The Project File configures the entire presentation (it combines all the media, sets paths, combines search algorithms) - it is the code that is compiled to form the executable. This file links the Viewer language with the choices that the user makes at run-time.
RETURN TO TOP OF PAGE
Sound StorageThere are several types of sound storage ( shown by extension):*.AIF --------------- Apple AIFF *.PCM ------------- Microsoft PCM Waveform *.WAV ------------ Microsoft Waveform For my application, I was forced to use the *.WAV format; common to Windows users, but not as common to the InterNet where many sound files are stored. The size of a sound file is directly related to the quality and length of the sound. Quality depends on sample size ( 44.1 kHz, 22.05 kHz, or 11.025 kHz) and channel width ( mono or stereo ). Length depends on the actual length of the sound. Where background music is needed in an application Musical Instrument Digital Interface (MIDI) storage is used. As an example of the size requirements for *.WAV files:
As new compression techniques imerage, new formats are sure to follow. My presentations used *.WAV (waveform) files; although I was able to collect a few off the network as *.snd format, which I converted using sox.exe for my applications. Picture StorageLike sound storage, there are many types of formats for storing pictures:
For my presentations, I found it difficult to convert scanned pictures to the required *.DIB (Device Independent Bitmap) format - the pictures were always too small. By going from *.BMP to *.PCX, then to *.DIB fromats I was able to keep most of the pictures original form.
RETURN TO TOP OF PAGE
Linking Everything TogetherSUNY information presentationUsing a common subject (the SUNY Campus in Utica, New York) I created a presentation that displayed a map of the campus - this picture is saved in the *.SHG format which allowed different buildings to act as "hot spots". "Hot spots" would trigger new Topics to be displayed - in this way the presentation acted as a menu system for a SUNY Utica database. The Hot Spot Editor ( a separate application ) was used to insert these events on the SUNY campus picture. I created a button array using the Bitmap editor (also a separate application) for text hot spots. All the pictures for my presentations were either scanned in from existing photos or drawn using the editor; the name and location for the picture is mentioned in the Topic file as a "hidden Footnote8" word. For example, to display a picture from the Topic file: {bmc campus.shg}. The structure of the SUNY information presentation is in the form of a tree with the SUNY photo at the root:
RETURN TO TOP OF PAGE
SUNY TourMy second presentation came from photographic pictures of a short trip through one of the buildings on campus. These pictures were scanned in and put in the correct order to simulate a walk through the halls. I drew bitmap arrows for the user to select to "walk" through the Topic files; I also added my recorded voice to give directions to the user. I encountered problems with the resolution of the black and white scanned pictures. The structure for the SUNY tour is cyclic: the path leads up the stairway until the tour goes in a circle around the hallway - in this way several loops are created:
Multimedia Project ConclusionsI was able to learn one vendor's solution to the combination of several media types (sound, pictures, recordings, text); yet, the syntax dependent Language offered challenges. Improvements to these presentations for the future:
RETURN TO TOP OF PAGE
ConclusionsThe ability of displaying and using data in a more compact expression allows new relations to be noticed. For example, the Information Visualizer was used to look at the UNIX directory structure and data bases trees where before it was impossible to do so at one time; memory improvements have allowed many types of media to improve a users view of data. The need to reduce the cost function of data manipulations is very important because now, due to hardware advancements, great amounts of information are available to the end user. What was discussed in this paper? GUIs introduce many new mentalities of information use. Noted, this is termed as a "paradigm shift" - where simple readouts were once used as output, systems are being used to display 'mountains' of relevant, organized, collections of data along with constructs to control the relations on this data. The "GUI paradigm" is the mapping between the user and the data. Abstractions are utilized to "get-at" the data. Along with the redefined use of resources of a real-time kernel Footnote9 to control a user's "flight" through data ( as in a 3D Navigation, for example ) or the addition of sound to "take you there", GUIs assume certain relations on the data when it "knows" what processes on the data are being sought. This artificially intelligent aspect is not entirely programmed in code - rather, it is the result of being so 'close' to the user. A developer needs to be aware of the finer definitions of Language and it's context; whether the Language consists of the English text Language, an icon choice dependent on cultural mores, for example, or the requirement to match a users technical knowledge with the complexity of the program's interface; GUIs MUST match the graphics interface to the computer's function. The result is a more condense workspace. Lastly, I was able to experiment with a GUI environment to build a window tool to solve probability problems and with two multimedia examples.
RETURN TO TOP OF PAGE
References
RETURN TO TOP OF PAGE
|