My student instructions look a lot like yours, except for IntelliJ IDEA rather than for RStudio. IntelliJ has specific support for GitHub in it, including GitHub’s token-based login thing. While they’re working, I’m mostly just telling them “thou shalt commit and push, simultaneously”, since this will be for most of them their very first exposure to Git. Gotta start simple.
Travis-CI is going to be fun as well. So far as I can tell, you have to manually enable Travis-CI on each and every student repo, which you can’t do until the student accepts the GitHub Classroom link. This basically means that I’ll have to take a swing at it every night to pick up stragglers. For the most part, though, I’m seeing Travis-CI as a feature for the graders more than for the students. If I get this right, for most students, the graders will never leave their web browser. They’ll visit a student repo, click to the commits, verify the green checkmark from Travis-CI, and then they just need to browser the code to make sure the students didn’t do something dumb, like disable all the unit tests we provide them.
For the students, themselves, I’m basically telling them to run gradle check locally, which then runs CheckStyle, ErrorProne, and their unit tests. In later weeks, it will also run JaCoCo for code coverage requirements. The only reason a student might need to visit GitHub.com is if they’re paranoid that their code didn’t get pushed.
Sadly, Travis-CI only offers one simultaneous build for freebie accounts like the one they’ve offered me. They’ve done some performance tuning, but it still seems to take about a minute of CPU time for a given repo to be checked out and the tests to run. If all 160 of my students do a push within five minutes of the final deadline, it will be 3+ hours before all the tests have finished.
On the one hand, this is bothersome due to the lack of instant feedback. On the other hand, it tells students that there’s a benefit to running locally. It’s the same tests running in either place.