Home Bio Projects Blog CV

James Kitchens

UC Davis Population Biology Graduate Group

Hi, my name is James Kitchens, and I am a second year graduate student studying population genetics in the Coop Lab through the UC Davis Population Graduate Group. Before graduate school, I interned at NASA’s Jet Propulsion Lab in Pasadena, California, researching the application of remote sensing for groundwater observation and management. In December 2019, I graduated from Warren Wilson College in Asheville, North Carolina, where I earned a B.S. in Biology and B.S. in Chemistry. While in undergraduate, I worked in the Warren Wilson College Genetics and Plant Physiology Laboratory as a Research Assistant on projects focused around the conservation of human-impacted species in the United States.

Python

R

Shiny

HTML

CSS

JavaScript

Git

SQLite

QGIS

ArcGIS

GRASS GIS

DNA Extraction

PCR

Fragment Analysis

NMR

Publications & Preprints

5. Deraje, P., Kitchens, J., Coop, G., & Osmond, M. M. (2024) Inferring the geographic history of recombinant lineages using the full ancestral recombination graph". bioRxiv

4. Kitchens, J., & Coop, G. (2023) Visualizing the shared nature of human genetic variation. Zenodo

3. Whipple, A.L., C. Ray, et al. (2021) Temporal vs. spatial variation in stress-associated metabolites within a population of climate-sensitive small mammals. Conservation Physiology, Volume 9, Issue 1

2. Kim et al. (2021) An evaluation of remotely sensed and in-situ data sufficiency for SGMA-scale groundwater studies in the Central Valley, California. Journal of the American Water Resources Association, Volume 57, Issue 5

1. Webb et al. (2017) Molecular Genetic Influences on Normative and Problematic Alcohol Use in a Population-Based Sample of College Students. Frontiers in Genetics, Volume 8, Article 30

Projects

tskit_arg_visualizer

Creating a package to interactively visualize ancestral recombination graphs using Python and D3.js.

Central Valley Water Resources

Using remote sensing (satellite) data to monitor groundwater conditions in California's Central Valley.

Lichen - Bipolar Data Visualization

Prototyped a lichen-inspired visualization of personal data related to mental health tracking.

Marine Tardigrades of the World

Built an application to aggregate and display the historic marine tardigrade findings around the world.

The TopoTable Project

Developing a dynamic 3D topographic relief table using moveable pillars.

Pika Genetic Sexing

Performed genetic sexing on tissue and fecal samples from the American pika (Ochotona princeps).

Blog

Gerrymandering

May 28, 2024

In 2022 during a late night (couldn't sleep) coding exploration, I wrote a small maze generator script in R. I was interested in pathfinding algorithms and specifically whether certain nodes in a graph are more likely to be traversed through than others. It may not be obvious but a maze can be reinterpreted as a graph (or network).

Python

D3

Visualizing Human Genetic Diversity

May 16, 2023

A key insight from human genetics is that, as a species, we are all very genetically similar to one another and share much of our genetic variation. Our genome can be depicted as a string of letters (A, T, G, and C), referring to the four nucleobases found in DNA.

Genetics

D3

Python

R

Why Are There So Many Gene Trees?

September 13, 2022

In evolutionary biology, we often think about the phylogeny of a group, the underlying relationships between the samples. When the comparison is of species (particularly those that are distantly related), it is common for these relationships to be relatively well-defined, allowing researchers to represent the shared history as a single phylogenetic tree of life.

Genetics

R

Flexbox Solves All

May 24, 2022

I really like when I get to see clear progress in my programming abilities. When I first created this website, I had relatively little experience with website design, so I was drawing a lot of code and inspiration from YouTube tutorials and Stack Overflow. There are a few aspects of the website that I would categorize as "good enough", falling so perfectly at the intersection of annoyance and complacency that they will likely never be updated. But there was one particular issue that has always bothered me... the blog post thumbnail images.

HTML

CSS

Flaming SVG

May 22, 2022

I was looking for website design inspiration and came across this [website](https://crustac.fr/en/home/) with a really interesting landing page. This site has clearly had a lot of thought put into its design, and I wanted to dissect their methods for masking the video within the company logo. I bounced between parsing through the websites source code and various YouTube videos to develop my own take on the method; the above animation is a gif of the resulting design.

HTML

CSS

Irregularly Shaped Leaflet Maps

June 25, 2021

The Leaflet JavaScript package creates interactive maps that can display geographic information, such as points, lines, and polygons. Many of my websites implement these maps in some capacity or another. By default, all maps that are generated are rectangular in shape, and for most circumstances, this provides this clearest view of all of your information.

JavaScript

Leaflet

GIS

Thru-Hiking Data Visualization

March 17, 2021

A few years ago, I saw a graphic on Reddit of a Pacific Crest Trail thru-hiker's statistics, including information on daily mileage and cost of the trip as a whole

Hiking

D3

JavaScript

Python

Great Basin and Pinnacles

February 9, 2021

Over the last few months, Margaret and I have visited two new US national parks, Great Basin in Nevada and Pinnacles in California.

Hiking

Photography

Updating Website to Jekyll

January 6, 2021

With all of the rain coming to the southeastern United States, I started to think about how it is affecting the river levels.

Jekyll

HTML

CSS

JavaScript

Streamflow and Precipitation

December 17, 2020

With all of the rain coming to the southeastern United States, I started to think about how it is affecting the river levels.

R

Hydrology

USGS

NOAA

Pyinstaller and Creating Executables

October 24, 2020

As part of my work at the NASA Jet Propulsion Laboratory, I am developing code that needs to be readily usable across a number of different computer environments and by users with varying levels of programming backgrounds.

Python

Genetic Algorithms

September 3, 2020

Genetic algorithms are a Darwinian-inspired method finding optimal, or near-optimal, solutions to complex problems. Mirroring natural selection, a population of potential solutions is generated and then repeatedly combined and mutated at a variable rate corresponding to their fitness at solving the problem.

Python

National Parks Gallery

August 24, 2020

During the summer of 2019, I was an intern in the Mathematical and Theoretical Biology Institute summer internship program at Arizona State University in Tempe, Arizona. At the end of the summer, my partner (Margaret Graham) and I went on a two week-long road trip around the western United States before heading back east.

Hiking

Photography

JavaScript

NMR and Non-Square Jigsaw Puzzles

August 17, 2020

In organic chemistry during freshman year of undergraduate, we were discussing nuclear magnetic resonance (NMR) spectroscopy, a technique to determine the chemical structure of compounds in solution.

Python

NMR

Phenology, Climate, and Citizen Science

August 10, 2020

Phenology, in its simplest definition, is the study of nature's calendar. It seeks to answer questions such as "what signals tell birds that it is time to migrate south for the winter?", "why spring cold snaps can ruin a year's crop yield?", and most importantly, "how accurate have Punxsutawney Phil's predictions been over the years?".

Climate

Citizen Science

Animated Website Background

August 3, 2020

This tutorial walks you through how to use the p5.js JavaScript library to create an animated website background similar to that seen in the GIF above. For those of you who have not heard of p5.js, it is an open source JavaScript library targeted towards "artists, designers, educators, and beginners".

JavaScript

HTML

CSS

kitchensjn@gmail.com