Open maurolepore opened 5 years ago
Reading/computing/writing data efficiently) (thanks @cjyetman and @pranavpandya84)
Control flow (https://github.com/2DegreesInvesting/ds-incubator/issues/13)
Refactoring
cc' @AlexAxthelm
SQL/Azure by @tposey28
Testing
Time and pain savers:
--
Thanks @2diiKlaus
Regular expressions
How to create a racing bar chart
Once the data is fed, it generates link to the output (an html object) which it can be embedded within any Rmd report., gitbook or even a shiny app
The tool is free and easy to use. Actually, the template (racing bar chart) is already available so it just needs data in specific format. The session can be conducted within 15-20 mins.
--
Thanks @pranavpandya84
Options for data reshaping (e.g. gather()
, spread()
; tidyr::pivot_longer())
, tidyr::pivot_wider()
).
--
Thanks @Clare2D and @vintented
Git, the golden rules:
Best practice for writing a commit message
Creating reproducible R-package environments for our R projects.
--
@cjyetman and @pranavpandya84
I have used packrat
, which is the precursor of renv
(as far as I understand). I think it can be very useful, but also in my experience it's a bit confusing to use, and if some users do it wrong and then commit, it snowballs into a lot of problems that are difficult to resolve. Because of that, I avoided this topic for ds-incubator because I was afraid it's too large of a topic to cover in this format, but maybe I should suck it up and see if I can squeeze the essentials into a short presentation. I'll look into that.
The drake package to manage long-running processes.
Agile Development/ Minimal Viable Product/ Scrum
Proposed by @AlexAxthelm
Condition handling (e.g. tryCatch()
) (@Clare2D)
Dependencies (thanks @cjyetman)
The conflicted package:
Inspired by a peer-debugging session with @looreen a while ago; by this discussion with @cjyetman and @jdhoffa about when to use ::
; and by a slack conversation with @tposey28.
The pins package.
Inspired by efforts by @tposey28 to move away from local Dropbox folders (see article on using pins with azure boards), and by this conversation with @cjyetman and @jdhoffa about showing examples with data that comes from packages listed under DESCRIPTION > Suggests -- is pins an elegant solution?)
Iteration with purrr: 12' video of Hadley Wickham on how to bake cup cakes with purrr See also The purrr tutorial by Jenni Bryan.
goodpractice::gp()
: Advice on syntax, package structure, code complexity, code formatting, etc.
Assertions: Are we using enough of them? When to build your own versus reusing existing packages such as: assertr, assertthat, or other? See this issue.
-- Thanks @jdhoffa for motivating this post (I suspect @vintented would be interested)
What is the difference between sourcing a file, cloning a package and running load_all()
, and installing a package with install.packages()
or install_github()
.
--
@jdhoffa
.