Beginning Perl for Bioinformatics and over one million other books are available for Amazon Kindle. Learn more

Buy New

or
Sign in to turn on 1-Click ordering.
or
Amazon Prime Free Trial required. Sign up when you check out. Learn More
Buy Used
Used - Good See details
$15.61 & eligible for FREE Super Saver Shipping on orders over $25. Details

or
Sign in to turn on 1-Click ordering.
 
   
Kindle Edition
 
   
Sell Back Your Copy
For a $8.11 Gift Card
Trade in
More Buying Choices
Have one to sell? Sell yours here
Beginning Perl for Bioinformatics
 
 
Start reading Beginning Perl for Bioinformatics on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Beginning Perl for Bioinformatics [Paperback]

James Tisdall (Author)
4.6 out of 5 stars  See all reviews (33 customer reviews)

List Price: $39.95
Price: $26.37 & this item ships for FREE with Super Saver Shipping. Details
You Save: $13.58 (34%)
  Special Offers Available
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.
Want it delivered Monday, January 30? Choose One-Day Shipping at checkout. Details
Textbook Student FREE Two-Day Shipping for Students. Learn more

Formats

Amazon Price New from Used from
Kindle Edition $17.27  
School & Library Binding $57.35  
Paperback $26.37  
Sell Back Your Copy for $8.11
Whether you buy it used on Amazon for $10.00 or somewhere else, you can sell it back through our Book Trade-In Program at the current price of $8.11.
Used Price$10.00
Trade-in Price$8.11
Price after
Trade-in
$1.89

Book Description

0596000804 978-0596000806 October 15, 2001 1

With its highly developed capacity to detect patterns in data, Perl has become one of the most popular languages for biological data analysis. But if you're a biologist with little or no programming experience, starting out in Perl can be a challenge. Many biologists have a difficult time learning how to apply the language to bioinformatics. The most popular Perl programming books are often too theoretical and too focused on computer science for a non-programming biologist who needs to solve very specific problems.

Beginning Perl for Bioinformatics is designed to get you quickly over the Perl language barrier by approaching programming as an important new laboratory skill, revealing Perl programs and techniques that are immediately useful in the lab. Each chapter focuses on solving a particular bioinformatics problem or class of problems, starting with the simplest and increasing in complexity as the book progresses. Each chapter includes programming exercises and teaches bioinformatics by showing and modifying programs that deal with various kinds of practical biological problems. By the end of the book you'll have a solid understanding of Perl basics, a collection of programs for such tasks as parsing BLAST and GenBank, and the skills to take on more advanced bioinformatics programming. Some of the later chapters focus in greater detail on specific bioinformatics topics. This book is suitable for use as a classroom textbook, for self-study, and as a reference.

The book covers:

  • Programming basics and working with DNA sequences and strings
  • Debugging your code
  • Simulating gene mutations using random number generators
  • Regular expressions and finding motifs in data
  • Arrays, hashes, and relational databases
  • Regular expressions and restriction maps
  • Using Perl to parse PDB records, annotations in GenBank, and BLAST output

Special Offers and Product Promotions

  • Buy $50 in qualifying physical textbooks, get $5 in Amazon MP3 Credit. Here's how (restrictions apply)

Frequently Bought Together

Beginning Perl for Bioinformatics + Mastering Perl for Bioinformatics + Building Bioinformatics Solutions: with Perl, R and MySQL
Price For All Three: $105.11

Show availability and shipping details

Buy the selected items together
  • In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details

  • Mastering Perl for Bioinformatics $34.99

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details

  • Building Bioinformatics Solutions: with Perl, R and MySQL $43.75

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details


Customers Who Bought This Item Also Bought


Editorial Reviews

Amazon.com Review

Biology, it seems, is a good showcase for the talents of Perl. Newcomers to Perl who understand biological information will find James Tisdall's Beginning Perl for Bioinformatics to be an excellent compendium of examples. Teachers of Perl will likewise find the text to be filled with fresh programming illustrations of growing scientific importance. Seasoned Perlmongers who want to learn biology, however, should search elsewhere, as Tisdall's emphasis is on Perl's logic rather than Mother Nature's.

Departing from O'Reilly's earlier monograph Developing Bioinformatic Computer Skills, Tisdall's text is organized aggressively along didactic lines. Nearly all of the 13 chapters begin with twin bullet lists of Perl programming tools and the bioinformatic methods that require them. Likewise, the chapters end with exercises. String concatenation is illustrated with gene splicing, and regular expressions are taught with gene transcription and motif searching.

Tisdall emphasizes sequence examples throughout, leading up to an introduction to a Perl interface for the NIH GenBank biological database and the widely used BLAST sequence alignment tool. After a brief discussion of three-dimensional protein structure, he returns to sequence extraction and secondary structure prediction.

Tisdall's goal is to boost the beginning programmer into a domain of self-learning. He imparts essential etiquette for the success of programming newbies: use the wealth or resources available, from user documentation to Web site surveys to FAQs to How-To's to news groups and finally to direct personal appeals for help from a senior colleague. A well-plugged-in bioinformatics Perl student will soon discover Bioperl, an open-source effort to bring research-grade bioinformatic tools to the Perl community. Bioperl is described briefly at the end of Tisdall's book and will reportedly be a forthcoming title of its own in the O'Reilly bioinformatics series.

Although he introduces bioinformatics as an academic discipline, Tisdall treats it as a trade throughout his book. He indicates that open questions and computational hard problems exist, but does not describe what they are or how they are being tackled. Ultimately, Tisdall presents bioinformatics as another arrow in a bench scientist's quiver, very much like HPLC, 2D-PAGE, and the various spectroscopies.

As odd as a "bioinformatics-as-tool" book may be to its research proponents, the reduction of bioinformatics to trade status both deflates and vindicates the years of research, as Tisdall's work attests. --Peter Leopold

About the Author

James Tisdall has worked as a musician, a programmer at Bell Labs (where he programmed for speech research and discovered a formal language for musical rhythm), and as a bioinformaticist at Mercator Genetics in Menlo Park, California, and at Fox Chase Cancer Center in Philadelphia. He has a B.A. in mathematics from the City College of New York and an M.S. in computer science from Columbia University; he is working towards a Ph.D. in computer science at the University of Pennsylvania. In his spare time, Jim teaches computer music at the Settlement Music School in Philadelphia. He is also the author of O'Reilly's Beginning Perl for Bioinformatics.


Product Details

  • Paperback: 400 pages
  • Publisher: O'Reilly Media; 1 edition (October 15, 2001)
  • Language: English
  • ISBN-10: 0596000804
  • ISBN-13: 978-0596000806
  • Product Dimensions: 9.6 x 6.4 x 0.8 inches
  • Shipping Weight: 1.4 pounds (View shipping rates and policies)
  • Average Customer Review: 4.6 out of 5 stars  See all reviews (33 customer reviews)
  • Amazon Best Sellers Rank: #54,353 in Books (See Top 100 in Books)

More About the Author

Discover books, learn about writers, read author blogs, and more.

 

Customer Reviews

33 Reviews
5 star:
 (23)
4 star:
 (6)
3 star:
 (4)
2 star:    (0)
1 star:    (0)
 
 
 
 
 
Average Customer Review
4.6 out of 5 stars (33 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

46 of 46 people found the following review helpful:
5.0 out of 5 stars Very timely introduction to PERL, November 10, 2001
Amazon Verified Purchase(What's this?)
This review is from: Beginning Perl for Bioinformatics (Paperback)
Finally someone has written a beginning book on PERL for biologists, and has also done an excellent job of doing so. This book assumes no prior programming experience, and therefore suits the biologist who needs to concentrate on using computers to solve biological problems, and not have to become a computer scientist in the process. PERL can be a very cryptic language, but it is also extremely concise, and PERL programmers frequently and rightfully boast about their "one-liners" that accomplish complicated tasks with only one line of code.

Since it is addressed to readers with no programming experience, the author introduces some elementary concepts of programming in the first three chapters. These include what text editor to use, how to install PERL, how run PERL programs, and other relevant elementary topics.

The author then gets down to writing a program to store a DNA sequence in chapter 4. Very basic, it merely reads in a string and prints it out, but serves to start readers on their way to developing more useful programs. Later a program for the transcription of DNA to RNA is given, which illustrates nicely the binding, substitution and trace operators. Block diagrams are used here, and throughout the book, to illustrate basic PERL operators. The author shows in detail how to read protein sequence data from a file and how to use it in a PERL program. The reader is also introduced to the most ubiquitous data structure in all of computing: the array. Already the reader gets a taste of the power of PERL to manipulate arrays, using operations such as 'unshift', 'push', 'splice', etc.

The next chapter introduces conditional statements in PERL, as a warm-up for the discussion on finding motifs in sequences. The reader can see why PERL is the language of choice in bioinformatics, with its ability to find substrings or patterns in strings. Things do become more cryptic in the discussion of regular expressions, but the reader can get through it with some effort. Interesting programs are given for determining the frequency of nucleotides.

Since the programs have become more complicated to this point, a discussion of subroutines follows in the next chapter. And, for the same reason, the reader is introduced to debugging in PERL in this chapter also. The greater the complexity of the program, the harder it becomes to avoid making mistakes, and even more difficult to find them. The very important concepts of pass by value versus pass be reference are discussed briefly in this chapter.

Random number generators, so important in any consideration of mutations, are discussed in chapter 7. It is shown, via some straightforward programs, how to select a random location in DNA and mutate it with some other nucleotide. In addition, the author shows how to use random numbers to generate DNA sequences and mutate them in order to study the effect of mutations over time.

The next chapter is the most interesting in the book, for it shows how PERL can be used to simulate how the genetic code directs the translation of DNA into protein, the hash data structure being used extensively for this purpose. The author shows how to read DNA from files in FASTA format, and discusses in detail reading frames. He gives a useful subroutine to translate reading frames.

The author returns to regular expressions in chapter 9, wherein they are used as 'wildcards' to search for a particular string in a collection of strings. In addition, the range operator is used to find restriction sites. Regular expressions are also used in the next chapter to manipulate GenBank 'flat files'. The author does however give URLs for more sophisticated bioinformatics software. This is followed in chapter 11 by a discussion of the use of PERL to work with files in the Protein Data Bank. Recursion, one of the most powerful techniques in programming, is introduced here.

Chapter 12 covers the Basic Local Alignment Search Tool (BLAST), wherein readers get a taste of the field of computational biology. This extremely popular software package is used to find similarity between a given sequence and a library of known sequences. The author does discuss some of the basic rudiments of string matching and homology, and encourages the reader to consult the BLAST documentation for further details. In addition, the author briefly discusses the Bioperl project in this chapter, and shows the reader how to run some elementary computations using it.

This book definitely is a timely one and it will serve the needs of biologists who need to obtain some programming expertise in PERL. There are helpful exercises at the end of each chapter that serve to solidify the understanding of the concepts introduced in the chapter. After a thorough study of it, readers will be well-equipped to use PERL in bioinformatics. With more mathematical background, readers after finishing it will be able to enter the exciting field of computational biology, a field that is exploding, and one in which will require imaginative programming skill in the future.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


16 of 16 people found the following review helpful:
4.0 out of 5 stars Good intro for biologists;poor intro for computer scientists, March 15, 2004
By 
John S. J. Anderson "genehack" (Gaithersburg, Maryland United States) - See all my reviews
(REAL NAME)   
This review is from: Beginning Perl for Bioinformatics (Paperback)
"Bioinformatics" is the new sexy term for what used to be called simply "computational biology". Simply put, it involves pretty much any application of computation techniques to biological problems. The reason for the new nomenclature and the greatly increased interest in the topic is, like much in modern biology, a more-or-less direct consequence of the many genome sequencing projects of the last decade.

The consensus in the field seems to be that it's more productive (and certainly easier) to teach biologists how to program, rather than try to get programmers up to speed on the intracities of molecular biology. For similar reasons, Perl is a popular language to learn: it's easy to get off the ground and be productive with it, without requiring a heavy computer science background. (This, of course, has downsides as well...)

Never one to miss out on a trend, I'm going to be teaching a course on Bioperl and advanced Perl programming, starting next fall, which means I'm doing a lot of reading in this topic area, trying to develop lectures and find good background reading material. One of the first books I grabbed was _Beginning Perl for Bioinformatics_, which has been sitting on my "to read" shelf since O'Reilly sent me a review copy in December of 2001. It's a typical O'Reilly "animal" book (the cover bears three tadpoles), which does a decent job of introducing the basic features of the Perl language, and it should enable a dedicated student to get to the point where she can produce small useful programs. However, I'm not completely happy about the book's organization, and I think the occasional "if you're not a biologist, here's some background" interjections could have been cut without hurting anything.

The initial chapters in the book cover "meta" information, such as theoretical limits to computation, installing (or finding) the Perl interpreter on your computer, picking a text editor, and locating on-line documentation. Some general programming theory stuff is covered as well -- the code-run-debug cycle, top-down versus bottom-up design, the use of pseudocode. There's also some biology background, but it's very introductory level stuff -- DNA has four bases, proteins are made of 20 amino acids, and so on.

In chapter four, the book begins to get into actual Perl, with some coverage of string manipulation. Examples deal with simulating the transcription of DNA into RNA. Chapters five and six continue to flesh out the language, covering loops, basic file I/O, and subroutines. Chapter seven introduces the rand() function, in the context of simulating mutations in DNA. Subsequent chapters introduce the hash data type (using a RNA->protein translation simulation), regular expressions (as a way to store the recognition patterns of restriction endonucleases), and parsing database flat files and BLAST program output.

I'm clearly out of the target audience of the book, as I already have a strong working knowledge of Perl. Perhaps that's why I found the order that concepts were presented in to be a bit strange -- for example, hashes, which are a fundamental data type, aren't introduced until halfway through the book, and regular expressions (one of the key features of Perl) first appear even later. As I said above, I also found the biological background sections to be more distracting than anything, but I've also got a strong biology background, so perhaps I'm off base here too. That said, I think a person with a CS background would be better served with a copy of _Learning Perl_ and an introductory molecular biology text than with this particular book.

One of the things I did enjoy about the book were the frequent coding examples, all of which presented realistic computational biology sorts of problems and then demonstrated how to solve them. I'm sure that when I get around to writing lectures, I'll be leafing through this book looking for problems I can use in class.

Overall, recommended for biologists without programming experience who would like to get started using Perl for simple programming. Not recommended for people with computer science backgrounds looking to get into bioinformatics.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


10 of 10 people found the following review helpful:
4.0 out of 5 stars Decent intro to the subject, July 26, 2003
This review is from: Beginning Perl for Bioinformatics (Paperback)
As the banner above the title of James Tisdall's Beginning Perl for Bioinformatics indicates, this book is 'an introduction to Perl for biologists.' What the banner doesn't mention is that it's also an introduction to biology and bioinformatics for Perl programmers, and it's also an introduction to both Perl *and* biology for people that have never really been exposed to either field. The author has clearly thought a lot about making one book to please these different audiences, and he has pulled it off nicely, in a way that manages to explain basic topics to people learning about each field for the first time while not coming off as condescending or slow-paced to those that might already have some exposure to it.

Superficially, this book isn't all that different from a lot of introductory Perl books: the Perl material starts out with an overview of the language, followed by a crash course on installing Perl, writing programs, and running them. From there, it goes on to introduce all the various language constructs, from variables to statements to subroutines, that any programmer is going to have to get comfortable with. Pretty run of the mill so far. Tisdall starts with two interesting assumptions, though: [1] that the reader may have never written a computer program before, and so needs to learn how to engineer a robust application that will do its job efficiently and well, and [2] that the reader wants to know how to write programs that can solve a series of biological problems, specifically in genetics and proteomics.

As such, there is at least as much material about the problems that a biologist faces and the places she can go to get the data she needs as there is about the issues that a Perl programmer needs to be aware of. The author introduces the reader to the basics of DNA chemistry, the cellular processes that convert DNA to RNA and then proteins, and a little bit about how and why this is important to the biologist and what sorts of information would help a biologist's research. The main sources of public genetic data are noted, and the often confusing -- and huge -- datafiles that can be obtained from these sources are examined in detail.

With the code he presents for solving these problems, Tisdall makes a point of not falling into the indecipherable-Perl trap: this is a useful language, well-suited to the essentially text-analysis problems that bioinformatics means, and he doesn't want to encourage the kind of dense, obscure, idiomatic coding style that has given Perl an undeservedly bad reputation. Some of Perl's more esoteric constructs are useful, and they show up when they're needed, but they're left out when they would only serve to confuse the reader. This is a good decision.

Rather, the focus is on teaching readers how to solve biological problems with a carefully developed library of code that happens to leverage some of Perl's most useful properties. The result is pretty much a biologist's edition of Christiansen & Torkington's Perl Cookbook or Dave Cross' Data Munging With Perl. The author presents a series of issues that a working bioinformaticist might have to deal with daily -- parsing over BLAST, GenBank, and PDB files, finding relevant motifs in that parsed data, and preparing reports about all of it. If a bioinformaticist's job is to be able to report on interesting patterns from these various sources, then following the programming techniques that Tisdall explains in clear, easy-to-follow prose would be an excellent way to go about doing it.

And when I say "programming techniques," note that I'm not specifically mentioning Perl. The code in this book is clear and organized, and all programs are carefully decomposed into logical subroutines that are then packaged up into a library file that each later sample program gets to draw from. Each new program typically contains a main section of a dozen lines of code or less, followed by no more than two or three new subroutines, along with calls to routines written earlier and called from the BeginPerlBioinfo.pm that is built up as the book progresses. Each sample is typically preceded by a description of what it's trying to accomplish and followed by a detaild description of how it was done, as well as suggestions of other ways that might have worked or not worked.

This modular approach is fantastic -- too many Perl books seem to focus so heavily on the mechanics of getting short scripts to work that they lose sight of how to build up a suite of useful methods and, from those methods, to develop ever-more-sophisticated applications. It isn't quite object-oriented programming, but that's clearly where Tisdall is headed with these samples, and given a few more chapters he probably would have started formally wrapping some of this code into OO packages.

If I have a complaint with the book, in fact, it's that Tisdall doesn't go any further: everything is good, but it ends too soon. Seemingly important topics such as OO programming, XML, graphics (charts & GUIs), CGI, and DBI are mentioned only in passing, under "further topics" in the last chapter. I also have a feeling that some of the biology was shorted, and the book barely touches upon the statistical analysis that probably is a critical aspect of the advanced bioinformaticist's toolbox. I can understand wanting to keep the length of a beginner's book relatively short, and this was probably the right decision, but it would have been nice to see some of the earlier sample problems revisited in these new contexts by, for example, formally making an OO library, showing a sample program that provided a web interface to some of the methods already written, or presenting code that presented results as XML or exchanged them with a database.

But these are minor quibbles, and if the reader is comfortable with the material up to this point, she shouldn't have a hard time figuring out how to go a step further and do these things alone. It's a solid book, and one that should be able to get people learning Perl, genetics, or both up to speed and working on real world problems quickly.

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No

Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews











Only search this product's reviews



Inside This Book (learn more)
Key Phrases - Statistically Improbable Phrases (SIPs): (learn more)
parsing annotations, fixing bugs, finding motifs, passing data, stride output, file test operators, restriction enzyme data, beginning annotation, extract annotation, file truncated, protein sequence data, embedded newlines, pattern modifiers, fasta file, reverse complement, subroutine definitions, scalar string, perl code, search annotation, scalar context, remove whitespace, random nucleotide, use warnings, fasta format, recursive subroutine
Key Phrases - Capitalized Phrases (CAPs): (learn more)
The Genetic Code, Rich Roberts, Exercises Exercise, Plus Query, Protein Data Bank, Getting Started, Glutamic Acid, Aspartic Acid, Exploding Strings, Program Using Randomization, Demonstration of Perl, Output Files, The Programming Process, Genetic Sequence Data Bank, Robin Hood, The Art of Programming, European Molecular Biology Laboratory, Reading Proteins, Modify Example, Generating Random, Perl Version, Controlling Other Programs, Module Description Bio, Flow Control, Residue Name
Browse Sample Pages:
Front Cover | Table of Contents | First Pages | Index | Back Cover | Surprise Me!
Search Inside This Book:


What Other Items Do Customers Buy After Viewing This Item?


Tags Customers Associate with This Product

 (What's this?)
Click on a tag to find related items, discussions, and people.
 

Your tags: Add your first tag
 

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Search Customer Discussions
Search all Amazon discussions
   
Related forums





Look for Similar Items by Category


Look for Similar Items by Subject