brainhack-uiowa / 2020-brainhack

Resources for the 2020 brainhack
0 stars 1 forks source link

Curriculum Discussion #18

Open jdkent opened 4 years ago

jdkent commented 4 years ago

Here is a summary about what content we should cover:

Adam Harding

Looks mostly sensible to me. A few of us might have useful suggestions to substitute or augment. Software Carpentry's intro Python appears much improved since I last checked. I like the scipy lecture material OK as a crash courses on tools & topics. We can discuss further. \ In general, the breadth of topics and non-trivial depth required rightly identify this as an applied topic unsuitable for unprepared participants. I'd expect that's typically supplied by sequential material for 2~3 semesters in 2~3 distinct tracks, probably undergrad work in engineering (or related), possibly bolstered / shored up with early work in whatever neuroscience program. It's great they're willing to include "undergraduates" among the target audience, but I think it's reasonable taking that to imply "reasonably well initiated participants" without undertaking to build the whole edifice from scratch. I'd want to try limiting scope and staying targeted by working backward from the the course's listed topics.

@jdkent

What we've ran into and what other groups have ran into is typically being over ambituous with computer science/programming fundamentals. \ Expected Audience: Primarily Neuroscience/Psychology graduate students Have taken a statistics course (know ttests/ANOVAs, may know that ttests/ANOVAs are special cases of linear regression) Modified/read scripts written in matlab/R (less likely in python) No formal training in computer science reading/writing code for 6 months - 2 years have leveraged linear algebra in their work without realizing it likely have been introduced to differential equations at some point, but it is either hazy or forgotten For the purpose of neuromatch, I would prioritize getting participants comfortable with python. The reasons for this are: \ 1) Reading/writing python will be the primary form of interactivity for participants at neuromatch academy 2) A little easier to get away with conceptual misunderstandings of statistics and math and follow along, but more difficult to not understand variables and functions while learning other material. 3) programming provides immediate utility to many participants. Statistics and math are immensely useful, but many participants will be using a toolbox to ensure those calculations are carried out correctly for them without having to understand too much. Programming can help participants solve some immediate problems of running their toolbox on multiple datasets automatically, or filtering data. 4) I view programming as a gateway into being more interested in statistics and math, for people that are more averse to statistics and math (like me!). This may be only true for me, but I found the interactivity of programming made me more interested in the abstract concepts of statistics and math. Programming helped make stats and math more concrete for me since I could simulate data to confirm intuitions and trust I didn't make certain mathematical errors when performing certain operations. \ Basically, just as learning to read is required to appreciate the work of Jane Austen, I view learning programming fundamentals as a path to appreciate Baye's Theorem (especially to those who don't identify as a "statsy/mathy" person). \ The primary tool participants will be using are through google colab notebooks, so we should introduce python through that tool (which will be nice since no one will have to install anything).

Adam Harding

Not surprising to hear lack of programming facility is a common hurdle. Ages since I checked, but I've seen intro CS courses allowing non-majors for gen ed requirements start carrying a warning to the effect "most students consider this course extremely time consuming". \ I've started trying out various material using Colab. Thoughts so far: probably useful to cherry-pick/curate suggestions from intro material, provide focus, and ensure sufficient time in the shallow early part of the learning ramp. Basic plotting/visualization could be a bit of a detour but doing it early would probably be a win for completeness and uptake. \ SciPy provides many segues into topics. Currently thinking about self-contained material for applied topics (ODE/imaging/stats/inference?). I'd generally defer to mentors (Hans; plus TAs, RAs?) for suggestions on topics they feel are particularly invited preparation for Neuromatch goals. \ Focusing on Colab narrows scope to exclude UIowa-specific services, so things e.g. the RS Intro to HPC presentation would be asides TBD.

jdkent commented 4 years ago

We've cautioned against including an "advanced" track because the mountain to climb is already high.