3
Bioperl 1.3 - Perl Modules for Biology
7
If you're new to Bioperl, you should start reading F<bptutorial.pl>, an
8
overview of the Bioperl toolkit.
10
In the style of the perl documentation, core Bioperl documentation has
11
been split up into the following sections:
15
bioperl Bioperl overview (this document)
16
biodatabases How to use databases with Bioperl
17
biodesign A guide for authoring a Bioperl module
21
bptutorial.pl Bioperl tutorial for beginners
22
http://www.pasteur.fr/recherche/unites/sis/formation/bioperl
24
=head2 References for Individual Modules
26
For ease of maintenance and coordination amongst contributors, bioperl
27
code is maintained in a modular form, as is the documentation. Refer to
28
the documentation for individual modules by using perldoc, i.e.
32
to get documentation for the Bio::Seq object.
36
Bioperl is the product of a community effort to produce Perl code which is
37
useful in biology. Examples include Sequence objects, Alignment objects
38
and database searching objects. These objects not only do what they are
39
advertised to do in the documentation, but they also interact - Alignment
40
objects are made from the Sequence objects, Sequence objects have access
41
to Annotation and SeqFeature objects and databases, Blast objects can be
42
converted to Alignment objects, and so on. This means that the objects
43
provide a coordinated and extensible framework to do computational
46
Bioperl development focuses on Perl classes, or code that is used to
47
create objects representing biological entities. There are scripts
48
provided in the scripts/ and examples/ directories but scripts are not the
49
main focus of the Bioperl developers. Of course, as the objects do most of
50
the hard work for you, all you have to do is combine a number of objects
51
together sensibly to make useful scripts.
53
The intent of the Bioperl development effort is to make reusable tools
54
that aid people in creating their own sites or job-specific applications.
56
The bioperl.org website at http://bioperl.org also attempts to maintain
57
links and archives of standalone bio-related Perl tools that are not
58
affiliated or related to the core Bioperl effort. Check the site for
59
useful code ideas and contribute your own if possible.
64
The Bio::Perl module is designed to flatten the learning curve for
65
newcomers to Perl/Bioperl. This is a good place to start if you want
66
some simple functionality. We have a cookbook tutorial in
67
bptutorial.pl which has embedded documentation. Start there if
68
learning-by-example suits you most, or examine the Bioperl online
70
http://www.pasteur.fr/recherche/unites/sis/formation/bioperl. Make
71
sure to check the documentation in the modules as well - there are
72
over 900 modules in Bioperl, and counting, and there's detail in the
73
modules' documentation that will not appear in the general
79
The Bioperl modules are distributed as a tar file that expands into a
80
standard perl CPAN distribution. Detailed installation directions
81
can be found in the distribution INSTALL file. Installing on windows
82
using ActiveState Perl is covered in the INSTALL.WIN file.
84
The Bioperl modules can now interact with local flat file and relational
85
databases. To learn how to set this up, look at the biodatabases.pod
86
documentation ('perldoc biodatabases.pod' should work once Bioperl has
89
The bioperl-db, bioperl-run, bioperl-gui, corba-server, bioperl-ext,
90
bioperl-pipeline, bioperl-microarray and corba-client packages are
91
installed separately from Bioperl. Please refer to their respective
92
documentation for more information.
95
=head1 GETTING STARTED
97
A good place to start is by reading and running the cookbook script,
100
The distribution I<scripts/> directory has working scripts for use
101
with Bioperl, check the self-described examples/ directory as well.
102
A list and brief description of all these scripts is found
103
in bioscripts.pod. You are more than welcome to contribute your script!
105
If you have installed Bioperl in the standard way, as detailed in the
106
INSTALL in the distribution, these scripts should work by just running
107
them. If you have not installed it in a standard way you will
108
have to change the 'use lib' to point to your installation (see INSTALL
112
=head1 GETTING INVOLVED
114
Bioperl is a completely open community of developers. We are not
115
funded and we don't have a mission statement. We encourage
116
collaborative code, in particular in Perl. You can help us in many
117
different ways, from just a simple statement about how you have used
118
Bioperl to doing something interesting to contributing a whole new object
119
hierarchy. See http://bioperl.org for more information. Here are
120
some ways of helping us:
122
=head2 Asking questions and telling us you used it
124
We are very interested to hear how you experienced using Bioperl. Did
125
it install cleanly? Did you understand the documentation? Could you
126
get the objects to do what you wanted them to do? If Bioperl was useless
127
we want to know why, and if it was great - that too. Post a message to
128
B<bioperl-l@bioperl.org>, the Bioperl mailing list, where all the developers
131
Only by getting people's feedback do we know whether we are providing
134
=head2 Writing a script that uses it
136
By writing a good script that uses Bioperl you both show that Bioperl
137
is useful and probably save someone elsewhere writing it. If you
138
contribute it to the 'script central' at http://bioperl.org then other
139
people can view and use it. Don't be nervous if you've never done this
140
sort of work, advice is freely given and all are welcome!
144
We know that there are bugs in there. If you find something which you are
145
pretty sure is a problem, post a note to bioperl-bugs@bioperl.org and
146
we will get on it as soon as possible. You can also access the bug
147
system through the web pages.
149
=head2 Suggest new functionality
151
You can suggest areas where the objects are not ideally written and
152
could be done better. The best way is to find the main developer
153
of the module (each module was written principally by one person,
154
except for Seq.pm). Talk to him or her and suggest changes.
156
=head2 Make your own objects
158
If you can make a useful object we will happily include it into the
159
core. Probably you will want to read a lot of the documentation
160
in L<Bio::Root>, talk to people on the Bioperl mailing list,
161
B<bioperl-l@bioperl.org>, and read biodesign.pod. biodesign.pod provides
162
documentation on the conventions and ideas used in Bioperl, it's definitely
163
worth a read if you would like to be a Bioperl developer.
165
=head2 Writing documentation
167
We appreciate good documentation. It's what tells the world what's in
168
Bioperl, it's what instructs the user, it's what describes the rationale
169
and inner workings of the package. Feel free to contribute.
172
=head1 ACKNOWLEDGEMENTS
174
Bioperl owes its early organizational support to its association with
175
the award-winning VSNS-BCD BioComputing Courses; some students of the
176
1996 course (Chris Dagdigian, Richard Resnick, Lew Gramer, Alessandro
177
Guffanti, and others) have contributed code and commentary. Georg
178
Fuellen, the VSNS-BCD chief organizer was one of the early driving forces
179
behind Bioperl. Steven Brenner, who was an early adopter of Perl for
180
bioinformatics provided some of the early work on Bioperl. Lincoln Stein
181
has long provided guidance and code.
183
Bioperl was then taken up by people developing code at the large
184
genome centres. In particular Steve Chervitz at Stanford, Ian Korf at
185
the Genome Sequencing Centre (St. Louis) and Ewan Birney at the Sanger
186
Centre (Cambridge UK). All of the C code XS extensions were
187
provided by Ewan Birney. Bioperl is used in anger at these sites,
188
indicating that is both useful and that it works.
190
Jason Stajich and Hilmar Lapp joined Bioperl for the drive towards a
191
0.7 release over 2000 and the first part of 2001, which includes a
192
revised feature location model, richer feature objects (in particular
193
genes) and more and better tools. Peter Schattner and Lorenz Pollak
194
contributed serious chunks of code, being the AlignIO and bptutorial
195
scripts and the BPLite port to Bioperl respectively. At this time
196
Bioperl was being used in absolute earnest by the Ensembl group which
197
shook out a number of problems in the code base. Additional
198
compatibility with the Sequence Workbench (Bioperl-gui, Mark
199
Wilkinson and David Block) and Biocorba (Jason Stajich, Brad Chapman
200
and Alan Robinson) and finally Game-XML (Brad Marshall) provided more
203
From 2001-2002 we saw the developer ranks swell and contributions
204
increase with folks volunteering everything from bibliographic modules
205
(Martin Senger) to new SCF chromatogram file parsers (Chad Matsalla
206
and Aaron Mackey) to a new relational database and Bioperl layer for
207
fast access to feature data (Lincoln Stein) as well as graphical
208
rendering of sequences with features (Lincoln Stein). In early 2002
209
Open-Bioinformatics foundation was formally incorporated as a
210
non-profit organization (see http://www.open-bio.org) in the early
211
part of 2002. We also participated in the 1st Bio-Hackathon that
212
February which drew developers from several Open-Bio projects to
213
lovely Cape Town, South Africa and the hospitality of the co-sponsor
214
Electric Genetics (O'Reilly and Associates also co-sponsored the
215
event, and AstraZeneca contributed to the sponsorship). In early May
216
we released bioperl 1.0 as an effort to put a stamp of completeness on
217
the toolkit and submitted a paper detailing the efforts thus far (see
218
the FAQ). In late 2002 we released a developer release 1.1 for
219
testing purposes and released bioperl 1.2 at the beginning of 2003.
221
Current server hardware for bioperl.org (and other open-bio.org hosted
222
projects) is provided by Sun. A previous server was provided by Compaq
223
Computer Corporation. The compaq donation was facilitated by both the
224
Pharmaceutical Sales and High Performance Technical Computing (HPTC)
227
The Bioperl servers reside in Cambridge, Massachusetts USA with
228
colocation facilities and Internet bandwidth donated by Genetics
229
Institute. In particular Dr. Steven Howes, Kenny Grant &
230
Rich DiNunno have made significant efforts on our behalf.
235
Copyright (c) 1996-2003 Georg Fuellen, Richard Resnick, Steven E. Brenner,
236
Chris Dagdigian, Steve Chervitz, Ewan Birney, James Gilbert, Elia Stupka,
237
and others. All Rights Reserved. This module is free software; you can
238
redistribute it and/or modify it under the same terms as Perl itself.