PhD student Alex Williams leads research on new tool that lets programmers pick up work on mobile devices

Wednesday, October 2, 2019

Researchers have developed a powerful new tool that allows programmers to engage with work on their mobile devices to help make productive use of time away from their workplace.

In a new study done in collaboration with Microsoft Research, the team of researchers created a prototype tool called Mercury that lets programmers continue working on their mobile devices if they need to leave their desk to pick up when they return to their workstation. Currently, programmers often spend a substantial amount of time at their primary workstation to make productive use of their workdays.

Alex Williams, a Cheriton School of Computer Science PhD student, led the study along with Harmanpreet Kaur, a PhD student at the University of Michigan, along with Shamsi Iqbal, Ryen White, Jaime Teevan and Adam Fourney from Microsoft Research.

“Mercury uses principles of micro productivity to create mobile-friendly programming work,” said Alex Williams, who undertook the study during his internship at Microsoft Research. “As users go mobile, Mercury performs a real-time scan of their existing source code to automatically generate a queue of microtasks programmers can immediately engage with at their leisure. Upon returning to their workstation, Mercury would have integrated the changes from the microtasks completed on-the-go.”

photo of Alex C. WilliamsIn developing the prototype, the researchers conducted two studies to understand how programmers currently use their mobile devices for work and what else they want to be able to do. The first study was a contextual inquiry with 10 software engineers. They used the findings from the observational phase to develop a survey that was employed to canvass 78 software engineers.

The findings from the contextual inquiry and online survey motivated Mercury’s design, which was then evaluated through a user study with 20 participants. 

“We found that in addition to helping programmers continue their work on the go, a mobile work experience designed around micro productivity can also instil comfort in pausing work unexpectedly,” Williams said. “Programmers felt they could make meaningful progress in their work with Mercury’s micro-tasking experience in scenarios ranging from brief moments of downtime to the daily commute.

“It was also discovered that the longer someone is away from a project, the longer it takes them to get back into it mentally. Mercury can solve the problem of resumption, as on average we saw 18 of our 20 participants use something generated with the mobile tool while they were away from their desktop within seven seconds of getting back.”

Mercury is a prototype tool developed as a means to explore a new frontier of programming that takes place beyond the workstation. While the tool is not publicly available as a Microsoft product, Mercury’s success signals a new wave of tools designed to empower programmers’ ability to engage with their work without infringing on valuable personal time spent away from the workplace.


The study, titled Mercury: Empowering Programmers’ Mobile Work Practices with Microproductivity, authored by Alex Williams, Harmanpreet Kaur, Shamsi Iqbal, Ryen White, Jaime Teevan and Adam Fourney, will be presented at UIST 2019, the 32nd ACM User Interface Software and Technology Symposium to be held in New Orleans on October 20–23, 2019. 

  1. 2019 (84)
    1. November (5)
    2. October (6)
    3. September (9)
    4. August (7)
    5. July (8)
    6. June (10)
    7. May (5)
    8. April (11)
    9. March (6)
    10. February (10)
    11. January (7)
  2. 2018 (82)
    1. December (6)
    2. November (8)
    3. October (8)
    4. September (12)
    5. August (4)
    6. July (8)
    7. June (8)
    8. May (5)
    9. April (10)
    10. March (6)
    11. February (2)
    12. January (5)
  3. 2017 (50)
    1. December (3)
    2. November (6)
    3. October (7)
    4. September (4)
    5. August (3)
    6. July (2)
    7. June (7)
    8. May (8)
    9. April (2)
    10. March (6)
    11. February (2)
  4. 2016 (27)
  5. 2015 (41)
  6. 2014 (32)
  7. 2013 (46)
  8. 2012 (17)
  9. 2011 (20)