Dear All
I have developed a new Stata package for installing Stata packages from GitHub, allowing:
Based on this package, I'm also writing a brief article about the benefits of using GitHub for archiving Stata projects. So I appreciate any comment or suggestion how can we further improve analysis reproducibility when it is done by user-written packages.
So far there have been several threads of discussions concerning the problems of SSC in reproducing research projects.
I have developed a new Stata package for installing Stata packages from GitHub, allowing:
- installing previous versions (releases) of a package
- Installing package dependencies (with a particular version) for each of the released versions
Code:
net install github, replace from("https://raw.githubusercontent.com/haghish/github/master/")
So far there have been several threads of discussions concerning the problems of SSC in reproducing research projects.
- The first concern is the package dependencies. SSC does not install the package dependencies and the user is required to install all of the required packages manually. The github command allows automatic installation of the package dependencies.
- For the sake of reproducibility, it is absolutely crucial to be able to install the previous versions of a package, but SSC simply hosts the latest version and does not archive the previous versions. This problem can be solved by GitHub since it can create a version with a single mouse click. The github command allows installing any of the previous versions from GitHub.
- Another concern is the dependencies in Stata ado packages. It is in everyone's favor to rely on other people's functions instead of spending more time reinventing the wheel. However, software evolve by time and the main concern is that how can we ensure that the future updates of the dependencies will not cause trouble. The github command can also specify a particular version for the package dependencies. For example, installing an older version of a package would also install the particular versions of the dependencies required by that version...
Comment