Mozilla "Ubiquity"

A command-line, textual, and probably linguistic, interface to the browser.

I am not sure how complex they are planning of making this, nor how it meshes with visions of the future of web browsing, but it's worth keeping an eye on.


I spent some time thinking about site-specific scripting, and had some discussions with students about building a site-specific DSL compiled to Greasemonkey scripts, but alas nothing came of it. It would be interesting to see whether Ubiquity command lines could be integrated into scripts, and how extensible the vocabulary is going to be, and on what level (i.e., site by site, via plugins etc.) Clearly also related to the often discussed topic of "end-user programming".

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Somewhat related

Not directly comparable, but I think projects stemming from similar impulses:

IBM's CoScripter

MIT's Chickenfoot

Ubiquity may provide a nice example of the difference in design style between projects that see themselves as language-based and those that stem from a UI perspective.

For a front-end, a patcher

For a front-end, a patcher interface like http://www.lilyapp.org/ seems compelling (more patcher uses listed on http://www.cycling74.com ). Patches have some semantic warts, but, despite them, they seem to have had the most success for the past 10-20 years in all sorts of almost-end-user domains where other approaches generally die out.

Many patches quickly grow to include a pipe for receiving external commands, essentially creating mini-shells to be used for tweaking output channels. Thus, while a patcher-style abstraction layer would work for exposing the browser to the patch, a console effort for the back-end like Ubiquity seems to be in sync with the typical choice in the patcher community.

I don't understand what is meant by language-based vs UI perspective - graphical languages can be tied very closely to calculi, as recently formalized by Taha: http://www.cs.rice.edu/~taha/publications/conference/pepm07.pdf .

I don't understand what is

I don't understand what is meant by language-based vs UI perspective

I think people attempting to add specific UI functionality will often go in a different direction than those attempting to create a programming or scripting language.

This post provides useful

This post provides useful context for understanding Ubiquity and end-user browser hacking.