text:
PyCogent: a toolkit for making sense from sequence
- Rob Knight†1Email author,
- Peter Maxwell†2,
- Amanda Birmingham3,
- Jason Carnes4,
- J Gregory Caporaso5,
- Brett C Easton2,
- Michael Eaton6,
- Micah Hamady7,
- Helen Lindsay2,
- Zongzhi Liu1,
- Catherine Lozupone1,
- Daniel McDonald7,
- Michael Robeson8,
- Raymond Sammut2,
- Sandra Smit1,
- Matthew J Wakefield2, 9,
- Jeremy Widmann1,
- Shandy Wikman1,
- Stephanie Wilson7,
- Hua Ying2 and
- Gavin A Huttley2Email author
DOI: 10.1186/gb-2007-8-8-r171
© Knight et al.; licensee BioMed Central Ltd. 2007
Received: 30 May 2007
Accepted: 21 August 2007
Published: 21 August 2007
We have implemented in Python the COmparative GENomic Toolkit, a fully integrated and thoroughly tested framework for novel probabilistic analyses of biological sequences, devising workflows, and generating publication quality graphics. PyCogent includes connectors to remote databases, built-in generalized probabilistic techniques for working with biological sequences, and controllers for third-party applications. The toolkit takes advantage of parallel architectures and runs on a range of hardware and operating systems, and is available under the general public license from http://sourceforge.net/projects/pycogent.
The genetic divergence of species is affected by both DNA metabolic processes and natural selection. Processes contributing to genetic variation that are undetectable with intra-specific data may be detectable by inter-specific analyses because of the accumulation of signal over evolutionary time scales. As a consequence of the greater statistical power, there is interest in applying comparative analyses to address an increasing number and diversity of problems, in particular analyses that integrate sequence and phenotype. Significant barriers that hinder the extension of comparative analyses to exploit genome indexed phenotypic data include the narrow focus of most analytical tools, and the diverse array of data sources, formats, and tools available.
Theoretically coherent integrative analyses can be conducted by combining probabilistic models of different aspects of genotype. Probabilistic models of sequence change underlie many core bioinformatics tasks, including similarity search, sequence alignment, phylogenetic inference, and ancestral state reconstruction. Probabilistic models allow usage of likelihood inference, a powerful approach from statistics, to establish the significance of differences in support of competing hypotheses. Linking different analyses through a shared and explicit probabilistic model of sequence change is thus extremely valuable, and provides a basis for generalizing analyses to more complex models of evolution (for example, to incorporate dependence between sites). Numerous studies have established how biological factors representing metabolic or selective influences can be represented in substitution models as specific parameters that affect rates of interchange between sequence motifs or the spatial occurrence of such rates [1–4]. Given this solid grounding, it is desirable to have a toolkit that allows flexible parameterization of probabilistic models and interchange of appropriate modules.
Summary of features of selected comparative genomics tools
Feature | PyCogent | HyPHY | P4 | BioPython | Mesquite | ARB | CIPRESa |
Query remote database | Yes | No | No | Yes | Yes | Yes | No |
Control external | Yes | No | No | Yes | Yes | Yes | Yes |
Create novel substitution | Yes | Yes | Yes | No | Yes | No | No |
Novel sequence alignment | Yes | No | No | Yes | No | No | No |
Partition models | Yes | Yes | No | No | No | No | No |
Slice sequences | Yes | No | No | Yes | No | No | No |
Draw alignments | Yes | No | No | No | No | No | No |
Build phylogenetic trees | Yes | Yes | Yes | No | Yes | Yes | Yes |
Draw phylogenetic trees | Yes | Yes | Yes | No | Yes | Yes | Yes |
Visualization of model | Yes | Yes | No | No | Yes | No | No |
Parallel computation | Yes | Yes | No | Yes | No | No | Yes |
Customize parallelization | Yes | Yes | No | Yes | No | No | Yes |
Reconstruct ancestral | Yes | Yes | No | No | Yes | Yes | Yes |
Simulate sequences | Yes | Yes | Yes | No | Yes | No | Yes |
Graphical user interface | No | Yes | No | No | Yes | Yes | Yes |
Script based control | Yes | Yes | Yes | Yes | Yes | No | Yes |
Handle 3D structures | Yes | No | No | Yes | Yes | Yes | No |
Handling RNA secondary | Yes | No | No | No | No | Yes | No |
Here, we describe PyCogent, a toolkit designed for connecting to databases, implementing novel analyses, controlling workflows, and visualization. Below, we outline some of the toolkit's capabilities and demonstrate them through three specific comparative genomics case studies. We take the opportunity to emphasize here that PyCogent has capabilities that are of value in other biological fields. The toolkit includes many functions of generic utility, such as simplified reading and manipulation of tabular data, and common statistical functions. Also included are facilities to expand the capabilities of PyCogent beyond the provided selections of data format parsers, database connectors, and third-party application controllers. We have applied several of these capabilities in population genomics studies, but their potential utility spans a wide range of bioinformatics and genomics tasks. The software is available online [10].
In the remainder of this report we use monospace type to distinguish literal code and arguments.
Features and capabilities
The design of PyCogent was motivated by specific criteria arising from the analysis of other packages that were available at the time when development began, but that lacked the advanced modeling and visualization capabilities we needed. The main goal was to take a page from Perl's book, following Larry Wall's often quoted dictum: 'easy things should be easy, and hard things should be possible'. Easy things that should be easy include reading standard formats from a file, running simple phylogenetic analyses and alignments from the toolkit's repertoire or using standard third-party applications such as ClustalW [11] or basic local alignment search tool (BLAST) [12], retrieving sequences by ID from different databases, coloring important features on trees, alignments and crystal structures, and calculating statistics on sequences and alignments. Hard things that should be possible include parallel phylogenetic analyses of large sequences or many sequences, exotic substitution models for phylogenetic analyses or alignments, and the coordination of complex bioinformatics pipelines distributed across a network.
Our design criteria thus included the following general features (Additional data file 1 provides more detailed descriptions of functionality):
1. maintainable, reliable, and as platform-independent as possible;
2. self-contained, with relatively few, and optional, external dependencies;
3. clean, consistent application programming interface (API), allowing operations to be performed in few steps with limited syntax, ideally in an interactive shell;
4. flexible framework for adding new functionality, such as evolutionary models, parsers, and so on;
5. seamless integration with a large number of widely used existing tools, for example command-line applications such as BLAST, external databases, and external high-performance code such as tuned BLAS (basic linear algebra subprograms) libraries [13];
6. high-performance code base (genomics datasets tend to be large, and so easy implementation of parallel computation is important);
7. comprehensive and up-to-date user documentation;
8. combined code and documentation files to make it clear how to modify canned analyses (executable documentation stays up-to-date because tests fail if changes break the documentation); and
9. advanced visualization capabilities, including graphical reports for common annotation, alignment, phylogeny, and structure tasks.
We chose to implement PyCogent in the Python programming language for four main reasons. First, Python is an object-oriented programming language that allows a mixed model of procedural, object-oriented, and functional programming, and thus it provides a choice of styles to suit specific bioinformatics tasks. For example, functional programming techniques such as the map() and reduce() built-in functions, and the ability to create functions on the fly and use them as first-class objects, are extremely useful. The Alignment object provides a good example of the utility of these techniques. It is often useful to mark or eliminate sequences that meet specific user-defined criteria, such as the presence or absence of specific motifs. This can be accomplished by creating a function that tests a single sequence for the presence of the motif, mapping the rows of the alignment to boolean values based on the result of this function, and then filtering the alignment based on the value of the test for each row.
Second, Python is increasingly gaining currency in the scientific programming and high-performance computing communities, with mature third-party libraries such as Numpy [14], ReportLab [15], and Matplotlib [16] providing important numerical and reporting capabilities. This popularity in part reflects the relative ease of teaching scientists who are casual programmers the lightweight syntax needed to get started with Python.
Third, Python's introspection capabilities, and advanced interactive shells such as ipython [17], make the language well suited to analysis of exploratory data, especially because the capabilities of objects can be interrogated on the fly with built-in functions such as dir().
Fourth, Python is easily extensible with tools such as Pyrex [18], which allows performance critical tasks to be coded in a Python-like language that compiles with C extensions. This extensibility, along with Python's comprehensive built-in profiling and unit testing tools, allows attention to be focused first on the correctness of the code and second to identify and correct bottlenecks, in line with Hoare's dictum, 'Premature optimization is the root of all evil'.
Finally, Python's built-in doctest module allows testing of Python code embedded in standard text documents, delimited solely by the Python interactive interpreter's command input ('>>>') and continuation ('...') symbols, to be executed and tested. This doctest module allows a user to produce computable documents, such that the accuracy of the documentation can be assessed; it also provides a means for using Python to achieve the goals of reproducible computational research [19, 20]. If the code that performs the analysis and the associated data files are distributed as part of an executable publication, then other researchers can run the code and verify that the same (or, for stochastic analyses, qualitatively similar) results are obtained. PyCogent supplements its formal unit tests for each module with standalone doctest documents that combine the explanation of specific analyses with computable code to run those analyses.
It has been observed that the most successful open source projects, such as the Linux kernel and the Apache web server, rely on tight control of contributions by a small development team. This tiered model of development allows many contributions and bug fixes to be considered, but restricted access for committing changes allows the project to keep a coherent style and API. Accordingly, with PyCogent we have opted for an open source license (the general public license), but contributions are peer reviewed and edited before being accepted. New features or significant modifications are always accompanied by both unit tests and integration tests that are automatically triggered by commits to the repository; if tests fail, then the contribution is rejected. This restriction ensures that the core PyCogent library is always in a working state. Strict naming guidelines for classes, functions, methods, abbreviations, and so on, described in the PyCogent documentation, are enforced to facilitate discovery of the API's features. This API consistency eases interactive analyses considerably, because the abbreviation and capitalization of names can usually be guessed rather than remembered, reducing the cognitive burden on the user. The majority of documentation for PyCogent is written as standalone doctests, and the validity of the documentation is checked before releases. Features and APIs that are deprecated must first pass through a warning stage before they may be removed from the toolkit, allowing sufficient time for modification of legacy code.
Key features of PyCogent
PyCogent consists of 17 top-level packages (Additional data file 1), which provide core objects for representing and manipulating biological data, mathematical and statistical functionality, parsers for a wide range of bioinformatics file formats, and code for manipulating external databases and applications. An overview of each package for developers can be found in Additional data file 1, and the toolkit is distributed with extensive examples that illustrate usage. Here, we discuss some of the design considerations and features that support common bioinformatics tasks.
Querying databases
Most bioinformatics analyses begin by obtaining information from public databases. Our goal for database access was to minimize the overhead involved in querying or in obtaining records by accession. In general, our database accessors behave either like dictionaries keyed by the accession number of each sequence or like containers that return query results.
For example, to retrieve a sequence from GenBank, the following code suffices:
>>> from cogent.db.ncbi import EUtils
>>> e = EUtils()
>>> result = e['AF0001']
By default, the result of the EUtils (Entrez Utilities) call will be an open FASTA format file, and the nucleotide database will be searched. Arbitrary queries can also be handled in the same interface. For example, we can retrieve the first 100 bacterial lysyl-tRNA synthetase protein sequences in GenBank format as follows:
>>> e = EUtils(numseqs=100, db='protein', rettype='genpept')
>>> result = e['"lysyl tRNA-synthetase"[ti] AND bacteria[orgn]']
The goal of the database adaptors is to make simple queries as efficient as possible in terms of both usability and computational performance, and to allow re-use of the syntax familiar from the web query interface of each database. Fine-grained control over parameters such as the number of records returned in each set and the wait time between queries is also available.
Adaptors for querying National Center for Biotechnology Information (NCBI; including PubMed), Protein Data Bank (PDB), and RNA families database (Rfam) are currently available, along with a framework that facilitates rapid development of additional controllers.
Handling biological data
The core objects in PyCogent include facilities for handling sequences, alignments, trees, compositions (for example, codon usage or amino acid usage), and annotations. Again, the primary goal has been to simplify file input/output as much as possible while allowing fine-grained control over the details for expert users. For example, parsing a GenBank file 'sequences.gbk' on disk can be as simple as follows:
>>> from cogent import LoadSeqs
>>> seqs = LoadSeqs('sequences.gbk', aligned=False)
In this case, the file type is automatically detected from the file extension and dispatched to the appropriate parser. The file format may also be specified using a format argument to the LoadSeqs function. Similarly, loading an alignment from a file (for example, in multi-FASTA format) is simply
>>> seqs = LoadSeqs('sequences.fasta')
Loading a tree from a file is equally straightforward, for example
>>> tree = LoadTree('mytree.tree')
If more control is required, then the individual parsers can be imported from their respective modules. Rather than using regular expressions to recognize and parse each record, which can be a fragile approach, we instead use a nested hierarchy of parsers. The parser at each level recognizes pieces of a record, and dispatches each piece to the appropriate lower level parser. The advantages of this approach are that unrecognized fields, such as those newly introduced into a database format, can be ignored rather than crashing the parser, and lightweight parsers that ignore all but a few selected pieces of the record can readily be generated. The hierarchical approach also ensures that only the lines of the file pertaining to the current record are kept in memory, so that very large files can be processed one record at a time. This incremental parsing can lead to large performance increases. Technically, the individual parsers are all generators that yield each record as it is read, although a list containing all records can easily be produced. A major advantage of the generator approach is that filtering can be applied on a per-record basis as the records are read, potentially providing large memory savings. For example, sequences could be filtered by length, by number of degenerate nucleotides, or by annotation.
The SequenceCollection and Alignment objects have several useful methods for filtering sequences by quality, converting between sequence types and alphabets, and so forth. For example, the Alignment can delete sequences that introduce gaps in other sequences, can eliminate columns of gaps or degenerate bases, or can delete sequences that are more than a specified distance from a template sequence. It can also convert between dense alignments, which store the alignment as an array of characters, and sparse alignments, which store the original sequences and a mapping between sequence and alignment coordinates. Dense alignments are useful for analyzing large numbers of sequences that contain few gaps (for instance, for individual protein families) and sparse alignments are useful for analyzing small numbers of sequences with many gaps (for instance, whole genome alignments).
Annotations are preserved in the alignment, allowing features on different sequences to be related to one another. Two types of annotations are handled: meta-data such as species, source, and citations, which are stored in an Info object that can be shared between different forms of a sequence (for example, the DNA, RNA, and corresponding protein); and annotation tracks, in which biological attributes that have sequence locations are explicitly represented as objects that can be applied to both sequences and alignments. It is frequently the case that for an analysis the user wishes to stratify by meta-data, such as genic, intergenic, or coding sequence (CDS). PyCogent's annotation tracks allow such slicing as illustrated in the case studies below.
The Tree object is implemented recursively, so that any fragment of a tree can be subjected to any analysis that works on the whole tree. Additionally, the tree objects contain code for deleting nodes by annotation (including pruning branches with single children), calculating distances between taxa, collapsing poorly resolved nodes, and evolving sequences according to a specified substitution model.
Built-in analyses
PyCogent supports many key evolutionary analyses directly, including sequence alignment, phylogenetic reconstruction, and model inference. These analyses are intended to be as flexible as possible, and to allow users to implement easily new capabilities that were not originally intended by the authors. This flexibility addresses a problem with many existing packages, which often provide a range of model parameterizations that cannot be extended. The core analyses are alignment (either using traditional approaches such as Smith-Waterman or using pair-hidden Markov models [HMMs]), flexible evolutionary modeling (see the first case study, below), ancestral sequence reconstruction, tree reconstruction, and sequence simulation. These analyses can be performed using arbitrarily complex evolutionary models. For example, nucleotide, codon, or amino acid models can be used for any of these tasks, and the parameterization of those models can be customized. One key advantage of this approach is that there is complete orthogonality between the models and the analyses, so that the effects of varying the model and varying the analysis method can be assessed independently. This independence is especially important when estimating the effects of violating the constraints of a given (unknown) model on the accuracy of an analysis. Additionally, models that allow dependence between adjacent sites, such as accounting for deamination in CpG dinucleotides, can be implemented and used in any of these analyses [1, 2]. When these models are nested, likelihood ratio tests can easily be applied using supporting PyCogent infrastructure, as illustrated in the first case study (below).
Controlling third-party applications
One critical component of a bioinformatics toolkit is the ability to control third-party applications. This capability is essential for testing new methods against the existing state of the art, for coordinating large numbers of analyses on a parallel cluster, for performing sensitivity analysis, and for incorporating third-party applications into workflows. PyCogent has a generic application controller framework that encapsulates the code necessary for passing command-line parameters and reading multiple output files and streams. A phylogeny package such as RAxML [21], for instance, produces several different output files, and also prints information to the standard output and error streams. Invoking an application such as ClustalW [11] is straightforward:
>>> from cogent.app.clustalw import Clustalw
>>> app = Clustalw()
>>> result = app('sequences.fasta')['Align']
In addition to the alignment and guide tree, the exit status and error streams are also captured. Note that despite the simplicity of this example, the full set of parameters in the application is exposed in the interface, allowing fine-grained control of the analysis. Controllers are currently implemented for several other applications, including the following: the homology search packages BLAST [12], position-specific iterative BLAST [22], and BLAST-like alignment tool [23]; the alignment packages ClustalW [11], Muscle [24], and Dialign [25]; the motif finder MEME [26]; the phylogeny package RAxML [21]; and the structure analysis packages RNAView [27] and Vienna RNA [28].
Parallel computation support
PyCogent implements novel algorithms for parallelization of computational tasks at either the data or algorithmic levels. The parallel module convenience function localShareOf provides a mechanism for data based sharing of tasks across CPUs, while the output_cpu attribute simplifies the output of data by only one CPU. Algorithmic level parallelization is built into certain PyCogent components, primarily in the form of distributing across multiple CPUs, alignment positions for the likelihood calculations, or alternate topologies for the advanced stepwise addition tree topology search algorithm. Additional complexity in parallel computation is supported by the parallel module's implementation of a virtual CPU stack. Under this design, for instance, one could simultaneously employ both a data and algorithm level parallel strategy. For example, at the top virtual level two long alignments could assigned to separate dual core CPUs, whereas at the lower level their likelihood calculations may be split by position across the two cores. PyCogent also supports task farming of third-party applications, including activation of parallelism already used by those programs (such as running BLAST across multiple cores or CPUs).
Visualization is a proven invaluable tool in the analysis of complex systems, and the utility of many bioinformatics analyses is enhanced by ready access to good visualization tools. The fundamental properties of biological systems delimit the display dimensions: relationships between biological sequences are tree-like, the sequences themselves can be represented in two dimensions, and their encoded products (protein or RNA) can be represented in three dimensions. Integrative visualization of genotypic and phenotypic properties thus requires the ability to display on sequences, alignments, trees, and three-dimensional (3D) structures diverse types of meta-data such as functional domains, disease association indicators, and statistical estimates. Our approach has been to use the well established ReportLab library [15] and third-party applications such as PyMol [29], where possible. The visualization capabilities of PyCogent discussed below are demonstrated in the Case studies section (below).
For two-dimensional displays, annotation tracks can be associated with alignments or sequences using special pre-defined symbols that show key features such as promoters, untranslated regions, and coding sequences. These symbols are implemented using an extensible DisplayPolicy framework, allowing undesired information to be suppressed and additional user-defined symbols to be added. Fixed and variable types of annotations can be applied to sequence data, with a protein domain illustrating the former and a parameter estimate the latter. These fixed feature types can also be presented on dotplots for comparing different sequences. The capabilities of the ReportLab library have been exploited so that sequence or alignment displays can be sliced and spread over multiple pages to provide additional control over the figure resolution.
Displaying quantitative and qualitative information on phylogenetic trees is still often a stumbling block, with many researchers resorting to exporting the tree topology and then changing colors or line widths after the fact in general purpose graphics packages such as Adobe Illustrator™. PyCogent allows arbitrary callbacks to be used to determine the line color, allowing quantitative information, group labels, or quantitative features related to the sequence or statistical modeling to be displayed directly on the tree (see the second case study, below, for an example of the latter). Additionally, any parameter or combination of parameters can be designated for display on the branches directly.
Similarly, extracting information from a sequence alignment and applying it to a 3D structure determined by crystallography or nuclear magnetic resonance (NMR) has often been performed using ad hoc tricks such as overwriting the B-factor column in the PDB file. PyCogent allows arbitrary residues to be colored on a crystal structure, but it also allows quantitative data to be displayed in any of a number of gradients. Additionally, PyCogent allows the sequence from the 3D structure to be extracted and inserted into the alignment, greatly reducing the difficulty typically associated with converting between alignment coordinates and coordinates of the residues that exist in the structure. See the von Willebrand case study (below) for a detailed example of structure coloring.
Case studies
All code used to conduct the case studies is available in Additional data file 3 as Python scripts, text, and HTML formats.
A codon aligner and evolutionary analysis of BRCA1
By jointly representing the influence of DNA biochemistry and its encoded information on rates of evolution, codon models of sequence change [2, 30, 31] provide a means for explicitly evaluating the neutral theory of molecular evolution [32]. Under the assumption that synonymous changes are selectively neutral, the ratio of nonsynonymous to synonymous substitution rates (frequently represented as Ka/Ks) is used as an index of natural selection. An assortment of analyses has been developed around these models, motivated by a desire to test for departures from the neutral theory. Briefly, neutrality is violated when there is evidence for Ka/Ks varying temporally (through time, evidenced by different values between tree branches) or when Ka/Ks is significantly greater than 1. Numerous studies have employed these models [3, 33, 34] and all face the challenge of producing correct sequence alignments before implementing such analyses.
Codon models disallow stop codons and gaps within codons, requiring that indels be positioned respectful of codon boundaries and in multiples of three. The pragmatic solution to producing codon multiple alignments has been translation of DNA sequences into amino acids and alignment of the protein sequences, followed by introduction of indels from the protein sequence alignment into the DNA sequences. PyCogent also provides tools to facilitate this approach. The dynamic programming algorithms for global pair-wise sequence alignment, which are central to progressive multiple alignment, guarantee optimal alignment for the substitution model provided [35]. Codon alignments extrapolated from protein sequence alignments will therefore be optimal for the protein sequences. The only way to ensure codon optimal alignment is to use a codon alignment algorithm.
In PyCogent, different probabilistic analyses are generalized such that they accept any PyCogent substitution model the user creates. For the alignment problem, the user creates a true codon multiple sequence aligner by just providing a codon substitution model. The pair-wise and multiple sequence alignment algorithms implemented in PyCogent are based on the progressive pair-HMMs of Löytynoja and Goldman [36]. Generating a multiple sequence alignment requires a sequence collection, a substitution model for the molecular type, and - optionally - a tree. If no tree is provided, then a neighbor joining tree is built.
We query NCBI for just a set of accessions previously selected for this analysis on the basis of their completeness and inclusion of human and chimpanzee sequences. In order to allow extraction of sequence CDS, we use a parser directly and then remove the terminal stop codon (line numbers 8 to 14), because this state is disallowed by codon substitution models, before aligning. Because long sequence contigs can have multiple features of the same type, it is desirable only to create each segment corresponding to the sought feature type on demand. Having queried NCBI explicitly for BRCA1 accession numbers, however, there is only one CDS per sequence and therefore we extract just the first entry in the list (because Python counts from 0, this is the 0th element; line number 11).
As indicated above, the multiple sequence alignment requires a codon substitution model. A number of substitution models are provided for convenience, although we emphasize that a major strength of PyCogent is its flexibility in specifying novel substitution models with minimal effort. For the current case we use the H04G codon substitution model containing terms for transition (labeled in Figure 1 as kappa), nonsynonymous (omega), and CpG (G) substitutions [2]. The aligner returns both the alignment and neighbor joining tree that was used to create it (line 16). We inspect the topology of that tree in an interactive session by printing the text representation generated by the asciiArt method (line 17).
The hypothesis that human and chimpanzee BRCA1 genes have evolved in a selectively neutral manner can be evaluated using a hierarchical hypothesis test. In the current example, we explicitly compare the following nested hypotheses: Ho, the regime of natural selection affecting BRCA1 is identical for all lineages (a single Ka/Ks parameter for the entire tree); and Ha, the selection regime affecting human and chimpanzee BRCA1 differs from that affecting the remaining lineages (two Ka/Ks parameters). PyCogent simplifies the formation of such nested hypotheses and significantly eases the task of identifying sections of phylogenetic trees (or tree scopes) to which distinct parameter values are to be applied. Using the tree and same substitution model, we create a likelihood function and provide the alignment (lines 18 and 19). This defines a hypothesis under which all parameters, with the exception of branch lengths, are global across the tree and the probabilities of codons are taken as the average frequency from the alignment, thus completely specifying Ho. Maximizing the likelihood for this hypothesis given the provided alignment requires numerical optimization. PyCogent provides two different numerical optimizers: simulated annealing [37], which is a global optimizer, and the method proposed by Powell [38], which is a local optimizer whose implementation was derived from the scientific Python library [39]. Although local optimizers typically produce solutions more quickly than do global algorithms, they are vulnerable to being trapped by local optima. The default likelihood function optimizer setting is therefore simulated annealing followed by Powell's method. In most cases, however, the local optimizer suffices and can be explicitly selected using the local argument (line 20). Fine control over all aspects of the optimization is provided by additional arguments for the global and local optimizers. The effect of the optimization is to modify the parameters' values so as to maximize the likelihood for the provided data. The actual log-likelihood and number of free parameters are explicitly extracted (lines 21 and 22).
Definition of the alternate hypothesis requires one to identify the human and chimpanzee tree edges in a robust manner and to associate a distinct value of the parameter omega (which represents Ka/Ks) with that tree scope. The clade is uniquely identified using two tip names, an outgroup name, and setting the argument is_clade = True (line 23). A similar approach can be used to identify just the stem to a clade, or both the clade and its stem. The result of this call is an additional omega value applied to the Hsap and Ptro edges. If we wished to have a different parameter value applied to each edge in the scope, we would set the argument is_independent = True. There is a computational benefit from incrementally building complex hypotheses in this manner; the parameter estimates from optimization of Ho serve as a starting point for optimization of Ha, typically resulting in significantly reduced work required for maximization of Ha. The maximum likelihood (ML) estimates are displayed by printing the lf, indicating omega > 1 for the Hominoid lineages (line 28). We formally test the sufficiency of Ho by performing a likelihood ratio test using the χ2 distribution with degrees of freedom equal to the difference in the numbers of free parameters between the two hypotheses (lines 29 to 32). In this case, the estimated probability leads us to reject Ho in favor of Ha, which is consistent with the previous report of a distinct evolutionary regime affecting BRCA1 in humans and chimpanzees [34].
Visualizing genomic properties in a phylogenetic context for the Proteobacteria
The visual juxtaposition of phenotype and genotype can reveal otherwise obscure patterns in complex data. The distribution of a phenotypic property across a phylogeny is indicative of the rate at which the phenotype evolves and may illuminate its mechanistic origins. Some of the types of questions that can benefit from visualization of phenotypic properties in their phylogenetic context are as follows: the extent to which specific traits are evolvable, the association between ecological niche and evolutionary relatedness, and the distribution of parameter estimates from a statistical analysis.
PyCogent provides multiple tools that allow the user to address such issues easily. These tools include multiple algorithms for phylogenetic tree reconstruction, such as neighbor joining [40] and the tree fit procedures of weighted least squares and ML approaches [41]. A parallelized implementation of the advanced step-wise addition tree space search algorithm [42] is included for use with weighted least squares and ML. PyCogent's generalizations allow any specifiable substitution model to be applied to phylogenetic reconstruction. This ability to use any combination of substitution model with any tree building algorithm allows simple tests for the robustness of a given result to variation in these parameters, addressing a common concern in phylogenetic analyses. Graphical representations of phylogenetic trees can be produced in several standard dendrogram formats. Parameter values for each tree branch can be colored on a spectrum or presented as text. Because the tree labeling or coloring is performed using callbacks that are arbitrary functions of a branch, complex figures that display quantitative data (such as nucleotide composition) or qualitative data (such as group labels, for instance for taxonomic categories or environmental samples) can readily be produced.
We illustrate these capabilities in this case study using a downloaded file of about 5,100 RNA sequences from the rRNA database [43]. We convert these sequences to DNA, sample 30 sequences at random from each of the five taxonomic divisions, exclude near identical sequences, estimate the phylogeny, and draw a radial dendrogram tree with sequence G+C% colored on a spectrum.
An integrative analysis of von Willebrand factor
In human genetics, distinguishing clinically influential from circumstantial mutations at a candidate locus can be a significant challenge. A number of approaches are used to predict phenotypic impact: linkage studies of the mutation in affected pedigrees; experimental analysis of a mutation on protein function; predicted impact on structure from computer modeling [44]; and an assessment of evolutionary rate [45–47]. The latter approach is based on the hypothesis that a slow evolutionary rate reflects strong negative natural selection caused by functional constraint on a residue. There is increasing interest in drawing on measurement of the historical influence of natural selection to improve predictions regarding the likely phenotypic impact of contemporary variation. Such integration has been demonstrated to improve explanatory power significantly [48].
This case study illustrates an analysis workflow that integrates evolutionary rate classification with molecular structure. We queried the NCBI protein database for von Willebrand Factor (VWF), a 2,813 amino acid glycoprotein that is required for platelet adhesion in blood coagulation. Missense mutations in this molecule have been associated with von Willebrand disease, which is a heterogeneous disorder characterized by prolonged bleeding. We visualize the evolutionary classification of residues in the context of molecular structure and annotated functional domains. We also test whether slowly evolving positions are disproportionately associated with disease.
We query the protein database at NCBI for VWF entries and align the sequences. An inspection of the annotated features column for information regarding disease associated single nucleotide polymorphisms (SNPs) revealed variation in nomenclature, which would increase the complexity of correctly identifying all such variable sites. Records from the Swiss-Prot Protein Knowledgebase, on the other hand, have a consistent notation. We therefore select only full length VWF records from Swiss-Prot using the logical condition 'swissprot' in seq.Info.dbsource. We use annotations on the human record to extract SNP, human disease, and protein domain details using the Info object. Disease status of a SNP is inferred from whether the abbreviation for von Willebrand disease (VWD) occurred in the note field. This query results in only three full length sequences, from human, mouse, and dog. We align the sequences using an empirical protein substitution model [49].
The simpler probabilistic models of sequence evolution assume that all sites have evolved at the same rate throughout time, independently of each other. More realistic evolutionary models have been developed that allow for variation between sites. These models have two major dimensions corresponding to rate (temporal) and spatial heterogeneity. For the temporal component, substitutions are considered to derive from a continuous distribution that has (for computational efficiency) been split into bins. Such models have been applied principally to the model parameter 'rate' and a codon model exchangeability parameter that corresponds to the ratio of nonsynonymous to synonymous substitutions [3]. A Γ distribution is most commonly employed in rate models, although nonregular and mixture distributions have also been specified [50]. Substantial evidence indicates that sequence residues tend to evolve in a manner most similar to their close neighbors, leading to patches of similarly evolving residues. HMMs have been successfully applied to detection of such auto-correlated evolutionary processes [4, 51, 52]. These phylo-HMMs measure the co-occurrence of residues whose evolution is best described by one of the bins from a rate heterogeneity model. In addition to measuring model fit to a dataset, the classification of sequence residues can be achieved using posterior decoding.
PyCogent allows specification of both classes of model. Rate heterogeneity can be specified as either a Γ or free (nonregular) distribution for rate or any substitution model exchangeability parameter. Although any number of bins can be specified for the rate heterogeneity models, the HMM component at present only allows for two hidden states. If a model with more than two bins is also specified as a HMM, the bins must be mapped to the two hidden states. Although there is strong evidence for spatial heterogeneity of evolutionary rate, a hierarchical hypothesis testing approach should be adopted to validate usage of a phylo-HMM for other parameters.
We finally evaluate the hypothesis that there is an association between the posterior probability of a position being slowly evolving and there being disease causing variation. PyCogent includes many standard statistical distributions and statistical tests. Summary statistics indicate the mean probability for disease SNPs is 0.58, whereas the mean of the remainder is 0.50. We test whether this difference is significant using PyCogent's implementations of the Kolmogorov-Smirnov test for comparing two distributions. Performing this analysis requires extracting the posterior probabilities for disease SNP locations and for the remainder of the molecule. Running the Kolmogorov-Smirnov test indicates that there are tied values in the data, invalidating the probability estimation. We therefore use the bootstrap version of the KS test, which results in a probability of about 0.2, indicating that the difference in distributions is not significant. Thus, disease-causing SNPs do not occur at sites evolving significantly more slowly than other sites, although these conclusions may change as more full length sequences become available and allow more accurate estimation of the evolutionary rate at each site.
PyCogent is a unique framework that facilitates the application of comparative genomics data to a broad array of compelling biological problems. The database querying and workflow control capabilities, coupled with a built-in capacity for specifying novel analyses, provide opportunities for comprehensive interrogation of the relationship between genome indexed phenotypic data and evolutionary dynamics. The chosen license, language, and implementation provide a basis for researchers to undertake novel analyses in a manner freed from the release schedule of toolkit developers. PyCogent can be employed in the development of novel methods or standalone applications, to facilitate the integration of new applications and analyses into visual workflow tools such as CIPRES/Kepler [9], and in the development of task centric graphical user interface applications. Several applications have already been developed that draw on PyCogent's capabilities aimed at phylogenetic footprinting [54], analysis of microbial community samples [55, 56], combinatorial motif analysis [57], and de-replicating sequence families [58]. The development team welcomes contributions from others who are interested in extending the toolkit to novel problems, integrating it with additional tools and data sources or who seek to exploit it to develop standalone applications.
PyCogent requires the following software: Python 2.5 or greater [59] and Numpy 1.0.3 or greater [14]. Optional dependencies are as follows: ReportLab version 2.0 or greater for visualization [15] (note that this package is required for the case studies presented in this report); Matplotlib version 0.90.1 or greater for visualization of codon usage [16]; PyxMPI version 1.0 or greater for parallel computation [60]; Pyrex for developers who want to modify the *.pyx files [18]; and PyMol version 0.99 or greater for display of 3D structures [29] (note that this package is required for the case studies presented in this report).
Additional data files
Additional data file 2: Presented is a Quicktime movie showing rotation of the painted VWF structure against a black background. (MOV 4 MB)
application programming interface
basic local alignment search tool
coding sequence
- EUtil:
Entrez Utility
hidden Markov model
- Ka/Ks:
ratio of nonsynonymous to synonymous substitution rates
maximum likelihood
National Center for Biotechnology Information
nuclear magnetic resonance
Protein Data Bank
- Rfam:
RNA families database
single nucleotide polymorphism
von Willebrand Factor.
This project used facilities and/or funding provided to GA Huttley by the Australian Partnership for Advanced Computing, Cray Australia Pty. Ltd., the Australian Research Council, the National Health and Medical Research Council, and software licenses donated by Wingware; and funding support provided to R Knight from the Keck RNA Bioinformatics Initiative, Jane and Charlie Butcher Foundation, NIH Signaling and Cellular Regulation Training Grant, NIH Biophysics Training Grant, and the National Academy Keck Futures Initiative.
Authors' Affiliations
- Butterfield A, Vedagiri V, Lang E, Lawrence C, Wakefield MJ, Isaev A, Huttley GA: PyEvolve: a toolkit for statistical modelling of molecular evolution. BMC Bioinformatics. 2004, 5: 1-10.1186/1471-2105-5-1.PubMedPubMed CentralView ArticleGoogle Scholar
- Huttley GA: Modeling the impact of DNA methylation on the evolution of BRCA1 in mammals. Mol Biol Evol. 2004, 21: 1760-1768. 10.1093/molbev/msh187.PubMedView ArticleGoogle Scholar
- Nielsen R, Yang Z: Likelihood models for detecting positively selected amino acid sites and applications to the HIV-1 envelope gene. Genetics. 1998, 148: 929-936.PubMedPubMed CentralGoogle Scholar
- Siepel A, Haussler D: Combining phylogenetic and hidden Markov models in biosequence analysis. J Comput Biol. 2004, 11: 413-428. 10.1089/1066527041410472.PubMedView ArticleGoogle Scholar
- Felsenstein J: PHYLIP, Phylogeny Inference Package (Univ. Washington, Seattle), Version 3.57. [http://evolution.gs.washington.edu/phylip.html]
- Yang Z: PAML: a program package for phylogenetic analysis by maximum likelihood. Comput Appl Biosci. 1997, 13: 555-556.PubMedGoogle Scholar
- BioPerl. [http://www.bioperl.org]
- BioPython. [http://biopython.org]
- CIPRES. [http://www.phylo.org]
- PyCogent. [http://sourceforge.net/projects/pycogent]
- Thompson JD, Higgins DG, Gibson TJ: CLUSTAL W: improving the sensitivity of progressive multiple sequence alignment through sequence weighting, position-specific gap penalties and weight matrix choice. Nucleic Acids Res. 1994, 22: 4673-4680. 10.1093/nar/22.22.4673.PubMedPubMed CentralView ArticleGoogle Scholar
- Altschul SF, Gish W, Miller W, Myers EW, Lipman DJ: Basic local alignment search tool. J Mol Biol. 1990, 215: 403-410.PubMedView ArticleGoogle Scholar
- Blackford LS, Demmel J, Dongarra J, Duff I, Hammarling S, Henry G, Heroux M, Kaufman L, Lumsdaine A, Petitet A, et al: An updated set of basic linear algebra subprograms (BLAS). ACM Trans Math Soft. 2002, 28: 135-151. 10.1145/567806.567807.View ArticleGoogle Scholar
- Numeric python. [http://numpy.scipy.org]
- ReportLab. [http://www.reportlab.org]
- Matplotlib. [http://matplotlib.sourceforge.net]
- IPython: an Enhanced Python Shell. [http://ipython.scipy.org/moin]
- Pyrex: a Language for Writing Python Extension Modules. [http://www.cosc.canterbury.ac.nz/greg/python/Pyrex]
- Buckheit JB, Donoho DL: WaveLab and reproducible research. [http://www-stat.stanford.edu/donoho/Reports/1995/wavelab.pdf]
- Gentleman RC, Carey VJ, Bates DM, Bolstad B, Dettling M, Dudoit S, Ellis B, Gautier L, Ge Y, Gentry J, et al: Bioconductor: open software development for computational biology and bioinformatics. Genome Biol. 2004, 5: R80-10.1186/gb-2004-5-10-r80.PubMedPubMed CentralView ArticleGoogle Scholar
- Stamatakis A: RAxML-VI-HPC: maximum likelihood-based phylogenetic analyses with thousands of taxa and mixed models. Bioinformatics. 2006, 22: 2688-2690. 10.1093/bioinformatics/btl446.PubMedView ArticleGoogle Scholar
- Altschul SF, Madden TL, Schaffer AA, Zhang J, Zhang Z, Miller W, Lipman DJ: Gapped BLAST and PSI-BLAST: a new generation of protein database search programs. Nucleic Acids Res. 1997, 25: 3389-3402. 10.1093/nar/25.17.3389.PubMedPubMed CentralView ArticleGoogle Scholar
- Kent WJ: BLAT: the BLAST-like alignment tool. Genome Res. 2002, 12: 656-664. 10.1101/gr.229202. Article published online before March 2002.PubMedPubMed CentralView ArticleGoogle Scholar
- Edgar R: MUSCLE: multiple sequence alignment with high accuracy and high throughput. Nucleic Acids Res. 2004, 32: 1792-1797. 10.1093/nar/gkh340.PubMedPubMed CentralView ArticleGoogle Scholar
- Morgenstern B: DIALIGN 2: improvement of the segment-to-segment approach to multiple sequence alignment. Bioinformatics. 1999, 15: 211-218. 10.1093/bioinformatics/15.3.211.PubMedView ArticleGoogle Scholar
- Bailey TL, Elkan C: Fitting a mixture model by expectation maximization to discover motifs in biopolymers. Second International Conference on Intelligent Systems for Molecular Biology. 1994, Menlo Park, CA: AAAI Press, 28-36.Google Scholar
- Yang H, Jossinet F, Leontis N, Chen L, Westbrook J, Berman H, Westhof E: Tools for the automatic identification and classification of RNA base pairs. Nucleic Acids Res. 2003, 31: 3450-3460. 10.1093/nar/gkg529.PubMedPubMed CentralView ArticleGoogle Scholar
- Hofacker I, Fontana W, Stadler P, Bonhoeffer L, Tacker M, Schuster P: Fast folding and comparison of RNA secondary structures. Monatsh Chem. 1994, 125: 167-188. 10.1007/BF00818163.View ArticleGoogle Scholar
- Delano WL: The PyMOL Molecular Graphics System. [http://www.pymol.org]
- Goldman N, Yang Z: A codon-based model of nucleotide substitution for protein-coding DNA sequences. Mol Biol Evol. 1994, 11: 725-736.PubMedGoogle Scholar
- Muse SV, Gaut BS: A likelihood approach for comparing synonymous and nonsynonymous nucleotide substitution rates, with application to the chloroplast genome. Mol Biol Evol. 1994, 11: 715-724.PubMedGoogle Scholar
- Kimura M: The Neutral Theory of Molecular Evolution. 1983, Cambridge: Cambridge University PressView ArticleGoogle Scholar
- Clark AG, Glanowski S, Nielsen R, Thomas PD, Kejariwal A, Todd MA, Tanenbaum DM, Civello D, Lu F, Murphy B, et al: Inferring nonneutral evolution from human-chimp-mouse orthologous gene trios. Science. 2003, 302: 1960-1963. 10.1126/science.1088821.PubMedView ArticleGoogle Scholar
- Huttley GA, Easteal S, Southey MC, Giles GG, McCredie MRE, Hopper JL, Venter DJ: Adaptive evolution of the tumor suppressor BRCA1 in humans and chimpanzees. Nature Genetics. 2000, 24: 410-413. 10.1038/78092.View ArticleGoogle Scholar
- Durbin R, Eddy S, Krogh A, Mitchinson G: Biological Sequence Analysis. 1998, Cambridge: Cambridge University PressView ArticleGoogle Scholar
- Löytynoja A, Goldman N: From the cover: an algorithm for progressive multiple alignment of sequences with insertions. Proc Natl Acad Sci USA. 2005, 102: 10557-10562. 10.1073/pnas.0409137102.PubMedPubMed CentralView ArticleGoogle Scholar
- Goffe WL, Ferrier GD, Rogers J: Global optimization of statistical functions with simulated annealing. J Econometrics. 1994, 60: 65-99. 10.1016/0304-4076(94)90038-8.View ArticleGoogle Scholar
- Powell MJD: An efficient method for finding the minimum of a function of several variables without calculating derivatives. Computer J. 1964, 7: 155-162. 10.1093/comjnl/7.2.155.View ArticleGoogle Scholar
- SciPy, Scientific Tools for Python. [http://www.scipy.org]
- Saitou N, Nei M: The neighbor-joining method: a new method for reconstructing phylogenetic trees. Mol Biol Evol. 1987, 4: 406-425.PubMedGoogle Scholar
- Felsenstein J: Inferring Phylogenies. 2003, Sinauer AssociatesGoogle Scholar
- Wolf MJ, Easteal S, Kahn M, McKay BD, Jermiin LS: TrExML: a maximum-likelihood approach for extensive tree-space exploration. Bioinformatics. 2000, 16: 383-394. 10.1093/bioinformatics/16.4.383.PubMedView ArticleGoogle Scholar
- Wuyts J, Perriere G, Van De Peer Y: The European ribosomal RNA database. Nucleic Acids Res. 2004, D101-D103. 10.1093/nar/gkh065. 32 Database
- Sunyaev S, Ramensky V, Koch I, Lathe Wr, Kondrashov AS, Bork P: Prediction of deleterious human alleles. Hum Mol Genet. 2001, 10: 591-597. 10.1093/hmg/10.6.591.PubMedView ArticleGoogle Scholar
- Miller MP, Kumar S: Understanding human disease mutations through the use of interspecific genetic variation. Hum Mol Genet. 2001, 10: 2319-2328. 10.1093/hmg/10.21.2319.PubMedView ArticleGoogle Scholar
- Glazko GV, Koonin EV, Rogozin IB: Mutation hotspots in the p53 gene in tumors of different origin: correlation with evolutionary conservation and signs of positive selection. Biochim Biophys Acta. 2004, 1679: 95-106.PubMedView ArticleGoogle Scholar
- Gorlov IP, Gorlova OY, Amos CI: Predicting the oncogenicity of missense mutations reported in the International Agency for Cancer Research (IARC) mutation database on p53. Hum Mutat. 2005, 26: 446-454. 10.1002/humu.20242.PubMedView ArticleGoogle Scholar
- Martin ACR, Facchiano AM, Cuff AL, Hernandez-Boussard T, Olivier M, Hainaut P, Thornton JM: Integrating mutation data and structural analysis of the TP53 tumor-suppressor protein. Hum Mutat. 2002, 19: 149-164. 10.1002/humu.10032.PubMedView ArticleGoogle Scholar
- Jones DT, Taylor WR, Thornton JM: The rapid generation of mutation data matrices from protein sequences. Comput Appl Biosci. 1992, 8: 275-282.PubMedGoogle Scholar
- Yang Z, Wong W, Nielsen R: Bayes empirical Bayes inference of amino acid sites under positive selection. Mol Biol Evol. 2005, 22: 1107-1118. 10.1093/molbev/msi097.PubMedView ArticleGoogle Scholar
- Felsenstein J, Churchill GA: A Hidden Markov Model approach to variation among sites in rate of evolution. Mol Biol Evol. 1996, 13: 93-104.PubMedView ArticleGoogle Scholar
- Yang Z: A space-time process model for the evolution of DNA sequences. Genetics. 1995, 139: 993-1005.PubMedPubMed CentralGoogle Scholar
- Emsley J, Cruz M, Handin R, Liddington R: Crystal structure of the von Willebrand Factor A1 domain and implications for the binding of platelet glycoprotein Ib. J Biol Chem. 1998, 273: 10396-10401. 10.1074/jbc.273.17.10396.PubMedView ArticleGoogle Scholar
- Wakefield M, Maxwell P, Huttley G: Vestige: maximum likelihood phylogenetic footprinting. BMC Bioinformatics. 2005, 6: 130-10.1186/1471-2105-6-130.PubMedPubMed CentralView ArticleGoogle Scholar
- Lozupone C, Knight R: UniFrac: a new phylogenetic method for comparing microbial communities. Appl Environ Microbiol. 2005, 71: 8228-8235. 10.1128/AEM.71.12.8228-8235.2005.PubMedPubMed CentralView ArticleGoogle Scholar
- Lozupone C, Hamady M, Knight R: UniFrac: an online tool for comparing microbial community diversity in a phylogenetic context. BMC Bioinformatics. 2006, 7: 371-10.1186/1471-2105-7-371.PubMedPubMed CentralView ArticleGoogle Scholar
- Hamady M, Peden E, Knight R, Singh R: Fast-Find: a novel computational approach to analyzing combinatorial motifs. BMC Bioinformatics. 2006, 7: 1-10.1186/1471-2105-7-1.PubMedPubMed CentralView ArticleGoogle Scholar
- Widmann J, Hamady M, Knight R: DivergentSet, a tool for picking non-redundant sequences from large sequence collections. Mol Cell Proteomics. 2006, 5: 1520-1532. 10.1074/mcp.T600022-MCP200.PubMedView ArticleGoogle Scholar
- Python. [http://www.python.org]
- PyxMPI. [http://jcsmr.anu.edu.au/dmb/compgen]
This article is published under license to BioMed Central Ltd. This is an open access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.


text:
Dogwood Festival on Fairfield's Greenfield Hill
Published 6:45 pm, Tuesday, May 3, 2011
Although the Dogwood Festival is offered annually on Mother's Day weekend, moms are not the only ones who eagerly await this event on Fairfield's historic Greenfield Hill.
"We've tried to stay contemporary, but with a homey feel, with something for everyone" -- young and old, men and women, said event co-chair Karen Wambach of Westport.
A visit to the festival -- which this year offers its 76th edition -- has become a beloved family tradition for thousands throughout the region, said Wambach, "in part because of its welcoming and hospitable atmosphere."
Surrounded by hundreds of flowering pink or white dogwood trees -- the tradition of planting them here dates back more than 200 years -- the event will run Friday through Sunday, May 6 to 8, rain or shine, in and around Greenfield Hill Congregational Church, which has sponsored the event since 1936.
A community spirit prevails, she said, because "the whole congregation comes out to put on this event while the dogwoods are in full regalia." (Wambach said she is of the mind that the dogwoods will be in full bloom by the weekend.)
Through the sale of food and other items, the festival raises thousands of dollars each year for such local charities as St. Luke's Food Pantry, Mercy Learning Center of Bridgeport, Project Learn, Micah House, Operation Hope and Mi Casa.
At that first event, begun by the church Women's Guild, the sale of handmade crafts and homemade fudge was the highlight.
Expanded greatly since then, the festival now features musical entertainment, road races for adults and children, games and activities for youngsters, walking tours of the area, a juried crafts show with more than 35 participants from around the country, a plants and herbs sale, outdoor food and beverage tents, an indoor Blossom Cafe with sandwiches and salads and a nondenominational Blessing of the Animals ceremony.
Also planned is the ever-popular Kate's Korner Tag Sale, featuring an array of toys, books, household items and other used goods, as well as Kate's Collectables for "finer items," including antiques, art, jewelry and decorative pieces, say organizers, who note that the sales are named after its founder Kate Smith.
Returning to the festival this year after a short absence is the juried Fine Art Show and Sale, featuring original paintings and other works by noted artists from throughout the region, Wambach added.
Greenfield Hill Congregational Church, 1045 Old Academy Road, Fairfield. Friday, May 6, 10 a.m.-5 p.m.; Saturday, May 7, 10 a.m.-5 p.m.; Sunday, May 8, noon-5 p.m. Free parking, admission. 203-259-5596, www.greenfieldhillchurch.com.

subset: commoncrawl


text:
Social Wine Discovery
Average rating: 0.0 /5
Added by thirstforwine on November 22, 2010
+ new year or type
Share Wine
thirstforwine has reviewed the Small and Small Sauvignon Blanc 2010
I will be the first to admit that I'm rather 'over' the Marlborough Sauvignon craze as I find so many are made in a style that is so over-the-top, particularly in flavours, that it is hard to drink or match to foods. I was therefore very happy to find this style reasonably restrained.
It is crisp and fresh, with lots of tropical fruit - it reminds me of a mango and papaya dish drizzled in lemon juice, but also with some more grassy notes. I tasted this once before at a tasting, and I think I prefer it to its "big sister" reserve wine, personally.
It was, for the record, a brilliant match for a pepper chicken in lemon and tarragon sauce, made at home with these fair hands!
Rockss and Fruit |
Can Sauvignon Blanc be profound? - 2005 Francois Cotat Les Monts Damnes
15 Mar 10 |
Useful (0) |
downunderwines |
Australischer Sauvignon Blanc im Aufwind
9 Jun 10 |
Useful (0) |
downunderwines |
Five star Printhie's Sauvignon Blanc wins Trophy for Best Small Vigneron in Canberra
17 Sep 09 |
Useful (0) |
Benito's Wine Reviews |
2010 Nine Walks Sauvignon Blanc
21 Oct 11 |
Useful (0) |
Cheap Wine Ratings - Good Value Makes Wine Taste Better |
Woodbridge by Robert Mondavi Sauvignon Blanc
29 Mar 12 |
Useful (0) |


text:
Korres Coconut Body Milk 200mlThis beautifully scented moisturising body milk is enriched with vitamins and trace elements to boost the skin. Almond oil active Aloe provitamin B5 and Shea butter help to provide long-lasting hydration leaving the skin soft and supple. Delicately scented with exotic fresh coconut & warm creamy vanilla Leaves skin smooth and soft Easily absorbed leaving skin feeling velvety soft Dermatologically Tested Paraben Free Mineral Oil Free Silicone Free Propylene Glycol Free Ethanolamine Free Enriched with nourishing Almond oil from organic farming. Directions for use: Massage all over the body after showering or bathing.
Check stock and price


text:
Hey everybody! i am nick or l33tmomiji, i live down under in Australia and have always been a big anime fan. (if mainly pokemon when i was little)
My top 6 on here aren't necessarily my most favoiritest anime, most of them are just anime i have really enjoyed watching lately or just love. i'm not only an anime fan, i love just about everything to do with japan , including manga. I read quite a bit of manga and if anyone knows a good series i should try please tell me!
Japan! i want to move from Australia and either live in Kochi, or Animate in Akihabara :D
(if only...)
I love the Japanese culture, the music, am trying to learn the language, and practice (lazily) kendo and aikido.
my favourite j-artists include, but are not limited to: Malice Mizer, Dir en grey, hizaki grace project, Polysics, Utada Hikaru, Aya Hirano, Abingdon Boys School, Miku & Maximum The Hormone. if anyone elso know any good ones tell me k?
If you talk to me about watching any anime dubbed that isn't Dragon Ball, Pokemon, Advent Children or VHD: Bloodlust, I will flame you.
No exceptions.
Follow me as Scarmask on Twitter and MyAnimeList!
My Ratings Scale:
5 Stars - Excellent
4 Stars - Good
3 Stars - Okay
2 Stars - Not worth watching
1 Star - Terrible
3,570 total episodes
and happy birthday =D
lololololol!! That'd be quite awesome indeed! :P I probably should go through and add things properly sometime :\ ... but so much MEHffort!! :(
Yes I have watched more then that but I have other things to do then browse through the entire anime-planet database clicking off things I have watched :P
IB remember!! :P
aaaahhhh! I'm already scared and not sure what to do here o.o ... just what i needed more distraction from the IB! this is all your fault =.=
what to do, what to do...


text:
USA National Mosaic, Arkansas Live Doppler Radar Little Rock Area, at times it might not be live radar! You should Reload / Refresh your browser refresh button, to make sure you have the most current weather map. Or [shift] Reload or [shift] Refresh tells the browser to download the latest image.
Go TO The Live Radar: Main USA Weather Map
National Radar Mosaic Sectors (NRMS) Live Doppler Weather Radar - @ © Small full USA live weather doppler radar map or Warning! The Following link opens a: Large USA Live Doppler Weather Radar Map of the USA! If you are on Dial Up use the link above. Large USA Live Doppler Weather Radar Map All Live weather doppler radar maps provided by: National Oceanic and Atmospheric Administration ( NOAA ) |
Last Updated Monday, September 02 2013 @ 10:00 AM CDT|31,068 Hits
Homeland Security Strategic Plan (FY) 2012 - 2016
The U.S. Department of Homeland Security Strategic Plan for Fiscal Years (FY) 2012-2016


text:
Trans Candidate to Challenge Gay Md. State Senator
A transgender candidate has announced she will run against an openly gay state senator in Montgomery County, Md., in the Democratic primary.
Dana Beyer, who is the executive director of Gender Rights Maryland, made the announcement Thursday.
Beyer says Maryland residents have waited too long for economic fairness and equal opportunity.
Beyer is running against Sen. Richard Madaleno, who has been in the state Senate since 2007. He served in the House of Delegates from 2003 to 2007.
Madaleno has been an advocate for gay and transgender rights in Maryland. He is sponsoring a bill this session to ban discrimination against transgender residents.
Beyer ran unsuccessfully for delegate in 2006 and 2010.
Copyright Associated Press. All rights reserved. This material may not be published, broadcast, rewritten, or redistributed.


text:
We are travelling in the US at the moment.
We are not big on tight itineries and like to plan as we go.
We expect to go to Costa Rica and will leave from New Orleans on say 7 January.
We expect to leave Washington on 29 December.
The idea is to travel by train from Washington to New Orleans.
Please post ideas on places to visit and time at each city.
P.S. we are interested in music and meeting country folk
Recent Activity
View all United States activity »- 1 http://luxmuscle.com/hydroluxe-serum-ca/
- 2 http://www.scamcare.com/alpha-levo-energize/
- 3 Road Trip-San Francisco and Los Angeles
- 4 Maui - luau question
- 5 Mesa Verde National Park Colorado
- 6 Bryce and Zion planning
- 7 The Big Island - Best Way to See the Volcano
- 9 Salt Lake to Telluride Road Trip
- 10 Austin, Hotel
- 11 Landslide damages a portion of Scenic Highway 12 (SR-12)
- 12 Need advise(s) for travel from DFW to Destin FL
- 13 June trip to Colorado HELP
- 14 Monthly vacation rental Siesta Key
- 15 Colorado Itinerary
- 16 Rocky Mountain High...king
- 17 SW Colorado Itinerary
- 18 Drive from Ohio to NYC
- 19 1 year anniversary in Colorado in July
- 20 US Trip
- 21 Bryce and Zion hikes and photography
- 22 Philly Itinerary Help
- 23 Miami Beach and Baseball Trip - Hampton Inn or Sheraton Four Points
- 24 Miami Beach and Baseball Trip - Hampton Inn or Sheraton Four Points
- 25 Colorado Road Trip over Memorial Weekend
Washington to New Orleans by train with stops
Report Abuse
Plan to be in Atlanta when the peach drops on New Years Eve.
http://www.peachdrop.com/ You could leave again on the Crescent on 1 or 2 January. See if there is anything you want to see in Birmingham AL or Meridian MS before heading for New Orleans.
The Amtrak station is right next to the Super Dome. The Super Bowl will be played there in early February.
Have a begniet at Cafe du Monde near Jackson Square. -
Report Abuse
My sister has done this.
The best stops in my view would be Charlottesville, VA, where you would need a car to view Monticello and the other two houses of early presidents in the area. Monticello is outstanding because Jefferson was one of the most interesting men of the 18th century, in the US and in Europe. Montpelier and Ashlawn are interesting in different ways.
Then, as tomfuller suggests, Atlanta and Birmingham. Both have importand civil rights historical sites and interesting music and restaurant scenes.
Look for restaurants on Chowhound or Yelp, not on TripAdvisor, if you want to know how locals view things. Go to the places that locals go if you want to meet "folk", though they may or may not be "country folk", since these are substantial cities. -
Report Abuse
I agree with Charlottesville IF you are interested in the Jeffersonian stuff as well as Atlanta. New Orleans AND environs are worth at least a couple days.
Define "country folk" because you may be in for a big letdown. -
Report Abuse
Memphis is on the route of "The City of New Orleans" Amtrak train. When you leave New Orleans you can take the train if you don't want to rent a car to go to Memphis. The problem is that the train leaves NOL at 1:45PM and arrives about 10PM in Memphis. The southbound CONO (from Chicago) is in Memphis about 6AM.
Report Abuse
Thanks to all. I have noticed that the rooms book out early and are quite expensive. This combined with my reluctance to plan ahead is holding me back. I am now considering flying to Atlanta then driving to New Orleans. I think it works out cheaper and is more flexible. I miss out on Charlottesville which is a shame. Sounded great Ackislander and Dukey1. My reference to "country folk" Dukey1 is more about meeting people away from the big tourist cities. Meet people that have not been exposed to throngs of tourists.
Report Abuse
I've said it before, I'll say it again. I have traveled many thousands of miles on passenger trains; always in coach. There are at least 3 times as many people in coach on an overnight train than sleeper passengers.
If you do fly to Atlanta, try taking the Crescent to Birmingham.
Try to avoid making a one way car rental.
When you consider how much you will be paying for a hotel room, the train even in sleeper is comparable with a four star room with a breakfast. -
Report Abuse
I've done this trip from Boston to New Orleans in coach. I loved it, but I have some suggestions.
The seats from DC on recline quite far, are not like typical rail car seats. Bring a little pillow or a jacket you can fold up under you for extra comfort.
Take ear plugs and if you have problems with light, take an eyeshade. I also bring over the counter sleeping pills. Depending on your crowd, it can be noisy, but they turn the lights down for sleeping at about 10:30-11 (at least they did when I took this trip, now 11 years ago).
Bring a big wool shawl or traveling blanket in case your car is cold.
I recommend bringing delicious things to eat because the food on the train isn't that good. You can buy beer & wine on board though. I seem to recall breakfast being decent.
Part of the problem with stopping over on parts of the route are the arrival and departure times (the middle of the night in places where taxis are not a given). Look at the schedule carefully and consider the prospect of delays.
There is nothing lovelier than waking up in empty, rural America and looking out the train window. There are many nice views on this journey. -
Report Abuse
Hi professorguitar,
Sadly, I fear you've put off booking a sleeper compartment on the train to New Orleans until too late. December 29th is a very busy travel time and the roommettes get booked awfully early in the December 18th-January 3rd time period. As roommettes become less available, they go up in price as well. I know because I've often taken southbound trains this time of year; I got my roommette to Savannah in late July for December just to be sure. Accommodations in the interesting spots in the South this time of year can be a bit of a challenge too, but you might get lucky.
There should be resaonably-priced seats in economy class. This said, I don't know about you, but I can't sleep when upright and DC to Atlanta is overnight on the Crescent train. If you really want to try trains that might be bearable by economy class, one idea is you could take the daytime Palmetto train as far south as Charleston or Savannah, drive or bus to Atlanta from one of these two, and then take the Crescent train from Atlanta to New Orleans.
Have a great trip whatever you decide! Daniel -
Report Abuse
The Crescent leave Atlanta about 8:30 AM and arrives in New Orleans 12 hours later (7:30 Central). It is almost all in daylight which is fine for a trip in coach.
Flying to Atlanta the day before makes sense. Take the public transportation downtown from the airport. -
Report Abuse
Agree that you will not be meeting "country folk" in any of these cities. For what you seem to want you need to rent a car and get out into small towns and rural areas - none of which you will be in.
All of the places you are talking about have significant numbers of tourists - especially around the holidays - even though college kids will mostly have gone home.
Sign in to comment.


text:
This study is provided by Resource Center for Minority Data (RCMD).
Current Population Survey, May 2001: Work Schedules and Work at Home Supplement (ICPSR 3663)
Alternate Title: CPS, May 2001
Principal Investigator(s): United States Department of Commerce. Bureau of the Census; United States Department of Labor. Bureau of Labor Statistics
This data collection is comprised of responses from two sets of survey questionnaires, the basic Current Population Survey (CPS) for May 2001 and a supplement survey on the topic of Work Schedules and Working at Home.
The CPS, administered monthly, is a labor force survey providing current estimates of the economic status and activities of the population of the United States, for the week prior to the survey. Specifically, the CPS provides estimates of total employment (both farm and nonfarm), nonfarm self-employed persons, domestics, and unpaid helpers in nonfarm family enterprises, wage and salaried employees, and estimates of total unemployment.
The May 2001 supplemental survey queried respondents on their working hours and shift of work. Other questions asked about hours spent working at home and equipment used, temporary work done without expecting continuing employment from the employer, worker's expectation of continuing employment, satisfaction with their current employment arrangement, current job history, transition into the current employment arrangement, search for other employment, employee benefits, and earnings.
Demographic variables include age, sex, race, Hispanic origin, marital status, veteran status, educational attainment, occupation, and income.
Series: Current Population Survey Series
Access Notes
Data in this collection are available only to users at ICPSR member institutions. Please log in so we can determine if you are with a member institution and have access to these data files.
WARNING: This study is over 150MB in size and may take several minutes to download on a typical internet connection.
Study Description
United States Department of Commerce. Bureau of the Census, and United States Department of Labor. Bureau of Labor Statistics. Current Population Survey, May 2001: Work Schedules and Work at Home Supplement. ICPSR03663-v2. Ann Arbor, MI: Inter-university Consortium for Political and Social Research [distributor], 2011-12-21. http://doi.org/10.3886/ICPSR03663.v2
Persistent URL: http://doi.org/10.3886/ICPSR03663.v2
Export Citation:
- RIS (generic format for RefWorks, EndNote, etc.)
- EndNote XML (EndNote X4.0.1 or higher)
Scope of Study
Subject Terms: commuting (travel), demographic characteristics, economic conditions, employee benefits, employment, full-time employment, Hispanic or Latino origins, households, income, industry, Internet, job change, job satisfaction, labor (work), labor force, occupational status, ocuupations, part-time employment, population characteristics, population estimates, temporary employment, unemployment, work, work experience, working hours
Geographic Coverage: United States
- 2001-05
- 2001-05-13--2001-05-19
Unit of Observation: Individuals within housing units
Universe: The universe for the basic CPS consists of all persons aged 15 and older in the civilian noninstitutional population of the United States, living in households. The May 2001 supplement universe represented the full CPS sample comprising all households, for persons age 15 years or older who are currently employed.
Users are strongly encouraged to refer to the User Guide (produced by the Principal Investigators), which contains information about the basic CPS survey and detailed technical documentation specific to the Work Schedules and Work at Home Supplement. In particular, Attachment 9 of the User Guide contains the supplement questionnaire.
Detailed and edited universe statements for various variables are defined in either the basic or supplement record layout, which are located in Attachments 7 and 8, respectively, of the User Guide.
ICPSR removed all FILLER and PADDING variables from the data. As a result, the column locations in any ICPSR-released data product (e.g., codebook and setup files) will have column locations that are not consistent with locations described in the User Guide.
Sample: A multistage probability sample was selected to represent the universe of approximately 48,000 households.
The data contain eight weight variables:
- Household Weight -- HWHHWGT -- Used in tallying household characteristics.
- Family Weight -- PWFMWGT -- Used only in tallying family characteristics.
- Longitudinal Weight -- PWLGWGT -- Found only on adult records matched from month to month (used for gross flows analysis).
- Outgoing Rotation Weight -- PWORWGT -- Used for tallying information collected only in outgoing rotations.
- Final Weight -- PWSSWGT -- Used for most tabulations, controlled to independent estimates for (1) States; (2) Origin, Sex, and Age; and (3) Age, Race, and Sex.
- Veteran's Weight -- PWVETWGT -- Used for tallying veteran's data only.
- Composited Final Weight -- PWCMPWGT -- Used to create BLS's published labor force statistics.
- Supplement Weight -- PWSUPWGT -- Used in tallying individuals on the file.
Users are strongly encouraged to refer to the User Guide for additional detailed information on how to use these weights, as well as how they were derived.
Mode of Data Collection: computer-assisted personal interview (CAPI), computer-assisted telephone interview (CATI)
Original ICPSR Release: 2003-10-17
- 2011-12-21 The ASCII data for this collection have been completely replaced. The data collection has been updated to include SAS, SPSS, and Stata setup files for use with the new data. Also included in the update are a corresponding SAS transport (CPORT) file, SPSS system file, Stata system file, and a tab-delimited version of the new ASCII data.
Related Publications
Metadata Exports
- Citations exports are provided above.
Export Study-level metadata (does not include variable-level metadata)
If you're looking for collection-level metadata rather than an individual metadata record, please visit our Metadata Records page.


text:
Title: Girls undressing each other Description: Two young girls are on a bed where they slowly undress each other, hugging and kissing each other at the same time. They take each others shirt off, then their skirts and finally their panties too. Tags: Site: SeventeenVideo Performers: Added: 2099 days ago Views: 6706 2257 |
this video Add to Favorites Channel: |


text:
The stereotyping of toys has caused a multitude of traumatic experiences for many young children. When a boy is caught playing with dolls by other boys, he would feel embarrassed and out of place. This prompts the boy to either lie or deny or run away. But the fact is, there is no reason why boys shouldn't be allowed to play girls' toys and vice versa. The idea of gender role in our society is fluid. Gender is constructed by society, it is neither absolute nor unchangeable. In this modern and enlightened age, the boundaries between genders have become blurred, and children can now be raised as children not as boys or girls. The episode about Baby Bear's baby doll which was aired on Sesame Street is proof of the social stigma that limits a child's play zone and promote socially and emotionally inferior children. The Center for Biblical Manhood and Womanhood (CBMW) has raised an issue against that specific episode. Others say gender roles in society might still be in effect for a long while because humanity has hardwired it into little boys' and girls' minds. The biblical and traditional views of gender is now being challenged by many modern and radical minds.
Everyone's favorite kids show, Sesame Street, has evolved from a childhood classic to a trail-blazer for inclusion, thanks to the introduction of its newest Muppet character. In April, the PBS show will celebrate the debut of Julia: the first Muppet with autism. Julia is described as a four year old who likes to sing, but who also does things differently because she has autism. As the prevalence of autism continues to grow, this is a very significant step in the right direction for one of the country's most famous children's shows. It is crucial that typically developing children are educated on and exposed to what autism is, so that they learn at a young age that respect and inclusion of their peers with autism is of the utmost importance.
The unique nature of autism is that it shows itself in endless forms and affects people in countless different ways. The depiction of Julia's character is an example of only one individual girl who has autism, not the entire population on the autism spectrum. It is essential for children to understand that by knowing the character Julia, they are learning what one of the many unique cases of autism in the world would look like. In teaching children that Julia simply sees the world through a different lens, and goes about her day with a different manner of thinking and acting, the younger generation will grasp the concept that some people don't fit into a standard box. More importantly, they will learn that when one of their peers does not fit into that standard box that's ok. Hopefully, this understanding at a young age will blossom into a generation of leaders that not only accept but also value the unique manner in which a person with autism's brain functions.
Everybody tells you that when you run a small business, you can't be political. You can't share anything that has a political undertone on Facebook or Instagram, and you certainly can't make your blog a political rant. However, it is particularly frustrating when a certain topic is considered to be political, when to me it seems like a no-brainer that it should be a nonpartisan, just-try-to-be-good-humans issue. So today I am going to write about a just-try-to-be-good-humans issue that is very important to me, my family, and therefore LorettaRose LLC.
As many of you may know, our mission is to provide work opportunity to adults with disabilities through our business. Also, we are dedicated to teaching children to be accepting, loving, and respectful of their peers who may learn and grown differently through the stories that come with our MySibling dolls . This mission was inspired by my family's experiences with my brother who has autism, and by being active in the Autism Awareness community for many years. But despite our efforts, and the efforts of many other families and individuals, there is still a major hurdle that we need to jump over. Loved ones of people with disabilities, and people with disabilities themselves, suffer from a lack of financial support and services from the government when they become older and enter into the adult world. It is often times scary to even think about the future, and what will happen when my parents are no longer with us. Government services being cut or financial support being decreased for adults with disabilities can instill a major fear of the future in many people. It is up to us as a society to try to do everything that we can to make the future seem a little bit brighter for the people we care about who need support.
For our readers that haven't stalked me on social media yet, I maintain this fabulous blog from the beautiful city of Barcelona. I have been here for about two months and I am slowly but surely assimilating to the Catalan culture and language. Most importantly, I have learned that FC Barcelona is much more than just a football club; it's a family, a feeling, a lifestyle. This passion and love for the club, as well as the country that it represents, was something that I experienced to the fullest on Wednesday night when Barcelona took on Paris SG. Wednesday night's game was the second of a two-game series to determine which club would move on in the Champions League and which would be eliminated. Since Barcelona had shockingly lost the first game 0-4, in order to not be eliminated they needed to defy the impossible and win with a score of at least 5-0. Despite the unachievable nature of the task at hand, the stadium was packed, the fans had faith, and the players started the game strong and determined.
I wasn't at the stadium, but I promise you I could feel the emotion from my couch. Fast forward to the final minutes of the game, Barcelona had fought well but with a score of only 4-1 there wasn't much hope of scoring the necessary 6th goal to save themselves from elimination. Impossible. I went back to my beloved Netflix. To be honest I was just trying to gather enough information to be able to convince my boyfriend I had watched the game when he got home from the stadium. Then all of a sudden the bar across the street from my bedroom window erupts in celebration. Hold tight Netflix, something exciting is happening. By what seemed like divine intervention, the scoreboard had changed from 4-1 to 6-1 as I was enjoying watching The Crown. Within a blink of an eye the outcome of the game changed from an "oh, well close but no cigar" to the most unbelievable comeback in European football history. Now I admit that a few months ago I probably wouldn't have cared about or even understood the significance of this sporting event, but I can honestly say that I was quite moved to see a group of young men achieve the seemingly impossible. It was also particularly moving to see on TV the reactions of the fans when the final goal was scored. There was a wild explosion of pure emotion, shock, happiness, and celebration, that could only have come from a group of people that were truly passionate about their club and the sport of football.
As an American who thinks of a very different sport when I hear the word "football", it is hard for me to grasp the magnitude of joy that a FC Barcelona fan must have felt in that moment when the winning goal was scored. It makes me happy to try to imagine that die-hard 7 year old fan who is now captivated by football and will love the sport for the rest of his life because of the experience he had at Wednesday night's game. This lifelong love and passion for sports is what we hope to teach children through our very own My Pal for Soccer doll and booklet, so seeing it come to life on the faces of young Barcelona fans this week was truly inspiring.
We have some exciting news to share: My Pal for First Eucharist is back! This might seem like a major let down to our non-Catholic readers, but for us here at My Sibling and My Pal dolls it is a character that is very near to our hearts. Not only because we are practicing Catholics, but also because My Pal for First Eucharist was the first My Pal character ever created by our founder, Loretta Boronat. Before starting the business that we have today, Loretta used her fabulous sewing skills to make First Eucharist dresses and veils for little girls as well as miniature versions of their special day attire for American Girl dolls. From there, her wheels continued to turn and she wrote a children's prayer booklet to go with each doll outfit. Long story short, to not outline the ten year very complex thought process of my mother, Loretta eventually created a diverse collection of characters and educational booklets about a variety of topics. Our characters today range from baseball to autism awareness to going green, but it is always cool to look back on the years and remember how it all began.
We are especially excited to be bringing back our first character now that we have established ourselves as a mainly boy doll company. Since we had managed to design and produce some stylish suits to sell separately for our boy dolls, we thought it was a no-brainer to bring back our First Eucharist character in some sweet threads. The First Eucharist can be a very special event in a child's life, but when it comes to gifts and commemorating the day, there always seems to be more options available for girls. When Loretta was making matching doll First Eucharist dresses and veils almost two decades ago, the idea of making a version for boys was not nearly as popular as it is now in 2017. We are truly delighted to be able to offer a product to young boys that could one day serve as a beloved keepsake of their special day.As Toy Fair, New York 2017 comes to a close, the TOTY (Toy Of The Year) awards are presented to outstanding new toys in various categories. This year, the TOTY award for action figures was won by Mattel for its DC Superhero Girls . The collection of action figures, that is composed of eight female superheroes, was designed to encourage young girls to be strong and powerful. Of course Wonder Woman and Catwoman have been around for ages, but to be quite frank they've always been sprinkled in with the male superheroes just to make things a bit more interesting, if you catch my drift. The DC Superhero Girls, on the other hand, shine the spotlight on female strength, courage, and overall awesomeness. With this collection of action figures on the shelf, perhaps a seed will be planted in the young minds of boys and girls that will inspire them to think of males and females as equals in their ability to do badass stuff.
In another great display of girl power, the TOTY award for dolls was presented to Barbie Fashionistas from Mattel. This line of Barbie dolls is embracing more realistic body types and diversity by offering dolls in various shapes, sizes, and skin tones. The collection includes dolls with curvy, petite, and tall body shapes, as well as the original (physically impossible to be human) Barbie body shape. Since real women come in many shapes, sizes, and colors, it is about time that the dolls that our youth play with convey that every variation of the human figure is beautiful in its own unique way. This not only teaches children to love themselves and their own physical appearance, but also that of their peers. The simple experience of exposure to diversity through play as a child could lay the groundwork for our youth to grow into the most accepting and open minded generation of people the world has ever seen...
It's happening. After years of listening to the pleas of its loyal fans and collectors, Mattel is launching a new line of American Girl dolls that includes the company's first-ever boy doll. Here at LorettaRose LLC , we have been selling our My Sibling and My Pal boy dolls since 2007, so seeing the news break was a bit of a punch in the stomach at first. To put things in perspective: in the ocean of the doll industry, American Girl is the whale and we are that crazy looking fish with a light bulb growing out of its head that lives in the abyss. You know, that one they always showed in your high school biology class videos? Once we calmed down, we realized that we don't give ourselves enough credit. American Girl is actually late to the boy doll party because we have been crushing the dance floor here for almost 10 years. If anything, this new launch validates what we have been doing all along, and gives us even more motivation to continue to succeed. In other words, all the people who told us that there would never be a big enough demand for boy dolls were quite mistaken.
We think what American Girl and Mattel are doing is awesome. This new line not only includes a boy doll, but also a strong representation of diversity, as well. To see a massive company like Mattel move in this direction is encouraging for the human race in general. The games and toys giant is finally catching on to the concepts of diversity, inclusion, and gender stereotype changes that we have been promoting through our boy dolls for the last several years. It inspires us to see the overwhelmingly positive media response to what everyone told my mother, our founder, was a crazy idea when she started our company almost a decade ago. We are truly excited to see what the future holds for us, as a small boy doll company, in a world where Mattel thinks it's a great idea, too!
We take the representation of different ethnicities in our My Sibling and My Pal doll lines very seriously, but for slightly different reasons than our friends at Naturally Perfect Dolls who we wrote about in our previous post . Our goal is to teach children to be accepting of others who may learn or act differently, and that same philosophy extends into how we feel about look-alike dolls. We sell mainly boy dolls, which is even more of a niche market, but it turns out there are a ton of boys who want a doll. These little guys also tend to be desperately jealous of their sister's American Girl Doll. We get asked daily about certain hair, eye, and skin color combinations that we have available, so that parents can buy a doll that looks just like their son. Many parents seem to think that the lookalike factor is the most important when choosing a doll for their child. That is where we slightly disagree, but where we think that balanced representation of all races in dolls is the most impactful on our youth.
Giving children mini-me dolls can be fun and a significant self-esteem booster in most cases. On the other hand, if the look-alike aspect is given too much significance, our youth will not be given the opportunity to see the beauty in or love dolls that may look different. This type of sheltered childhood experience might have an impact on how a child sees real people of other races and ethnicities. I mean, I am not a child psychologist, but I do believe that teaching our children to love people who look different than they do is just as important as teaching our children to love themselves. So, your kid has light skin, blue eyes, and blonde hair? Why not buy them a doll with curly black hair and dark skin? And then buy them another one with medium skin and brown hair? And then buy them three more dolls and a whole bunch of accessories too, eh? Buy five of our dolls, we promise your kid will love them and create world peace. Sorry, that was the devil on my left shoulder again.
All jokes aside, there is a very disappointing shortage of dolls for young girls of color that accurately represent their appearance. The very features that make them beautiful and unique are diminished in many of the dark-skinned dolls that are made by major toy companies. We too, as a doll company that takes diversity very seriously, do not have a different face or hair texture for our darker-skinned dolls. However, we have been generally satisfied with our dark-skinned boy doll's hair, and our customers have taken notice. With our success selling our African American boy doll , we were discouraged by the lack of interest in our African American girl doll. Now, thanks to Upworthy and our cool aunt that keeps us informed, we are realizing that our black girl doll's hair being long, shiny, and wavy could be a significant flaw when it comes to appealing to young African American girls who love their natural hair. With Naturally Perfect Dolls coming onto the scene, we definitely need to step up our hair game. Stay tuned!
The author's twins, one boy and one girl, start playing in a gendered manner at one year of age. A large study of twins has helped prove that gender play is typically half inherited and half socially determined, but due to the influence of media and marketing, parents tend to give gender disproportionate weight over things such as temperament. The author makes the attempt to break her children out of that cycle because she feels that it allows children to have fuller emotional abilities. Several years later, she finds her efforts are partially successful with her twins. They both have some predilection toward toys that appeal to them in a stereotypical manner, but they also have interests that are non-stereotypical, which satisfies the author.
Read the full article here:
What My Twins Taught Me About Gender Stereotypes


text: Earth911 Catalogs Recycling Centers for Household GoodsJason Fitzpatrick9/20/10 8:30amFiled to: RecyclingRecycleEnvironmentLocal SearchSearch6EditPromoteShare to KinjaToggle Conversation toolsGo to permalinkWhether you're looking for a place to recycle CFL bulbs or safely dispose of old paint cans you found in your basement, Earth911 catalogs centers where you can drop off all manner of household waste to be safely disposed of.AdvertisementClick on the image above for a closer look.Your community likely has dozens of locations that accept all sorts of hazardous and toxic materials but they're not always heavily advertised. Earth911 catalogs the locations of recycling and hazardous material disposal sites so finding where you can get rid of left over pain medication, dead batteries, burned out fluorescent tubes, motor oil, and more, is a simple search away. The listings at Earth911 include drop off locations, curbside programs, and mail-in programs.AdvertisementHave a favorite tool, tip, or trick to help with recycling efforts? Let's hear about it in the comments.Earth911 [via Re-Nest]Reply6 repliesLeave a reply


text:
By S Janakiram
Hyderabad: April 4, 2013
Resold and slightly repackaged, Hyderabad are back in the IPL with a new name and a rather easy opening awaits them when they take on last season's laggards Pune Warriors here tomorrow.
Missing from the line-up of the Sunrisers Hyderabad, as they are called now, would be star batsman Shikhar Dhawan, who knocked up the fastest Test century on debut against Australia last month.
The star batsman is nursing a hand injury and is likely to miss the first few matches of the event.
Despite this, the Sunrisers would be quite a handful for the Warriors. The team, which retained Kumar Sangakkara as captain despite having a different owner after Deccan Chronicle Group pulled out due to its financial woes.
Indian veterans Kris Srikkanth and VVS Laxman, both mentors for Sunrisers, have joined hands with Australia's Tom Moody (chief coach) and former Pakistan paceman Waqar Younis (bowling coach) to form a strong team of support staff for the Sunrisers.
In the batting department, Sangakkara, South Africa's JP Duminy, Sri Lanka's Thisara Perera and Australian Twenty20 specialist Cameron White along with India's Parthiv Patel make the team highly competitive.
They have an ace up their sleeves when it comes to bowling as South African tearaway pacer Dale Steyn would lead the attack for them. Steyn is currently ranked number one in the ICC rankings.
Ishant Sharma and experienced spinners like Amit Mishra and Nathan McCullum are the other proven bowlers in the line-up. .
Pune Warriors, on the other hand, suffered a setback when Australian Michael Clarke was ruled out of the entire IPL season due to a recurring back injury.
But the return of Yuvraj Singh and the presence of Sri Lanka's Angelo Mathews, Ajantha Mendis and New Zealand's Ross Taylor has bolstered the team.
The Warriors, coached by former South African great Allan Donald, also feature some promising domestic stars such as all-rounder like Abhishek Nayar and Parveez Rasool, the first player from Jammu and Kashmir to have been signed by an IPL franchise.
Nayar was an expensive buy at USD 675,000 for the Pune team.