Creative Commons License
This blog by Tommy Tang is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

My github papge

Saturday, June 8, 2013

My personal suggestions to get started with bioinformatics

updated 07/20/13
see a post by Nick Loman

I am following him on twitter, and I am glad I knew most points mentioned in the article above.

another blog by Titus Brown the author of h-kmer

I started doing bioinformatics ( bioinformatics is really a deep river, it may not sound I am doing any real bioinformatics to many bioinformaticians)  last year in April. The past one year has been tremendously exciting as I learn new stuff every day and become more confident with huge data analysis.

Several suggestions I have for newbies  in this area:

1. operation system
yes, switch to Unix system if you are still using windows.

I installed bio-linux
it is based on ubuntu 12.04 LTS

once you have it installed, you need to get familiar with the linux command lines.
start from here

useful commands for text manipulations are:

less, cat
head, tail
cut, paste, join,
wc, sort, uniq, grep

then sed and awk are two commonly used commands for more complex text manipulation.

2. you have to understand regular expression
use text editor like Jedit in linux. Another real powerful text editor would be Vim or emacs.
I have used emacs for a while, you have to remember many hot keys.

I have configured it to run python and ESS (R)

3. programming languages
I started with python last year, and it is fairly easy to understand.

python courses:

Learn to Program: The Fundamentals

Introduction to Computer Science and Programming

Introduction to Computer Science

once you get familiar with all the computer concepts and terms, you can learn C++.

I just started reading  C++ Primer Plus

R, bioconductor.
There are so many packages developed for specific uses like microarray analysis, NGS data analysis.
I've used bioconductor a little bit for microarray analysis, detect differential expressed genes, generating heatmaps etc. I am impressed by its ability to generate complex graphs.

4. stay the current of bioinformatics

See the post here

it is very important that you know what tools are out there, and you just learn how to use them.

5. know how to run programs in a remote server though shh command.
Cloud computing is becoming very popular.

6. Database manage knowledge.
learn mysql or htsql

7. learn git, the version control  system.

I just started reading the Pro Git book received on Friday. It is fun! 

8. Last, the most important thing is that  you do a project.  PhDs learn things by doing.
During a project, you will always encounter problems, search them in google, tackle it and you gain the precious experience.

I will keep posting new stuff I learn.


  1. well, real bioinformaticians write code
    see a post here:

  2. see a post here: