OverviewThe UNAKITE Chrome extension is designed to help programmers organize information forgaged from the web. It helps programmers collect information from the web and organize it into a comparison table, so that they can make quicker, more informed decisions with the visualization.
UNAKITE stands for Users Need Accelerators for Knowledge for Implementations in Technology Environments, and unakite is a semiprecious gemstone.The Chrome extension is currently in the development stage as a part of the Natural Programming Project as well as the Knowledge Accelerator Project.
To install the extension, first log in to your Chrome Browser (note that this is not just logging in to G Suite) with an account that can access the Chrome Web Store.
Next, use the email link you received to find and install the extension on the Chrome Web Store.
Michael Xieyang Liu, Nathan Hahn, Angelina Zhou, Shaun Burley, Emily Deng, Jane Hsieh, Brad A. Myers and Aniket Kittur. "UNAKITE: Support Developers for Capturing and Persisting Design Rationales When Solving Problems Using Web Resources" at DTSHPS'18, Lisbon, Portugal, 2018. [pdf of proceedings (abstract page 25)]
Jane Hsieh, Michael Xieyang Liu, Brad Myers and Aniket Kittur "An Exploratory Study of Web Foraging to Understand and Support Programming Decisions" at VL/HCC'18, Lisbon, Portugal, 2018
The Natural Programming Project has been funded in part by the National Science Foundation (under the grant CCF-1814826) and in part by Google (under two Faculty research awards) and Bosch.
[Please note that any opinions, findings and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect those of the National Science Foundation, Google, or Bosch.]
What is a Task?As the name suggests, a task can be anything from "How do I resolve a linker command failed with exit code 1 error?" to "How do I undo commits in Git?" to "What resturants are available for dinner?" It doesn't even have to be a question, another task could be "Picking framework for a project".
Tasks can be added, edited, deleted, or combined. You can also mark a task as ongoing or completed.
How to Start a Task
A new task can be initiated with the Start as NEW task button next to the search bar on any Google search page
Alternatively, the select popover also has a button to start a new task. Simply highlight some html text and you will see the popover option New Task
How to Change the Name of a Task
At the center of the extension popup is a selector for the current task. Text inside the selector box can be edited to change the name of your current task.
The current task box on Google search pages provides another way edit the task name
How to Delete a TaskAll tasks of your account can be viewed under the UNAKITE mainpage by selecting the All Tasks button.
Under this view you can use the snack bars dropdown on top right of a task card to discard any unwanted task.
How to Combine TasksTo combine two tasks, drag one task card onto the other.
How to Switch to another Task
From the extension popup you can use the select dropdown to navigate to another task.The All Tasks view on the UNAKITE mainpage also allows switching to another task when you select a particular task card.
What is an Option?Options are the various way that a task or problem may be completed or solved. Options may be created, deleted, starred, or marked as used.
Add or Collect an OptionAn option may added in the comparison table, the extension popup, or a snippet interaction box (see how to collect one in the Snippets section).
Edit, Delete or Star an Option
Options can be edited by clicking inside their boxes in the extension popup or comparison table.They can be deleted or starred from the snack bar dropdown in the extension popup and comparison table.
What is a Criterion?Criteria are characteristics or of an option or potential situations where it would become useful. Often they measure the usefulness of certain option(s).
Edit, Add, Delete, or Star CriteriaCriteria can be edited, added, deleted, and starred in the same ways as options.
Snippets and Rating
What is a Snippet?Snippets are chunks of information or code snippets from the web which are relevant to the current task. Snippets may be collected (as opposed to being manually added by user) through the selection popover, the custom Stack Overflow Snippet button, or the Option + drag tool.
How to Collect a SnippetLike options and criteria, snippets may also be collected through the selection popover and context menu. But to preserve the formatting of code snippets or other html sections, we introduce the custom drag tool. To use, simply hold down option key and drag with the mouse to collect a section of html on the web page. Each snippet can be titled using the input field at the top of the blue interaction box Notice that each Stack Overflow post also receives its own "snippet button". Clicking this button will save the post as an uncategorized snippet.
Settings can be accessed by clicking on the user icon found on both the extension popup and UNAKITE mainpage. Inside settings you may choose to turn on the selector, display the UNAKITE mainpage every time a new tab is opened, and keep track of all visited sites during a task.
Examples of Comparison Tables
Below are some examples comparison tables we have constructed based on information from Stack Overflow posts. Each table is linked to an interative demo of our tool.
What information does the extension track?If you the user is logged in and actively working on a task, UNAKITE will track visited web pages and search queries, in addition to any user inputs into UNAKITE (options, criteria, snippets, and notes). Note that you can stop the extension from tracking of all web pages under Settings.
Got more questions? Submit them using our survey .