Students will not be directly assessed on their command of programming languages (allowing more beginner and advanced students to participate on the course), but rather on how they engage with the quantitative skills being taught in the collaborative coding environment and how they design the teaching of any quantitative skills through the tutorial that they will develop. Students will be able to develop a tutorial at whichever skill level they prefer, and they will be assessed on the ability of their tutorial to communicate a specific quantitative skill, rather than the complexity of that skill.

Assignments

Assignment Marks Assessment types Deadline
Engagement (via GitHub) 20% Assessed throughout the course and marked at the end of the course.,Continuity of engagement will be assessed such that all work should not be,completed just before the final deadline, but weekly throughout the course. Must be complete by 12:00pm, 27th November 2020. All work provided in GitHub.
Challenges,(10% per challenge x 4 challenges) 40% Bi-weekly submissions, formative feedback throughout the course, final assessment at the end of the course. Submission date is the second Thursday after the challenge has been set. Late penalties will be applied for work not submitted on time. Submission via GitHub.
Development of a new tutorial 40% Assessed formally at the end of the course. Must be complete by 12:00pm, 4th December 2020. Submission via GitHub with a pdf version submitted via Turnitin.

Engagement – 20%

Each student will create and maintain a GitHub repository that will contain their data, workflows, code and data visualizations. Students will fork online tutorials such that each student will have a copy of the course tutorials within their own online repositories. Each student will have a private repository that only the student and instructors will have access to and there will also be a course-level repository that will be accessible to all students and instructors on the course where group work will occur and students will be encouraged to share their personal code after they have complete the individual challenges.

Student will be encouraged to provide feedback to fellow students on their coding challenges and GitHub repository content by posting issues on fellow students’ code and to work collaboratively with students on particular challenges through their GitHub repositories. The feedback that students provide and the contributions that individuals make to group challenges will be assessed.

At the end of the course, students will be assessed on both how they have structured and maintained their private repository and how they have contributed to the course repository and provided feedback to other students. Their work and also their engagement with the course material will be assessed through the repositories engagement statistics and the nature and depth of those engagements. Work and engagement will be assessed for consistency across the course.

Img

Figure 1. Example of how engagement can be tracked in a GitHub repository.

Img

Figure 2. Example of how contributions by different students can be tracked in a GitHub repository.

Weekly challenges – 40%

Students will be assessed on four challenges across the course. Some will be individual challenges, and some will be group challenges that students will need to work together to solve, but assessment will be for individual contributions. Groups will be asked to establish a project “contract” contained within the course repository in their group’s folder as a readme file. Group projects will include contributions from each individual student that can be clearly indicated in the structure of the repository files and code and the contributions that student’s make from their individual GitHub accounts. Challenges will present a problem or research question that can be answered using a dataset and some sort of workflow development, data manipulation, data visualisation or code development. Challenges will match the quantitative skills being taught.

Development of a new tutorial – 40%

The final assessment on the course will be for each student to develop their own tutorial for the Coding Club website. The final hand in will include a GitHub repository for the tutorial including a markdown document of the tutorial, code extracts and visualizations of the tutorial content. The tutorial can be teaching introductory, intermediate or advanced quantitative skills in any programming language. The tutorial will be assessed on the way it teaches the quantitative skill including how clearly it is written, how well it is organised and the creativity used. Students will have completed 10 tutorials by the end of the course and will have access to all previous Coding Club tutorials as models for what can be produced. They will be asked to produce a tutorial on a unique quantitative skill and they will be encouraged to develop this tutorial as the course progresses and will receive formative feedback from the staff instructor and tutor as they progress throughout the course. Students will also be encouraged to get peer feedback on their tutorial as they develop it. Students can begin work on their tutorials at any time throughout the course. The earlier students begin the more time they will have for feedback from their peers.

Marking criteria

Challenges:

• Will vary for each challenge, but will always include specific challenge criteria, reproducibility, creativity and engagement with peers during the challenge.

Engagement:

• Engagement – Regular engagement in GitHub with frequent commits with informative commit messages, issues started and closed once appropriate, appropriate and well-formatted comments and feedback for peers. – 25%

• Repository – A personal repository that is easy to navigate with a good structure, informative commit messages and file names have been used, e.g., no “Rplot.png”. All the scripts for the Coding Club tutorials and course challenges are present demonstrating continued development if appropriate such as incorporation of challenge feedback - 25%

• Content – Consistent work throughout the course in personal repository - e.g., notes and engagement with readings and in class discussions that were added in the week that the content was discussed, and repo content in general (e.g. scripts for Coding Club tutorials) has been added throughout the course and not the day before the deadline. - 25%

• Creativity – Creativity and independent content added by the student to their personal repositories and/or the Course repository. - 25%

Tutorial:

• Topic – A topic and content that is appropriate for a Coding Club tutorial and match the same criteria as for the Data Science challenges (e.g., axes are easy to read, code etiquette has been followed) - 25%

• Structure – Clear and logical structure to the tutorial that is easy to navigate with clear instructions. Clear, concrete and measurable learning objectives (i.e., people can tell exactly what they are learning and when they have achieved each learning objective) - 25%

• Reproducibility – people can do the tutorial on their own, without assistance and without needing to pay for extra software, the code works and people can easily access any data needed to complete the tutorial. - 25%

• Creativity – A well-illustrated tutorial with figures and diagrams. A creative and engaging approach to teaching the learning objectives. - 25%

Please see Coding Club tutorial on how to make tutorials: https://ourcodingclub.github.io/tutorials/tutorials/

Check out example tutorials created by the Data Science in EES 2018 cohort!

Keen to learn how to import, manipulate, visualise and analyse spatial data? Learn about rasters and working with them in R? If yes, then check out Maude’s tutorial!

Intro to spatial analysis in R. By Maude Grenier

Img

</a>

To learn how to create and maintain an awesome personal repository, check out Beverly’s tutorial!

Creating a GitHub repository with a clear structure. By Beverly Tan