Research project by Santiago Perez De Rosso and Daniel Jackson of the Software Design Group
Undergraduate students: Yunyi Zhu (UROP Summer '19, FT19), Maryam Archie (SuperUROP FT17-ST18, MEng FT18-ST19), Czarina Lao (SuperUROP FT17-ST18, MEng FT18-ST19), Barry McNamara III (UROP Summer '17, SuperUROP FT17-ST18, MEng FT18-ST19), Shinjini Saha (UROP Summer '16, SuperUROP FT16-ST17), John Parsons (UROP ST17), Stacy Ho (UROP ST17), Teddy Katz (UROP ST17), Eric Manzi (UROP ST16)
Déjà Vu is a new platform for end-user development of apps with rich functionality. It features a theory of modularity for binding concepts; an extensive library of reusable concepts; and a WYSIWYG tool for specifying bindings and customizing visual layout.
As a user you might have noticed the fundamental similarities between the many applications you use daily. Maybe it was the day you were scrolling through your Facebook news feed and then through your Twitter feed? Or when you gave a 5-star review to a restaurant in Yelp, and then to a book in Amazon? Or that time when you replied to a tweet and found yourself later replying to a comment on Reddit?
Now picture the many software engineers developing web applications, ranging from internal business applications to those used by millions of users. How many of these engineers are, at this moment, adding some kind of news feed to their application? Adding star ratings or likes? Letting users write comments?
In each of these instances, developers are not all doing the exact same thing. In some cases, the feed is listing posts authored by users, in other cases it’s showing shopping products, or books. Some developers need the feature to be tweaked in a unique way, or are using different languages and frameworks. But fundamentally, they are all doing the same thing: combining pre-existing concepts in novel ways. If we could successfully exploit this fact, applications could be built much faster than how they are built today.
For more information see Déjà Vu's website.
Publications
- Declarative Assembly of Web Applications from Predefined Concepts
S. Perez De Rosso, D. Jackson, M. Archie, C. Lao, and B. McNamara III. In Proceedings of the 2019 ACM International Symposium on New Ideas, New Paradigms, and Reflections on Programming & Software (Onward! 2019)
Acknowledgments
This research is part of a collaboration between MIT and SUTD (the Singapore University of Technology and Design), and is funded by a grant from SUTD's International Design Center.