A “diauxic shift” to a new beginning

Throughout grad school I’ve had many ideas I wanted to write about, or tools I’d developed that I wanted to explain and share, but these never seemed quite “serious” enough to spend time on. So, for the most part, I abandoned my previous hobby of blogging in favor of spending more time in lab.

But some of these ideas seemed fun or maybe could have led to interesting research directions. At the very least, they might have helped others with technical tasks. So it always felt remiss to not air them out somehow.

Now that I’ve finished my PhD, and at least for now will not be writing many more papers, I want to make a more serious effort to communicate my mini-ideas. I’ve also entered a new field of biology, and am trying to make sense a lot of new and fascinating literature that I’d like to share with a broader audience (or, well, I’d be happy with “beyond my own head”).

In the spirit of change, I will call this new blogging project “Diauxic Shift”, after the phenomenon, discovered by Monod and Jacob, where microbes pause growth between consuming different nutrients so they can induce the appropriate metabolic genes. Continue reading

Advertisements
Posted in Life and science | Leave a comment

Calculating growth rate from microbial growth curves using MATLAB

Growth curve experiments are used to study the physiology of bacteria, yeast, or other micro-organisms. You inoculate cells in a nutrient medium, let them grow, and record the optical density of the culture over time with a spectrophotometer. Automated plate readers can do thousands of growth curves in a single experiment, giving a detailed view of how environmental conditions affect cells.

I’ve spent many hours analyzing growth curves during my PhD, and almost as many hours teaching others to do the same, so I am going to describe a basic growth curve analysis here and try to highlight some quantitative principles and programming techniques along the way. Hopefully this can save you some time if you are new to growth curves and/or programming.

Continue reading

Posted in Data analysis, Microbial physiology, Quantitative principles | 1 Comment

The difference between selection coefficient and relative growth rate

If you do experiments on microorganisms, you are probably familiar with fitness assays, where you study a mutant strain by comparing its growth rate to that of the wildtype in various environments. If, like me, you have learned the method by reading papers, you may have missed an important fact: there are two different ways of presenting fitness data. Microbial fitness can be reported as either a selection coefficient or a relative growth rate difference, and although these are mathematically related, they are not equivalent. Moreover, they have different conceptual meanings. This point may be obvious to some, but is subtle enough that I thought the two quantities were equal until I had read (and failed to understand) multiple explanations to the contrary.

Here I will try to help other confused experimentalists by explaining this difference in practical terms, as it arises in the analysis of a competitive growth assay. None of this material is original, but I hope my presentation clarifies ideas that aren’t as transparent elsewhere. I borrow especially heavily from Greg Lang’s competition assay protocol, the Crow and Kimura population genetics textbook, and this article by Luis-Miguel Chevin that makes the same point I make here, but at a more conceptual level.

If you’re the impatient type, everything below can be summarized in 3 points:

  • A 1% difference between two strains in the number of offspring per generation (selection coefficient) is not the same as a 1% difference in exponential growth rate (relative growth rate difference).
  • A 1% difference in number of offspring per generation is approximately equal to a 0.69% difference in exponential growth rate.
  • You should report fitness as a selection coefficient if you can. If you must use a different metric, state this prominently so people like me don’t get confused.

Continue reading

Posted in Microbial physiology, Quantitative principles | Leave a comment

What are graduate school interviews like?

This was originally posted on the Harvard Sysbio blog It Takes 30.

To help 2011 graduate school interviewees, I collected some advice from current Systems Biology graduate students. Here are their thoughts:
Continue reading

Posted in Life and science | Leave a comment

Opticrop: Usage and Implementation

[NOTE Aug 5, 2014] I wrote this in 2010 and took it offline between 2012 and 2014, but it is now back up. Since then, similar ideas have cropped up elsewhere and are worth consulting. Promising options include entropy-based methods (reddit, google search) and a commercial service (cropp.me).

Opticrop is a PHP script I wrote to crop a thumbnail of a specific width and height from a full-sized image.

Unlike most cropping routines out there, Opticrop uses edge-detection to find the most “interesting” part of the image to crop, so you won’t get a useless thumbnail just because the top-left corner of your image happened to be a big patch of featureless sky. This post is an overview of usage and implementation. For a more general discussion, see my post on the methods behind the script. Also check out the live demo of Opticrop, with a slick jQuery interface. (Sorry–this is down right now. Back up soon.) You can also get the Opticrop code on Github. Continue reading

Posted in Not biology | Leave a comment

Opticrop: Content-aware Cropping with PHP and ImageMagick

[NOTE Aug 5, 2014] I wrote this in 2010 and took it offline between 2012 and 2014, but it is now back up. Since then, similar ideas have cropped up elsewhere and are worth consulting. Promising options include entropy-based methods (reddit, google search) and a commercial service (cropp.me).

Opticrop is a PHP script I wrote to crop a thumbnail of a specific width and height from a full-sized image.

Unlike most cropping routines out there, Opticrop uses edge-detection to find the most “interesting” part of the image to crop, so you won’t get a useless thumbnail just because the top-left corner of your image happened to be a big patch of featureless sky. This post is a big-picture discussion of my method. If you just want the script, see the post on Opticrop’s usage and implementation. Continue reading

Posted in Not biology | Leave a comment