Would you guys ever consider publishing the source code used to power this website? I'm a professor's assistant to a brand new data science curriculum and think providing a Q&A site specifically for the classes would provide the students with a platform to teach each other and answer questions.
They are using Discourse, which has educational discounts for hosted solutions (starting at $15/month). If you want to host it yourself, the code is on Github.
I have also created a GitHub repo specifically for the purpose of using the Issues as a discussion forum (see STAT 545 Discussion). Discourse is a richer platform, but the GitHub solution requires ~ 1 minute to set up, it's free, and there's no admin. If you request an Education discount (= free) for your course Organization, you'll have private repositories and could even make the discussion repo private to your course, if you prefer.
We also use the free tier of Slack for our Master of Data Science program at UBC, with channels for each class. That's another option and, we find, complements course-specific GitHub repos/issues. Edited: I think we've started paying now, because we use it so much that we wanted to be able to retain more history for search.
Hi @jennybryan, we've actually taken a lot of inspiration from the way you've structured your courses when developing the curriculum and organization of our DS classes .
We are currently using Slack and Github issues for students within the class. We are now looking to open an Data Science Lab on campus that will be dedicated to helping students primarily learn fundamental R and Python code across several subjects (Biology, Economics, CS, etc...) and are wondering if Slack and/or Github will scale well?
I have a quick question for you, if you don't mind.
How have you managed getting your students to ask well-formulated questions on Github and Slack? Our students are fairly new to programming and are still learning how to ask well written coding questions.
The reprex package was born out of my STAT 545 experience! Last Sept - Dec, I weighed in on ~300 issue threads (I know, because I analyze the traffic on the Discussion repo to compute participation marks). I wrote reprex initially for myself, so it was easier to include runnable code snippets and to reveal & discuss the associated output. The package wasn't very mature then, so I didn't strongly encourage students to use it, but I would today.
reprex only solves one problem, but it's a big one: are you providing a self-contained runnable example? If not, the reprex "won't work". In the privacy of your own computer, you get to keep trying until you meet this technical requirement.
Of course, there's more to a well-formulated question than that. That's where a (semi-) public forum is critical. I think the students learn a lot of the art by reading each others questions and the answers from students + TAs + me. Trying to answer (or even understand) other people's poorly formulated questions tends to raise self-awareness.
First, I'm not in charge of STAT 545 this fall (I'm on leave from UBC).
But, no, I would not be eager to switch if it were up to me. Being an admin here has shown me that GitHub Issues are a much lighterweight solution. I also like to minimize the platforms for any given course. Students can get confused already, just with a course website and GitHub.