Chameleon Trovi Redesign

Trovi on Chameleon is an open-source service designed to significantly enhance the practical reproducibility of computer science research. By allowing Chameleon users to upload, share, and access packaged experiments and other research artifacts, Trovi aims to streamline the process of replicating and building upon existing studies. This capability is crucial in the scientific community, where the ability to accurately reproduce research results is as fundamental to validating, critiquing, and extending scientific findings as reading papers. The importance of Trovi lies in its potential to serve as a centralized hub that facilitates the exchange of valuable research outputs, promotes transparency, and fosters collaboration among researchers. By improving the ease with which experiments can be replicated and data can be shared, Trovi supports the advancement of knowledge and innovation in the field of computer science, making it an essential tool for researchers seeking to contribute to the development of reproducible and robust scientific research.

This project will focus on the evolution of Trovi. It will aim to enhance Trovi as a tool to advance practical reproducibility in CS research. Students will evaluate the most important use cases and enabling features necessary to enhance Trovi’s functionality and user experience. With these design insights, students will then create a robust interface that allows researchers to integrate experiment code and data easily as packaged artifacts, similar to the user-friendly design of Google Colab, and build off other users’ artifacts to create novel experiments, similar to the design of GitHub. Furthermore, students will create comprehensive documentation with valuable insights into what works well and what requires improvement, creating a dynamic feedback loop to guide the ongoing redesign process. Lastly, students will actively participate in designing webinars, creating and posting video tutorials, and organizing academic events at the University of Chicago to showcase the work on Trovi. This multifaceted project ensures a well-rounded experience and fosters a collaborative learning environment.

Each of the project ideas below focuses on a different aspect of the overall goal to enhance Trovi as a tool for advancing practical reproducibility in CS research. They are designed to offer a comprehensive approach, from technical development to community engagement, ensuring a well-rounded enhancement of the service.

User Interface Redesign for Experiment Artifacts Sharing

  • Topics: User Interface Design User Experience Web Development
  • Skills: HTML/CSS, JavaScript, UX design principles
  • Difficulty: Moderate to Hard
  • Size: Medium to Large
  • Mentors: Mark Powers
  • Tasks:
    • Conduct user research to understand the needs and pain points of current and potential Trovi users.
    • Design wireframes and prototypes that incorporate user feedback and aim to simplify the process of uploading, sharing, and reusing research artifacts.
    • Implement the frontend redesign using a modern web framework to ensure responsiveness and ease of use.

Packaged Artifacts Integration System

  • Topics: Cloud Computing Data Management Web APIs
  • Skills: Python, RESTful APIs, Docker, Git
  • Difficulty: Hard
  • Size: Large
  • Mentors: Mark Powers
  • Tasks:
    • Develop a system that allows users to easily package and upload their experimental code and data to Trovi.
    • Create a standardized format or set of guidelines for packaging experiments to ensure consistency and ease of use.
    • Implement API endpoints that enable automated uploads, downloads, and integration with other tools like GitHub or Zenodo.
    • Test the system with real-world experiments to ensure reliability and ease of integration.

Community Engagement and Educational Materials

  • Topics: Educational Technology Community Building Content Creation
  • Skills: Video Editing, Public Speaking, Event Planning
  • Difficulty: Moderate
  • Size: Medium
  • Mentors: Mark Powers
  • Tasks:
    • Design and organize webinars that introduce Trovi and its new features to the research community.
    • Create engaging video tutorials that guide users through the process of using Trovi for their research needs.
    • Develop comprehensive documentation that covers both basic and advanced use cases, troubleshooting, and tips for effective collaboration using Trovi.
    • Organize academic events, such as workshops or hackathons, that encourage the use of Trovi for collaborative research projects.

Feedback Loop and Continuous Improvement System

  • Topics: Software Engineering Data Analysis User Feedback
  • Skills: Python, SQL, Data Visualization, Web Development
  • Difficulty: Moderate
  • Size: Medium
  • Mentors: Mark Powers
  • Tasks:
    • Implement a system within Trovi for collecting, storing, and analyzing user feedback and usage data.
    • Develop dashboards that visualize feedback trends and identify areas for improvement.
    • Create mechanisms for users to easily report bugs, request features, and offer suggestions for the platform.
    • Use the collected data to prioritize development efforts and continuously update the platform based on user needs and feedback.
Kate Keahey
Kate Keahey
Scientist at the Argonne National Laboratory and Senior Fellow at the Computation Institute at the University of Chicago

Kate is a Scientist at Argonne National Laboratory and a Senior Fellow at the Computation Institute at the University of Chicago.

Mark Powers
Mark Powers
Research Software Engineer at the University of Chicago

Mark Powers is a research software engineer at the University of Chicago, and is the DevOps lead for the Chameleon Cloud testbed.