Comments (13)
It looks like this lab also made http://gittrends.io/ which looks really great. I'll definitely check out their approach
from augur.
Here is the paper related to their approach
from augur.
After reading the paper, I found a couple of issues and a couple of good insights!
Issues:
- This approach doesn't take time into account, so core developers who have already left are still counted in the bus factor
- This approach requires manual review of the repositories to filter out files that should not be looked at when measuring how much a developer contributed
Insights:
- They mentioned the difficulty in measuring the bus factor of projects like Linux and Homebrew, who have massive numbers of developers but not as many core developers because they are extensible projects
- Libraries added to a project should not be considered contributions (I maybe disagree, I think that large changes such as that are indicative of being a core developer)
- Their survey suggested that documentation and tests should influence the bus factor
from augur.
from augur.
I had requested gittrends.io analysis of the HealthIndicators rep: http://gittrends.io/#/repos/OSSHealth/HealthIndicators
from augur.
@sgoggins @howderek and I discussed truck factor and we determined that we would use the total lines of code as part of the calculation. We originally were going to get this value from the GitHub API, however, we cannot get lines of code from the API, but I can get number of additions and deletions in each file by each user. Would that still be useful for this metric?
from augur.
from augur.
Leveraging some of my prior work and what we know about truck factor, we imagined the following inputs having some logic for reasonable inclusion in a comprehensive metric; or category of metrics.
I think additions and deletions can be helpful, as can total lines of code. They can also be somewhat misleading when repositories are refactored.
Our notes from the discussion are below.
from augur.
I have added a folder with files for example of getting number of lines in a repo and percentage of a repo written by each user using git blame.
from augur.
from augur.
we have a "bus factor" calculation that can be incorporated into the end of year release, along with documentation.
from augur.
we have a "bus factor" calculation that can be incorporated into the end of year release, along with documentation.
Great! I look forward to it.
from augur.
We are pushing this because we're prioritizing new visualization types to finish the cold fusion release.
from augur.
Related Issues (20)
- Committers metric API
- Bus factor metric API
- Test coverage metric API
- Defect Resolution Duration metric API
- License Coverage metric API
- OSI Approved Licenses metric API
- Licenses Declared metric API
- SPDX Document metric API
- Upstream Code Dependencies metric API HOT 1
- Libyears metric API HOT 4
- repo_deps_libyear column name misspelled HOT 3
- repo_deps_libyear current_release_date and latest_release_date data type HOT 1
- Delete account fails HOT 1
- Adding a repository to a group fails HOT 2
- repo_info table not populating certain columns HOT 2
- Use database volumes in docker-compose by default HOT 3
- Apple Silicon Weirdness when launching through `docker compose` HOT 3
- SQL query built from user-controlled sources: I think this is necessary
- `augur.config.json` is not created by `make install` or `augur config init` HOT 3
- Potential performance issue: .to_dict method slow in pandas below 2.2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from augur.