Ubiquity (Firefox)
Encyclopedia
Ubiquity, an add-on for Mozilla Firefox
Mozilla Firefox
Mozilla Firefox is a free and open source web browser descended from the Mozilla Application Suite and managed by Mozilla Corporation. , Firefox is the second most widely used browser, with approximately 25% of worldwide usage share of web browsers...

, is an abandonware
Abandonware
Abandonware are discontinued products for which no product support is available, or whose copyright ownership may be unclear for various reasons...

 collection of quick and easy natural-language-derived commands
Natural language user interface
Natural Language User Interfaces are a type of computer human interface where linguistic phenomena such as verbs, phrases and clauses act as UI controls for creating, selecting and modifying data in software applications....

 that act as mashups
Mashup (web application hybrid)
In Web development, a mashup is a Web page or application that uses and combines data, presentation or functionality from two or more sources to create new services...

 of web services, thus allowing users to get information and relate it to current and other webpages. It also allows Web users to create new commands without requiring much technical background.

Overview

Ubiquity's main goal is to take a disjointed web and bring everything the user needs to them. This is accomplished through a command-line-like interface that is based on natural language commands
Natural language user interface
Natural Language User Interfaces are a type of computer human interface where linguistic phenomena such as verbs, phrases and clauses act as UI controls for creating, selecting and modifying data in software applications....

. These commands are supplied both by Mozilla
Mozilla
Mozilla is a term used in a number of ways in relation to the Mozilla.org project and the Mozilla Foundation, their defunct commercial predecessor Netscape Communications Corporation, and their related application software....

 and by individual users. Commands are written in JavaScript
JavaScript
JavaScript is a prototype-based scripting language that is dynamic, weakly typed and has first-class functions. It is a multi-paradigm language, supporting object-oriented, imperative, and functional programming styles....

 or Python
Python (programming language)
Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...

 and either directly typed into the command editor that comes with Ubiquity or subscribed to. Commands to which a user subscribes are automatically updated when the author updates the code. At the moment there is no limit as to what these commands can do, which implies a large security risk. A planned feature for Ubiquity is a trust network that allows users to evaluate the trustworthiness of a particular command before subscribing to it. Ubiquity will allow users to insert maps anywhere, translate on-page, highlight any code, and many other features.

Development history and roadmap

The architectural design for Ubiquity 0.1.3 was focused on separating functions into well-defined objects, an idea borrowed from the design of commands in the Archy
Archy
Archy is a software system whose user interface poses a radically different approach for interacting with computers with respect to traditional graphical user interfaces. Designed by human-computer interface expert Jef Raskin, it embodies his ideas and established results about human-centered...

project. The browser window functionality was separated into per-window and global objects. The per-window command manager object mediated between the context menu, command entry and natural-language parser objects and the commands themselves. The global objects marshall application-wide services such as built-in command feeds. Efforts to localize Ubiquity into different languages have also been made.

The design goals for Ubiquity 0.5 focus on making it easier to experiment with new User Interfaces and implement security.
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK