Module 3 Exercise 3: Assessing collaboration

(Patrick Reimers) #81

The symfony/console repository has regular commits, lots of stars and forks.

(Edward A. Roualdes) #82

The probabilistic programming language Stan has an organization that see frequent activity. For instance, the 3 most recently updated repositories in the organization have been updated within the last few days:

Further, Stan has over a thousand stars and a healthy number of forks:

(Héricles Emanuel) #83

I choose vscode

(Brian Crites) #84

I think there are a number of different things that can show if an open source project is active, especially when looking at commit activity, number of forks and PRs, etc. I think another important metric might be something like the project being “healthy”, especially when considering new people. For “healthy” open source projects I look for things like documentation, is there a contributors guide, are there helpful reviewers and automated systems for catching major issues, are there issues logged and are they manicured (tagged, healthy discussion, perhaps some “good first issue” tags). My courses usually have 100+ students, so I try and look for metrics that can be easily quantified (and validated using an automated system). This can be a rather difficult task since there is a fairly large acceptable range that values like number of commits, number of issues, etc. that are reasonable without making an arbitrary number that students will just create to meet that requirement.

(Paul Inventado) #85

I chose MS-DOS.

Stars: 11,824
Forks: 1,568
Pull requests: 162

Although it’s old software, the repository appears to be active. Mostly in translating it’s readme :slight_smile:

Insights show 20 contributors, 57 commits, 162 open pull requests and 71 closed pull requests. This just started Sept. 21, so all this work for over just a month seems like a pretty active repository to me.

Reviews seem to be fairly quick. I can’t say this for all the pull requests, but those I looked at took around a day to get either accepted or rejected. It seems like there is one person reviewing the pull requests for english translations. The rest of the language translations seem to take longer because I assume you’d need more speakers of that language to get involved in the repository to verify translations and suggest they be merged to master.

In terms of assessment, classes would obviously have smaller projects and I don’t think forks or stars would be a very good measure. It’s too much to expect for a small and short project. The number of commits, the frequency of commits on the other hand seem like good measures. If you want to grade individually, the list of contributors and their contributions seem like good features to evaluate. The turn-around time for pull requests and acceptance/rejection seem to be good measures as well because that describes how much initiative the team has to complete the project

(Thomas Sauerwald) #86

is active, because of the number of commits each day and it has a lot of stars and forks :wink:

(George Stavrinos) #87

(Pedro Prieto) #88

I chose mono. 7108 stars, 848 issues (it’s alive and it has lots of work to do ;), 3010 forks and about 70 commits/week.

I think it may be useful to get some evidence of the work done by each team member in order to check if everybody is contributing to the common goal. But it is also important to check the quality of the code submitted.

(Daniel de Souza Carvalho) #89

One very interesting and relevant open source project at GitHub we can highlight is the Linux Kernel:

It is very popular and active:

  • 791.550 commits
  • Infinite contributors (as Github shows at the info header)! :slight_smile:


(Osvaldo Jimenez) #90

Looked at one of the pull requests and saw it was resolved within a day, also had a lot of pull requests as active.

Also looked at the insights to see the code dependency graph, other metrics wouldn’t load because it was too large, but looking at the code frequency one can see that each week they are adding over 1K LOC, which as a rough estimate seems pretty active.

The biggest way that I try to see in my classroom is just this whole idea of looking at the code commits and seeing what’s changed, and also by running git blame to see who’s made what changes on a few of the larger files to see how active those files are in development.

(Romell D.Z.) #91

I chose tensorflow probability.
In the last week, the master branch had 27 commits, updating 38 files.

The Tensorflow probability repository had more comments and updates cuz, right now the module from python had strong priority from Naive Bayes Clasiffier algorithms

(Chris Cannon) #92

Very cool @bpesquet! Thanks for creating an open source book like this, I’ll be sure to check it out :100:

(Chris Cannon) #93

How do you break down sprints with your students? Just out of curiosity.

(Chris Cannon) #94

Hi again @polbene95, what information can you infer from the statistics shown? How could some of these same data points help you analyze a group of students?

(Chris Cannon) #95

Great! Merge conflicts are definitely the hardest part for me to introduce to my students as well. Interested to see how you explain this to your students.

(Chris Cannon) #96

@vasilgmarkov how might these kinds of statistic help you evaluate student group work?

(Chris Cannon) #97

@PReimers how might these statistic be useful for evaluating group assignments?

(Chris Cannon) #98

How can some of the statistic you can view in “Inisights” help you evaluate student group work?

(Chris Cannon) #99

Nice @hericlesme! How could these stats help you evaluate group work?

(Chris Cannon) #100

Good to know Linux is alive and well :wink: how might you use the statistic in the Insights tab to evaluate student group work?