Why Do We Use Github Cs50= Do Cs50 Submissions Upload to Your Github Account
How CS50 uses GitHub to teach computer science
Professor David J. Malan, Gordon McKay Professor of the Practice of Calculator Scientific discipline at Harvard University, is defended to offering his students a robust learning experience. This post outlines how…
Professor David J. Malan, Gordon McKay Professor of the Practice of Computer science at Harvard Academy, is dedicated to offering his students a robust learning feel. This mail service outlines how he uses GitHub and his ain custom tools to build hands-on assignments for CS50 students.
With over 700 students, 80 staffers, and ii,200 participants in their end-of-term CS50 Fairs, CS50 has a reputation for rigor, real-life awarding, and engaging material.
At the same time, says Professor Malan, about half of CS50's students typically treat the course as "terminal"— equally their one and only course in computer science. And then the projects impact on applications in a multifariousness of fields, from social sciences and humanities to medicine and finance.
Malan says of the learning goals of CS50: "We desire to provide students with a solid foundation in computer science and then that they are well prepared for any field. And also bring to bear some applied skills to that world. So that is really tied in with our adoption of GitHub this past yr."
A gentle onboarding to Git and GitHub
The mental model for cloning, branching, opening pull requests, or pushing can be catchy for newbies just starting out. As a mode to onboard students, Malan wrote a command-line tool that wraps a sequence of Git commands called submit50. They adult submit50 to not "reinvent the cycle" with a new submission system, but to create space for students to grow into comprehensive GitHub use equally their learning evolves beyond CS50. Says Malan:
One goal was to have students graduate, so to speak, from the class actually having a GitHub account. And even though they don't keep their work in public portfolios for the grade, the hope is that they'll take at least enough understanding of GitHub that they can utilize information technology after the term ends for personal projects.
Pupil workflow for submit50
CS50 uses the structure of one branch per problem, and students engage Git and GitHub from the control line.
Outset, they run a command in their directory on a Linux organization with a folder they wish to submit to CS50'south servers. The student and so runs submit50 foo where foo is the unique identifier for that consignment.
submit50 models how Git and GitHub work while abstracting away some of the complication:
Behind the scenes nosotros show them the control so that through a flake of osmosis, they tin infer what's actually going on.
Nosotros clone their repo, which lives in our
submit50organization. So we have full administrative rights, and students accept button and pull privileges but.The
submit50script clones that repo into a temporary directory. Nosotros do the equivalent ofrm -rfto blow away whatever is currently in at that place, and thengit-addthe entire contents of their current working directory into that repo, and then tag it with a tag that corresponds to the problem's name, and so push button it to the server.
Project-based assignments, existent-life applications
An example assignment is "C$l Finance" where students build an application to simulate stock trades using Python with Flask, HTML, CSS and SQL.
Students create tables with user accounts, who can so buy and sell stocks. The application queries Yahoo Finance for stock quotes, almost in existent fourth dimension.
Malan is delighted to run across the different personal touches students add together to their projects, both functional and aesthetic.
It'south a fun opportunity to introduce students to even the aesthetics of spider web pattern. Invariably the first thing students do is customize the aesthetics of the site, and and then certainly there are differences in features, and nosotros're fine with that. The assignment requires ultimately that they add a personal affect, then whatsoever characteristic that's not been enumerated by us they're welcome to do so long equally it's of reasonable scope. So nosotros'll get different outputs from that as well.
Rituals of success
All students exhibit their final projects an end-of-semester "CS50 Fair." Most 2,200 people attend to come across the student demos.
Malan designs the effect equally a kind of commemoration, a capstone ritual where students tin can show people what they've made:
It'due south a fun fashion to delight in how much you've finished, particularly if new to programming just months prior. And information technology perhaps creates a bit of social pressure likewise. You know you're going to be showing this not merely to your Teaching Fellow, just to your classmates, and you want to be proud of it. And so, hopefully, that incentivizes all the more of a strong finish.
Figurer science and tech news = CS50 Live
Pushing across the boundaries of the traditional classroom, Malan connects the course materials with the news in a kind of "Daily Show" for engineering science, called "CS50 Live."
Malan and the coiffure of Teaching Fellows have up electric current events, similar Apple'southward implementation of OpenSSL with a bug in it, and dig into the lawmaking on the show.
—
This is a post in our "Instructor Spotlight" serial, where we share the different means teachers apply GitHub in their classrooms. Check out the other posts:
- GitHub Bug and user testing equally accurate assessment at the University of Victoria featuring Alexey Zagalsky
- Invest in tools students can abound with: GitHub and RStudio for data science at Duke Academy, featuring Mine Çetinkaya-Rundel
- GitHub Classroom for AP Computer science at Naperville N High Schoolhouse, featuring Geoff Schmit
- Real-time feedback for students using continuous integration tools, featuring Omar Shaikh
Join this week'due south discussion in the community forum: How to automatically gather or collect assignments?
burchetthimmenting.blogspot.com
Source: https://github.blog/2017-02-15-how-cs50-uses-github-to-teach-computer-science/
0 Response to "Why Do We Use Github Cs50= Do Cs50 Submissions Upload to Your Github Account"
Post a Comment