Personal page: https://rishabhmit.bitbucket.io/

I am a researcher in the newly-formed Cognition group at Microsoft Research, where we work on developing new deep learning architectures for learning programs and program analysis. I develop program synthesis techniques for helping end-users, students, and programmers. Apart from research, I enjoy playing bridge and I’m honored to have been selected for the Indian junior national bridge team.

I am currently deeply interested and excited about developing neural architectures for program representations and using them for program synthesis, repair, and security.






Apr 16

  • BlinkFill to appear at VLDB 2016
  • Quantitative Program Repair (with Loris D’Antoni and Roopsha Samanta) to appear at CAV 2016

Mar 16

  • Serving on the PC of PLDI 2017

Jan 16

  • Probablistic Semantic Transformations in Excel (with Sumit Gulwani) to appear at POPL 2016

Jan 16

  • Serving on the PC of POPL 2017

Dec 15

  • Conversational Programmers: An Industrial Perspective (with Parmit Chilana and Philip Guo) to appear at CHI 2016

Jul 15

  • George M. Sprowls Award for Best Dissertation in CS, MIT



  • 2017 POPL’17 PC, PLDI’17 PC, ISEC’17 PC
  • 2016 POPL’16 ERC, ICSE’16 SEIP PC, ISEC’16 PC, CHESE’16 co-chair, FMSD’16 guest editor
  • 2015 ASSESS’15 co-chair, PLOOC’15 co-chair

Amazing Interns


  • Jeevana Priya Inala, MIT
  • Hila Peleg, Technion
  • Ke Wang, UC Davis


  • Dana Drachsler, Technion
  • John Feser, Rice University
  • Thorsten Tarrach, IST Austria
  • Xinyu Wang, UT Austin


My research aims to democratize programming for end-users and students. Towards this goal, I develop systems using program synthesis techniques to make programming more accessible to end-users, students, and even programmers. Some research projects that I am actively working on include:

Data Wrangling for End-Users

These systems help data scientists and end-users perform data wrangling (cleaning, transformation, and integration) tasks easily using input-output examples, without writing complex programs/scripts.


Semi-supervised learning of data transformations from both input-output examples and the input data. 1000x faster than FlashFill and learns richer transforamtions!


Semantic Data Type (Date, Name, Phone Numbers, Address etc.) Transformation in Excel. Probabilistic Learning to handle noisy and inconsistent data.


Help end-users perform string manipulation tasks in Microsoft Excel using input-output examples.

  • Publications [CAV12], [VLDB12], [CACM12], [CAV15]
  • Press [MIT News], [CNET], [CNN Money], [Wired], [More]
  • Demo Video1, Video2, Video3, Try it out in Excel 2013!

Program Synthesis for Education


Help beginner programmers with automated feedback about the common errors in their code.

Storyboard Programming

Help programmers write data-structure manipulations using box-and-arrows diagrams of input-output state configurations.



  • George M. Sprowls Award for best PhD thesis in Computer Science, MIT


  • Microsoft Research PhD Fellowship , Microsoft Research


  • CACM Research Highlight Paper for FlashFill, CACM


  • William A. Martin Memorial Thesis Award for outstanding Master’s thesis in Computer Science, MIT


  • Institute Silver Medal for best academic performance in the Department of Computer Science and Engineering, IIT Kharagpur


  • Bigyan Sinha Memorial Prize for securing 2nd position in the Institute, IIT Kharagpur


  • Prime Minister’s guest at Repulic Day Parade, Rajpath New Delhi, for securing 1st position in AISSCE CBSE 2004