Weirauch Transcription Factor Research Lab
Center for Autoimmune Genomics and Etiology
Cincinnati Children's Hospital Medical Center
or, What Happens When All the Graduate Students You Had Working on a Project Critical to Your Lab Graduate but the New Guy Says He Knows 'Some Web Stuff'
Computer Science Undergraduate
at the University of
Cincinnati
minoring in Anthropology
The Weirauch Lab Studies mechanisms of gene transcriptional regulation, with a focus on transcription factors
and how they relate to the origins of diseases in humans (e.g., systemic lupus erythematosus)
We are between 3 and 8 people, depending on the season
CressInt incorporates a variety of genome-wide data types relevant to gene regulation, including transcription factor (TF) binding site models, ChIP-seq, DNase-seq, eQTLs, and GWAS.
Source: CressInt FAQ
Tab-delimited format which describes locations within chromosomes of regions of interest.
chr1 11873 14409 uc001aaa.3 0
Specification describes up to 6 columns (BED6):
chr, start, stop, label, score, and strand (+/-)
CressInt was developed continuously Mar - Apr 2015, with another large burst in
August around the time of final
exams :(
Hey boss, should I <long-winded description of some trivial problem, one workable solution, and three unworkable ones>?
Do it. (send)
+ - - - - - - - - - - + +----------------------+ +----------------------+ | +----\ | | | | Web user | | | \-------+ | +----------------------+ interface | | | | | | | | | |/var/www/html| | +----------------------+ +-------------+ | | | | +----->| LSF (HPC cluster) | | | | | | +-------------+ | | +----------------------+ +-------------+ | +------------+ | | | | | +-------------+ | | | | | | +----------------------+ | | +--+---->| Perl CGI |---+-+ | . | | +-------------+ | | | | | | | . | +--------+ | | +------------+ | | . | | | Submit |---+----+ | | +----------------------+ +--------+ +----------------------+ | | +---| FastCGI / PHP +---+ - - - - - - - - - - - | +----------------------+ | +----------------------+ ^ | | Apache 2.2 | | | | | | +----------------------+ +--->| MySQL 5.x | +--------------+ | | | | | CentOS 6 (OS) | +----------------------+ | | | CentOS | +----------------------+ +----------------------+
#!/usr/bin/env perl
$"x=$%="@ARGV";$~=$;='( +)';while($%>>$:++){if($"=~/$~$/^$"=~/$;$/){$
|=$?=$:>2||die"prime\n";eval"print length(\$$?)".($:>++$?&&"/length(\$
$?).'*'")while$:>$?;die$/}$;=$~;$~=~s~.*~^($&\\1+)~;$~=~s;\d+;1+$&;eg}
Perl can look like line noise.
The object system was bolted-on as an afterthought.
At least the Perl language is not a moving target.
But a single Perl CGI cannot handle 1000s of requests per second
Source: perlmonks.org
<?php
// Loop infinitely and fill up '/' with a 5 GB Apache access_log
$fh = fopen("doesntexist.txt", "r");
while (!feof($fh)) echo "TURTLES!\n";
?>
TURTLES!
PHP Warning: feof() expects parameter 1 to be resource, boolean [...]
TURTLES!
PHP Warning: feof() expects parameter 1 to be resource, boolean [...]
TURTLES!
PHP Warning: feof() expects parameter 1 to be resource, boolean [...]
TURTLES!
PHP Warning: feof() expects parameter 1 to be resource, boolean [...]
TURTLES!^C
feof()
returns TRUE
if the file pointer is
at EOF
or an error occurs (including socket timeout);
otherwise returns FALSE
.
feof()
;)