Potential UROP/MEng Projects

If you are a student at MIT and interested in one of these projects, please contact the listed project leader.

Déjà Vu (Santiago)

We're looking for UROP and MEng students to help us develop Déjà Vu. Possible areas of work include developing new clichés and new functionality in the core platform and builder.

  • Good grade in 6.170 or equivalent experience with Web frontend and backend development.
  • Experience with TypeScript, MongoDB, Angular2, and GraphQL is helpful but not required.

Gitless (Santiago)

We're looking for UROP students to work on new features for Gitless as well as improving current functionality.

  • Strong knowledge of Python and Git
  • Knowledge of Git internals is helpful but not required

Object Spreadsheets (Matt)

This project is full for fall 2017. We will likely be accepting new students for spring 2018; please check with us about that in late fall.

We're looking for UROP and MEng students to work on enhancements to Object Spreadsheets to improve its usability or suitability for particular problems. Possible areas of work range from the core data model and computational engine to the IDE and integrations with other tools. Here are some projects that would fit well with our plans as of April 2017, though the status may change by the time you start work:

  • Implement parts of the spreadsheet UI to edit sheets with custom, partially structured 2D layouts.  (As of April 2017, design of this feature is in progress as our top priority.  By fall 2017, we expect to be at least far enough along to be prepared to supervise related UROP or MEng projects.)
  • Implement the data storage and computation in terms of an SQL-based database to improve the performance compared to the existing interpreter.
  • Add features to the data model and language to make application logic easier to express, such as ordered lists, multisets, and a "group by" operator.
  • Add interactive features to the formula editor, such as code completion and insertion of references to cells by clicking on them.
  • Make Mavo-based user interfaces easier to build, e.g., by generating a default UI template from a sheet as a starting point or by integrating Mavo's prototype WYSIWYG UI builder into Object Spreadsheets.
  • Add real access control: integrate Object Spreadsheets with an authentication provider and add simple configuration options to limit reads, writes, and procedure calls based on the current user (complex access control logic is done within the sheet itself).
  • Add support for centralized read access control and information flow analysis to provide stronger confidentiality assurances, like Jeeves.
  • Build example sheets/applications to solve problems in a given domain and make any enhancements to Object Spreadsheets that you need.

We're open to other ideas. Please get in touch with Matt to find out where we are and how you can join in.

  • Good grade in 6.170 or equivalent experience with Web frontend and backend development.
  • Strong knowledge of JavaScript.
  • Experience with the Meteor framework is helpful but not required.