Creating more teaching tools for CSE 410
This page contains a quick overview of the proposed project on creating more teaching tools for future iterations of the course.
Under Construction
This page is still under construction. In particular, nothing here is final while this sign still remains here.
A Request
I know I am biased in favor of references that appear in the computer science literature. If you think I am missing a relevant reference (outside or even within CS), please email it to me.
Mentors
Sanchit Batra and Atri.
Background
Are you will see, we will be using Vizier notebooks to do a bunch of in-class activities to better understand the material. Unfortunately, due to lack of time, we could not develop the notebooks as much as we had hoped to do. This is where you come in!
Proposed project
High level goal
The high level goal of this project is to augment the existing notebooks so that they can benefit students taking future incarnations of this course.
Below is a partial list of things that could be done to improve the notebooks:
- Improving or adding new widgets to Vizier. The notebooks you will see in the course will have some custom made widgets (thanks to Sanchit!). However, some of the widgets could be improved (starting from changing the layout of the widget to adding more functionality) or perhaps there could be new widgets created that are currently missing.
- Augmenting existing notebook content. Some (or perhaps most?) of the current notebooks could do with some extra activities to make it more complete/useful for in-class lecture activities.
- Integrating existing tools into Vizier. For example, integrating the What-If Tool into Vizier would really allow for some nice activities related to fairness issue that we will cover in class.
- Creating auto-gradeable notebooks. Create assignments via Vizier notebooks that can be graded as an assignment (in some cases graded automatically).
- Create Jupyter notebooks. Even though we decided to use Vizier instead of Jupyter in the course, Jupyter is still very popular so it might be worth it to convert the existing Vizier notebooks into Jupyter to reach a wider audience.
Proposed project-specific deliverables
We first list all the steps that would need to be done to take this project to its logical conclusion:
- Figure out what capabilities already exist in Vizier notebooks (ask the mentors for pointers on where to look).
- Figure out if your project with focus (mostly) on Vizier or Jupyter . (You could potentially do both but we recommend that you focus on one).
- If you pick Vizier, then figure out if your group wants to focus on adding features to Vizier or adding more activities to existing notebooks. (You could potentially do both but we recommend that pick one of them as your primary focus. Of course it is possible that to have a non-trivial project you might have to do both).
- Pick as many of the following options as is feasible/relevant for your group project:
- Improving existing widgets this could include e.g. adding more functionality to an existing widget and/or improving the layout of an existing widget.
- Adding a new widget. Add a new widget that would be nice to have but does not exist (e.g. adding widgets to apply various fairness definitions to a given model).
- Augmenting existing notebook content.
- Integrating existing tools into Vizier.
- Creating auto-gradeable notebooks.
- Create Jupyter notebooks.
What is expected from you in this project
To get full credit on this project you have to do steps 1 and 2 and at least two sub-steps in Step 3. (It is possible, depending on how you plan your project that it might be enough to pick one sub-step from Step 3-- talk to the mentors for more on this.) Of course doing more sub steps from step 3 would be awesome and is greatly encouraged!