Closed FlippieCoetser closed 8 months ago
Thank you for your inquiry, @FlippieCoetser. I am afraid this package doesn't fall within our scope. Our definition of field and laboratory reproducibility tools is "Packages that improve reproducibility of real-world workflows through standardization and automation of field and lab protocols, such as sample tracking and tagging, form and data sheet generation, interfacing with laboratory equipment or information systems, and executing experimental designs." This type of general-purpose/low-level environment tool doesn't fall within that or any of our categories.
For your reference, we recommend againstdot.case
because it can interfere with R's S3 OO programming system, unless specifically using that system. We don't have specific paradigm or architectures we endorse. Thanks for the reference to the Standard architecture, that's an interesting reference!
@noamross, all good! I understand. I am working on some other packages which do fall under some categories listed. I will try again with those. Regarding the dot.case
I can understand that it might interfere with R's OO programming system. On the other hand, it is a really useful feature of the languages which has served me well. I use it to imitate a namespacing system which is standard in many other languages. It would be somewhat disappointing to see organisations or communities placing restrictions on the conventions and styles authors should use, since to me the biggest strength of R is its flexible nature. Anyway, just some food for thought. Thanks for the feedback!
Submitting Author Name: Flippie Coetser Submitting Author Github Handle: @Flippie Coetser Repository: https://github.com/FlippieCoetser/Environment Submission type: Pre-submission Language: en
Scope
Please indicate which category or categories from our package fit policies or statistical package categories this package falls under. (Please check an appropriate box below):
Data Lifecycle Packages
[ ] data retrieval
[ ] data extraction
[ ] data munging
[ ] data deposition
[ ] data validation and testing
[ ] workflow automation
[ ] version control
[ ] citation management and bibliometrics
[ ] scientific software wrappers
[x] field and lab reproducibility tools
[ ] database software bindings
[ ] geospatial data
[ ] text analysis
Statistical Packages
[ ] Bayesian and Monte Carlo Routines
[ ] Dimensionality Reduction, Clustering, and Unsupervised Learning
[ ] Machine Learning
[ ] Regression and Supervised Learning
[ ] Exploratory Data Analysis (EDA) and Summary Statistics
[ ] Spatial Analyses
[ ] Time Series Analyses
Explain how and why the package falls under these categories (briefly, 1-2 sentences). Please note any areas you are unsure of:
The
Environment
package is used to manage environment variables via the use of a.Reviron
configuration file.If submitting a statistical package, have you already incorporated documentation of standards into your code via the srr package?
Who is the target audience and what are scientific applications of this package?
The
Environment
package targets R users who want to use environment variables, where the variables are not stored in GitHub but in an.Renviron
configuration file. A typical example is storing and retrieving connection strings, usernames, passwords, or server addresses to cloud databases.usethis
package provides some overlapping functionality. However, this package is intended to be as simple as possible while providing a high-level of input validation and meaningful error messages not provided by theusethis
package.(If applicable) Does your package comply with our guidance around Ethics, Data Privacy and Human Subjects Research?
Any other questions or issues we should be aware of?:
Naming Convention: The guidelines refer
snake_case
; isdot.case
also an acceptable convention? Programming Paradigm: The guidelines do not specify a specific programming paradigm. The paradigm adopted in theEnvironment
package is aData-Oriented
paradigm with functional components.Software Architecture: This package adopts the Standard enterprise-level architecture. Is this community open to different programming paradigms and software architectures?