“Under-appreciated” is definitely hard to quantify. However, these tools dramatically simplify my day-to-day workflow, and most people I talk to have only heard of them from me. So, my goal with this post is to introduce people to some useful programs they might not have heard of before. Since I use Linux Mint as my primary operating system, all of these programs are Linux-compatible. Most of them are also compatible with other operating systems.
I’ve been lucky in my graduate career to never need to TA to fund myself. However, my advisor made the excellent point that it is important to know whether you like teaching when considering trying to become a professor and I honestly didn’t know whether I did or not. I have to admit that I was pretty intimidated by the idea of TAing at all since we’ve all heard the horror stories of a crazy amount of work and horrible students. Therefore, when asked what my first choice of a class would be, I decided that the intro to programming class that teaches brand new students Python was a safe bet (my undergraduate career was pretty Python heavy). I figured that I should be fairly familiar with all the topics covered and wouldn’t need to brush […]
The other day, I was reading a paper (paywall) on using graph and network theory to quantify properties of ecological landscapes, by Rayfield et al. It is a review summarizing: what properties of landscape networks we might want to measure, structural levels within networks that we might want to measure these properties at (e.g. node, neighborhood, connected component, etc), and metrics that can be used to measure a given property at a given structural level. The authors found that there was dramatic variation in the number of metrics available in these different categories. I was particularly struck by this comment, offering a potential explanation for the complete lack of component-level route redundancy metrics: “This omission could be attributed to, first, the importation of measures from other disciplines that prioritized network efficiency over network redundancy…”
In a later post I’m going to introduce a new artificial life system which I’m working on. This new system is based on Markov Network Brains so I figured I’d take a little time to talk about them. Markov Brains use binary variables and arbitrary logic to implement deterministic or probabilistic finite state machines. They have been used to study behavior, character recognition and game theory among other topics. The majority of the work with Markov Brains has been done in Chris Adami’s lab. A Markov Brain consists of 3 parts : a set of binary variables called the Brain State a collection of logic gates connections between the variables and the gates
One of my stepping stones towards becoming an evolutionary biologist was playing with engaging programs that combine evolution and artificial life. Although these “games” are often neither intended for educational or research purposes, I found them instrumental in developing an appreciation for the power and creativity of evolution by natural selection. Here is a collection of my favorites in no particular order: Bitozoa http://www.bpp.com.pl/bitozoa2/bitozoa2.html