R for biologists seminar: I believe that R is currently an essential tool for most evolutionary biologists. I organized an R in ecology and evolution seminar course to teach graduate students the basics of working in R. Each week had a tutorial covering a core set of essential R skills.


R for Software Carpentry workshop: I developed these pages to help a group of about 40 students learn the basics of what is possible in R. Topics include intro/basics, style, plotting, reproducible research.


Foundations of evolutionary biology: An understanding of the foundational ideas that the modern synthesis of evolutionary biology is built on is essential for asking intelligent questions and understanding how your research fits into a larger understanding of life. I offered a foundations of evolutionary biology seminar course for graduate students that provided a structured environment to discuss some of the most important papers in evolutionary biology. This website contains a schedule and PDF files for all of the readings in this course.

wright fisher

Wright-Fisher simulator: Wright-Fisher simulators perform population genetic simulations that include both selection and drift. Interactive simulators like this Wright-Fisher simulator can be particularly helpful in teaching students about the impact that population size has on the efficiency of selection. This website uses the R package shiny to create an interactive simulation that allows users to control mutation rates, selection coefficients, and population sizes.


Birth-death tree simulations: A birth-death model is often assumed as a generating model for phylogenies. One challenge in detecting shifts in diversification is the high variance in extant species in trees generated under this model. This birth-death simulation allows users to set values for the birth and death parameters and then generates a collection of trees to illustrate the high variance that is often exhibited.


Comparative methods study group: The Goldberg lab is studying comparative methods for lab meetings this semester. We are intermittently covering a variety of topics from models of trait evolution to underlying math and stats. I am trying to code up all the concepts and methods that we cover. I use R markdown document that contains both code and commentary to generate html pages that I can share with others.


Brownian motion simulation: Brownian motion is a common model that we use for the evolution of continuous traits. This is a simple Brownian motion simulation in the form of an R Shiny server. It allows the user to vary the number of generations and iterations and then plots the result of all simulations as well as the trait values at any instance in time.


Notes and tutorials from various reading groups