This review is by Zhengkan Wang. Zhengkan is a Software Developer, Data Engineer in training, and curious in lots of things.
Took the course? Write your own review here. Read all reviews.
Algorithms are a very important branch of computer science, and the success of Google and Facebook can be attributed almost entirely to the ingenuity of their algorithms. However, recently computer scientists have taken a look at the success of algorithms in tech and wondered if perhaps they could also be used to solve big problems in other spaces. One such space is genomics, and Algorithms for DNA Sequencing is about the problems and techniques used in this space.
The first thing to note is that this is primarily an algorithms class designed for computer science people
The first thing to note is that this is primarily an algorithms class designed for computer science people: the teacher, Ben Langmead, is a CS PhD. You’re not expected to know any biology coming in, and the professor spends very little time in giving you a brief but adequate description of the underlying biology. It does, however, require some technical ability on the part of the student. The lectures and coding exercises require the student to at least have some CS fundamentals, so don’t take this if you’re complete novice to computers. In fact, the steps the course gave to set up the coding environment didn’t work for me, and I don’t think I could have figured out how to do the initial setup without my CS background.
“Ben Langmead is the first author of the bowtie paper which is one of the most commonly used programs for DNA mapping. The lecture material is extremely well explained and accessible both to students with a computational background and to biologists.”
– Review By Class Central user Daria
The algorithms themselves are all related to string processing, as that is the format that DNA is stored as. However, there are problems unique to DNA sequences that aren’t as prevalent in other texts, so even advanced algorithms experts might be able to learn a few things. For example, the process of actually extracting the DNA string from the organic material is error prone, so any algorithms used will have to account for imperfect information. The course goes over techniques used for this and other issues and puts a nice twist on traditional algorithm design.
The lectures are enjoyable, as Ben has a nice teaching style and goes over subjects slowly and understandably.
The videos are divided into two parts: lectures from Ben where he talks about the problems DNA sequencing faces and the algorithms designed to solve them, and then practical recitations where Ben and one other teacher go over the actual implementation of the algorithms. The lectures are enjoyable, as Ben has a nice teaching style and goes over subjects slowly and understandably. The recitations could have been better: they seemed to have been coded on the spot and there are some occasional errors in the code when they type them. These mistakes aren’t major though, and are fixed quickly.
After going through the videos, students are expected to do assignments which involve a decent amount of coding. I’m a big believer in learning through doing, so I was a big fan of these assignments. My only problem with these assignments is that they were always python coding challenges, and we didn’t get use any of the tools that Ben would talk about in the lectures. I understand that that might be beyond the scope of the course, but it would have been something I would have liked.
Overall, very nice class, and perfect if you have a good CS background and want to know about the CS challenges being faced in DNA sequencing.
Class Central is looking for reviewers and regular contributors. If you’ve ever finished a MOOC and want to write a critique to help future students who are considering taking that course, we want to hear from you. Drop us a mail.