Skip to content

Project Management

Paige Miller edited this page Aug 6, 2018 · 42 revisions

Page Editor: @paigemiller
To request edits to this page, open an issue, and tag @paigemiller


This page covers project structure, collaboration, and version control systems.

Come here when beginning a new project for steps to set up folder directory structure, use electronic collaboration, and setting up version control, a system for managing projects over time.


Planning project steps

Plan out what steps and milestones you will have to reach an answer to your research question. In the Drake Lab, we often are asked to write a modeling project protocol. As you are filling out the protocol take note of what methods, software, or data you will need. Some code will need to be written yourself but there are a lot of resources online (GitHub, SourceForge, CRAN) that may be helpful. Also, don't forget to ask other members of the Lab of OSE community! If you are trying to find data online, check out this list of databases that Drake Lab members have found interesting and useful:

Setting up a neat project/folder directory

A good project layout will ultimately make your life easier:

  • It will help ensure the integrity of your data;
  • It makes it simpler to share your code with someone else (a lab-mate, collaborator, or supervisor);
  • It allows you to easily upload your code with your manuscript submission;
  • It makes it easier to pick the project back up after a break.

See here for tips on doing this in R with Rmd. Here are more specific tips for organizing files on your computer including for starting project directories. If you'd like to clone a Github repo to get started, you can visit here or here. Below is a basic framework for how might think about organizing files on your computer: Directory

Get ready to learn a Version Control System, especially if the project requires collaboration

Understand the capabilities of version control and how it can help you in your everyday work and how it can make collaborative work less painful. For that, we recommend watching this introductory video from the software carpentry course. http://software-carpentry.org/4_0/vc/intro.html.

We typically use Git & GitHub in the Drake Lab. Good links to learn how to use Git are:

Communication & Task management

  • Slack for communication about projects (mobile & desktop app)
  • Trello for tasks, grouping tasks, assigning tasks (able to integrate with slack)

More resources:

Lab Links

Clone this wiki locally