Robert Picard
Robert the point is not that "the author should be happy." The point is that "the reviewer should be happy." And the reviewer can only be happy if he can openly access your code (packages/analytic code) without contacting you. I make it bold because it makes a lot of difference. We should not require additional information from the author to reproduce an analysis or claim. Therefore, we need all versions of a software package available to be able to install them and redo an analysis using identical software. Many Stata programmers program in Mata and only include the Mata libraries on SSC. The question is, how the community can be assured that the package is computing what it promises? Isn't that the whole point of open-source publishing?
Version control might not seem so crucial if the programs you write are small. The bigger the project and the more complicated it become, the higher is the developers' need in a version control software. It has happened to me many times that I do bad mistakes once I am trying to add a new feature or debug the software. With a version control software, it takes a mouse click to go to any previous save state instead of navigating through several directories without knowing where that "recent" bug was added.
There are other benefits in using GitHub, especially when it comes to teaching computational programming to students. GitHub encourages students to practice computational statistics, read others' programs, comment and document their own programs better, and write better programs, simply because they expect others to read their code. For that to take place, we should be there and serve as examples!
Robert the point is not that "the author should be happy." The point is that "the reviewer should be happy." And the reviewer can only be happy if he can openly access your code (packages/analytic code) without contacting you. I make it bold because it makes a lot of difference. We should not require additional information from the author to reproduce an analysis or claim. Therefore, we need all versions of a software package available to be able to install them and redo an analysis using identical software. Many Stata programmers program in Mata and only include the Mata libraries on SSC. The question is, how the community can be assured that the package is computing what it promises? Isn't that the whole point of open-source publishing?
Version control might not seem so crucial if the programs you write are small. The bigger the project and the more complicated it become, the higher is the developers' need in a version control software. It has happened to me many times that I do bad mistakes once I am trying to add a new feature or debug the software. With a version control software, it takes a mouse click to go to any previous save state instead of navigating through several directories without knowing where that "recent" bug was added.
There are other benefits in using GitHub, especially when it comes to teaching computational programming to students. GitHub encourages students to practice computational statistics, read others' programs, comment and document their own programs better, and write better programs, simply because they expect others to read their code. For that to take place, we should be there and serve as examples!
Comment