Re: Annotations

Listing: Summary - Full Detail
  1. bastiano 14-Dec-2010
    the whole point of using Gentoo is to install a custom distr link »
    Gentoo borrowed the concept of Ports from FreeBSD link »
    Ports link »
    are patches that are applied to raw source code from the developers of the software to customize it for that distro link »
    download the source code link »
    If you want it to be installed in the right place in your distro so that other programs can find the libraries it installs, you need to give it configuration option link »
    s link »
    Ports do that automatically for you link »
    Port installation systems also link »
    handle dependencies for you link »
    there are two main benefits link »
    your link »
    programs are now ultra-customized for your system link »
    Also, it is tuned to your hardware link »
    First link »
    second b enefi link »
    t link »
    you get new versions of link »
    the program much sooner than with a binary distro link »

    server.ericsbinaryworld.com/blog/2008/10/26/revie · Original page

  2. bastiano 25-Jul-2009
    is used to make decisions in JavaScript. link »
    if (condition){ statements } link »
    The condition in the parenthesis ( ) is evaluated to determine if true, and if so then the statements inside the curly braces { } are executed, link »
    An optional else statement can be included with if statement link »
    if (condition){ statements } else{ statements } link »
    the statements inside of curly brackets { } after the else keyword are executed if the condition of if statement is false. link »
    nest if statements link »
    A better way link »
    && link »
    The and operator link »
    to combine two conditions link »
    both must be true to satisfy the if condition. link »
    he or operator, ||, link »
    combines two conditions link »
    such that the if statement is satisfied if either condition is true. link »
    Not link »
    Operator, !, link »
    makes a condition that returns true, false and vice versa. link »

    lectures-javascript.blogspot.com/2009/04/if-state · Original page

  3. bastiano 25-Jul-2009
    Operators are symbols that are used with variables to allow us to perform certain functions, such as adding, subtracting and etc. link »
    arithmetic operators: link »
    Given that y=5 link »
    to perform arithmetic link »
    to assign values to JavaScript variables link »
    x=10 link »
    y=5 link »
    = link »
    += link »
    -= link »
    *= link »
    /= link »
    %= link »
    x=y link »
    x+=y link »
    x-=y link »
    x*=y link »
    x/=y link »
    x%=y link »
    used in logical statements to determine equality or difference between variables or values. link »
    used to determine the logic between variables or values. link »
    && and link »
    || or link »
    ! not link »

    lectures-javascript.blogspot.com/2009/04/operator · Original page

  4. bastiano 25-Jul-2009
    Variable names are case sensitive link »
    A variable is a place holder in your computer's memory for information that can change. link »
    " Note that the variables in some other languages, such a C, are strongly typed and you are not allowed to randomly change the variable's type as we did here. link »

    lectures-javascript.blogspot.com/2009/04/variable · Original page

  5. bastiano 25-Jul-2009
    Scripts can be in the <head> section, the <body> section, or an external file. link »
    three choices. link »
    Scripts in the <head> section are loaded first, link »
    Not all scripts are executed automatically. link »
    a script can be called when it is triggered by an event. link »
    the filename with javaScript scripts ends with .js link »

    lectures-javascript.blogspot.com/2009/04/where-us · Original page

  6. bastiano 25-Jul-2009
    Inside the <script> tag we use the type attribute to define the scripting language. link »
    <script type="text/javascript"> link »
    document.write is a standard JavaScript command for writing output to a page. link »
    The word link »
    the end of comment line (//) is the JavaScript comment symbol. link »
    This prevents JavaScript from executing the --> tag. link »

    lectures-javascript.blogspot.com/2009/04/how-to.h · Original page

  7. bastiano 25-Jul-2009
    object-oriented programming revolves around the idea of user- and system-defined chunks of data, and controlled means of accessing and modifying those chunks. link »
    consists of Objects, Methods and Properties. link »
    object link »
    method to access it link »
    The directly accessible bits of information in the object are its properties link »
    with properties, you see exactly what you're doing to the object; link »
    A new document is opened with the method document.open() link »
    write "Hello World" into a document by typing document.write("Hello World") . open() and write() are both methods of the object: document. link »
    write "Hello World" into a document by typing document.write("Hello World") . link »
    Events are how we trigger our functions to run. link »
    onClick="run_my_function()". link »
    Other events include OnMouseOver, OnMouseOut, OnFocus, OnBlur, OnLoad, and OnUnload. link »

    lectures-javascript.blogspot.com/2009/04/object-o · Original page

  8. bastiano 18-Jul-2009

    What are User Scripts? link »

    I want to learn JavaScript !! link »

    Imágenes invertidas con Ubiquity link »
    Ubiquity Tools for editing pages link »

    SharedCopy, Amplify, Clipmarks and Ubiquity on previous mashup. link »

    varx.amplify.com/2009/07/17/6/?guid=E432848D-9EC0 · Original page

  9. bastiano 14-Jul-2009

    Catálogo- bolso 1 link »

    romacos.com/contenido/catalogo/cat_bolsos/galeria · Original page

  10. bastiano 14-Jul-2009
    http://images.fashionmodeldirectory.com/model/000000192927-katrin_thormann-fullsize.jpg

    sharedcopy.com/k/othermime?html=%3Cimg%20style%3D · Original page

  11. bastiano 13-Jul-2009

    Latest from Andyed RSS



    About:Search — Monitor Your Search Activity

    July 8th, 2009 1 Comment


    I’ve adapted the about:me experimental extension to report on search behavior. About-me is described as:

    A statistical analysis of the user’s history, average tab load, etc. Like Google Zeitgeist, but based on their Places database.

    I blogged about mining the Places db (sqlite) for search experience metrics some time ago, and posted polished sql to a wiki scratchpad.

    It turned out to be super easy to adapt about-me to present search data, assuming the use of a q= url parameter to be search. Seems to work pretty well! I’ve got a development version that supports drill down with the goal of presenting query terms and clicks as well as the % abandoned queries metric to help users rationally evaluate which search engine is working better for them.

    In the mean time, you can install the simple about-me clone for meta-data about your searching activities. I’m very happy to see the Firefox team experimenting with HTML based UI’s. XUL is awesome, but some browsing and exploration tasks are better done with a hypertext UI than a GUI grid (e.g. “Organize Bookmarks” for re-finding and exploration tasks).

    → 1 CommentTags: AddOns Blogging DHTML Mozilla Search

    Observations on the Tab Design Challenge

    June 30th, 2009 No Comments

    I’ve been making blog drafts for weeks now on the Mozilla Labs “Reinventing Tabs” Design Challenge. A big review seems beyond my attentional capacity which is more and more mimicing that of my 3 year old! I do hope to follow up with a call-out of some of the submissions that incorporate the power of history in tabs. It’s apparent to me that the spawning relationships between tabs is too salient to the human to not be part of the next evolution of tabs. In fact, one might view it as a very subtle and lightweight way of creating landmarks within browsing trails.

    Reducing the # of Tabs reduces the management challenge

    After reading Limi’s post on reinventing tabs I started using Tree Style Tab on both my core profile and 3.5 beta. This addon groups creates a hierarchy when tabs are spawned from an existing (e.g. “open link in new window”) within a sidebar menu. The initial adjustment was brutal, with pro-active interference in both procedural and motor memory blocking learning. In plain english, overcoming my learned behavior around tabs at the top was challenging initially.

    That faded and I swapped back one profile to normal tabs after a week of use. The most startling thing to me about the Tree Style functionality wasn’t the grouping of related tabs, or the presence of a natural mapping between my activity stream and the tab organization. What really rocked was the ability to close all the tabs from a browsing “sub-session”. These tended to be topical explorations.

    This points out that the cost of closing tabs, and particularly closing all tabs related to a particular activity, is really high! In addition to offering better ways to select one tab of many tabs, enabling easier tab cleanup could work to alleviate the interaction challenges of tab growth.

    Here’s a list of potential user actions that might be useful in a “spawing relationship” aware tab system. I’ll refer to a set of tabs that share a common initial location and have been created from subsquent open in new tab operations as trails.

    • Close all from this trail
    • Promote this page to start of trail (close all other tabs in it’s backstream)
    • Move this trail to a new window, reinstating tabs and history
    • Bookmark this trail as a tab group bookmark and close
    • Tag all locations in the tabs of this trail with ___

    In the meantime, ctrl-w (win) or apple-w (mac) to close a tab quickly is your friend.

    On the Design Challenge Process

    The quality and extent of submissions is awesome and I’d call the effort a brilliant success. Yet I think future design challenges might try a different spin on design, critique, and collaboration. I’d like to see the encouragement, both in process and positioning, of derivative works (e.g. remixes) of designs. From a process point of view, this means encouraging the sharing of source files (ex. layered graphic files), a dialogue about common attributes across the designs (ex. tagging) in addition to the current remix friendly licensing requirement.

    From a positioning point of view, the current award slots focus on an individual single iteration. A tiered approach of initial designs with subsequent remix rounds could preserve the motivational aspect of individual winners and the downstream rounds of remix would incent non-winners to iterate and incorporate feedback and key elements of winning designs. Perhaps the Chocolate Factory project is a way to realize some of this ambition.

    Thanks to Drew @ Mozilla for being a sounding board on some of these ideas.

    → No CommentsTags: Mozilla

    Understanding Bookmarks & Browsing with Places Stats

    June 15th, 2009 1 Comment

    The Firefox Places team created an opt-in method for users to submit a quantitative profile of their places (history + bookmarks + tags) database (sqlite) by pasting a script into the error console. Drew (adw) did an analysis a few months back and recently gave “last call” for the first round.

    I’ve been doing some exploratory data analyses on the data to data, now over 600 submissions. Some top level observations:

    • Distinct visits, not total visits, is the best predictor of bookmarking activity
    • 30% of the sample use tags extensively while 50% have at least 1 tag (Note: Amended)

    The sample is far from a random one and is probably skewed to power users both of the internet and of firefox. 30% tagging utilization is likely an upper bound of what we’d find in a more representative sample.

    The rise of AJAX has made the “number of unique pages visited” much harder to compute. Computing this from the a recent pull from the places stats dataset (n=594), we see a 38% revisit rate, or 62% new visit rate as coded below:
    > describe(places$percent_visits_new )

    n missingunique Mean .05 .10.25 .50 .75 .90 .95
    594 6589 0.62240.39130.47260.5485 0.6275 0.7064 0.7779 0.8182

    This isn’t actually far from the prior research, quoting from an earlier post:

    A WWW’06 study by Harald Weinrich, et al. paper updated these stats, showing across studies 61% of pages visited were repeats in ‘94, 58% in ‘96, and only 45.6% in their 2006 study.

    Similarly, pages per day are likely confounded by background requests:

    n missing unique Mean .05 .10 .25 .50 .75 .90 .95
    592 About:Search — Monitor Your Search Activity July 8th, 2009 1 Comment I’ve adapted the about:me experimental extension to report on search behavior. About-me is described as: A statistical analysis of the user’s history, average tab load, etc. Like Google Zeitgeist, but based on their Places database. I blogged about mining the Places db (sqlite) for search experience metrics some time ago, and posted polished sql to a wiki scratchpad . It turned out to be super easy to adapt about-me to present search data, assuming the use of a q= url parameter to be search. Seems to work pretty well! I’ve got a development version that supports drill down with the goal of presenting query terms and clicks as well as the % abandoned queries metric to help users rationally evaluate which search engine is working better for them. In the mean time, you can install the simple about-me clone for meta-data about your searching activities. I’m very happy to see the Firefox team experimenting with HTML based UI’s. XUL is awesome, but some browsing and exploration tasks are better done with a hypertext UI than a GUI grid (e.g. “Organize Bookmarks” for re-finding and exploration tasks). → 1 Comment Tags: AddOns Blogging DHTML Mozilla Search Observations on the Tab Design Challenge June 30th, 2009 No Comments I’ve been making blog drafts for weeks now on the Mozilla Labs “Reinventing Tabs” Design Challenge . A big review seems beyond my attentional capacity which is more and more mimicing that of my 3 year old! I do hope to follow up with a call-out of some of the submissions that incorporate the power of history in tabs . It’s apparent to me that the spawning relationships between tabs is too salient to the human to not be part of the next evolution of tabs. In fact, one might view it as a very subtle and lightweight way of creating landmarks within browsing trails . Reducing the # of Tabs reduces the management challenge After reading Limi’s post on reinventing tabs I started using Tree Style Tab on both my core profile and 3.5 beta. This addon groups creates a hierarchy when tabs are spawned from an existing (e.g. “open link in new window”) within a sidebar menu. The initial adjustment was brutal, with pro-active interference in both procedural and motor memory blocking learning. In plain english, overcoming my learned behavior around tabs at the top was challenging initially. That faded and I swapped back one profile to normal tabs after a week of use. The most startling thing to me about the Tree Style functionality wasn’t the grouping of related tabs, or the presence of a natural mapping between my activity stream and the tab organization. What really rocked was the ability to close all the tabs from a browsing “sub-session”. These tended to be topical explorations. This points out that the cost of closing tabs, and particularly closing all tabs related to a particular activity, is really high! In addition to offering better ways to select one tab of many tabs , enabling easier tab cleanup could work to alleviate the interaction challenges of tab growth. Here’s a list of potential user actions that might be useful in a “spawing relationship” aware tab system. I’ll refer to a set of tabs that share a common initial location and have been created from subsquent open in new tab operations as trails. Close all from this trail Promote this page to start of trail (close all other tabs in it’s backstream) Move this trail to a new window, reinstating tabs and history Bookmark this trail as a tab group bookmark and close Tag all locations in the tabs of this trail with ___ In the meantime, ctrl-w (win) or apple-w (mac) to close a tab quickly is your friend. On the Design Challenge Process The quality and extent of submissions is awesome and I’d call the effort a brilliant success. Yet I think future design challenges might try a different spin on design, critique, and collaboration. I’d like to see the encouragement, both in process and positioning, of derivative works (e.g. remixes) of designs. From a process point of view, this means encouraging the sharing of source files (ex. layered graphic files), a dialogue about common attributes across the designs (ex. tagging) in addition to the current remix friendly licensing requirement. From a positioning point of view, the current award slots focus on an individual single iteration. A tiered approach of initial designs with subsequent remix rounds could preserve the motivational aspect of individual winners and the downstream rounds of remix would incent non-winners to iterate and incorporate feedback and key elements of winning designs. Perhaps the Chocolate Factory project is a way to realize some of this ambition. Thanks to Drew @ Mozilla for being a sounding board on some of these ideas. → No Comments Tags: Mozilla Understanding Bookmarks & Browsing with Places Stats June 15th, 2009 1 Comment The Firefox Places team created an opt-in method for users to submit a quantitative profile of their places (history + bookmarks + tags) database (sqlite) by pasting a script into the error console. Drew (adw) did an analysis a few months back and recently gave “ last call ” for the first round. I’ve been doing some exploratory data analyses on the data to data, now over 600 submissions. Some top level observations: Distinct visits, not total visits, is the best predictor of bookmarking activity 30% of the sample use tags extensively while 50% have at least 1 tag (Note: Amended) The sample is far from a random one and is probably skewed to power users both of the internet and of firefox. 30% tagging utilization is likely an upper bound of what we’d find in a more representative sample. The rise of AJAX has made the “number of unique pages visited” much harder to compute. Computing this from the a recent pull from the places stats dataset (n=594), we see a 38% revisit rate, or 62% new visit rate as coded below: > describe(places$percent_visits_new ) n missing unique Mean .05 .10 .25 .50 .75 .90 .95 594 6 589 0.6224 0.3913 0.4726 0.5485 0.6275 0.7064 0.7779 0.8182 This isn’t actually far from the prior research, quoting from an earlier post : A WWW’06 study by Harald Weinrich, et al. paper updated these stats, showing across studies 61% of pages visited were repeats in ‘94, 58% in ‘96, and only 45.6% in their 2006 study. Similarly, pages per day are likely confounded by background requests: n missing unique Mean .05 .10 .25 .50 .75 .90 .95 592 6 591 523 51.6 90.2 167.5 287.6 522.4 832.6 1579.8 A key motivator for the places team’s efforts to collect these stats was to create test profiles. Additionally, this type of sampling of the accumulation of data in Places should provide insights into nature of the problem of organizing & recalling web resources. We’re gearing up to do cluster analysis on the dataset to identify profile candidates. I’m using R (stats) & GGobi (visualization) and versioning analysis code on the Mozilla wiki . The goal is repeatable analysis, both across users and as new data is accumulated, as well as insuring the process is transparent for user confidence as well as for methodogical feedback. More conclusions are coming, for now, we also have lots of pretty pictures via GGobi’s scatterplot matrix. Thanks to Ed Borasky for R & GGobi tutelage while I was in Portland . I’ve published an intro to R & GGobi screencast . → 1 Comment Tags: Academic HCI Mozilla Visualization The Thin Veneer of Tabs June 11th, 2009 1 Comment I had a great time at Portland Firefox Dev meetup with @Dietrich , @hallettj , @stechz , et al while in town for UPA’09 . We did produce a bit of code for loading and rendering the SessionStore JSON file with favicon adornment. My premise around this effort was couched in the Labs “ Re-Inventing Tabs ” challenge. You can imagine the pages in the current tabs as a thin slice of a much more complex, salient, and meaningful datastream including the tab history, parent/child relationships among the tabs as well as your distribution of attention across them. The session store JSON file provides a handy starting point to capture the tip of this data including an array of windows with a subarray of tabs, their (tree trimmed) history up to 50 deep, scroll depth, partial form completions, and closed tabs. The places API could be called in to augment this data with things like visit count, identifying persistent tabs (e.g. gmail) versus new browsing trails or occasional reads (e.g. a blog with lots of single visits to different pages on a shared path). Alas, the relationship between tabs is not well preserved in places. While I’ve only tracked the concept series ideas lightly to date, it seems that a few efforts have incorporated the “spawing tab” relationships. Patrick Dubroy’s tlogger work adds additional logging to capture source tab information as well as time in focus but there are lighter weight options for augmenting session store with this info. Whether you’ve actually consumed the content in the tab to any degree or if it’s still waiting attention is also not captured, but would be a very meaningful cue for tab selection operations . Pointers to catching up on concept series work that addresses tab relationships and history would be appreciated. I’m breaking radio silence on the blog after one of my longer lags, but got a bunch of stuff in the hopper including some serious analyses of the Places Stats data — submit your profile now if you haven’t yet. More on that soon — working to help make key analyses reproducable with R scripting and grokkable with visualization. There’s also more to be said about the approach to “revinvention” that I’m taking here… → 1 Comment Tags: Mozilla Visualization IE8 Install and the Default Browser Role? March 22nd, 2009 15 Comments I installed IE8 on Thursday on a windows box and was dismayed to discover the easy setup path would set it as my default browser despite Firefox already configured as such. Is this really how it works? I haven’t seen anyone else mention this aspect. The installer respects your previously set default search engine in IE, but doesn’t do so for the system browser. It’s true that Firefox and other browsers prompt the user to make the browser the default, but they don’t bulk up that setting with a complex setup of additional features. Is this reasonable? → 15 Comments Tags: AddOns General Mozilla Search Windows Animated Word Cloud for Temporal Summarization February 20th, 2009 3 Comments My original inspiration to monkey with the lizard feeder was a vision of an animated summary of the content as it flowed through. I realized a tiny piece of this in a GreaseMonkey script - install or video . High speed play-back is neat, and appealing in principle, but largely unusable. Even FriendFeed realtime suffers from some of the same visual glitches as the item you’re reading moves downward. I started to play with a columnar layout thinking that horizontal jumps would be easier than vertical for tracking flowing text blocks. The word cloud visualization is far from the target, but gotta love a deadline . I’d imagined a deeper understanding of the content, to better drive the messy text normalization, and more expressive typography. The algorithm moves recently repeated items to the top of the list, mixing recency and frequency. A decay function, and some animation niceties, could dramatically improve the aesthetics. → 3 Comments Tags: General Mozilla Typography Visualization Monkeying with the Lizard Feeder January 26th, 2009 2 Comments There’s another worthy challenge, and opportunity, from Mozilla for visualizing the community . The turbo-river-of-news Lizard Feeder mashup flows data from bugs, microblogs, the wiki, etc. With the options dropdown, you can fast forward up to 200x and select any day of the last 60. The call to action is to build on the Lizard Feeder concept with anything from ideas to pixels to code. I hacked up a grease monkey script that weights the data-source checkbox & label on the left according to the volume of flow. This provides a bit of focus + context for the recent stream. The implementation is a minimal, bit-of-an-evening starter kit (MPL) for more interesting creations. It was my first experience with posting code to GitHub — wow, cut and paste. Get it here: http://gist.github.com/53159 . It loads up jQuery and goes selector crazy. Thanks to good semantic markup with multiple classes per element and jQuery, slicing and dicing the DOM is cake. To get the filters/labels, I select “li.group-” + type + “.filter” . To get the news items, I grab “li.entry:visible” — or all LI tags with the class entry that are visible. For ease of use, performance optimizations are needed for the label weighting effect and some baseline features for the Lizard Feeder itself are listed in the bug . Creative Director John Slater and design firm Stamen Design put together a whole different view of this data set , focused on aggregating across people while streaming that goes well beyond this bit of interaction & information design hijinx. Here’s a quote from the call to action that sets the bar: We aim to create a compelling visual metaphor that effectively depicts the dynamic nature and breadth of activity happening right now across planet Mozilla . I’m plotting some typographical exploration (ala the Mozilla 1.0 screenplay or typhoGraphic ) for extracting and aggregating across terms and commonalities like actor. → 2 Comments Tags: Academic AddOns Blogging General Mozilla Search Visualization Tab Usage Insights: Survey vs Instrumentation January 3rd, 2009 2 Comments Here’ a nice pic of results from a tab usage survey from Cognitive Daily: There are some great comments on the post as well. David Munger summarizes “Only 16.7 percent of respondents said they had more than 10 tabs open. Three-quarters of readers had from 2 to 10 tabs, and most of those had from 2 to 4 tabs open.” The results make sense in a 7+-2 kind of way. I was impressed with the methodology, given the low cost of online surveying. By asking the question “how many tabs do you have open now?” the survey approaches an ethnological method, while also asking “how many tabs do you usually have open?” The authors used a creative way to get responder age — by recognition of celebrities. This showed that open tabs tend to decrease with age. The Mozilla Spectator project would be a great way to get this type of distribution information, but it’s been pretty quiet on that front lately. Reactions to the (incorrect) notion that Mozilla might deploy a Google Toolbar style clickstream reporting system were appropriately highly negative . In fact, Spectator was carefully designed to never log actual URLs, but only tab creation and session trails, indicating sequences of page loads and the distribution of sessions across tabs. Pure server-side metrics can’t offer this kind of insight into technographics of internet use or, closer to home, insights for Firefox product design. The proposed final 2010 data goals focus on data portability, which is certainly a great place to start. Still, the results of this survey remind me of the potential of Spectator to help design systems, like tabs , to manage the pervasiveness of the browser in our day to day lives. I’ve got a backburner project using ubiquity commands to pull aggregates on places (ex. % page views that are revisits ) and search quality metrics . This data could be previewed and posted to a public respository, but sampling issues remain until a truly large scale sample is achieved. In the meantime, hats off to Dave Munger @ Cognitive Daily & Research Blogging for a useful methodology and interesting survey. Update:I’ve requested raw data for more digging. → 2 Comments Tags: Academic General HCI Mozilla datamining TyphoGraphic: Authoring CSS Transform Animations for iPhone Declaratively December 26th, 2008 4 Comments Instant Messaging for the Real World I’ve been having fun with CSS Transforms (supported by both Webkit/Safari/iPhone and Firefox ) as well as the Webkit/iPhone only transform animations. The resulting framerates on the iPhone are hard to achieve any other way. I’ve even built an iPhone app called iBlipper with this tech. I’m releasing a bit of the source code to MPL, demo below, dubbed the typhoGraphic library. This is not a major hack, but scratches an itch I’ve had for years to be able to code typographical animation with HTML and an augmented set of attributes — in this case: effect, duration, and start. Check out the iBlipper blog for the demo (plus video) that originated this code, a happy holidays medley. → 4 Comments Tags: General Typography Visualization iPhone Reading SciFi on the iPhone November 16th, 2008 No Comments The application I use the most on the iPhone is Stanza , a book reader with integrated browse+download from public repositories of CC licensed works as well as out-of-copyright classics (notably Feedbooks & Project Gutenberg ). I’ve been enjoying reading 50s and 60s works from Harry Harrison , Frank Herbert , Andre Norton , MZ Bradley , and Robert Silverberg . Among the newer reads available freely is the mind twisting Accelerando . It starts out simply enough in a world with not just reality augmentation, but integrated cognitive amplification. From there, it gets really wacky. Highly recommended. Of course, I’ve also been reading the few remaining undigested Cory Doctorow titles and enjoyed Rudy Rucker’s Post Singular . The iPhone isn’t the perfect reading device — I find my natural head on pillow and corresponding hold of the iPhone tricks the accelerometer requiring a slight posture adjustment. It’s better than almost any other device of it’s size however, due to the high DPI of the iPhone screen. → No Comments Tags: SciFi iPhone The Enterprise Command Line November 13th, 2008 1 Comment Back in the mid to late 90s, a slew of business was done porting “green screen” applications to web apps. These old text based menu UIs had a steep learning curve but supported high levels of mastery. A user with 5 years experience in a system could execute a half dozen keypresses and move through a set of menu choices in an order of magnitude less time than a novice user. The port of these applications to the web dramatically increased the learnability, friendliness, and approachability of the systems, but had disastrous effects on overall productivity for experienced users. With Oracle and SAP being early adopters of the Ubiquity command line interface (CLI) as an opportunity to extend web applications, I’m confident that the CLI is actually a frontier for enterprise web applications. We’ve released an initial command set at VersionOne using our REST api and the jQuery functions in Ubiquity. We have noun types for our core vocabulary. This has a bit of a wrinkle as the product can be configured for Scrum, DSDM, or the Rational RUP meets agile AUP. Our find and checkmail commands have rich previews re-using our iconography. GoTo has a custom nountype to auto-complete to page names. I’ve named commands with the “v1″ prefix, pulling us out of contention with most other commands. I’m just starting to scratch the surface of what it means to design a good command line vocabulary. Equally critical is working with the Ubiquity team to improve the overall UX. I submitted a patch for some of the changes I recommended in the last post and have teamed up with a Mozilla intern doing tests on Ubiquity. The work on pie-menus for the ubiquity context menu is very cool. I’ve been a fan of this since before I did the first marking menu Mozilla implementation in ‘01, but I actually place more value in selection independent operations, perhaps using the current page or automated extraction of information from a page. The context menu (of whatever) form is great for selection based operations, but in our enterprise use case, it seems more valuable to craft dynamic nouns. Text selection, and subsequent deep menu navigation, is always going to have a higher raw cost in time and effort than a well crafted command line with fluent keyboard driven auto-complete and selection from suggestions. → 1 Comment Tags: AddOns HCI Mozilla Usability Testing Ubiquity October 29th, 2008 2 Comments With the upcoming release of a Ubiquity ( Firefox CLI addon) command set for the VersionOne software application, I’ve had the opportunity to take 3 users into the usability/eye-tracking lab to try out ubiquity and our command set. Alas, Ubiquity escaped capture by my screen recording software, so no pretty pictures! I’ll summarize my observations here on Ubiquity proper with the caveat that in none of the 3 cases did I allow the user to go through the tutorial or engage deeply with the documentation. Note, only one user really wanted to! In the spirit of Rapid Iterative Testing & Evaluation ( the RITE methodology ), I’m using my personal judgment to triage the issues to the ones that I think are likely to happen to many users. In theory, one could bring another dozen people into the lab in order to have more statistical confidence in the quantity of affected users, but the agile approach for an early stage software product like Ubiquity is to work on fixing these issues immediately rather than dedicate more time to assessing severity. Observations The about:ubiquity start page is a weak quick start While the goal of the about:ubiquity page is not exclusively to support new users, the display of this page after an install makes this a core use case. If it fails for this, none of the other info will make a difference! The tutorial is quite good, but requiring a tutorial before demonstrating value is a aggressive technique. For two of three users, I had them start on this page. Both required a good bit of effort to determine how to make Ubiquity happen. Neither user was able to map from “Change Hot Key” to the information they needed: “the key sequence I need to use is shown here”. Recommendations : Rewrite headings of Users and Developers to “Using Ubiquity” or “For Users”. Provide a short statement of user value, “A command line for your browser”. Edit the labeling of the hot key input box to read: Invoke Ubiquity by pressing: [ input box ] Click in box to change your hotkey beneath the box. Update: This change has been made and checked in! (sans intro value statement) Hitting Enter is Irresistible For all 3 users involved in the test, it took explicit instruction to get them to pause long enough to see the preview pane. While there’s definite value in Ubiquity as a quick way to jump to a page, the value of the inline preview is likely to be under appreciated by new users. Recommendations : This one is tougher, but expanding the the preview pane on recognition of a preview enabled command or offering user feedback that data is being fetched would be helpful. I would argue this should be core to Ubiquity and not require each author to implement. Inconsistent Keyboard Support Guarantees User Error While this one is clearly on the Ubiquity roadmap, the fact that command and noun suggestions support up/down arrow navigation while previews don’t have a way to invoke the standard actions via arrow nav creates guaranteed user frustration. The worst is when the user first tries to keyboard nav for result previews and thinks no keyboard support is offered at all. Tab completion of commands was not discovered by two of the three participants. In one especially painful scenario, the user tried to copy the command from the preview list, made a typo, and lost the model for the command name. Recommmendations : Tab completion is a standard characteristic of command line interfaces and likely not something that would affect users with strong experience using other CLIs. This one may have to be one of the goodies a new user picks up from the docs and tutorial. Wrapup Despite these challenges, all 3 users walked away thinking Ubiquity was a valuable offering. Showing them functions on text selections would likely increase that estimation. We’ll be releasing our Ubiquity command set for VersionOne shortly. Special thanks to Agile software development luminary Jeff Sutherland for participating in the test (pictured to the right). → 2 Comments Tags: HCI Mozilla Ubiquity at BarCamp Atlanta October 20th, 2008 No Comments It’s been a quiet few months on SurfMind as I transition to a UX role at VersionOne , a vendor of software process management tools for Agile methods. I’m still working on the Scrutinizer vision simulator and teaching with the Stompers, but I’m excited to be focusing on enterprise application design. Software project management involves a wide range of technical experience in it’s user base. To offer power users some additional ways to optimize their use of the toolset, I’ve been working on a Ubiquity vocabulary to navigate, create, and find. I shared some of my experience at BarCamp Atlanta last weekend. Bar Camp Ubiquity Presentation link »

    surfmind.com/muzings/?CFID=12647947&CFTOKEN=30239 · Original page

  12. bastiano 13-Jul-2009
    0 POPS by  McXClip    7-3-2009       Private  No Remarks link »

    How many notebooks can I mash- link »

    clipmarks.com/clipper/McXClip/ · Original page

  13. « Previous 1 2 Next »

    by bastiano

    bastiano
    User: bastiano
    Stats: 22 comments, 21 copies

    Recent Readers

  14. sayaraja
  15. pes
  16. meetrice
  17. pw30piper
  18. choonkeat