0
$\begingroup$

How much does a typical biologist know about signal processing, machine learning, and (theoretical) computer science?

Coming from a neuroscience background where knowing about algorithms and computer science is a must, it seems to me that in biology there is much less cross disciplinary work. Though, yes, there are bioinformatics (but you only do sequence alignment and clustering?).

Anyway, given a typical PhD student in biology, how much does he/she need to know about programming, signal processing, etc?

$\endgroup$

closed as primarily opinion-based by MattDMo, Armatus, Mad Scientist Aug 24 '14 at 21:48

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.

  • $\begingroup$ I think this question could improve if you added the reason why you're asking this (depending on which it may or may not have an actual answer). As it is, you're just requesting comments and the StackExchange Q&A format isn't really useful for that. Feel free to take this to chat of course: chat.stackexchange.com $\endgroup$ – Armatus Aug 24 '14 at 21:04
3
$\begingroup$

I don't know what a "typical" biologist is, but I'd guess they don't know much about computers, because the population in general is computer illiterate. In my department, we do have a lab that does a lot of computational work on proteins. And of course bioinformatics relies on computers.

I can see where programming would come in handy for an ecologist, and maybe hardware and electronics too. Lets say you want to track animals in the woods. Traditionally, you'd give them a radio collar, then you'd have to triangulate their position in the woods, and at the end of the day all you'd have is location data. You could use something like a Raspberry Pi or Arduino to create a device that has GPS, a camera, and cell phone antenna, which could record much more information about the animal's location and activity and send it back you without as much effort.

In our modern computerized age, knowing some programming is always a plus, no matter what field you're in. Finding ways to apply that skill aren't always easy. I know both Java and C++, but I've really only written a few programs that I've used in research, 1 to calculate number of possible peptides given a size and some amino acids that won't change, and one to calculate how much DNA to use in ligation reactions.

$\endgroup$
2
$\begingroup$

First I want to say that studying the dynamic of enzymatic reactions, studying the movement of the arm, studying the structure of the DNA, Using mathematical modeling (and individual-based simulation) in population genetics, studying the turnover of soil nutrients, and others, ... require cross-disciplinary. Cross.disciplinary knowledge in biology is not restricted to the intersection between computer science and Biology.


Then I guess/hope that if I give you an overview of my knowledge in computer science and how I acquired it, it may help you (in addition to other answers) to estimate the level in computer science of an average biologist.

From my Bachelor and Master

During my Bachelor and Master degrees I have learned about statistics (and statistics applied to genetic data) and learned to program in R for data analysis purposes. I have been involved in a project during my Master where I had to use Approximate Bayesian Computation.

Self-learning

I have learned by myself the basis of theoretical computer science (NP-hard, genetic algorithm, running time function (the Big O notation), …) but I still know very little. I also learned Python (and a bit of Java) and Object-oriented programming. I also learned HTML and CSS in order to construct my website. All I know about information theory and signal processing comes from a bunch of Khan academy lectures on the subject that I watched.

$\endgroup$
1
$\begingroup$

I agree that a "typical" biologist (if such thing really exists) is generally not skilled in CS nor, very scaringly, in statistics.

My experience is that most biologists think of these things as burdens that do not really interest them and only get to do some basic statistics (most biologists would sort of know what a t-test or an ANOVA is, although they most probably won't master the statistical theory behind it) before writing a paper, so that they can put the little stars on their graphs.

However, if you go into fields like neuroscience (which I count as biology, I am not sure why you seem to imply it is not) then you start meeting people who know quite a bit of CS. Generally you either have these hybrid mathematician/statistician/programmer/math-y guy/biologist or you have biologists working together with more CS people.
In my last lab, for instance, we used to have a physicist and a programmer to help out with biological data analysis.

Furthermore, if you're into imaging, then there may be a lot of programming needed for 3D reconstruction, image segmentation, particle tracking, etc. etc. Although there is some fairly impressive off-the-shelf software out there for the most common tasks, as soon as you want something a bit more specific you're better off programming it yourself, or finding a collaboration with some computer scientists.

I would say that as a biologist it is important to understand these things, but not necessarily to be able to actually perform them, as you can rely on CS specialists/bioinformaticians to do that for you. However, it is very important for the biologist to understand what the bioinformatician does, and vice versa, as communication is obviously of great importance in these situations.

$\endgroup$
1
$\begingroup$

Without addressing the "typical biologist" aspect of your answer, I have some computer science background but mostly programming and little "theoretical." In my initial Ph.D. program in the late '80s and early '90s, I took several programming classes in Pascal and C. I wrote a fairly involved dBase program for a systematic research fish collection. I haven't messed with these for a number of years but I've retained enough knowledge to write programs in R and dabble in Python. I've used these for various professional reasons, from research to teaching. I teach very basic R in my biogeography class so my students even get some exposure. I'm teaching myself Postgresql as time permits. I use LaTeX regularly, which isn't always programming but its draws from a similar mindset. Plus, I can read the LaTeX code when I want to learn how something works.

I have a colleague in my department who is very fluent in SAS programming but I don't know what other programming skills he might have. Yet another colleague took lots of computer science courses during his Ph.D. program. And yet another colleague, now departed to the administrative dark side, was very proficient in Perl and probably a few other scripting languages. On the other hand, many of my colleagues use word processing and spreadsheet programs and that's about it.

Scientists are no different from other people. They go where their natural interests take them. For some of us "typical" biologists, that includes computers.

$\endgroup$
0
$\begingroup$

As much as they need to know, but rarely more.

I would say that the 'typical' biology undergrad is not so much of a tech freak and thus has not so much knowledge about programming and computer science in general. One might speculate that young people that feel attracted to these things tend to study math or physics rather than biology. Machine learning just isn't such a fundamental part of basic biology as it is to other scientific disciplines. This is by no means a as there are lots of other things to learn and understand before you can even apply computer-based solutions to biological problems. Many biologists will hardly need any programming skills ever.

However, as a PhD student you will need programming skills at least to some degree, let it be some R to do statistical analyses or some Python to automate workflows. And of course you will find really skilled programmers among biologists as well. As an ecologist, the first thing that comes to my mind are complex ecological models mostly written in C++.

To summarize, the pressure to be familiar with concepts of CS increases with the academical degree, and so does the proportion of proficient biologists.

$\endgroup$

Not the answer you're looking for? Browse other questions tagged or ask your own question.