|research interests|
My research interests include :
  • Programming by example (by demonstration)
  • Predictive interfaces
  • Machine learning

My work centers on software and tools that personalize themselves to the needs, habits, preferences or goals of individual users. One way to address the problem of personalization is through programming by examples (by demonstration) which involves actively the user in the process of adaption. Programming by example is a technique that allows people to customize their software and create new commands to perform specific tasks by simply demonstrating through examples how to perform the tasks. As opposed to macro recorders that can be seen as the first examples of programming by example systems, sophisticated systems can generalize the examples on which there were taught and can operate on situations similar - but not necessarily exactly the same as - these examples. However, the hypothesis that has motivated my past and current research is that adaptation must be done without any user's intervention, by passively watching her. There are two correlated reasons :

  • inferring user intent from examples and building a perfect predictive model of the user (that makes no error) is rarely possible;
  • when the user is involved in the process of creating this model, she naturally and legitimately excepts good performances and tolerate few errors from the system.
As a consequence, to reduce or avoid user frustration, I promote the use of machine learning to design software that adapt without any effort from the user.