Virtual Meetup: "Reimagining the User Interfaces for Programming."

Hi Community,

I am happy to announce that this Thursday (the 16th of September), Ravi Chugh will hold a discussion about “Reimagining the User Interfaces for Programming”.

Also, remember that we changed the link to join the Meetup!

Programming environments force users to work primarily with text, even though source code and debugging output are often opaque representations for describing and understanding computation. Most software applications (such as for documents or spreadsheets) force users to work primarily with graphical user interfaces (GUIs), even when direct manipulation of concrete values is no longer a desirable way to describe computation. My research aims to bridge this gap, so that both expert programmers and novices can harness the expressive power of programming together with the cognitive and usability benefits of GUI-based manipulation.

In this talk, I will describe new programming-language techniques (in bidirectional programming and program synthesis) and human-computer interaction techniques (in programming-by-demonstration and GUI code editors) that contribute towards this long-term goal. Next, I will demonstrate Sketch-n-Sketch, an interactive programming environment based on these techniques for creating basic web applications and vector graphics diagrams. I will conclude with a vision for how continued work at the intersection of PL and HCI might influence the next generation of IDEs for professional developers, as well as software applications at large.

Ravi Chugh is an Associate Professor of Computer Science at the University of Chicago. His research and teaching interests revolve around programming language technology - program synthesis, types systems, and other program analysis techniques - particularly as they relate to challenges in software engineering and human-computer interaction. Ravi received an NSF CAREER Award in 2017, and a Neubauer Fellowship from the University of Chicago in 2015 for innovative and effective undergraduate teaching. Ravi obtained his PhD from the University of California, San Diego in 2013.

And if you are thinking of proposing a talk, it is time to come forward. Just let me know by replying to this message.

How to connect

To avoid other security issues is now necessary to register for the meeting. The registration should be necessary just once and be valid for all the next meetings you will participate in. I understand it is a little extra effort, but it would avoid problems like the ones we encountered:

Registration for the Virtual Meetup

After registering, you will receive a confirmation email containing information about joining the meeting. It will also permit you to add it to your calendar.


It is hosted on Zoom at 6 PM GMT+1/CEST (you can use this link to figure out which time is in your timezone: Dateful Time Zone Converter).


P.S. We get a recurring question: “Are presentations recorded?”. The answer is not, and the reasons are explained here On recording Virtual Meetups - #7 by voelter

Ravi shared with us:

The demo video Ravi showed is part of this ICFP keynote (8:00-21:30)

A few things emerged during the talk:

  • @aschem suggested that the bidirectional programming approach reminds a demo from Bret Victor
  • @seidewitz wrote that he has been working on SysML v2 (modeling for sytem engineers). A big deal right now is modeling and simulating “digital twins” for what will ultimately be physical systems. These are very visualizable system, and tools that integrate textual model notation, graphical model visualizations and simulation renderings is of great interest. Some basic prototype work on SysML v2 is publicly available at SysML v2 Submission Team (SST) · GitHub