• 1 Data Science and Collaboration Skills for Integrative Conservation Science
    • 1.1 Schedule
      • 1.1.1 Code of Conduct
  • 2 Motivation
    • 2.1 Learning Objectives
    • 2.2 Reproducible Research
      • 2.2.1 What is needed for computational reproducibility?
      • 2.2.2 Conceptualizing workflows
    • 2.3 How can version control help?
      • 2.3.1 The problem with renaming files
    • 2.4 Collaborative Research
      • 2.4.1 Using Shared Folders for Data Sets
      • 2.4.2 Using git and GitHub for Codes
  • 3 Working on a Remote Machine
    • 3.1 Learning Objectives
    • 3.2 Why working on a remote machine?
      • 3.2.1 NCEAS analytical server
      • 3.2.2 Working Group / Collaborative Setup
      • 3.2.3 What does working on a remote server means?
    • 3.3 RStudio Server
      • 3.3.1 Connecting to NCEAS Analytical Server
  • 4 RStudio and Git Setup
    • 4.1 Checking the RStudio environment
      • 4.1.1 R Version
      • 4.1.2 RStudio Version
      • 4.1.3 Package installation
    • 4.2 Setting up git
    • 4.3 Other Thoughts
      • 4.3.1 Linking git and RStudio
      • 4.3.2 Note for Windows Users
      • 4.3.3 Updating a previous R installation
  • 5 Introduction to R and RMarkdown
    • 5.1 Learning Objectives
    • 5.2 Introduction and Motivation
      • 5.2.1 Resources
    • 5.3 R at the console
      • 5.3.1 Error messages are your friends
      • 5.3.2 Logical operators and expressions
      • 5.3.3 Clearing the environment
    • 5.4 RMarkdown
      • 5.4.1 Your Turn
      • 5.4.2 Code chunks
      • 5.4.3 Your turn
    • 5.5 R functions, help pages
      • 5.5.1 A simple example
      • 5.5.2 Getting help
      • 5.5.3 Your turn
      • 5.5.4 Use a function to read a file into R
    • 5.6 Using data.frames
      • 5.6.1 Your Turn
    • 5.7 Troubleshooting
      • 5.7.1 My RMarkdown won’t knit to PDF
      • 5.7.2 I just entered a command and nothing is happening
      • 5.7.3 R says my object is not found
    • 5.8 Literate Analysis
    • 5.9 Exercise
  • 6 Version Control with git and GitHub
    • 6.1 Learning Objectives
    • 6.2 The problem with “save_as”
    • 6.3 git
    • 6.4 First Repository
      • 6.4.1 GitHub
      • 6.4.2 Let’s look at a repository on GitHub
      • 6.4.3 Creating a Repository on GitHub
      • 6.4.4 First commit
    • 6.5 Getting a Local Copy of a Repository
    • 6.6 Tracking File Changes with git
      • 6.6.1 Basic Workflow Overview
      • 6.6.2 Using git from RStudio
      • 6.6.3 Looking at the Repository History
      • 6.6.4 Sending changes back to GitHub
    • 6.7 Collaboration and conflict free workflows
    • 6.8 Exercise
    • 6.9 Advanced topics
    • 6.10 References
  • 7 Git: Collaboration and Conflict Management
    • 7.1 Learning Objectives
    • 7.2 Collaborating with Git
      • 7.2.1 Activity: Collaborating with a trusted colleague
    • 7.3 Merge conflicts
    • 7.4 How to resolve a conflict
      • 7.4.1 Abort, abort, abort…
      • 7.4.2 Checkout
      • 7.4.3 Pull and edit the file
    • 7.5 Workflows to avoid merge conflicts
    • 7.6 Other Collaborative Workflows with GitHub
      • 7.6.1 Collaborating through Forking, aka the GitHub workflow
      • 7.6.2 Collaborating through write / push access
    • 7.7 Working with branches
      • 7.7.1 Creating a new branch
      • 7.7.2 Using a branch
  • 8 Linux and the Command Line
    • 8.1 Introduction to UNIX and its siblings
      • 8.1.1 Various Unices
      • 8.1.2 Some Unix hallmarks
    • 8.2 The Command Line Interface (CLI)
      • 8.2.1 Why the CLI is worth learning
      • 8.2.2 Connecting to a remote server via ssh
    • 8.3 Navigating and managing files/directories in *NIX
      • 8.3.1 Permissions
      • 8.3.2 Exercise
    • 8.4 General command syntax
      • 8.4.1 find
    • 8.5 Getting things done
      • 8.5.1 Some useful, special commands using the Control key
      • 8.5.2 Process management
      • 8.5.3 What about “space”
    • 8.6 Uploading Files
      • 8.6.1 RStudio
      • 8.6.2 sFTP Software
      • 8.6.3 scp
    • 8.7 Advanced Topics:
      • 8.7.1 Unix systems are multi-user
      • 8.7.2 A sampling of simple commands for dealing with files
      • 8.7.3 All files have permissions and ownership
      • 8.7.4 Getting help
      • 8.7.5 History
      • 8.7.6 Get into the flow, with pipes
      • 8.7.7 Text editing
      • 8.7.8 Create custom commands with “alias”
      • 8.7.9 A sampling of more advanced utilities
    • 8.8 Online resources
  • 9 Data Modeling & Tidy Data
    • 9.1 Learning Objectives
    • 9.2 Benefits of relational data systems
    • 9.3 Data Organization
    • 9.4 Multiple tables
    • 9.5 Inconsistent observations
    • 9.6 Inconsistent variables
    • 9.7 Marginal sums and statistics
    • 9.8 Good enough data modeling
      • 9.8.1 Denormalized data
      • 9.8.2 Tabular data
    • 9.9 Primary and Foreign Keys
    • 9.10 Entity-Relationship Model (ER)
    • 9.11 Merging data
    • 9.12 Simple Guidelines for Effective Data
    • 9.13 Data modeling exercise
    • 9.14 Related resources
  • 10 Data Cleaning and Manipulation
    • 10.1 Learning Objectives
    • 10.2 Introduction
    • 10.3 Setup
    • 10.4 About the pipe (%>%) operator
    • 10.5 Selecting/removing columns: select()
    • 10.6 Quality Check
    • 10.7 Changing column content: mutate()
    • 10.8 Changing shape: pivot_longer() and pivot_wider()
    • 10.9 Renaming columns with rename()
    • 10.10 Adding columns: mutate()
    • 10.11 group_by and summarise
    • 10.12 Filtering rows: filter()
    • 10.13 Sorting your data: arrange()
    • 10.14 Joins in dplyr
    • 10.15 separate() and unite()
    • 10.16 Summary
  • 11 Collaboration: Designing and facilitating effective meetings
    • 11.1 Learning Objectives
    • 11.2 What makes meetings effective?
    • 11.3 Designing for successful team science meetings
    • 11.4 Sharing the load of effective meeting facilitation
    • 11.5 Creating the conditions for quality participation
    • 11.6 Techniques for democratizing participation
    • 11.7 The Groan Zone (aka the Diamond Participation Model)
    • 11.8 Techniques to support divergent and emergent thinking
    • 11.9 Making thinking visible
    • 11.10 Techniques to support convergent thinking (i.e., getting to agreement)
    • 11.11 Virtual meeting best practices
    • 11.12 Resources
  • 12 Publication Graphics
    • 12.1 Learning Objectives
    • 12.2 Overview
      • 12.2.1 ggplot vs base vs lattice vs XYZ…
    • 12.3 Setup
      • 12.3.1 Load salmon escapement data
    • 12.4 Static figures using ggplot2
      • 12.4.1 Setting ggplot themes
      • 12.4.2 Smarter tick labels using scales
      • 12.4.3 Creating multiple plots
      • 12.4.4 Several plots, one figure
    • 12.5 Interactive visualization using leaflet and DT
      • 12.5.1 Tables
      • 12.5.2 Maps
    • 12.6 Resources
  • 13 Getting the Most out of Collaborative Science
    • 13.1 Learning objectives
    • 13.2 Aligning around shared purpose and a clear work plan
    • 13.3 Culture and leadership
    • 13.4 Traditional and network mindsets
    • 13.5 Resources
  • 14 Navigating Challenges in Collaborative Science
    • 14.1 Learning objectives
    • 14.2 Authorship and credit
    • 14.3 Data sharing
    • 14.4 Resources
  • 15 Coding best practices and tips
    • 15.1 Scripting languages
      • 15.1.1 Don’t start coding without planning!
    • 15.2 Structure of a script
      • 15.2.1 Few important principles
    • 15.3 Functions
      • 15.3.1 Defining a function
      • 15.3.2 R function definition
      • 15.3.3 Calling a function
      • 15.3.4 Challenge
    • 15.4 Scope: Global vs. Local Environment
      • 15.4.1 Challenge
      • 15.4.2 One last one
    • 15.5 Note about loading libraries in R
      • 15.5.1 Namespace
      • 15.5.2 Challenge
    • 15.6 Solutions to function challenge
      • 15.6.1 First function task
      • 15.6.2 Second function task
      • 15.6.3 Third function task
    • 15.7 References
  • 16 Best Practices: Data and Metadata
    • 16.1 Learning Objectives
    • 16.2 Preserving computational workflows
    • 16.3 Best Practices: Overview
    • 16.4 Organizing Data: Best Practices
  • 17 Spatial vector analysis using sf
    • 17.1 Learning Objectives
    • 17.2 Introduction
    • 17.3 Reading a shapefile
      • 17.3.1 Setup
      • 17.3.2 Coordinate Reference System
      • 17.3.3 Attributes
    • 17.4 sf & the Tidyverse
      • 17.4.1 Joins
      • 17.4.2 Group and summarize
      • 17.4.3 Save
    • 17.5 Visualize with ggplot
    • 17.6 Incorporate base maps into static maps using ggmap
    • 17.7 Visualize sf objects with leaflet
  • 18 Raster Analysis
    • 18.1 Learning Objectives
    • 18.2 Introduction
      • 18.2.1 Raster File Formats
    • 18.3 The raster Package
      • 18.3.1 Plotting
      • 18.3.2 Calculation with raster
    • 18.4 Other Thoughts
      • 18.4.1 Raster processing can be slow
      • 18.4.2 Preprocessing we did
    • 18.5 References
  • 19 Finding help
    • 19.1 From within R
    • 19.2 Task views
    • 19.3 RStudio Website
    • 19.4 Solving problems
      • 19.4.1 Do it yourself
      • 19.4.2 Search Forums, blogs, …
      • 19.4.3 Posting a question
    • 19.5 Communities
    • 19.6 NCEAS
  • Published with bookdown

Data Science and Collaboration Skills for Integrative Conservation Science

14 Navigating Challenges in Collaborative Science

14.1 Learning objectives

In this lesson you will learn

  • Best practices for navigating authorship, credit, and power dynamics in team science collaborations

  • Best practices for data sharing in team science collaborations

14.2 Authorship and credit

Most people who have participated in group projects will recognize that maintaining clear channels of communication among team members can be a big challenge. At NCEAS we encourage scientists to discuss authorship, credit and data sharing early and often. Many publications resulting from NCEAS work are authored by large groups of individuals. These individuals may not know each other well at the beginning of the project, and they may represent fields which have diverse views on authorship and data sharing.

Check the “Publication” section of the Ecological Society of America’s Code of Ethics as a starting point for discussions about co-authorship. NCEAS endorses these principles in establishing authorship. You might also wish to check guidelines published by the journal(s) to which you anticipate submitting your work.

We recommend you write an authorship agreement for your group early in the project and refer to it for each product. A template is provided in the Resources section below.

14.3 Data sharing

NCEAS is committed to making ecological data available to the broader scientific community, and we expect that NCEAS projects adhere to our data policy, which can be found here. As with authorship, we also encourage groups to engage in open, honest conversation about data sharing early in their collaboration.

In addition, there may be legal or policy considerations related to data sharing for your project. You can learn more here.

We recommend you write a data sharing agreement for your group early on and revisit it periodically throughout the project. A template is provided in the Resources section below.

14.4 Resources

Authorship template

Cheruvelil, Kendra S., et al. “Creating and maintaining high‐performing collaborative research teams: the importance of diversity and interpersonal skills.” Frontiers in Ecology and the Environment 12.1 (2014): 31-38.

DataOne Best Practices Database

Data sharing template

Frassl, Marieke A et al. “Ten simple rules for collaboratively writing a multi-authored paper.” PLoS computational biology vol. 14,11 e1006508. 15 Nov. 2018, doi:10.1371/journal.pcbi.1006508

Goring, Simon J., et al. “Improving the culture of interdisciplinary collaboration in ecology by expanding measures of success.” Frontiers in Ecology and the Environment 12.1 (2014): 39-47.