The names of most of my projects, and those of my students, are
acronyms, generally based on gemstones or rocks. Below is a summary of all the
systems and what they stand for, and usually a reference to find out more about
the system.
I am happy to say that one of my graduated students went on to have his
own series of systems with acronyms based on a theme: Cloth. See James Landay's systems: Silk, Satin, Suede, Denim, Damask, WebQuilt, etc.
The systems are approximately in reverse chronological order of start dates:
GILT (Note: Not the same Gilt as the Graphical Interface Layout Tool from 1997 below) Generation-based Information support with LLM Technology. Personalized chat-based information about selected code
2023 - (on-going)
Daye Nam, Andrew Macvean, Vincent J. Hellendoorn, Bogdan Vasilescu, and Brad A. Myers. "In-IDE generation- based information support with a large language model," To appear in: International Conference on Software Engineering (ICSE) 2024.
SELENITE Smart Environment for Logical
Extraction and Navigation of Information using Technological Expertise. Helps users find and label information
2023 - (on-going)
Michael Xieyang Liu, Tongshuang Wu, Tianying Chen, Franklin Mingzhe Li, Aniket Kittur, Brad A Myers. "Selenite: Grounding Information Reading and Sensemaking with LLMs". Submitted for publication
SODALITE Stories for On-boarding as
Documentation Authoring, Leveraging IDEs for Text Enhancements. IDE plugin that helps write long-form documentation about code.
2023 - (on-going)
Amber Horvath, Andrew Macvean, Brad Myers, "Support for Long-Form Documentation Authoring and Maintenance". IEEE Symposium on Visual Languages and Human-Centric Computing (VLHCC'2023). Washington, D.C., October 2-6, 2023. To appear.
MALACHITE Memorize All of the Linguistic Aspects of the Context to Help Intelligent Technologies to Emerge. An intelligent agent that enables users
to successfully teach natural language inputs on a semantic and syntactic level which takes context into account.
2023 - (on-going)
Marcel Ruoff, Brad A. Myers, Alexander Maedche. "Towards Enabling Users in Teaching Context-Aware Natural Language Interfaces" , Submitted for publication.
(Formerly "ContexIT")
Marcel Ruoff, Brad A. Myers, Alexander Maedche, "Towards Interactively Contextualizing Natural Language Input in Data Visualization Tools", NLVIZ'2022: Exploring Research Opportunities for Natural Language, Text, and Data Visualization, workshop in conjunction with the IEEE Visualization Conference, October 16, 2022, Oklahoma City, OK, pdf.
ONYX Optimizing Natural language interfaces for Your eXperience. Natural language interface for data visualization tools that uses interactive task learning.
2022 - (on-going)
Marcel Ruoff, Brad A. Myers, Alexander Maedche. "ONYX - User Interfaces for Assisting in Interactive Task Learning for Natural Language Interfaces of Data Visualization Tools". Late Breaking Work (Poster),2022 CHI Conference on Human Factors in Computing Systems (CHI '2022). ACM. New Orleans, LA, April 30 - May 5, 2022. ACM DL
Marcel Ruoff, Brad Myers, Alexander Maedche, "ONYX: Towards Extending Natural Language Interfaces for Data Visualization Tools through Interactive Task Learning" NL VIZ: Workshop on Exploring Opportunities and Challenges for Natural Language Techniques to Support Visual Analysis at IEEE Visualization Conference, virtual (not New Orleans), October 24, 2021. Paper and video presentation.
SOREL Stack Overflow RELation extractor. Tool which finds comparable methods from Stack Overflow and displays them while the user is looking at documentation in a browser.
2022 - (on-going)
Daye Nam, Brad Myers, Bogdan Vasilescu, Vincent Hellendoorn, "Improving API Knowledge Discovery with ML: A Case Study of
Comparable API Methods", 45th IEEE/ACM International Conference on Software Engineering (ICSE 2023), Melbourne, Australia, 17-19 May 2023. pp. 1890-1906. IEEE DL.
DRUSE Design
Rationale
Using
SSystematic
Explanations. Plugin for Figma that helps with keeping track of Design Rationale and other meta-data.
2022 - (on-going)
Previously: Joshua Suber, Yun Ji Chung, Denise Tang
WIGGLITE Wiggling for
Information
Gathering and
Generating
Lightweight
Impressions for
Triage and
Encoding. Interaction technique for wiggling that is makes it very easy to extract snippets during sensemaking. (Not a gemstone.)
2021 - (on-going)
Michael Xieyang Liu, Andrew Kuznetsov, Yongsung Kim, Joseph Chee Chang, Aniket Kittur, Brad A. Myers. "Wigglite: Low-cost Information Collection and Triage," UIST '2022: The 35th Annual ACM Symposium on User Interface Software and Technology, Bend, Oregon, October 29 - November 2, 2022, Article No. 32. Pages 1–16. ACM DL and video of talk.
Crystalline Clipping Resulting in Your Structure as Tables And Lists Linked to Implicit Notetaking Easily Michael Liu's new system for helping to build tables to help with decision making..
2021 - (on-going)
Michael Xieyang Liu, Aniket Kittur, Brad A Myers, "Crystalline: Lowering the Cost for Developers to Collect and Organize Information for Decision Making". In Proceedings of the 2022 CHI Conference on Human Factors in Computing Systems (CHI '2022). ACM. New Orleans, LA, April 30 - May 5, 2022. ACM DL and video.
STRATA Sidebar Towards Reuse and to Assess Trustworthiness and Applicability. Plugin for Chrome that helps users assess the reusability of UNAKITE tables..
2020 - (on-going)
Michael Xieyang Liu, Aniket Kittur,
Brad A. Myers. "To Reuse or Not To Reuse? A Framework and System for Evaluating Summarized Knowledge".
CSCW'2021, Proc. ACM Hum.-Comput. Interact.5, CSCW1, Article 166, April, 2021, 35 pages. To be presented at CSCW'2021, Oct. 23-27, 2021. Arxiv preprint. ACM DL. local pdf. Best Paper Award.
ADAMITE Annotated Documentation Allows for More Information Transfer between Engineers. Tool for annotating API documentation on the web.
2020 - (on-going)
Amber Horvath, Michael Xieyang Liu, River Hendriksen, Connor Shannon, Emma Paterson, Kazi Jawad, Andrew Macvean, Brad A Myers, "Understanding How Programmers Can Use Annotations on Documentation." In Proceedings of the 2022 CHI Conference on Human Factors in Computing Systems (CHI '2022). ACM. New Orleans, LA, April 30 - May 5, 2022. ACM DL or preprint pdf or preprint at arXiv:2111.08684 [cs.HC].
SCHORL Sketching with Constraints Helps with Organized, Rapid Layouts. Class project for 05-830 Spring 2020 on a user interface for inferring constraints from sketches.
2020
SOVITE System for Optimizing Voice Interfaces to Tackle Errors. Method to correct errors. Part of Sugilite.
2020 - 2021
Toby Jia-Jun Li, Jingya Chen, Haijun Xia, Tom Mitchell, Brad Myers.
"Multi-Modal Repairs of Conversational Breakdowns in Task-Oriented Dialogs", ACM Symposium on User Interface Software and Technology (UIST'20). October 20 - 23, 2020, Minneapolis, Minn. Pages 1094-1107. video of talk. ACM DL or local pdf.
SIGCHI Best of UIST Best Paper Award
PINALITE Personal Information Nicely Anonymized Leveraging Interface Trace Examples. Method to anonimize personal information in shared scripts. Part of Sugilite.
2020 - 2021
Toby Jia-Jun Li, Brandon Canfield, Jingya Chen, and Brad A Myers, "Privacy-Preserving Script Sharing in GUI-based Programming-by-Demonstration Systems", CSCW'2020, Proc. ACM Hum.-Comput. Interact., Vol. 4, No. CSCW1, Article 60. May 2020. pp. 60:1-60:23. video of talk. ACM DL or local pdf.
PLIERS Programming Language Iterative Evaluation and Refinement System. Process for using various user centered methods to design programming languages..
2019 - 2020
Michael Coblenz, Gauri Kambhatla, Paulette Koronkevich, Jenna L. Wise,
Celeste Barnaby, Jonathan Aldrich, Joshua Sunshine, Brad A. Myers.
"PLIERS: A Process that Integrates User-Centered Methods into Programming Language Design". ACM Transactions on
Computer-Human Interaction. vol. 28, issue 4. October, 2021. Article No. 28, pp 1–53. ACM DL or preprint pdf or arXiv:1912.04719 [cs.HC].
MARBLE Mining
API
Repositories for
Boilerplate
Lessening Effort Tool to allow mine software repositories to look for boilerplate code.
2018 - (on-going)
Daye Nam, Amber Horvath, Andrew Macvean, Brad Myers, Bogdan Vasilescu, "MARBLE: Mining for Boilerplate Code to Identify API Usability Problems," 34th IEEE/ACM International Conference on Automated Software Engineering (ASE 2019). Nov. 11 - 15, 2019. San Diego, CA. pp. 615-627. IEEE DL and preprint pdf.
PUMICE Programming in a User-friendly
Multimodal Interface through Conversations
and Examples Tool to allow end-user programmers to teach new concepts through mixed-initiative dialogs and demonstrations. Part of Sugilite.
2018 - 2021
Toby Jia-Jun Li,
Marissa Radensky,
Justin Jia,
Kirielle Singarajah,
Tom Mitchell,
Brad Myers. "PUMICE: A Multi-Modal Agent that Learns Concepts and Conditionals from Natural Language and Demonstrations," ACM Symposium on User Interface
Software and Technology, UIST'19, New Orleans, LA, October 20-23, 2019. pp. 577-589. 3 min video or video of talk. ACM DL and local pdf
ALABASTER Autocomplete Letting Apache Beam Applications Succeed Through Exploration Rapidly Plugin for PyCharm code editor for Python to help write code using the Beam API.
2018
VERDANT Versions Effortlessly Recorded, Displayed Around Notebook Tastefully, or Version Explosion Rectified Diligently Anticipating Notebook Timewarp, or Very Exciting Re-Design Aiding Navigating Timewarp, or Versioning Experiments Reinforce Data Analysis Notebooks Temporally Mary Beth Kery's dissertation project on micro-versioning for data science.
2018 - 2021
See Verdant website
APPINITE Automation Programming on Phone Interfaces using Natural-language Instructions with Task Examples Tool to allow end-user programmers to create generalizations verbally while using mobile phones and programming-by-example. Part of Sugilite.
2018 - 2021
Toby Jia-Jun Li, Igor Labutov, Xiaohan Nancy Li, Xiaoyi Zhang, Wenze Shi, Wanling Ding, Tom M. Mitchell and Brad A. Myers, "A multi-modal interface for creating data descriptions in programming by demonstration using natural language instructions", 2018 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC'18), October 1 - 4, 2018, Lisbon, Portugal. pp. 104-114. local pdf.
UNAKITE Users
Need
Accelerators for
Knowledge for
Implementations in
Technology
Environments Research on supporting knowledge organization for programmers.
2017 - (on-going)
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.
ROSE QUARTZ Recollection
Of
Serial
Experiments:
Quiet
Utility
Always
Recording
Tree-structure
Zen Research on supporting exploratory programming for Data Scientists.
2017
Mary Beth Kery, Marissa Radensky, Mahima Arya, and Brad A. Myers
Interim revision of Variolite; Replaced with Verdant
OBSIDIAN Overhauling Blockchains with States to Improve Development of Interactive Application Notation.
(Formerly: Object-oriented Blockchain State Interaction and Development Implementation And Notation)
Research on a new language for programming blockchain programs.
2016 - 2020
Michael Coblenz, Jonathan Aldrich, Joshua Sunshine, Brad Myers, and Tyler Etzel
Celeste Barnaby, Michael Coblenz, Tyler Etzel, Eliezer Kanal, Joshua Sunshine, Brad Myers, Jonathan Aldrich. "A User Study to Inform the Design of the Obsidian Blockchain
DSL." 8th Workshop on Evaluation and Usability of Programming Languages and Tools (PLATEAU'2017) at SPLASH 2017. 23 Oct 2017, local pdf.
Michael Coblenz. 2017. Obsidian: a safer blockchain programming language. In Proceedings of the 39th International Conference on Software Engineering Companion (ICSE-C '17). IEEE Press, Piscataway, NJ, USA, 97-99. ACM DL
Michael Coblenz. 2017. Principles of usable programming language design. In Proceedings of the 39th International Conference on Software Engineering Companion (ICSE-C '17). IEEE Press, Piscataway, NJ, USA, 469-470. ACM DL
Michael Coblenz, Tyler Etzel, Joshua Sunshine, Jonathan Aldrich, Brad Myers, Eli Kanal, and Mark Sherman, "Obsidian: a Safer Blockchain Programming Language", Science of Security Quarterly Meeting, Feb. 1-2, 2017. Raleigh, NC.
LUNA Language Usability eNhancements Augmentation Research on extensions to Java to support the "Fault Barrier" pattern.
2017
Florian Kistner's master's thesis for TU München
in Information Systems, completed in part while visiting at CMU
Advised by Brad A. Myers and Mary Beth Kery
VARIOLITE Variations Augment Real Iterative Outcomes Letting Information Transcend Exploration. Research on supporting exploratory programming for Data Scientists.
2016 - 2017
Mary Beth Kery, Amber Horvath, Brad Myers. "Variolite: Supporting Exploratory Programming by Data Scientists", Proceedings CHI'2017: Human Factors in Computing Systems,
Denver, CO, May 6-11, 2017. pp. 1265-1276. ACM dl, local pdf and YouTube video. Best paper Honorable Mention award.
GLACIER Great Languages Allow Class Immutability Easily and Readily. System to enforce immutability in Java.
2016 - 2020
Michael Coblenz, Whitney Nelson, Jonathan Aldrich, Brad Myers and Joshua Sunshine, "Glacier: Transitive Class Immutability for Java", ICSE'2017: The 39th International Conference on Software Engineering,
Buenos Aires, Argentina, May 20-28, 2017. pp. 496-506. ACM DL
or local pdf.
Michael Coblenz, Joshua Sunshine, Jonathan Aldrich, Brad Myers, Sam Weber, Forrest Shull, "Exploring Language Support for Immutability" ICSE'2016: The 38th International Conference on Software Engineering,
Austin, TX, May 14 - 22, 2016. pp. 736-747.
ACM DL or local pdf
Michael Coblenz, Joshua Sunshine, Brad
Myers, Sam Weber, Forrest Shull, "Comparing Transitive to Non-Transitive Object Immutability"
The Sixth Workshop on Evaluation and Usability of Programming Languages and Tools(PLATEAU'2015), at SPLASH 2015, 26 Oct., 2015, Pittsburgh, PA, pp. 47-48.
EPIDOSITE Enabling Programming of IoT Devices On Smartphone Interfaces for The End-users. Tool to allow end-user programmers to create automations for Internet of Thing (IoT) devices using mobile phones and programming-by-example. Part of Sugilite.
2016 - 2021
Toby Jia-Jun Li, Yuanchun Li, Fanglin Chen and Brad A. Myers. "Programming IoT Devices by Demonstration on Mobile Apps", Sixth International Symposium on End User Development (IS-EUD 2017). Eindhoven, Netherlands, June 13-15, 2017. Lecture Notes in Computer Science. Springer, Cham, LNCS 10303. pp. 3-17. Springer or local pdf. Best Paper award.
SUGILITE Smartphone Users Generating Intelligent Likeable Interfaces Through Examples. Research on smartphone usage and optimization with respect to input.
2016 - 2021
Toby Li, Amos Azaria, and Brad Myers. "SUGILITE: Creating Multimodal Smartphone Automation by Demonstration", Proceedings CHI'2017: Human Factors in Computing Systems,
Denver, CO, May 6-11, 2017. pp. 6038-6049. ACM dl, local pdf and video. Best paper Honorable Mention award.
Toby Jia-Jun Li, Brad A. Myers, Amos Azaria, Igor Labutov, Alexander I. Rudnicky, Tom M. Mitchell, "Designing a Conversational Interface for a Multimodal Smartphone Programming-by-Demonstration Agent," CHI 2017 workshop on Conversational UX Design, May 6, 2017, Denver, CO. Online pdf.
MOONSTONE Making Object Oriented Novel Software Tools Optimized for Noting Exceptions. Research on exception handling, and new plugin for Eclipse to help with exception handlers.
2016 - 2017
Florian Kistner, Mary Beth Kery, Michael Puskas, Steven Moore and Brad Myers, "Moonstone: Support for Understanding and Writing Exception Handling Code," 2017 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC'17), October 11 –14, 2017, Raleigh, NC, pp. 63-71. video and local pdf.
Mary Beth Kery, Claire Le Goues, Brad A. Myers, "Examining Programmer Practices for
Locally Handling Exceptions", Proceedings of the 13th International Conference on Mining Software Repositories (MSR'2016) Mining Challenge Track, Austin, TX, USA, 14-15 May, 2016. pp. 484-487. ACM DL or local pdf.
AQUAMARINE Allowing Quick Undoing of Any Marks And Repairs to Improve Novel Editing. Paint program to explore selective undo using the script model.
2014 - 2015
Brad A. Myers, Ashley Lai, Tam Minh Le, YoungSeok Yoon, Andrew Faulring, Joel Brandt, "Selective Undo Support for Painting Applications",
Proceedings CHI'2015: Human Factors in Computing Systems,
Seoul, Korea, April 18-23, 2015. pp. 4227-4236. local pdf and video and video of talk.
DACITE Design
Annotations for Complementing Interfaces Targeting Effectiveness. Plugin for Eclipse to help with API Usability.
2014 - 2016
André L. Santos and Brad A. Myers, "Design Annotations to Improve API Discoverability", The Journal of Systems & Software, volume 126, April, 2017, Pages 17–33. doi: 10.1016/j.jss.2016.12.036 or
local pdf.
GNEISS Gathering Novel End-User Internet Services using Spreadsheets. A novel spreadsheet-based language for programming web services.
2014 - 2016
Kerry Chang and Brad A. Myers, "Using and Exploring Hierarchical Data in Spreadsheets."
Proceedings CHI'2016: Human Factors in Computing Systems,
San Jose, CA, May 7-12, 2016. pp. 2497-2507. ACM DL or local pdf and video and video of talk.
Kerry Chang, Brad Myers, "A Spreadsheet Model for Handling Streaming Data",
Proceedings CHI'2015: Human Factors in Computing Systems,
Seoul, Korea, April 18-23, 2015. pp. 3399-3402. local pdf.
Kerry Chang and Brad A. Myers, "Creating Interactive Web Data Applications with Spreadsheets", ACM Symposium on User Interface Software and Technology, UIST'14, October 5-8, 2014, Honolulu, Hawaii. pp. 87-96.
Kerry Chang and Brad A. Myers, "A Spreadsheet Model for Using Web Service Data," 2014 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC'14), Melbourne, Australia, 28 July - 1 August 2014. pp. 169-176. local pdf.
CRYOLITE Cloud9 Recorder of Your Operations by Listening to Interactions in The Editor. A port of Fluorite to JavaScript for the Cloud9 IDE for the web.
2014
Andrew Faulring and Brad Myers
SPINEL Smartphones Providing Information Needing External Lists. A web-based tool for connecting to remote data sources without programming.
2013
Kerry S. Chang, Brad A. Myers,
Gene M. Cahill, Soumya Simanta, Edwin Morris and Grace Lewis. "A Plug-in Architecture for Connecting to New Data Sources on Mobile Devices", 2013 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC'13), San Jose, CA, September 15–19, 2013. pp. 51-58. local pdf.
AZURITE Adding Zest to Undoing and Restoring Improves Textual Exploration. A plug-in for Eclipse that facilitates backtracking (undoing) of code.
2012 - 2015
YoungSeok Yoon and Brad A. Myers, "Supporting Selective Undo in a Code Editor", 37th International Conference on Software Engineering, ICSE 2015, May 16-24, 2015, Florence, Italy, pp. 223-233.
preprint pdf and video.
YoungSeok Yoon, Sebon Koo and Brad A. Myers, "Visualization of Fine-Grained Code Change History", 2013 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC'13), San Jose, CA, September 15–19, 2013. pp. 119-126. local pdf.
YoungSeok Yoon and Brad A. Myers, "A Longitudinal Study of Programmers’ Backtracking," 2014 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC'14), Melbourne, Australia, 28 July - 1 August 2014. pp. 101-108. local pdf.
FLUORITE Full of Low-level User Operations Recorded In The Editor. A plug-in for Eclipse that records the low-level user and Eclipse events to enable analysis.
2011 - 2015
YoungSeok Yoon and Brad A. Myers, "Capturing and Analyzing Low-Level Events from the Code Editor",
PLATEAU 2011: Evaluation and Usability of Programming Languages and Tools,
workshop at the
Onward! 2011 and Splash
2011 conferences, Portland, Oregon, October 24, 2011.
On-line pdf or
local
pdf.
YoungSeok Yoon and Brad A. Myers, "An Exploratory Study of Backtracking
Strategies Used by Developers," Cooperative and Human Aspects of Software Engineering
(CHASE), An ICSE 2012 Workshop. Zurich, Switzerland, June 2, 2012. pp. 138-144. pdf.
GRAPHITE GRAphical Palettes Help Instantiate
Types in the Editor. A plug-in for Eclipse that pops up type-specific palettes to help
users enter code, especially for constant literals.
2011 - 2012
Cyrus Omar, YoungSeok Yoon, Thomas D. LaToza, Brad A. Myers,
"Active Code Completion," poster at
2011 IEEE Symposium on Visual Languages and Human-Centric
Computing (VL/HCC'11), Pittsburgh, PA, Sept. 1822, 2011. pp. 261-262.
local pdf.
Cyrus Omar, YoungSeok Yoon, Thomas D. LaToza, Brad A. Myers,
"Active Code Completion."
ICSE'2012: 34nd International Conference on Software Engineering,
Zurich, Switzerland, 2-9 June 2012. pp. 859-869. local pdf.
EUCLASE (renamed to be "InterState", which is not an acronym; also ConstraintJS) End User Centered Language, APIs, System, and Environment. Aims to create an easier way to author interactive behaviors,
starting with studies of Interaction Designers.
2007 - 2015
Stephen Oney, Brad A. Myers, and Joel Brandt, "InterState: A Language and Environment for Expressing Interface Behavior", ACM Symposium on User Interface Software and Technology, UIST'14, October 5-8, 2014, Honolulu, Hawaii. pp. 263-272.
Stephen Oney, Brad A. Myers, Joel Brandt, "ConstraintJS: Programming Interactive Behaviors
for the Web by Integrating Constraints and States", UIST'2012: ACM Symposium on User
Interface Software and Technology, October 7-10, 2012. Cambridge,
MA. pp. 229-238. ACM DL or local pdf.
Stephen Oney, Brad Myers, and John Zimmerman. "Visions for
Euclase: Ideas for Supporting Creativity through Better Prototyping of
Behaviors". ACM CHI 2009 Workshop on Computational
Creativity Support. Saturday, April 4th, 2009, Boston, MA.
pdf
Kursat Ozenc, Miso Kim, John Zimmerman, Stephen Oney, and Brad Myers.
"How to Support Designers in Getting Hold of the
Immaterial Material of Software".
Proceedings CHI'2010: Human Factors in Computing Systems.
Atlanta, GA, April 10-15, 2010. pp. 2513-2522.
local pdf
Brad Myers, Sunyoung Park, Yoko Nakano, Greg Mueller, Andrew Ko,
"How Designers Design and Program Interactive Behaviors,"
2008 IEEE Symposium on Visual Languages and Human-Centric Computing,
VL/HCC'08. Sept 15-18, 2008, Herrsching am Ammersee, Germany. pp. 177-184.
pdf. See also
the original survey.
Sunyoung Park, Brad Myers, Andrew Ko.
"Designers' Natural Descriptions of Interactive Behaviors,"
2008 IEEE Symposium on Visual Languages and Human-Centric Computing,
VL/HCC'08. Sept 15-18, 2008, Herrsching am Ammersee, Germany. pp. 185-188.
pdf
EUKLAS Eclipse Users' Keystrokes Lessened by Attaching Samples. A plug-in for Eclipse for JavaScript that helps copy and paste from example code. (Euklas is German for Euclase.)
2009 - 2011
Christian Dörner, Andrew Faulring, Brad A. Myers. "EUKLAS - Supporting Copy-and-Paste Strategies for Integrating Example Code", The Fifth Workshop on Evaluation and Usability of Programming Languages and Tools(PLATEAU'2014), at SPLASH 2014, 21 Oct 2014, Portland, OR. pp. 13-20. ACM DL or local pdf.
CALCITE Construction And Language Completion Integrated Throughout Eclipse. A plug-in for Eclipse that uses the Jadeite database to provide better code completions.
2009 - 2011
Mathew Mooty, Andrew Faulring, Jeffrey Stylos and Brad Myers.
"Calcite: Completing Code Completion for Constructors using Crowds,"
2010 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC'10), Legans-Madrid, Spain, 21-25 September 2010.
pp. 15-22.
APATITE Associative
Perusing of
APIs
That
Identifies
Targets
Easily. Uses the ideas from Feldspar to build associative Java documentation.
2008 - 2011
Daniel S. Eisenberg, Jeffrey Stylos, Andrew Faulring, Brad A. Myers.
"Using Association Metrics to Help Users Navigate API Documentation,"
2010 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC'10), Legans-Madrid, Spain, 21-25 September 2010.
pp. 23-30.
Daniel S. Eisenberg, Jeffrey Stylos, and Brad A. Myers,
"Apatite: A New Interface for Exploring APIs"
Proceedings CHI'2010: Human Factors in Computing Systems.
Atlanta, GA, April 10-15, 2010. pp. 1331-1334.
local pdf and
local movie
JADEITE
Java
API Documentation with Extra Information Tacked-on
for Emphasis. New project to create better Java documentation.
2008 - 2010
Jeffrey Stylos, Andrew Faulring, Zizhuang Yang, Brad A. Myers.
"Improving API Documentation Using API Usage Information".
IEEE Symposium on Visual Languages and Human-Centric Computing,
VL/HCC'09. Sept. 20-24, 2009. Corvallis, Oregon. pp. 119-126.
IEEE DL pdf or
local pdf
Jeffrey Stylos, Brad A. Myers, Zizhuang Yang.
"Jadeite: Improving API Documentation Using Usage Information,"
Extended Abstracts, CHI'2009, (Work in Progress Poster).
Boston, MA, April 4-9, 2009. pp. 4429-4434.
pdf
FELDSPAR Finding Elements by Leveraging Diverse Sources of Pertinent
Associative Recollection. Associative retrieval of information. Update of IOLITE. Part of Radar.
2007 - 2008
Duen Horng Chau and Brad Myers.
"What to Do When Search Fails: Finding Information by Association,"
Proceedings CHI'2008: Human Factors in Computing Systems.
Florence, Italy, April 5-10, 2008. pp. 999-1008.
pdf and
Quicktime movie
Duen Horng Chau, Brad Myers, and Andrew Faulring,
"Feldspar: A System for Finding Information by Association,"
CHI 2008 Workshop on Personal Information Management:
PIM 2008, April 5-6, 2008,
Florence, Italy.
pdf
FISCH Fluid In-Stroke Completion shortHand. Word-level completion for unistroke gestural text entry techniques like
EdgeWrite.
2005 - 2007
Jacob O. Wobbrock, Brad A. Myers, and Duen Horng Chau, "In-stroke
Word Completion". ACM Symposium on User Interface Software and
Technology, UIST'06, October 15-18, 2006, Montreux,
Switzerland. pp. 333-336.
pdf
BERYL Browser Extensions for Reducing Your Labor. Tools for filling in Web forms.
2006 - 2009
IOLITE Intelligent On Line Inferencing
for Text and Email. Intelligent, coordinated file and email message handling. Part of the Radar Project.
2005 - 2006
Brandon Rothrock, Brad A. Myers, Sophie H. Wang.
"Unified Associative Information Storage and Retrieval".
Extended Abstracts, CHI'2006. Montreal, Canada, April 22-27, 2006.
pp. 1271-1276.
pdf
CRYSTAL Clarifications Regarding Your Software
using a Toolkit, Architecture and Language. Architecture that allows users to ask "Why" questions of their
applications. Part of the Natural Programming Project.
2005 - 2006
Brad Myers, David A. Weitzman, Andrew J. Ko, and Duen Horng Chau,
"Answering Why and Why Not Questions in User Interfaces,"
Proceedings CHI'2006: Human Factors in Computing Systems.
Montreal, Canada, April 22-27, 2006. pp. 397-406.
pdf and video
UNIFORM Using Novel Interfaces For
Operating Remotes that Match. System to generate consistent user interfaces, as part of the PUC Project. 2005 - 2006
Jeffrey Nichols, Brad A. Myers, Brandon Rothrock, "UNIFORM: Automatically
Generating Consistent Remote Control User Interfaces,"
Proceedings CHI'2006: Human Factors in Computing Systems.
Montreal, Canada, April 22-27, 2006. pp. 611-620.
pdf
BARISTA Basic Approaches to Rewriting Instructions
as Structured Textual Abstractions. Novel text editor for code, especially for Java. Part of the Natural Programming Project.
(a "barista" is a person who makes coffee.)
2005 - 2006
Andrew J. Ko and Brad A. Myers,
"Barista: An Implementation Framework for Enabling New
Tools, Interaction Techniques and Views in Code Editors,"
Proceedings CHI'2006: Human Factors in Computing Systems.
Montreal, Canada, April 22-27, 2006. pp. 387-396.
pdf
MICA Makes Interfaces Clear and
Accessible. Helps programmers learn APIs using smarter search. Part of the Natural Programming Project.
2005 - 2006
Jeffrey Stylos and Brad A. Myers. "Mica: A Programming Web-Search Aid".
2006 IEEE Symposium on Visual Languages and Human-Centric Computing.
Sept 4-8, 2006, Brighton, UK.
pp. 195-202.
pdf.
CITRUS Creating Interactive Tools for
Reshaping and Utilizing Structure New toolkit for
creating user interfaces for structured data. Part of Marmalade.
2005 - 2007
Andrew J. Ko and Brad A. Myers. "Citrus: A Toolkit for Simplifying the
Creation of Structured Editors for Code and Data". ACM Symposium on User
Interface Software and Technology, UIST'05, October 23-26, 2005, Seattle,
WA. pp. 3-12. pdf
or ACM DL and video
SLATE Spreadsheet Language for Accentuating
Type Errors Michael Coblenz's undergrad project to provide
labels and units in spreadsheets. Part of the Natural Programming
project. 2005 - 2006
Michael J. Coblenz, Andrew J. Ko, and Brad A. Myers, "Using Objects of
Measurement to Detect Spreadsheet Errors," 2005 IEEE Symposium on Visual
Languages and Human-Centric Computing (VL/HCC'05), Dallas, Texas, USA, 20-24
September 2005. pp. 314-316. pdf
or IEEE DL
CITRINE Clipboard Interaction Techniques that
Recognize Information such as Names and
Events Project to investigate how to make the cut-copy-paste
clipboard smarter and more effective. This is part of Radar. 2003 - 2004
RADAR Reflective Agents with Distributed
Adaptive Reasoning This is part of the PAL program:
Perceptive Assistant that Learns, which is part of the
EPCA program: Enduring Personal Cognitive Agent.
Project to investigate intelligent assistant for office tasks. 2003 - 2008
EUSES End Users Shaping Effective
Software Consortium performing research on how to make end-user
software more reliable. It is helping to fund the Natural Programming Project,
including Marmalade and WhyLine (below). 2003 - (on-going)
MARMALADE Mechanisms that Avoid Recurring
Mistakes in Alice by Linking Abstractions to
Data and Events Project to create a new programming
environment that makes debugging easier. 2003 - (on-going)
PEBBLES PDAs for Entry of Both Bytes and
Locations from External Sources Project to
investigate use of hand-held computers simultaneously with PCs. 1998 -
(on-going)
HANDS Human-Centered Advances for Novice
Development of Software PhD thesis of John Pane.
Programming language and environment for children. 1995 - 2002
TOPAZ Transcripts Of Programs Activated
with Zeal Scripting facility built into Amulet 1997-1998.
Brad A. Myers. "Scripting Graphical Applications by Demonstration,"
Proceedings CHI'98: Human Factors in Computing Systems. Los Angeles,
CA, April 18-23, 1998. pp. 534-541.
pdf and
video
AMULET Automatic Manufacture of Usable and
Learnable Editors and Toolkits Toolkit and
application framework for creating user interfaces in C++. Large-scale
research project. 1994 - 1997
TURQUOISE (not an acronym) Preliminary technique for creating web
pages by demonstration. 1997
Robert C. Miller, Brad A. Myers. Creating Dynamic World Wide Web
Pages by Demonstration. Carnegie Mellon University School of Computer
Science Technical Report, no. CMU-CS-97-131 and Human Computer Interaction
Institute Technical Report CMU-HCII-97-101. May, 1997. postscript or pdf
GAMUT Games Are Made Using
This Interactive tool for creating games and other user
interfaces by demonstration. PhD thesis of Richard McDaniel. Created using
Amulet. 1996-1999.
Richard G. McDaniel, Creating Whole Applications Using Only
Programming-by-Demonstration. Carnegie Mellon University School of
Computer Science Technical Report, no. CMU-CS-99-128. May 14, 1999. 371
pages. postscript
Richard G. McDaniel and Brad A. Myers. "Building Applications Using Only
Demonstration," IUI'98: 1998 International Conference On Intelligent User
Interfaces, January 6-9, 1998, San Francisco, CA. pp. 109-116. postscript
Richard G. McDaniel and Brad A. Myers, "Getting More Out Of
Programming-By-Demonstration." Proceedings CHI'99: Human Factors in
Computing Systems. Pittsburgh, PA, May 15-20, 1999. pp. 442-449. postscript
TALISMAN Toolkit and Application Layer for
Synchronous Multiple-user Access over a
Network Never-finished networking layer for Amulet. 1998
John Huebner and Brad A. Myers. "Easily Programmable Shared Objects For
Peer-To-Peer Distributed Applications." pdf
GLASS Graphical Layer And Server Simplifier PostScript printing driver. September 1992 - May 1993
Project by Don Hopkins when he was visiting the Garnet group.
GARNET Generating an Amalgam of Real-time,
Novel Editors and Toolkits Toolkit and application
framework for creating user interfaces in Lisp. Large-scale research
project. 1989 - 1994
AGATE AGesture-recognizer And Trainer by
Example Tool to create gesture recognizers. Implemented in both
Garnet and Amulet. 1989 - 1997
James A. Landay and Brad A. Myers. "Extending an Existing User Interface
Toolkit to Support Gesture Recognition," Adjunct Proceedings of
INTERCHI'93. Amsterdam, The Netherlands, April 24-29, 1993. pp. 91-92.
Abstract
or Postscript
GILT Graphical Interface Layout
Tool Interface builder tool to layout widgets. Implemented in
both Garnet and Amulet. 1989 - 1997
Osamu Hashimoto and Brad A. Myers. "Graphical Styles For Building User
Interfaces by Demonstration," ACM Symposium on User Interface Software
and Technology: UIST'92, Monterey, CA, Nov. 16-18, 1992. pp. 117-124.
video
Brad A. Myers. "Separating Application Code from Toolkits: Eliminating
the Spaghetti of Call-Backs," ACM Symposium on User Interface Software
and Technology: UIST'91, Hilton Head, SC, Nov. 11-13, 1991. pp. 211-220.
video
GEM Graphics and Events Manager Lowest level
of the Garnet and Amulet implementations. High-level interface to the window
manager. 1989 - 1997
ORE Object Registering and Encoding Object
and constraint level of Amulet. Provided prototype-instance object
model. (Equivalent to KR layer of Garnet). 1994 - 1997
Rich McDaniel and Brad A. Myers. A Dynamic And Flexible
Prototype-Instance Object And Constraint System In C++. Carnegie Mellon
University School of Computer Science Technical Report, no. CMU-CS-95-176
and Human Computer Interaction Institute Technical Report CMU-HCII-95-104.
July, 1995. postscript
Brad A. Myers, Rich McDaniel, Rob Miller, Brad Vander Zanden, Dario
Giuse, David Kosbie and Andrew Mickish, "The Prototype-Instance Object
Systems in Amulet and Garnet," Prototype Based Programming: Concepts,
Languages and Applications, James Noble, Antero Taivalsaari and Ivan
Moore, eds. Singapore: Springer-Verlag, 1999. pp. 141-176. ISBN
981-4021-25-3. Word
format
KR Knowledge Representation Object and constraint
level of Garnet. Provided prototype-instance object model. (Equivalent to ORE
layer of Amulet). 1989 - 1994
SILK Sketching Interfaces Like
Krazy PhD thesis system of James Landay. Create interfaces by
just sketching them. Implemented in Garnet. 1990-1996
James Landay and Brad Myers. "Sketching Interfaces: Toward More Human
Interface Design", IEEE Computer, March, 2001. pp. 56-64. pdf
James Landay and Brad A. Myers. "Interactive Sketching for the Early
Stages of User Interface Design," Proceedings CHI'95: Human Factors in
Computing Systems. Denver, CO. May, 1995. pp. 43-50. postscript
MARQUISE Mostly Automated, Remarkably Quick
User Interface Software
Environment Interactive tool to create some applications by
demonstration. Implemented in Garnet. 1993
Brad A. Myers, Richard G. McDaniel, and David S. Kosbie. "Marquise:
Creating Complete User Interfaces by Demonstration," Proceedings
INTERCHI'93: Human Factors in Computing Systems. Amsterdam, The
Netherlands, April 24-29, 1993. pp. 293-300. postscript
and video
GOLD Graphs and Output Laid-out by
Demonstration Created business charts from examples of desired
look. Implemented using Garnet. 1992-1994.
Brad A. Myers, Jade Goldstein, and Matthew A. Goldberg. "Creating Charts
by Demonstration," Proceedings CHI'94: Human Factors in Computing
Systems. Boston, MA, Apr. 24-28, 1994. pp. 106-111.
pdf
Creating Charts and Visualizations by Demonstration. Brad A. Myers, Jade
Goldstein, and Matthew A. Goldberg. Patent Number 5,581,677. Filed April 22,
1994.
html
TOURMALINE Text-formatting Ought to Use and
Rely on Macrostyles And Layout Inferred
Nicely by Example Creating text-formatting styles and
other properties by example. Partially the Master's Thesis of Andrew
Werth. 1990 - 1992
Andrew J. Werth and Brad A. Myers. "Tourmaline: Macrostyles by Example,"
Technical Video Program of the INTERCHI'93 conference. Amsterdam, The
Netherlands, April 24-29, 1993. SIGGRAPH Video Review, Issue 89, no.
17. video
Andrew J. Werth and Brad A. Myers. "Tourmaline: Macrostyles by Example,"
Proceedings INTERCHI'93: Human Factors in Computing Systems.
Amsterdam, The Netherlands, April 24-29, 1993. p. 532.
DATANOSETM Data AtomaTa
CornucopiA pNeumatic Olfactory I/O deviSE Tactile
Manipulation SYSTEM System that reallY
doeS creaTE user interfaces that have nice
featuMs Fanciful parody of user interface software
papers. 1991
Tyson R. Henry, Scott E. Hudson, Andrey K. Yeatts, Brad A. Myers, and
Steven Feiner. "A Nose Gesture Interface Device: Extending Virtual
Realities," ACM Symposium on User Interface Software and Technology,
Hilton Head, SC, Nov. 11-13, 1991. pp. 65-68. Reprinted in Presence,
MIT Press Journals, vol. 1, no. 2, April, 1992. PDF
This
article introduced the following fictitious technical report:
[Myers91] Myers, Brad A., "ACRONYMS: Acronym Creating
Rules On Naming Your Machines and
Systems Tech. Rept. CMU-CS-91-6969, Carnegie Mellon University,
College of Computer Science, Dec., 1991.
LAPIDARY Lisp-based Assistant for
Prototyping Interface Designs Allowing
Remarkable Yield Interactive tool to create some
applications by demonstration. Implemented in Garnet. 1989-1991
Brad A. Myers, Brad Vander Zanden, and Roger B. Dannenberg. "Creating
Graphical Interactive Application Objects by Demonstration," ACM
Symposium on User Interface Software and Technology: UIST'89,
Williamsburg, VA, Nov. 13-15, 1989. pp. 95-104.
Brad Vander Zanden and Brad A. Myers. Creating Graphical Interactive
Application Objects by Demonstration: The Lapidary Interface Design
Tool. 12 minute videotape. Technical Video Program of the SIGCHI'91
conference, New Orleans, LA. April 28-May 2, 1991. SIGGRAPH Video
Review, Issue 64, no. 1.
Brad Vander Zanden and Brad A. Myers. "The Lapidary Graphical Interface
Design Tool," Proceedings SIGCHI'91: Human Factors in Computing
Systems. New Orleans, LA. April 28-May 2, 1991. pp. 465-466.
Brad Vander Zanden and Brad A. Myers. "Demonstrational and
Constraint-Based Techniques for Pictorially Specifying Application Objects
and Behaviors," ACM Transactions on Computer-Human Interaction. Vol.
2, no. 4, Dec, 1995. pp. 308-356.
C32 CMU's Clever and Compelling Contribution
to Computer Science in CommonLisp which is Customizable
and Characterized by a Complete Coverage of Code
and Contains a Cornucopia of Creative Constructs,
because it Can Create Complex, Correct
Constraints that are Constructed Clearly and
Concretely, and Communicated using Columns of
Cells, that are Constantly Calculated so they
Change Continuously, and Cancel
Confusion Spreadsheet-like system that allows constraints on
objects to be specified by demonstration. Intelligent cut and paste.
Implemented using Garnet. 1991
Brad A. Myers. "Graphical Techniques in a Spreadsheet for Specifying
User Interfaces," Proceedings SIGCHI'91: Human Factors in Computing
Systems. New Orleans, LA. April 28-May 2, 1991. pp. 243-249.
video
JADE Judgment-based Automatic Dialog
Editor Created dialog boxes from a specification. Implemented in
Garnet. 1990
Brad Vander Zanden and Brad A. Myers, "Automatic, Look-and-Feel
Independent Dialog Creation for Graphical User Interfaces," Proceedings
SIGCHI'90: Human Factors in Computing Systems. Seattle, WA, April 1-5,
1990. pp. 27-34.
PURSUIT Create desktop scripts by example. Thesis work of Francesmary Modugno. 1988-1994
Francesmary Modugno, Albert T. Corbett, and Brad A. Myers. "Graphical
Representation of Programs in a Demonstrational Visual Shell -- An Empirical
Evaluation," ACM Transactions on Computer-Human Interaction. Sept,
1997, vol. 4, no. 3. pp. 276-308.
Francesmary Modugno and Brad A. Myers. "Visual Programming in a Visual
Shell -- A Unified Approach," Journal of Visual Languages and
Computing, Volume 8, no. 5/6. Oct/Dec, 1997. pp. 491-522.
Francesmary Modugno and Brad A. Myers. "A State-Based Visual Language for
a Demonstrational Visual Shell," 1994 IEEE Workshop on Visual
Languages. St. Louis, MO. pp. 304-311. AbstractCompressed Postscript
Francesmary Modugno, Albert T. Corbett, and Brad A. Myers. "Evaluating
Program Representations in a Demonstrational Visual Shell," CHI'95
Conference Companion: Human Factors in Computing Systems. Denver, CO. May,
1995. pp. 234-235.
video
CORAL Constraint-Based, Object-Oriented Relations
And Language Predecessor to Garnet. Investigated
Prototype-instance object system and constraints with pointer-variables. 1988
Pedro Szekely and Brad Myers. "A User Interface Toolkit Based on
Graphical Objects and Constraints," OOPSLA '88: Conference on
Object-Oriented Programming: Systems, Languages and Applications, San
Diego, CA, September 25-30, 1988. Sigplan Notices, vol. 23, no. 11,
November, 1988. pp. 36 - 45.
AMETHYST AMacGnome Environment That
Helps You See Types Visualization of data
types in a Pascal programming environment for the Macintosh called
MacGnome. 1988
Brad A. Myers, Ravinder Chandhok, and Atul Sareen. "Automatic Data
Visualization for Novice Pascal Programmers," 1988 IEEE Workshop on
Visual Languages. Pittsburgh, PA, October 10-12, 1988, pp.
192-198.
PERIDOT Programming by Example for Real-time
Interface Design Obviating Typing PhD thesis
of Brad Myers. Allowed widgets to be created by example. 1985-1987
Brad A. Myers and William Buxton. "Creating Highly Interactive and
Graphical User Interfaces by Demonstration," Computer Graphics: SIGGRAPH
'86 Conference Proceedings. vol. 20, no. 4, August 18-22, 1986. Dallas,
Texas. pp. 249-258. Reprinted in R.M. Baecker and W.A.S. Buxton, eds,
Readings in Human-Computer Interaction, Los Altos, CA: Morgan
Kaufmann Publishers, 1987. pp. 595-604.
Brad A. Myers. "Creating Dynamic Interaction Techniques by
Demonstration," Proceedings SIGCHI+GI '87: Human Factors in Computing
Systems. Toronto, Ont. Apr. 5-9, 1987. pp. 271-278.
Brad A. Myers. "Creating User Interfaces Using Programming-by-Example,
Visual Programming, and Constraints," ACM Transactions on Programming
Languages and Systems. vol. 12, no. 2, April, 1990. pp. 143-177.
Brad A. Myers. "Peridot: Creating User Interfaces by Demonstration,"
Watch What I Do: Programming by Demonstration, Allen Cypher, et. al.,
eds. Cambridge, MA: The MIT Press, 1993. pp. 125-153.
Brad A. Myers. Creating User Interfaces by Demonstration: The Peridot
UIMS. Technical Video Program of the SIGCHI'88 Conference, Washington,
D.C., May 15-19, 1988. and IFIP Interact '87 Conference on
Human-Computer Interaction. Stuttgart, West Germany. Sept. 1-4, 1987.
SIGGRAPH Video Review, Issue 59, no. 2. 18 minutes.
video
SAPPHIRE Screen Allocation Package Providing
Helpful Icons and Rectangular
Environments One of the first commercial window managers. For the
PERQ Workstation. 1981-1984
Brad A. Myers. "The User Interface for Sapphire," IEEE Computer
Graphics and Applications. vol. 4, no. 12, Dec, 1984. pp. 13-23.
Brad A. Myers. "The User Interface for Sapphire," Videotape. Human
Factors in Computing Systems; SIGCHI '85 Videotape Review. San
Francisco, CA. Apr 14-18, 1985. Also shown at the Annual Meeting of the
American Society for Information Science. Las Vegas, Nev. October 20-24,
1985. SIGGRAPH Video Review, Issue 19, no. 5.
Brad A. Myers. "A Complete and Efficient Implementation of Covered
Windows," IEEE Computer. vol. 19, no. 9. Sept, 1986. pp. 57-67.