If you are a student at MIT and interested in one of these projects, please contact the listed project leader.
Recruitment of UROP and MEng students to work on Espalier is on hold for all but the most exceptional candidates while Matt is on medical leave. Please check back each term for updates.
We're looking for UROP and MEng students to work on enhancements to Espalier 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 August 2018, though the status may change by the time you start work:
- Add more advanced structure editing features to the custom-layout spreadsheet UI.
- Reimplement the data storage and computation using a database backend 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.
- Add real access control: integrate Espalier 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.
- Help us evaluate the usability of Espalier.
- Build example sheets/applications to solve problems in a given domain and make any enhancements to Espalier 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.
- Experience with the Meteor framework is helpful but not required.
Camera Redesign (Daniel)
We're looking for a student to redesign the menu system of a current model digital camera using conceptual design principles to make it easier to use, as a case study of the approach. Cameras are increasingly software dominated, but the user interfaces and underlying concepts are often imperfect. Reviewers are more frequently judging cameras by their software, so there's growing interest in the interaction design of cameras, and a great opportunity to figure out how to improve camera design in general.