programming:best_practices   4

git tips
Collection of git-tips, want to add your tips? Checkout
git  version_control  Programming:best_practices  to_teach 
february 2018 by hallucigenia
git everyday commands
[Individual Developer (Standalone)] commands are essential for anybody who makes a commit, even for somebody who works alone.

If you work with other people, you will need commands listed in the [Individual Developer (Participant)] section as well.

People who play the [Integrator] role need to learn some more commands in addition to the above.

[Repository Administration] commands are for system administrators who are responsible for the care and feeding of Git repositories.
git  version_control  Programming:best_practices  to_teach 
february 2018 by hallucigenia
strict R package
The goal of strict to make R behave a little more strictly, making base functions more likely to throw an error rather than returning potentially ambiguous results.

library(strict) forces you to confront potential problems now, instead of in the future. This has both pros and cons: often you can most easily fix a potential ambiguity when you're working on the code (rather than in six months time when you've forgotten how it works), but it also forces you to resolve ambiguities that might never occur with your code/data.
reproducible_research  Programming  Programming:best_practices  R  R_packages 
november 2017 by hallucigenia
MRAN: Reproducibility Using Fixed CRAN Repository Snapshots
Latest Isn't Always Greatest
CRAN has always provided access to the latest versions of the vast majority of R packages. With the growing popularity of R, the sea of packages hosted on CRAN is in a continuous state of flux with packages being added, updated, and archived all the time and multitudes of mirrors. To some this might seem like an advantage. To many, however, these ever-changing packages present significant challenges.

For example, a package you used yesterday may have been updated overnight, or maybe one of its dependencies did, and now your script no longer works as expected. Developers are left wondering, <i>"When do they plan to fix and update this package? Do I need to rewrite my script?”</i> Packages get fixed whenever their maintainers choose to do so -- whether that's today, tomorrow, or next month. Each time a package breaks, so will all of the scripts using that version of the package. This approach is clearly suboptimal with respect to the stability that R programmers crave.

Similarly, whenever users point to the latest CRAN repository, install.packages could install one version of the package for 'User_A' today, another version of that same package for 'User_B' who points to a different mirror, or even a “package not found” error when 'User_C' attempts to install tomorrow. Once again, this inconsistency presents challenges when sharing scripts.

Daily CRAN Repository Snapshots
To address this, Microsoft offers a downstream distribution of CRAN R packages. Since September 17th, 2014, the checkpoint server has been taking a daily snapshot at precisely midnight UTC of the entire CRAN repository and storing it on MRAN. These snapshots have been available to the R community ever since.
reproducible_research  Programming  Programming:best_practices  R 
november 2017 by hallucigenia

related tags

git  programming  r  r_packages  reproducible_research  to_teach  version_control 

Copy this bookmark: