Advait Sarkar



Hello! I'm a researcher at Microsoft, an affiliated lecturer at the University of Cambridge, and honorary lecturer at University College London.

I study: (1) how to design human interfaces for artificial intelligence, and (2) how to help people program and interact with data. The two have more in common than you'd think! All publications→

The future of spreadsheets

My research expands the boundaries of spreadsheet technology. Did you know that spreadsheets can be used to build machine learning models, or to compose and perform music?

I've shown how viewing spreadsheet formulas as textual programs can improve efficiency and reduce errors, how to re-use spreadsheet grids in a more user-friendly manner, how to help users apply Python code in spreadsheets, how spreadsheets can be used to script database transformations, and how to make spreadsheets understand units such as metres, dollars, and kilograms.

In studying spreadsheet users, I've found that people learn to use spreadsheets informally and socially, but there are barriers to informal knowledge sharing; that they frequently rely on guesswork to understand the spreadsheets of others, that programming experience is related to spreadsheet experience, that there are good reasons for users to have "unstructured" data in spreadsheets.

Interaction design, AI, and society

I'm interested in many aspects of how humans interact with artificial intelligence, and the implications for technology and society.

I have demonstrated that "human-AI collaboration" is a poor metaphor that is complicit in the exploitation of workers in the Global South. My students and I have found that people are reluctant to adopt self-driving cars, that conversations with a chatbot therapist are not very enjoyable, and that speaking conversationally in natural language is probably not the ideal way to interact with voice assistants. Moreover, when programming an intelligent system (such as a recommender system), it's probably better to allow users to specify rules, rather than feedback such as like/dislike.

I've found that asking people to order (rank) things, rather than scoring them, is a faster and more accurate way of measuring human judgment, in domains ranging from multiple sclerosis assessment, to word complexity. This is important for machine learning systems that are trained on such human judgments.

Data visualisation

I've created several visualisation tools, including one for analysing patterns of faults in the British Telecom network. The design, which significantly reduces the expertise required to analyse large time series datasets, has won multiple awards and is now available as an open-source online tool.

I've studied how to use error bars as a control mechanism (not just to display uncertainty), how data 'sketching' facilitates conversations between analysts, and how we might navigate data using just our eyes, without a keyboard, mouse, or touchscreen.

Human interaction with Generative AI

Generative AI is a term for tools such as ChatGPT, Copilot, Claude, Dall-E, Midjourney, etc. My recent research focuses on understanding how this technology affects cognition, knowledge work, organisations, and society, and designing new ways to use Generative AI.

I've demonstrated that whether AI can be creative is an ill-posed question that can be answered in multiple ways. My colleagues and I have found that Generative AI introduces new metacognitive demands (i.e., thinking about thinking) on knowledge workers. I've therefore proposed that AI can play the role of provocateur, with the aim of improving human critical thinking, and fostering greater intentionality.

I've developed a working definition for Generative AI to create clarity and rigour around this misused and misunderstood term. Though Generative AI can produce code from natural language, I've enumerated potential reasons for end-user programmers to continue using "traditional" programming languages. I've found that programming with Generative AI assistance (e.g., GitHub Copilot) is an entirely new experience, albeit with similarities to programming via search and reuse, compilation, and programming via specification.

I've shown why, in general, we cannot explain the behaviour of large language models, and especially why they can't explain their own behaviour.

Microsoft product impact

Excel: My research has contributed to the design of Excel's dynamic arrays, rich data types, the navigation pane, the LET and LAMBDA functions, formula argument assistance cards, Python in Excel, and Copilot.

PowerPoint: as an intern, I worked on a project that eventually shipped in the form of the reuse slides feature. I am a co-inventor on several patents related to this feature, one of which has the hilariously generic title 'managing electronic documents'.

Microsoft Teams: We conducted the world's largest diary study of remote work during the COVID-19 pandemic. The findings from this study (such as this paper on the use of chat), will shape the future of Microsoft Teams. Our research on creativity in remote work emphasises the importance of empowering employees to choose when, where and how to work.

Government policy and outreach

I am an advisor to the UK government, other national governments, and regulatory bodies on matters relating to technology, society, automation, and data. My policy work→ has brought me within a single degree of separation from many heads of state, including current US president Joe Biden.

In my TEDx talk (2018), I explained the theory of AI design I developed during my PhD. In brief: (1) programming is about specifying behaviour, (2) AI is like programming (except for two key differences, which make it a black box), and (3) certain design principles are the solution to the black box problem.

Teaching and internships

Since 2017 I have co-taught Human-Centred Artificial Intelligence (formerly titled "Interaction with Machine Learning"), an advanced design course for the Cambridge MPhil in computer science. It was the world's first (and for some time, the only) graduate course that trained students to build and evaluate user interfaces for machine learning systems.

I've had the privilege of supervising many excellent undergraduate, Master's and PhD students, and research interns at Microsoft. My students→ have a track record of proceeding to further studies and positions at top institutions and companies. Reach out if you want to work with me!

Supervisions are an ancient teaching system used by Cambridge and Oxford, in which students interact in very small groups (usually 2 or 3) with a subject tutor. I used to supervise many undergraduate courses at Cambridge, and wrote a short book about my experiences — to my knowledge, the only contemporary published account of an Oxbridge supervisor.