edwardslab

  • Increase font size
  • Default font size
  • Decrease font size
Home Daniel
Daniel's lab blog

Next-Generation Sequencing Methods: A Summary

Being a computer scientist entering the bioinformatics field, I was always interested in learning more about DNA sequencing and how biologists actually perform sequencing. I learned about a few earlier methods, like Sanger sequencing, from my molecular biology course, but these new "next-generation" methods were being thrown around. So I did a bit of research and found a couple papers that summarized the more prominent next-generation methods. If you're a person in the position I was in a while back, then maybe reading these will give you a little more insight into these new sequencing methods. Note: you might need some biology knowledge to understand the terms and things described here.

Mardis, Elaine R. "Next-Generation DNA Sequencing Methods". Annual Reviews Genomics and Human Genetics. 2008. pdf

Ansorge, Wilhelm J. "Next-generation DNA sequencing techniques". New Biotechnology. April 2009. pdf

In both of these pieces of literature, they describe a little bit of history in DNA sequencing. Then they jump into the three primary next-generation platforms:

  1. Roche/454 FLX Pyrosequencer
  2. Illumina (Solexa) Genome Analyzer
  3. Applied Biosystems SOLiD Sequencer

The Helicos HeliScope platform is mentioned and described a bit in both as well.

I feel the Mardis paper has much nicer graphics and figures which complement the description of the different platforms. However, both have really great descriptions overall. Both also describe some applications for these next-generation techniques and future applications to come.

 

Project Update: Multi-threading or Cluster Computing?

Recently, I've been faced with a problem where I feel my metagenome comparator program is running too slow. The main reason behind it is that it's performing operations that occur multiple times in a loop. These operations involve different tasks such as: reading lines from text, creating objects, inserting those objects into a data structure, retrieving those objects from the data structure, and writing the data structures to disk (just to name a few). So it would be natural to suggest to someone in my position to parallelize it all, and that's exactly what I want to do. However, I've never written any type of parallel applications, and thus, I need to do a little bit of learning and researching into parallel programming. (More of my ramblings after the Read More break)

Read more...
 

Screen in Unix/Linux

Ever since I've been using the servers more often to write and run code, I've been keeping my eyes and ears open for new, cool, and better tools to make programming and work on the command-line environment easier. Recently, the screen command has been thrown around in conversation so I thought it'd be a good idea to check it out. It turns out to be a very helpful and powerful tool when doing multiple things at once as it lets you open multiple windows or "screens" in a single session. You can dedicate each screen to a specific task, e.g. running a Java application on one screen and while editing a Perl script in another. Here's a tutorial link I found that helped me learn a little bit more about screen.

http://www.ibm.com/developerworks/aix/library/au-gnu_screen/index.html


 

Increasing Heap Size in Eclipse

Ran into the problem of running out of heap space when running my program on Eclipse the other day. It just so happens that the heap space that is allocated for my programs in Eclipse on my Mac at home is less than what is supplied for my work laptop, thus making my program crash at home and not on my laptop. When dealing with a huge amount of data and objects in a large hash array of trees, heap space can run out pretty quick. So, after digging around a bit on Google I found two simple solutions that I continued to run into. Click here or the Read More link for solutions...

Read more...
 

New Features for OS Metagenomics

Here are some of the new features that are now included in OS Metagenomics:

Saving/Loading Your Data

This new feature is more of a developmental infrastructure change that gives the app a better use of persistent data and what we could do with it. Before, saving your data in orkut meant saving a JSON formatted object in the form of this:

{ userId :
{ "savedResults" :
[ "title 1" , "title 2", "title 3",... ]
}
}

This only allowed the application to later retrieve the titles of the data and nothing else. Later, an idea came about allowing the application to retrieve the actual data from this list of titles obtained in the Your Data section. So in order to do that I had to change the JSON formatted object to hold the phone number with its respective titles, like this:

{ userId :
{ "savedResults" :
{ phoneNumber 1 :
[ "title 1", "title 2", "title 3",..., "title 9" ],
phoneNumber 2 :
[ "title 10", "title 11",... ],
phoneNumber 3 :
...
}
}
}

What this does is allow the user to retrieve his/her data much quicker. Instead of filling in the input fields, if the user saved their data into orkut they can now view their previously saved data in the Your Data section as a drop-down list. After choosing a title to access, the app searches it's internal application data for the "savedResults" object and parses the JSON string, searches for the chosen title and remembers the corresponding phone number associated with it. The app then sends a request to our server to retrieve the data, which is similar to "filling in" the form for you and loading the data for you.

Friends

The Friends section has been successfully added to the OS Metagenomics application. With this new section a user is now able to click the View Friends Data button to retrieve a list of drop-down lists. These drop-down lists are separated by the names of the user's friends and contain the data the friends saved into orkut, not the data they saved onto the server. So, if someone would like their friends/colleagues to see which metagenomes they now have data for, they would just save it into orkut when viewing the data and their friends would see it in their Friends section. Also, a Request Data button is located next to the drop-down list. Clicking this would send a message to the friend asking them for the data that was chosen in the drop-down list. (orkut is actually not allowing me to send this message for some reason. Every time I try it a message at the top of the application screen shows saying "You have temporarily been disallowed from performing this action. Please try again after some time." This may be disabled during the development phase of an application but it seems that orkut knows I'm trying to send an email which is a good thing Smile).

 
  • «
  •  Start 
  •  Prev 
  •  1 
  •  2 
  •  3 
  •  Next 
  •  End 
  • »


Page 1 of 3