Russell Turner, Ph.D.
Adjunct Assistant Professor
Computer Science and Electrical Engineering Department
University of Maryland Baltimore County

Profile | Projects | Research | Biographical Sketch | Publications | Resume | CV

Software Projects

The following selected industry software projects were all developed directly by or under the technical supervision of Russell Turner.


Designed and implemented  Atavist, an interactive Java-based research tool for viewing and analyzing comparative genomics data. Displays multiple genomic axes together with aligned genomic features. Also displays syntenic relationships, alternate splice graphs and dot-plots as well as histograms. Visual appearance of genomic features can be controlled by the user through type attributes.

Atavist 1
Atavist - comparative view of human and mouse RefSeq orthologs

Atavist 2
Atavist - ESTs mapped to human genome sequence

Atavist 3
Atavist - display of alternate splice graph for a human gene


Designed and implemented Atalanta, a Unix tool written in C++ to project genomic feature coordinates between different genome assemblies of the same or closely related species. Used as a component in the AIR pipeline for computing gene annotations on Celera’s Rat genome sequence. Projections are based on assembly-to-assembly mapping data generated by the A2Amapper mapping tool.

Atalanta Feature Projection
Atalanta - diagram of the genomic feature projection process

Rat-Mouse Homolog
Atalanta - mouse/rat ortholog exons projected across cDNA and genomic sequence

Genome Browser

Technical lead responsible for software design and development of the Celera Genome Browser, an interactive Java-based 3-tiered application used by Celera scientists and customers for visualizing and annotating genomic data, including Celera’s human, mouse and rat genome databases. The front-end is a high-performance "thick" client which loads serialized Java objects on demand from an EJB-based middle tier running in a WebLogic application server, hitting an Oracle database backend. The client is constructed using a standard MVC software architecture, and users can integrate their own data with the database data by loading XML files into the client model. Annotation is performed via interactive "drag and drop" creation and editing of annotation features with infinite-level undo. Developed using JDK1.3, Jbuilder and TogetherJ development tools.

Genome Browser - Rat CFTR Region
Genome Browser - display of features on rat CFTR region

Genome Browser - Human CFTR Region
Genome Browser - CFTR transcripts of nine species projected onto human genomic sequence

Genome Browser - Alignment View
Genome Browser - feature detail on human chromosome 1 showing alignment view
Slide Presentation: [PowerPoint]  [HTML]

LCMS Viewer

Designed and implemented LCMSViewer, a prototype research tool for viewing liquid chromatography mass spectrometry data. It displays data as a 3D height field with interactive pan and zoom capabilities. Data is loaded in progressively from a hierarchically formatted file as user zooms in, allowing large datasets to be viewed on small memory machines. Written in Java using the Swing and VTK graphics packages.

LCMS Viewer
LCMSViewer - feature detail showing elusion profile and isotope cluster


Responsible for full life-cycle design and development of the MSMSViewer, an interactive Java-based 3-tiered application for viewing and curating tandem mass spectrometry data from Celera’s proteomics pipeline. It consists of a front-end based on Swing and Sitraka JChart graphics APIs, an EJB-based middle tier running in a JBoss application server, and an Oracle database backend. Developed using JDK1.3, JBuilder and MagicDraw development tools.

MSMSViewer - Scope view showing fragment peaks and peptide predictions

MSMSViewer - Peptide fragment view showing all theoretically possible peptide fragments


Responsible for concept, design, major implementation and documentation of JGraphics, a Java-based visual software development system for building interactive data-driven dynamic graphics displays with little or no programming. Utilizes interactive iconic programming methodology similar to JavaStudio. Displays can run as web applets, standalone applications or JavaBeans. Developed on Windows and Linux platforms using JDK1.1, Symantec Café and JBuilder development tools. Full hierarchical vector graphics functionality built on top of AWT drawing model. Dynamics implemented by specialized dataflow propagation algorithm incorporating lazy evaluation. Imports and exports JavaBeans with data connectivity to sockets and JDBC via SQL.

JGraphics Builder
JGraphics -  creating a dynamic drawing for displaying real-time stock data
Slide Presentation: [PowerPoint]  [HTML]