swincas / cookies-n-code

A repo for code review sessions at CAS
http://astronomy.swin.edu.au/
MIT License
30 stars 34 forks source link

Standardising the "beginner" sessions #47

Closed respiewak closed 4 years ago

respiewak commented 5 years ago

One suggestion made last week was that we have a few "1st-year" sessions that we schedule once per month or so, to run throughout the year. The idea here is that new students can attend these to get started in coding, but they don't have to be taken in any particular order, so students starting at any time of the year can jump right in. Practically speaking, we should have 5 or 6 if we want to have the "course" run twice per year with one of these sessions every month or so.

Currently, our list is: 1) python: importing packages, writing loops and conditionals, useful functions (like print and enumerate), object types (integers, floats, strings, lists, dictionaries, and tuples), etc. 2) Unix: man pages, cat/less/more, find (basics), ls (and useful flags), rm (and dangers), etc. 3) git/github: basics of working on your own and contributing to someone else's code (forks) 4) slurm: submitting jobs, getting interactive sessions. Might not be necessary if ADACS has regular tutorials 5) ssh: ssh-keys, X11 forwarding, ssh config files, etc. 6) machine learning? Thoughts?

rdzudzar commented 5 years ago

I would add: 1st: plotting - how to, tweaks and packages (people should already know about colourmaps).

6th: I would place that in advanced topics. I'm currently enrolled in one coursera course that does machine learning in python and after 2nd week I need to start all over. In some distant future I might dare to show examples

manodeep commented 5 years ago

I agree with @rdzudzar - machine-learning is at least an intermediate topic, if not an advanced topic.

1a. Managing python and python environments

respiewak commented 5 years ago

I'd agree about machine learning. It had been mentioned, so I thought to include it, but I don't think it's a beginner topic. I like the idea of adding plotting to the python session, but I'm worried about making that session too cramped and not giving enough time for students to really understand things. Ditto for python environments. Perhaps a second python session would be necessary.

manodeep commented 5 years ago

@respiewak Sorry I think there's stuff for at least two python sessions. Plotting in python is probably at least another two session by itself.

rdzudzar commented 5 years ago

Yes, indeed. Also, it can be mix of 'Hey, this is how you do it' and 'Bring your code plot for review to make the code better'. I'm volunteering that I'll bring a code to show for a plot which needs to be improved.