Bar Camp Ubiquity Presentation
Upcoming SlideShare
Loading in...5
×
 

Bar Camp Ubiquity Presentation

on

  • 2,913 views

 

Statistics

Views

Total Views
2,913
Views on SlideShare
2,874
Embed Views
39

Actions

Likes
0
Downloads
1
Comments
0

3 Embeds 39

http://surfmind.com 30
http://surfmind.com.sharedcopy.com 7
http://www.surfmind.com 2

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Bar Camp Ubiquity Presentation Bar Camp Ubiquity Presentation Presentation Transcript

  • Hacking Ubiquity Presented by Andy Edmonds http://surfmind.com
  • What is Ubiquity
    • Extensible Firefox command line
    • Official Mozilla labs project
    • Version 0.1.2
    • (rc5)
    • 2 months old
  • Built In Commands
    • Search: google, amazon, youtube, yahoo, etc
    • Tag: add to bookmarks with annotation
    • Edit: persist changes to page
    • Acting on selection
      • Highlight, map, wordcount
    • Translate
    • Zoom
  • Linguistics in Ubiquity
    • Verb
    • Noun
    • Modifiers
    • This
      • Always refers to current selection
    • Coming Soon
      • Me
      • Here
  • More on Nouns
    • Core Nouns
      • Contacts
      • Date
      • Percentage
      • Address
      • Language
      • Tag
    • Proposed
      • Timezone
      • City
      • Time
      • See https:// wiki.mozilla.org /Labs/Ubiquity/Nouns
  • Installing Other Commands
    • Command directory: the Herd
      • Notions of a community of trust
      • Right now, subscribing previews the code
        • Auto-update opens major security holes
    • Distribution Channel for Your Hacks
  • Example: Andyed’s Nofollow
    • CmdUtils.CreateCommand({
    • name: "nofollow",
    • author: {name: "Andy Edmonds", homepage: "http://surfmind.com/lab/mozilla/ubiquity/nofollow.js"},
    • license: "MPL”,
    • // helper function
    • _lookAtLinks: function(bMarkup){
      • var doc = CmdUtils.getDocumentInsecure();
      • for(var i=0;i<doc.links.length;i++) {
      • }
      • str+= &quot;Of &quot; + i + &quot; links, &quot;;
      • str+= linkOffsiteCount + &quot; go offsite (of &quot; + curDomain + &quot;), and ” + linkUniqueCount + &quot; are unique.<br/><br/>”;
      • str+=&quot;found <strong>&quot; + found + &quot;</strong> no-followed.<br/><br/>&quot;
      • return str;
    • },
    • preview: function( pblock ) {
    • pblock.innerHTML = this._lookAtLinks(false);
    • },
    • execute: function() {
    • this._lookAtLinks(true);
    • }
    • })
    Install at http://surfmind.com/lab/mozilla/ubiquity/nofollow.html
  • Resources to Get Started
    • Command-editor (real time testing)
      • chrome://ubiquity/content/editor.html
    • Authoring Tutorial
      • https://wiki.mozilla.org/Labs/Ubiquity/Ubiquity_0.1_Author_Tutorial
    • The Herd
      • https://labs.toolness.com/ubiquity-herd/
  • Ubiquity Command Support
    • CmdUtils
      • chrome://ubiquity/content/cmdUtils.js
      • Library for accessing selections, the doc & window, clipboard, screenshot, & templating engine
    • Jquery
    • FUEL: Extension developer library
  • FUEL Library
    • Preferences
    • Session Storage
    • Filesystem
    • Etc.
    • Intended to reduce pain (and increase API stability) of Firefox XPCOM
  • Enterprise Command Line: VersionOne.com
    • var noun_type_creatable_asset = new CmdUtils.NounType( &quot;CreatableAsset&quot;, [&quot;Story&quot;, &quot;Issue&quot;, &quot;Defect&quot;,&quot;Task&quot;, &quot;Test&quot;,&quot;Requirement&quot;, &quot;BacklogItem&quot;] );
    • var noun_type_asset = new CmdUtils.NounType( &quot;Asset&quot;, [&quot;Story&quot;, &quot;Issue&quot;, &quot;Defect&quot;, &quot;Iteration&quot;, &quot;Sprint&quot;, &quot;Task&quot;, &quot;Test&quot;, &quot;Requirement&quot;, &quot;BacklogItem&quot;] );
    • var noun_type_assets = new CmdUtils.NounType( &quot;Assets&quot;, [&quot;Stories&quot;, &quot;Issues&quot;, &quot;Defects&quot;, &quot;Iterations&quot;, &quot;Sprints&quot;, &quot;Tasks&quot;, &quot;Tests&quot;, &quot;Requirements&quot;, &quot;BacklogItems&quot;] );
    • Commands to:
    • Jump to locations
    • Do a free text search
    • Structured search
      • My todos
      • Open items
  • Ideas
    • Augment a page with data from another source
    • Use Firefox “Places” (history/marks)
  • Caveats
    • Frustrating developer experience
      • Error messages don’t have line numbers!
    • Security issues
    • Current release is 1.1
      • 1.2 shortly
      • https://wiki.mozilla.org/Labs/Ubiquity/Ubiquity_0.1.2_Release_Notes_(Raging_Stream)
    • A bit ugly
    • To be determined:
      • Is a command line usable by my mom?
  • Happy Hacking
    • Andy Edmonds
    • http://surfmind.com