generated from allisonhorst/meds-distill-template
-
Notifications
You must be signed in to change notification settings - Fork 10
/
day2-server_collaboration.qmd
30 lines (15 loc) · 2.44 KB
/
day2-server_collaboration.qmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
---
title: "Collaborating on a server"
---
# Collaborative Setup
There are additional reasons of particular importance in a collaborative set up, such as a working group:
- **Centralizing data management**: As you know environmental data science is data intensive and often require to deal with a large number of heterogeneous data files. It can be complicated to make sure every collaborators as access to all the data they need. It is even harder to ensure that the exact same version of the data is used by everyone. Moving your workflow to a server, will allow to centralize your data management by having only one copy of the data that you can share with all your collaborators. ***It will ensure everybody is using the same version of the data and since everyone can access the same data from the same shred folder, everybody will have the exact same path in their script!!***
- **Make sure your files are safe**: Generally, servers are managed by a System Administrator. This person is in charge of keeping the server up-to-date, secured from malwares and set up back up strategies to ensure all the files on the server are backed up. When using cloud solutions, you should always check if a back up plan is available for the resources your using.
# What does working on a remote server mean?
What does it mean for your workflow? The good news is that RStudio Server makes it very easy for RStudio users to start using a server for their analysis. The main changes are about:
- **File management**: you will need to learn to move files (including your R scripts) to the server
- **R Package installation**: You can still install the R packages you need under your user (with some limitations). However some R packages will be already installed at the server level.
- **Code**: you will use version control (such as git) and code repository (such as GitHub)to move you code from one machine to another. Do **not** store code in shared folder, but rather under your home directory and use the code repository solution to share your code with your collaborator and leverage version control to manage the various contributions to your scripts.
```{r, fig.cap="Collaborative workflow on an analytical server; scripts are managed via git and GitHub with each collaborator having a copy of the repository under their home folder, data sets management is centralized in shared folders on ther server", echo=FALSE}
knitr::include_graphics("img/server-collaborative_workflow.png")
```