The Author assumes a minimal background in bioinformatics, at least you must know what the field is about, a little of biology and have some ideas of programming (even better if you know Python). You only need to know little high school calculus and some algebra.The idea of the book is to teach algorithms that are useful for real bioinformatic applications, with the hope that you will be creating you own algorithms or applications in the future. Is not a book to learn BioPython (the preface clearly states that and explains why the skills learned in this book an BioPython could be used in a complementary fashion).The book uses Python 2, not Python 3. This is not a drawback as some people want to think, Python 2 is going to be the "standard" python for at least few year more and many (but not all) of the features of Python 3 are already present in Python 2.7. Even more important the book relies heavily in the NumPy library (as almost all scientific python programming) and NumPy is not, yet, compatible with Python 3, hence using Python 3 in a book like this will be, at least, non-sense.The only problem is that sometimes with some topics the author does not take too much time to explain the applications of some ideas, for example in the chapter on Hidden Markov Model (HMM) the Author just explain how to program different HMM implementations. Probably this is a mismatch between my background and the author's (I am closer to the a structural-biologist/biophysics) and some concepts are not used in the exactly same way in different scientific branchs, nothing that not can be solved by reading a Wikipedia entry.You should buy this book if you want to learn to develop bioinformatics solutions.