Project: Create Your Own Tutorial!¶
In which you will produce (and solve) a tutorial of your own.
Description¶
This is your opportunity to apply what you've learned in a new context, or explore beyond the scope of the existing notes/tutorials, without the prescribed "walkthrough" format of a (previously written) tutorial. There's a wide landscape of possible projects, and no absolutely fixed requirements. However, ideas must be approved in advance to make sure that the content and scope are within reason; this will be accomplished through some manner of "pitch" to be determined later. Try to be as specific as possible regarding what you will actually do in the notebook, though of course this proposal is not binding and we can iterate.
At the simpler end, you might find a data set and a model to fit to it in the scientific literature, constrain the posterior distribution of the model parameters, find credible regions, and assess the goodness of fit as usual... all without straying beyond the methodology we've already covered. Provided that the solution is not too duplicative of a tutorial that already exists, this would be fine.
Projects could, however, also explore new methodology, either something we've covered in the notes but not provided tutorials on, or something entirely new.
Rarely, a project might focus primarily on exposition of a new topic (i.e. resemble notes more than a tutorial), although there still must be some form of analysis/demonstration component.
While we encourage the use of real data when possible, it should still be possible for us to run your completed notebooks in a reasonable amount of time, as usual. This might mean using "realistic" rather than real data, or simplified models, to avoid incorporating non-standard software, giant/complex data sets and/or computationally slow model evaluations. While there is definitely value in struggling with such things, we have found that doing so in the context of a class project is too much of a distraction from the core content of the course. We also discourage interpreting simulation outputs as "data" to be fit (unless they are mock data); there are some circumstances where modeling such outputs probabilistically could make sense, but in general it's more fun to work with actual data.
Note that you are being asked to define and solve a new problem here - not to actually produce a new tutorial. That is, you should not "withhold" code from your solution, as we so charmingly do.
In addition to producing the notebook, you (or your group jointly) will be asked to briefly and informally walk the class through the problem and its solution during the last week of class or the exam period (TBD).
Getting inspiration¶
Of course, one way to get inspired is to look at papers in your field (or some other field) - lots of them probably present data and fit models to them! You can also work on something related to your own research. Please do not use proprietary data, however. The analysis must be original only in the sense that you have not done it before (though, even then, you might have already done it using methods other than the ones we cover in this class).
We also might have a few half-baked ideas to share with anyone interested.
Collaboration¶
As always, collaboration is allowed and encouraged. An official group effort should involve a well defined group identified relatively early, rather than occasional, casual collaboration, as might be the case for other tutorials. Collaborators on a project will share the same grade for it, and our expectations will be proportionate to the number of collaborators (see below).
Credit and scope¶
Generally, you should aim to produce a notebook that, if it were made into a tutorial for others, would take around the same amount of time to solve as the existing ones (within the range, anyway). You will probably find that creating such a thing from scratch takes significantly more time than solving one that already exists. A relatively minimal project in terms of analysis that includes adequate introductory and explanatory prose will therefore contribute about the same as a normal tutorial to the overall course grade. Going beyond this will appropriately earn more credit, although we will not be held down to specific numbers ahead of time. Note that the credit will be divided evenly among collaborators, so we effectively require more of a larger group.
In principle, you can complete more than one project for credit, although we've yet to see this actually happen.