My research focuses on empowering individuals through computing technologies that more effectively match their knowledge, experience, abilities, and goals. The majority of my recent research has focused on accessibility-related issues. Working with my students, our research employs a broad definition of accessibility, seeking to empower individuals with disabilities as well as individuals who may experience challenges due to the environment in which they are using computing technologies.
Posts categorized under: Board Member Profiles
CRA is honored to have a prestigious group of computing researchers serve on its Board of Directors. These individuals volunteer their time to run CRA’s programs and committees and to develop and lead new initiatives. In this new series, CRA Board Member Profiles, we will highlight our board members and their contributions to the organization.
What does it take to produce application code that performs as close as possible to a parallel architecture’s compute or memory peak performance? This question is one that programmers of high-performance architectures contemplate regularly since using such systems efficiently can solve problems faster, or solve larger or more complex problems.
This question fundamentally changes the approach to programming.
This year, CRA Board Chair Susan Davidson received the IEEE TCDE Impact Award for “expanding the reach of data engineering within scientific disciplines.” In this interview, Davidson reveals how her interest in bioinformatics came about and how her career led to this award. Two of her favorite problems have been data integration and data provenance.
I study how data and people interact. For more than a decade, I have been studying how to help humans access and manage information. While there is a lot of good work on human-computer interaction and on data visualization, much less work exists on “human-data interaction.” Why can anyone use Google to get information of interest while it is so difficult to get useful information from a structured database? The difference lies in the specificity of the request. A web search engine receives your request and tries to guess your intention. You know that it has a limited understanding of your need, and are happy to have it get you into “the zone,” from where you can explore for yourself. On the other hand, a traditional database query engine can give you complete answers to complex questions but requires that you precisely specify your query. If you make a small mistake, you are out of luck. Wouldn’t it be helpful to devise database query mechanisms that you can actually use and get reasonable results from even if you don’t ask it totally correctly? Complementarily, can the system help you ask a better question in the first place? Similar concerns also apply to the creation of a database, and helping users manage their data.
Over the 30 years since I began graduate school, my computer architecture research has explored many topics, but the ongoing theme has been attention to how technology and application trends and constraints influence hardware and system design, particularly at the hardware-software interface.
“What are computer users doing that is wasting their time?” This question guides my research. I construe computer systems research quite broadly; if I can build it, it’s a systems problem. This breadth has let me pursue questions in visualization as well as operating systems; machine learning and computer architecture; file systems, performance analysis, graph processing, databases, and numerous other areas. Some people might say I have a short attention span; I just like to claim that I have broad interests!
What value should a memory read return? The answer to this simple question is surprisingly complex for modern systems running parallel software. The memory consistency model, which governs this answer, is a fundamental part of the hardware-software interface, but has been one of the most challenging and contentious areas in parallel hardware and software specification. […]
The main focus of my recent research has been computer science education and the role computer science can play in defining and advancing its own education research. Learning computational principles and learning to code is hard, and teaching these subjects is even harder. For most computer science topics, we know very little about how different learners’ best learn; how to effectively teach the material to audiences with different abilities, backgrounds, and goals; and how to reliably assess learning.
Since I started graduate school in 1997, I have considered myself a member of the programming languages research community — and I continue to attend and publish in the annual conferences of this vibrant computing subfield. But over the last 5-10 years, I have also found myself increasingly passionate about opportunities for computing researchers to focus on ways to influence computing education beyond, for those of us who are academics, our own classrooms and independent studies. Let me share some of the projects I have enjoyed (seriously!) and others I wish I had more time to pursue.
My research revolves around tracking and understanding users’ emotional states and leveraging that information as additional context for the design of emotionally sentient systems. Some of the systems we have built have been designed for a user’s own personal reflection. Our first application, AffectAura, provided users with their own behavior patterns over time, such as what they were doing, where they were, who they were with and how they felt. This information could be used to make personal decisions about behavior change—if certain activities usually result in your feeling good or bad, perhaps you want to increase or decrease those behaviors.