David
Sigfredo Angulo 8014 Kedvale
(708) 558-0206
dangulo@AnguloConsulting.com
http://AnguloConsulting.com
Overview: Superlative level manager, developer, educator, and
researcher that has spent a career identifying and becoming an expert in the nascent
technologies that ultimately become the foremost technologies and in developing
and utilizing exceptional management and communication skills. Areas of specialization include grid, distributed,
parallel, and high performance computing, biomedical informatics, object oriented
technology, internet programming, test driven development, software
architecture, XML, JUnit, ANT, and Agile Development.
|
Education |
1970-1974 |
Attended |
|
|
1973-1974. |
Attended Purdue and |
|
|
1974-1975. |
Attended California Institute of Technology. |
|
|
1976-1979 1994-1998 |
Attended Loyola of |
|
|
2004- |
Attended |
Race Hispanic
Experience
Best of conference poster at SuperComputing 2004. Leading member of team that won the SuperComputing
2002 Grand Challenge Award. Taught undergraduate
and graduate courses. Helped investigate
how best to start up a Research Institute.
Chaired the Colloquium Committee.
Led the process to start a Bioinformatics major.
and
Developed and taught graduate level courses in XML and
Web Services (new courses for the University).
Lead several research projects in high performance distributed grid computing
(Globus) using Java, C++, and C in heterogeneous Unix environments. Researched adaptive techniques to maintain high
performance in a changing environment (resources coming on and off line, changing
load characteristics, etc.). Elected Co-Chair
of the Life Sciences Grid Research Group in the GGF. Member of the Globus project which won the prestigious
R&D 100 award.
Taught several different courses as a full time, non-tenure
track faculty member. Courses included both
graduate and undergraduate OO with Java and C++, both graduate and undergraduate
Visual Basic, several introductory classes with Java and Visual Basic, Web Design,
and CGI/Web programming with Perl, Java Scripts, and Java Servlets. Was the class coordinator for introductory Visual
Basic. Developed two new courses for the
department (CGI/Web programming and Client/Server Web Programming). Developed three courses for Web based remote learning
(CGI/Web programming, Client/Server Web Programming, and Object Oriented Programming).
SPSS Master
Software Engineer May 1993 to
January 1998
Became first of the new employees to lead the company
in Object Oriented Programming. Led a team
developing OLE Automation for ActiveX objects.
Wrote an Object Oriented parsing system.
Wrote several GUI systems. Languages:
C++, Java, VB Hardware: PC (Win 95, NT) Technologies ActiveX, COM, OLE Automation,
STL, MFC, OO Design Patterns, Booch Object Design, Visual Basic OLE Scripting,
SSA Sr. Software Engineer November 1991 to May 1993
Led team development of a client/server (PC Windows/AS-400)
case tool. The code generation facility was an interpreter using PC/YACC and generated
C++ code. Led a team implementing applications
using this case tool. Languages: C++ Hardware: PC (Windows, OS/2) DBMS: MS SQL,
QELIB.
Datalogics SQA Librarian October 1988
to November 1991
Identified and collected code of potential generic use, modifying code to make it generic, and documenting and advertising the resulting library. This resulted an in-house OO library. Was the resource expert for all OO technology. Developed an in-house CASE tool for use with a relational DB. Designed and wrote a generic text DB app. Left a year after project was canceled for downsizing. Languages: C++, C, SmallTalk, and Prolog. Hardware: VAX, PC (DOS). DBMS: Rdb, Oracle.
SIR/ISI Sr.
Technical staff December
1986 to August 1988.
Responsible for development of SIR DBMS, SIR 4GL programming
language, and SIR AI products on a VAX. Also
ported product to DG machines. Left when
the firm went bankrupt. Languages: FORTRAN, DG assembler, C. Hardware: DG, VAX,
PC (DOS), SUN (UNIX). DBMS: SIR, Oracle, Ingress.
Angulo Consulting President. 1985
to present.
Worked for a variety of clients including tuning a McDonnell-Douglas CAD-CAM system and writing CAD-CAM macros to interface to the OS, doing cabling, financial applications. web programming, OO programming, XML, VoXML, and WML.
Orleans Co DP
manager. October
1984 to October 1985.
In charge of all communications, hardware, software development,
trouble shooting, operations, and DP expenditures. Developed specifications for a manufacturing/inventory/shipping
application. Left when the plant was closed.
Languages: COBOL Hardware: DG. DBMS: INFOS, DBMS (a networked manager).
Lerner Newspapers Programmer/Analyst. June 1980 to October 1984.
In charge of A/R, A/P, G/L, Circulation, and billing
projects (from feasibility studies to implementation). Helped develop a proprietary DBMS. Wrote a communications program and a precompiler
to be used with the DBMS. Languages: DG/L and DG assembler. Hardware: DG. DBMS:
In-house, INFOS.
In charge of Editorial on-line system. Wrote a CPU-to-CPU communications program. Languages:
SAIL (an ALGOL derivative), Macro-10 assembly, PDP-11 assembly, 8080 assembly, and
COBOL. Hardware: DEC system-10, 8080, and PDP-11.
Diversity
Publications,
Talks, Grants, and Program Committees
Guest Editor for the ACM
Crossroads Journal Special Issue on Bioinformatics 13-1, Fall 2006
International
Journals and Conferences: Publications and
InvitedTalks
Laurie Parker, Aaron Engel-Hall,
Kevin Drew, George Steinhardt, Donald L. Helseth Jr, David Jabon, Timothy
McMurry, David Sigfredo Angulo, Stephen J. Kron, "Investigating
quantitation of phosphorylation using MALDI-TOF mass spectrometry." Journal
of Mass Spectrometry. Volume 42 , Issue 12 (December 2007) pp. 1076.Angulo,
David and Farazdel, Abbas. The Future of
Life Sciences Applications on Grids.
Global Grid Forum 17,
Kolbrun Kristjiansdottir, Donald Wolfgeher, Donald L. Helseth Jr., Nick Lucius, David Sigfredo Angulo and Stephen J. Kron. "Phosphoprotein profiling: Cell cycle regulated phosphoproteins and complexes in yeast. American Association for Cancer Research Special Conference: Advances in Proteomics in Cancer Research, Amelia Island, Florida, February 27 - March 2, 2007
Angulo, David and Farazdel,
Abbas. LS Grids. Open Grid Forum 20,
Angulo, David and Farazdel,
Abbas. LSG-RG Future Directions. Open Grid Forum 21,
Angulo, David. Pharma in LSGrid Boston, February, 2008
Dominic Battré, David Sigfredo Angulo, “MPI Framework for Parallel Searching in Large Biological Databases,” J. Parallel Distrib.Comput. (2006), doi: 10.1016/j.jpdc.2006.08.003
Angulo, David Sigfredo. "Challenges
in Systems Biology: An Interview with Dr. Lee Hood, Inventor of the DNA
Sequencer," J. ACM Crossroads 13-1. Fall 2006.
Angulo, David and Farazdel,
Abbas. The Future of Life Sciences Applications on Grids. Global Grid Forum 17,
Angulo, David and Farazdel,
Abbas. Life Sciences Applications on Grids Global Grid Forum 11,
Angulo, David and Farazdel,
Abbas. Healthcare and Life Sciences Applications on Grids. Global Grid
Forum 12,
Angulo, David and Farazdel,
Abbas. HealthGrids. Global Grid
Forum 13,
Angulo, David and Farazdel,
Abbas. Healthcare Security and Privacy. Global Grid Forum 14,
Angulo, David and Farazdel,
Abbas. Security and Privacy Needs of Health Grids. Global Grid Forum 15,
Angulo, David and Farazdel,
Abbas. HealthGrids Global Grid Forum 16,
Puryear, Eric; Angulo, David; Drew, Kevin;
Schilling, Alex;
Puryear, Eric; Angulo, David;
Drew, Kevin; Schilling, Alex;
Angulo, David.
Mass Spectrometry in the
von Laszewski, Gregor; Amin,
Kaizar; Bone, Matt; Hategan, Mike; Sahasrabudhe, Pankaj; Sosonkin, Mike; Winch,
Robert; Vijayakumar, Nithya; Angulo, David.
Building Grid Workflows from Legacy Applications. Proceedings of SC2004 Conference,
·
Awarded Best of Conference Poster – 109 high quality peer-reviewed
accepted posters
Angulo, David; Schilling, Alex;
Drew, Kevin; Freeman, Tim. Mass Spectra
Analysis on the
Colubri, Andrés; Raddatz, Jessica
Lyn; Angulo, David. AIfold: A Statistical
Potential for Protein Folding. Proceedings
of the 12th International Conference on Intelligent Systems for Molecular Biology
and 3rd European Conference on Computational Biology (ISMB/ECCB).
Holly Dail,
Otto Sievert, Fran Berman, Henri Casanova, Asim YarKhan, Sathish Vadhiyar, Jack
Dongarra, Chuang Liu, Lingyun Yang, Dave Angulo, and Ian Foster. Scheduling in the Grid Application Development
Software Project. (Book Chapter) in
Grid Resource Management: start of the Art and Future Trends. Nabrzyski, et. al. ed.
Dave
Angulo. Utilizing the XML DOM in C for Grid Applications. Invited Featured Speaker at the 2003 International
WebServices/XML Conference & Expo,
GridLab: Enabling Applications on the Grid. Gabrielle Allen, Dave Angulo, Tom Goodale,
Thilo Kielmann, André Merzky, Jarek Nabrzysky, Juliusz Pukacki, Michael
Russell, Thomas Radke, Edward Seidel, John Shalf, Ian Taylor. Grid Computing - GRID 2002, Third International
Workshop,
Toward
a Framework for Preparing and Executing Adaptive Grid Programs. Ken
Kennedy, Mark Mazina, John Mellor-Crummey, Keith Cooper, Linda Torczon, Fran
Berman, Andrew Chien, Holly Dail, Otto Sievert, Dave Angulo, Ian Foster, Dennis
Gannon, Lennart Johnsson, Carl Kesselman, Ruth Aydt, Daniel Reed, Jack
Dongarra, Sathish Vadhiyar, and Rich Wolski. April 2002, Proceedings of NSF
Next Generation Systems Program Workshop (International Parallel and
Distributed Processing Symposium 2002),
Design
and Evaluation of a Resource Selection Framework for Grid Applications. HPDC-11, the Symposium on High Performance
Distributed Computing, July 2002,
Grid
Computing & Web Services: A Natural Partnership. Invited talk at the
The
Anatomy of the Grid: Enabling Scalable Virtual Organizations. Invited talk at the 2nd
US-Hungarian Grid Workshop,
Grid
Computing & Web Services: OGSA for GridLab. Invited talk at the GridLab Workshop,
Adaptive Grid Computing: Detecting and Adjusting for Dynamic Grid Conditions. Invited Demonstration and Talk given at Supercomputing 2001 conference. November 2001.
Nomadic Grid Applications: The Cactus WORM. Invited talk at the High Performance Distributed Computing conference and Globus Retreat, August 2001
The Cactus Worm: Experiments with Dynamic Resource Discovery and Allocation in a Grid Environment. International Journal of High-Performance Computing Applications. Volume 15, Number 4. 2001
Local Conference Publications
Puryear, Eric; Van Puymbrouck, Jennifer;
Kwak, Gil; Helseth, L. Donald Jr.; Schilling, Alex;
Donald L. Helseth, Jr., Laurie Parker, Kolbrun Kristjánsdóttir, Kevin
Drew, Don Wolfgeher, Alex Schilling and David Sigfredo Angulo. Developing
Post-Translational Modification MS Tools (Poster).
Rob Vogelbacher, Benjamin R. Carpraro, David Sigfredo Angulo, Tobin
Sosnick, Shohei Koide. IBG GeneDesigner: DNA Sequence Optimization
for Designed Proteins (Poster).
David Sigfredo Angulo, Bryan Beaumont, David Kendall, Jonathan
Gemmell, Michael Boyle, Gregory Zivich, Patrick Smyth, Frantz Gabeau, Anthony
Jackson. Pelagic: A Bioinformatics Architecture in R (Poster).
Gil D. Kwak , Larry L. Helseth Jr., Alexander B. Schilling, and David
Sigfredo Angulo. Hypothetical Sequence Analyzer (Poster).
Laurie Parker, Aaron Engel-Hall, Kevin Drew, George Steinhardt, Donald
L. Helseth, Jr., David Sigfredo Angulo, Alex Schilling and Stephen J. Kron, Quantifying
peptide phosphorylation using MALDI-TOF mass spectrometry, Chicago
Biomedical Consortium 4th Annual Symposium, "Infrastructures for Systems
Biology".
Gemmell,
Jonathan; Kohn, Stephen; Angulo, David; Sosnick, Tobin; Freed, Karl; Jha,
Abhishek; DeBartolo, Joseph. The
Harman,
Dennis;
Kwak, Gil;
Angulo, David; Shilling, Alexander. Hypothetical
Sequence Analyzer (Poster). Proceedings of the
·
Awarded Best of Conference Poster
Puryear,
Eric; Angulo, David; Drew, Kevin; Schilling, Alex; von Laszewski, Gregor. Enhancing a Mass Spectrometry I/O Framework.
Proceedings of the
Puryear,
Eric; Angulo, David; Drew, Kevin; Schilling, Alex; von Laszewski, Gregor. Comparing Mass Spectra (Poster).
Proceedings of the
Van
Puymbrouck, Jennifer; Puryear, Eric; Angulo, David; Schilling,Alex; Drew, Kevin;
Jabon,David; von Laszewski, Gregor. Mass
Spectrometry Database Infrastructure and Data Import Module (Poster).
Proceedings of the
McElhaney,
Renee; Angulo, David Sigfredo; Frank, Ed; Siwamutita, Paiboon; Stejerean,
Cosmin. Developing MSLauncher as Analysis
Tool (Poster).
Ala Eldeen,
Hussam; Angulo, David; Drew, Kevin; Battre, Dominic; Schilling, Alex; Puryear,
Eric; Van Puymbrouck, Jennifer; Jabon, David; von Laszewski, Gregor. Implementing
Spectral Similarity Algorithms for Protein Identification.
Stejerean, Cosmin; Siwamutita, Paiboon; Frank, E. D.; Giometti, Carol S; Babnigg, Gyorgy; Angulo, David; Drew, Kevin; von Laszewski, Gregor. An End-to-End System for Organizing and Sharing Raw and Derived Mass Spectrometry Data. Proceedings of the 2006 DePaul CTI Research Symposium. April 2006.
Van
Puymbrouck, Jennifer; Angulo, David; Drew, Kevin; Hollenbeck, Lee Ann; Battre,
Dominic; Schilling, Alex; Jabon, David; von Laszewski, Gregor. A Batch
Import Module for an Emprically Derived Mass Spectral Database.
Proceedings of the
Vogelbacher,
Rob; Angulo, David; and Koide, Shohei. Sequence Optimization for Synthetic
Genes Using a Genetic Algorithm. Proceedings of the
Gemmell,
Jonathan; Angulo, David; Sosnick, Tobin; Freed, Karl; Jha, Abhishek; Colubri,
Andres; DeBartolo, Joseph; Kendall, David and von Laszewski, Gregor. Inverse
Protein Folding of Ubiquitin on the
Angulo, David .
Puryear, Eric; Angulo,
David; Drew, Kevin; Schilling, Alex;
De La Serna, Andres;
von Laszewski, Gregor; Angulo, Dave; Schilling, Alex.
Puryear, Eric; Angulo,
David; Drew, Kevin; Schilling, Alex; Von Laszewski, Gregor. Mass Spectrometry
in the
Angulo,
David. Graduate Research in the
Angulo, David;
Puryear, Eric. Undergraduate Research
in the
Puryear, Eric; Angulo,
David; Drew, Kevin; Schilling, Alex;
Angulo, D.
Drew, Kevin; Angulo, David; Schilling, Alex; Freeman,
Tim. Mass Spectra Analysis on the
· Awarded Best of Conference
Student Poster (Kevin Drew Student)
Angulo, D.
Angulo, D.
The Anatomy of the Grid and the
Angulo, D. The
Angulo, D. Anatomy of the Grid and the
Angulo, D. Grid Computing and the
The
An
Open-Source implementation of the DOM XML Standard in C. David S. Angulo.
Proceedings of 2003 Midwest Software Engineering Conference,
Computing
the Smith-Waterman Algorithm on the
Enhancing
Dynamic Fluid Flow Analysis With Computational Grids (Poster). David S.
Angulo, Adam Steele, Jeff Sickel. Proceedings of 2003 Midwest Software
Engineering Conference,
Intelligent Grid Migration (Poster), David S. Angulo, Scott Kuehn. Proceedings
of 2003 Midwest Software Engineering Conference,
Phylogenetics
on the
Set
Extended ClassAds: Declarative Models for Performance Modeling, Resource
Selection, and Mapping. Invited talk
given at the GrADS Workshop,
Benefits
of Cactus to GrADS. Invited talk
given at GrADS Workshop,
Contracts,
Resource Selection, Mapping, and Scheduling. Invited talk at the GrADS Workshop at
Editor and writer of the Chicago Area Digital Users Society newsletter from 1989 to 1994 (this publication won an award for outstanding quality).
Monthly article in FOCUS magazine (for Data General computers) 1987-1988.
Editor and writer of the Chicago Data General Users Group newsletter from 1980-86.
Rabbit IgG Sequencing. Dave Angulo, Robert Good, Lee Hood. CalTech Biology Annual Report. 1975.
Grants
Awarded NIH Grant as Co-Investigator for “MALDI-TOF for High Throughput Signal Transduction Inhibitor Screening” under the NIH Roadmap for Medical Research, Grant R01 HG3864. $2.4M September 2005-August 2009.
Awarded NSF Grant as Principal Investigator for REU 353989 “REU Site for Grid Computing and Bioinformatics.” $260,343 May 2004 – May 2007
Awarded $260,000
in computer equipment from
Awarded $500,000 in computer equipment from Pfizer Global Research and Development for use in projects in the Illinois Bio-Grid. June 2004
Awarded $403,100 in computer equipment from Pfizer Global Research and Development for use in projects in the Illinois Bio-Grid. April 2004
Awarded Grant from DePaul’s University Research Council Competitive Grant as Principal Investigator for “Protein Folding Problem: AI Engine” Grant number 350629
Awarded Grant from the NCSA/Alliance as Principal Investigator for “GrADS BioInformatics” (Grant Num: ASC020033N) 2002.
Awarded Grant
from the NCSA/Alliance as Principal Investigator for “
Conference
and Journal Program Committee Memberships
Program
committee co-chair Third International Symposium of Life Science Grid 2006,
IEEE Transactions on NanoBioscience Program Committee, 2006.
IEEE International
Conference on Computer-Based Medical Systems track on "Grids for Biomedicine
and Bioinformatics” Program Committee,
MSEC
Program Committee,
Special Issue of Lecture Notes in Bioinformatics. Grid Computing in Life Science. Program Committee June 2004.
EuroPar
2005, Program Committee.
International
Workshop on Life Science Grid, held in conjunction with the 19th Annual Conference
of JSAI. Program Commiteee.
IEEE International
Conference on Computer-Based Medical Systems track on "Grids for Biomedicine
and Bioinformatics.
International
Workshop on Life Science Grid, held in conjunction with the 18th Annual Conference
of JSAI.
International
Workshop on Grid Workflow held in conjunction with Global Grid Forum 10,
Co-Chair
Life Science Grid Research Group Workshop at Global Grid Forum 7,
Co-Chair
Life Science Grid Research Group Workshop at Global Grid Forum 8,
Joint Workshop on Grid Workflow with Life Science Grid Research Group and Grid Computing Environment Systems Research Group at Global Grid Forum 9, Chicago, Illinois, October, 2003
Co-Chair
Life Science Grid Research Group Workshop at Global Grid Forum 10,
Co-Chair Life Science Grid Research Group Workshop on Life Sciences Applications on Grid at Global Grid Forum 11, Honolulu, Hawaii, June, 2004
Co-Chair Life Science Grid Research Group Special Workshop on Healthcare and Life Sciences Applications on Grids at Global Grid Forum 12, Brussels, Belgium, September, 2004
Co-Chair
Life Science Grid Research Group Special Workshop on HealthGrids at Global Grid
Forum 13,
Co-Chair
Life Science Grid Research Group Special Workshop on Healthcare Security and
Privacy at Global Grid Forum 14,
Co-Chair
Life Science Grid Research Group Special Workshop on Security and Privacy Needs
of Health Grid at Global Grid Forum 15,
Co-Chair
Life Science Grid Research Group meeting on HealthGrids at Global Grid Forum
16,
Co-Chair
Life Science Grid Research Group meeting on The Future of Life Sciences
Applications on Grids at Global Grid Forum 17,
Other External Service
NSF Review Panel, December 2007.
NSF Review Panel, November 2006.
NSF Review Panel, June 2006
NSF Review Panel, November, 2005
NSF Review Panel, April, 2005
Board of Directosr, Illinois Medical District
BiTMap program. 2005-present.
Board of Directors,
Member of CS Program Committee. 2002-03, 2003-04.
Member of DS Program Committee. 2002-03, 2003-04, 2004-05, 2005-06.
Member of SE Program Committee. 2002-03, 2003-04, 2004-05, 2005-06, 2006-07, 2007-08
Member of ECT Program Committee. 2002-03, 2003-4.
Member of the Research Environment/Scholarship Committee. 2003-04, 2005-06 2006-07, 2007-08.
Chair of the Research Environment/Scholarship Committee. 2006-07, 2007-08.
Member of PhD Committee. 2005-06, 2006-07, 2007-08
Chair of the PhD Committee’s Subcommittee on Competitive Funding 2005-06, 2006-07, 2007-08
Chair of the Colloquium Committee. 2003-04.
Member of the Colloquium Committee 2003-04, 2004-05
Chair of the Bioinformatics Program Workgroup 2004-05, 2005-06, 2006-07, 2007-08.
BioInformatics
|
2007-present |
Member of the Board of Directors of the Field Museum of Chicago’s Biodiversity Synthesis Center (BioSyncC), a subproject of the multi-institutional Encyclopedia of Life project. |
|
2007 |
Co-Chair Life Science Grid
Research Group meeting on “Storage
Grids in Healthcare,” at Open Grid Forum 20, |
|
2007 |
Co-Chair Life Science Grid
Research Group meeting on “LSG-RG Future Directions,” at Global Grid Forum
19, |
|
2006-present |
Member of the Board of Directors for the Illinois Medical District’s Bioinformatics Training Program (BiTMaP) |
|
2006 |
Guest Editor for the ACM Crossroads Journal Special Issue on Bioinformatics 13-1 |
|
2006 |
Program committee co-chair Third International Symposium of Life
Science Grid 2006, |
|
2006 |
IEEE Transactions on
NanoBioscience Program Committee, 2006 |
|
2006 |
IEEE International Conference on
Computer-Based Medical Systems track on "Grids for Biomedicine and
Bioinformatics” Program Committee, |
|
2006 |
Awarded University Research
Assistant Program Grant at DePaul for “An Empirically Derived Tandem Mass
Spectral Database in the |
|
2006 |
Biomedical Informatics
Workshop Program Committee, |
|
2006 |
Co-Chair Life Science Grid
Research Group meeting on The Future of Life Sciences Applications on Grids
at Global Grid Forum 17, |
|
2006 |
Awarded University Research
Assistant Program Grant at DePaul for “An Empirically Derived Tandem Mass
Spectral Database in the |
|
2006 |
Awarded Best of Conference Poster for poster by Kwak, Gil; |
|
2006 |
Awarded Best of Conference Bioinformatics
Poster for poster by |
|
2006 |
Co-Chair Life Science Grid
Research Group meeting on LS Grids, at Global Grid Forum 18, |
|
2006 |
8 publications in international journals and conferences |
|
2006 |
20 publications in local conferences |
|
2005 |
Awarded NIH Grant as Co-Investigator for “MALDI-TOF for High Throughput Signal Transduction Inhibitor Screening” under the NIH Roadmap for Medical Research, Grant R01 HG3864. $2.4M |
|
2004 |
Awarded University Research
Assistant Program Grant at DePaul for “ |
|
2004 |
Awarded NSF Grant as Principal Investigator for “REU Site for Grid Computing and Bioinformatics.” Grant number REU 353989 $260,343 |
|
2003 |
Awarded University Research Council Competitive Grant at DePaul for “Protein Folding Problem – AI Engine” Grant number 350629 |
|
2002 |
Leading member of a team that won two of the three Grand Challenge Problem awards at Super Computing 2002. My portion involved implementing a BioInformatics program (Smith-Waterman) on the Grid. It ran on a set of 7000 processors in 14 countries in 5 continents. |
|
2002-present |
Chair of the Global Grid Forum Research Group on Life Sciences (BioInformatics) |
|
2002-present |
Directed students in a research project to enhance a Mass Spec application by making the code use parallel and Grid/Distributed Computing technologies. This application was written in C and Globus. |
|
2002-present |
Directed students in a research project to enhance the FastA algorithm by implementing it in code using parallel and Grid/Distributed Computing technologies. This application was written in C+and Globus. |
|
2002-present |
Directed students in a research project to enhance the Smith-Waterman algorithm by implementing it in code using parallel and Grid/Distributed Computing technologies. This application was written in C and Globus. |
|
2002-present |
Directed students in a research project to enhance the BLAST algorithm by implementing it in code using parallel and Grid/Distributed Computing technologies. This application was written in C and Globus. |
|
2003-present |
Directed students in a research project to enhance the
Metropolis Coupled Monte Carlo Markov Chain algorithm (used for phylogenetic
tree creation) by implementing it in code using parallel and Grid/Distributed
Computing technologies. This
application was written in C and Globus.
This application is utilized in the funded project NSF 0228675, ATOL:
Early Bird: A Collaborative Project to Resolve the Deep Nodes of Avian Phylogeny,
P.I.: Shannon Hackett. |
|
2003-present |
Directed students in a research project to enhance the successful
implementations of software to simulate lipid bilayers and biological membranes
using both the Configurational Bias Monte Carlo Method (CBMC) and Molecular Dynamics
(MD). The simulations provide a wealth of detailed information about the atomic
level properties of water and lipid molecules which can be compared with experiment,
and can be used to help to construct better theoretical models. Current simulations
being done involve the properties of cholesterol in lipid membranes. Cholesterol
is known to be an essential component of mammalian cell membranes but its exact
role is not well understood. We are using a novel simulation technique which combines
traditional Molecular Dynamics under conditions of constant temperature and pressure,
and Configurational Bias Monte Carlo. The combined simulation methods provide
more efficient sampling of the huge number of configurations of the lipid-cholesterol
system. Previous simulations have been run at up to 1600 lipid or cholesterol
molecules, and 52,000 water molecules. The size of the simulation cell is about
the same size as observed nano-domains, or "rafts" which play important
functional roles in membranes. We are increasing these simulations by an order
of magnitude in the physical dimensions and 2 to 3 orders of magnitude in time
by implementing it in code using parallel and Grid/Distributed Computing
technologies. This application was
written in C and Globus. This
application is utilized in the funded project NIH 7R01GM054651-04, Simulations
of Cholesterol in Lipid Bilayers, P.I.: H. Larry Scott |
|
2003-present |
Directed students in a research project to Grid software
that aids in the development of a complete physical map of the region of the
human genome that shows linkage to Bipolar disorder (BP) and to close all existing
gaps in the published Human Genome Project and Celera maps. Following that, a
complete molecular characterization of the region is to be made, which will serve
as a framework for identification of a susceptibility variant for BP. Thus, the project will create a high density
SNP map specific for the region in question, supported by software. The software aids in making annotations for
the sequences, which is utilitarian for other projects. Expanding the nature of the software for utilitarian
purposes for other projects as a web service leads to a vast increase in the demand
on the computational resources. Therefore,
we have implemented this software on the shared resources of the Illinois Bio-Grid
using the IBG Workbench software tools. This application is utilized in the funded
project NIH 5R01 MH065560-01, Fine Genomic Mapping of 13q32 in Bipolar
Disorder, P.I.: Elliot Gershon |
|
2002 |
Awarded Grant from the NCSA/Alliance as Principal Investigator for GrADS BioInformatics (Grant Num: ASC020033N) |
|
2002 |
Partner in the |
|
1975 |
Performed a research project sequencing rabbit Immunoglobulin-G under renowned professor Leroy Hood at the California Institute of Technology. Dr. Hood is now the President and Director of the Institute for Systems Biology. I was an undergraduate at the time. See publications. |
|
1976-1979 |
Majored in Biology (and Physics with Math minor) at Loyola University of Chicago |
Grid and Distributed
Computing Technology
|
2004 |
Best of Conference poster at SuperComputing 2004 (top conference in field – 109 high quality accepted posters) |
|
2003 |
Awarded University Research Council Competitive Grant at DePaul for “Protein Folding Problem – AI Engine” Grant number 350629 |
|
2002 |
Leading member of a team that won two of the three Grand Challenge Problem awards at Super Computing 2002. My portion involved implementing a BioInformatics program (Smith-Waterman) on the Grid. It ran on a set of 7000 processors in 14 countries in 5 continents. |
|
2002-present |
Chair of the Global Grid Forum Research Group on Life Sciences (BioInformatics) |
|
2002 |
Member of the Globus team, which won the R&D 100 award. |
|
2002-present |
Directed students in a research project to enhance a Mass Spec application by making the code use parallel and Grid/Distributed Computing technologies. This application was written in C++ and Globus. |
|
2002-present |
Directed students in a research project to enhance the FastA algorithm by implementing it in code using parallel and Grid/Distributed Computing technologies. This application was written in C++ and Globus. |
|
2002-present |
Directed students in a research project to enhance the Smith-Waterman algorithm by implementing it in code using parallel and Grid/Distributed Computing technologies. This application was written in C++ and Globus. |
|
2002-present |
Directed students in a research project to enhance the BLAST algorithm by implementing it in code using parallel and Grid/Distributed Computing technologies. This application was written in C++ and Globus. |
|
2000-present |
Performed research (coding) in dynamic adaptation to Grid environments. These applications needed to monitor dynamic performance of the application and compare this to expected values for performance. The applications further needed to detect variances in the monitored performance from the expected value and, upon substantial degradation, locate new resources where the application is expected to perform better and migrate the application to those resources. This work led to several publications (see publications section). This application was written in C, C++, and Globus, and was based on the Cactus application framework. |
|
2001-2002 |
Worked with Ph.D. students in developing the Set Extended ClassAds language. This declarative language allows specification of compute resources to a broker. The language also allows the writer to specify a performance model, which is used to predict performance on the selected compute resources. (see publications section). This application was written in C++ and Globus. |
|
2000-2002 |
Worked with the leaders in Grid Technology on the GrADS project to create an architecture to perform resource location and selection, application staging and launching, contract monitoring, dynamic adaption to changing Grid environments, etc. This work led to several publications. See http://hipersoft.cs.rice.edu/grads/. This application was written in C, C++, and Globus. My work was based on the Cactus application framework. |
|
2002 |
Directed students in developing C language additions to the gSOAP package, which is a C version of a SOAP engine. The additions included making a GSI transport layer (GSI is a Grid Security package from the Globus Toolkit™) and adding support for document/literal encoding (in addition to the already existing SOAP-section 5 encoding). This was used as an inter-processor communications protocol for Grid distributed applications. |
|
2002 |
Performed research and directed students in a project to develop the Globus Toolkit OGSA architecture in the C language. This was used as an inter-processor communications protocol for Grid distributed applications. |
|
2002 |
Managed a project to develop the Globus Toolkit™ on the Windows platform. |
|
1998 - present |
Performed research in several areas pertaining to distributed computing utilizing OO techniques (primarily in Java and C). These research projects concern dynamic load balancing in a cooperative environment between the client application and the resource allocation libraries. The environment must be cooperative because in a non-cooperative environment, the client knows nothing (and should know nothing) about the nodes available nor the relative processing power of those nodes. Similarly, the load balancer knows nothing about the ideal ways of distributing the application. In a cooperative environment, the client supplies information about the process to be distributed to help the load balancer make more efficient uses of the resources. |
Management
|
2003-present |
Managed a team of students that varied from 6 to 25 in number and sometimes included other faculty. Also managed a $350,000 NSF grant and a $2.5 million NIH grant. This team wrote bioinformatics software for high performance distributed grid computing |
|
2001-2002 |
Led a research team involving 9 universities and 14 programmers in adaptive techniques used in high performance distributed grid computing |
|
2001-2002 |
Managed a $1 million contract with MicroSoft in the Globus Project to port the Globus Toolkit to Windows |
|
2002 |
Managed a 4 person team that developed a C version of a Grid Service Architecture used in creating Grid Service Clients and Servers. A Grid Service is a Web Service using SOAP, WSDL, WSIL, etc. to work with Grid Technologies – a form of Distributed Computing. |
|
2001-2002 |
Managed a 2 person team that developed a Portal to control High Performance Cactus Numerical Simulation applications. |
|
2001-2002 |
Managed a 3 person team that managed two high performance multiprocessor Linux servers and one high performance multiprocessor Sun server with Solaris. |
|
1997-2002 |
Managed a 25 person volunteer team managing a Unix Internet server for Chicago Mensa and Mensa International |
|
1994-1998. |
Directed several teams at SPSS in object oriented programming and OLE Automation of ActiveX COM objects. The teams had from 3-6 members. |
|
1990 |
At Datalogics, occasionally performed as a team leader with a staff of one to two programmers. Used TIMELINE and did frequent project time estimates. |
|
1986 |
Managed several projects as a consultant, which had a staff of two programmers. |
|
1984-1985. |
At the Orleans Company, managed the entire data processing staff, which consisted of a programmer and an operator. Was in charge of all hiring decisions. |
|
1980-1988 |
Directed the Chicago Data General Users Group as a member of the executive board and one year as president. This is a professional organization with about 100 member companies. |
|
1986-1988 |
Directed the North American Data General Users Group as a member of the executive board (as national secretary). This is a professional organization with about 2000 member companies and a budget of about $750,000 a year. |
|
1989-1991 |
Directed the Chicago Area Digital Users Society as a member of the executive board. This is a professional organization with about 400 member companies. |
|
1991-2000 |
Chapter Director of the Loyola chapter of Sigma Pi. Average membership of 40. |
|
1993 |
Ran the Illinois Regional Sigma Pi leadership school. |
SGML/HTML/XML/Text
Systems
|
2002 |
Directed students in developing a C version of DOM parser. |
|
2002 |
Directed students in developing additions to the gSOAP package, which is a C version of a SOAP engine. The additions included making a GSI transport layer (GSI is a Grid Security package from the Globus Toolkit™) and adding support for document/literal encoding (in addition to the already existing SOAP-section 5 encoding). |
|
2002 |
Directed students in developing architectures to enable client applications to utilize SOAP, WSDL, and WSIL in C. |
|
2002 |
Directed students in developing a WSDL to SOAP generator engine.. This was written in Java, but the code generated was C. Generated both client stubs and server skeletons. |
|
2002 |
Gave several professional and educational tutorials on XML technologies, such as XPATH, XML-Schema, XML-Namespace, SOAP, WSDL, and WSIL. |
|
2001, 2002 |
Developed and taught a new course
at the |
|
2001 |
Wrote a wrapper around a Resource Selector library to enable utilization as an internet service. This wrapper was written in SOAP and included C++ as well as JavaScript (on web pages) clients. |
|
1988-1991 |
Developed an in-house CASE tool for use with a relational DB. This tool was a generic text DB application that would store text objects based on their SGML markup. It worked generically by parsing the DTD and creating a database from the elements defined in the DTD. |
|
1998-2001 |
Developed and Taught several Web programming courses at Loyola University of Chicago. Also taught introductory Web page development. The Web programming courses included teaching HTML, CGI, HTTP, Perl, JSP, and Java Servlets. |
|
1997-2002 |
Manager of a 25 person volunteer team managing a Unix Internet server for Chicago Mensa and Mensa International |
|
1995-2001 |
Webmaster for |
|
1999, 2000, 2001, 2002 |
Awarded best local American Mensa Webpage |
|
1997, 1998, 1999, 2000, 2001 |
Nominated for the best local American Mensa Webpage. |
|
1995-1998 |
Webmaster for Sigma Pi Fraternity, International. Designed and wrote the webpage with forms and Java applications. http://www.sigmapi.org |
|
1994-2001 |
Chair of the Sigma Pi Fraternity Technology committee. Duties included writing and implementing usenet policies, writing and implementing policies for chapter webpages, implementing several e-mail list servers, implementing usage of e-mail for the headquarters, implementing chapter reporting via html forms, and implementing a multi-purpose e-mail list on the web page with a Java application. |
|
1997-2002 |
Chair of the Chicago Area Mensa Cyberspace committee. Duties included overseeing Web page development, installing a server with BSDi Unix with ongoing system administration, installing several e-mail list servers, writing a Java application for the Web page that displays current and past month activities, coordinating Java Web page applications for newsletter publishing and for event registration, and setting up local and public usenet newsgroups for access via browsers. |
Internet
|
2003-present |
Developed (and/or managed development of) scores of different web programming systems, including Web Services (SOAP, WSDL, & Apache Axis), JSP, Servlets, Struts, CGI, and others. |
|
2002 |
Developed (along with students) a C version of a Grid Service (Web Service for a Grid form of Distributed Computing) as part of the Globus Project. This used SOAP, WSDL, and WSIL and the Apache Axis Server. |
|
2002 |
Developed and taught a new course at the |
|
2001, 2002 |
Developed and taught a new course at the |
|
2001 |
Wrote a wrapper around a Resource Selector library to enable utilization as an internet service. This wrapper was written in SOAP and included C++ as well as JavaScript (on web pages) clients. |
|
2000 |
Wrote the worlds first XML based web server serving conference schedules in three media: WAP phone, web pages, and Voice VoXML. |
|
1999-present |
Developed and taught several Internet Programming courses. Content included HTML, HTTP, CGI, Perl, Java Servlets, RMI, Internet Security, JSP, and XML. |
|
1999 |
Wrote several CGI and Java Servlet programs for various web sites, including Sigma Pi Fraternity, International, Chicago Mensa, and various clients. |
|
1997-2002 |
Managed a 25 person volunteer team managing a Unix Internet server for Chicago Mensa and Mensa International |
|
1999, 2000, 2001, 2002 |
Awarded best local American Mensa Webpage |
|
1997, 1998 |
Nominated for the best local American Mensa Webpage. |
|
1995-2001 |
Webmaster for |
|
1995-1998 |
Webmaster for Sigma Pi Fraternity, International. Designed and wrote the webpage with forms and Java applications. http://www.sigmapi.org |
|
1994-2002 |
Chair of the Sigma Pi Fraternity Technology committee. Duties included writing and implementing usenet policies, writing and implementing policies for chapter webpages, implementing several e-mail list servers, implementing usage of e-mail for the headquarters, implementing chapter reporting via html forms, and implementing a multi-purpose e-mail list on the web page with a Java application. |
|
1997-2002 |
Chair of the Chicago Area Mensa Cyberspace committee. Duties included overseeing Web page development, installing a server with BSDi Unix with ongoing system administration, installing several e-mail list servers, writing a Java application for the Web page that displays current and past month activities, coordinating Java Web page applications for newsletter publishing and for event registration, and setting up local and public usenet newsgroups for access via browsers. |
|
1997-1998 |
Developing a national membership database in Java for American Mensa. |
|
1997 |
Developed OLE Automation for COM ActiveX objects in C++ at SPSS. These objects were spreadsheet like objects for a statistical software package. The objects allowed dimensions to be pivoted for interactive research on data dependencies. The Automation interface allowed full searching capabilities on the multidimensional structure as well as a display enhancement interface. These ActiveX objects won the Smithsonian Institution Permanent Research Collection of Information Technology award in 1997. |
|
1999-2001 |
Developed and Taught several Web programming courses at Loyola University of Chicago. Content included coding CGI in Perl, hand coding the HTTP protocol in Java, coding Servlets in Java, coding JSP, coding Java Applets, etc. |
Pedagogy
Developed and taught the following graduate courses at
· CSPP 53030 Web Services
This course included topics in XML Schema, WSDL, SOAP, WSIL, UDDI, and writing webservices in Java for Tomcat
Developed and taught the following graduate courses at
· CSPP 545 (later 53025) Electronic Data and Document Exchange (XML)
This course included topics in XML, DTD, XML Schema, XPATH, XSLT, SAX, DOM, and more
Developed and taught the following graduate courses at
· CSPP 59410 Independent Grid Programming
This course guided students in a research programming project in Grids (distributed computing), Web Services, Grid Services, XML, BioInformatics, Virtual Reality, and more.
Developed and taught the following new course for undergraduate study over the web in conjunction with eCollege (distance learning) for Loyola University of Chicago under an appointment as a Visiting Instructor in 2000 and 2001
· CS 225 Introduction to Web and CGI Programming using JavaScript and Perl
· CS 227 Client/Server Web Programming using Java servlets
Developed and taught the following new course for undergraduate study for Loyola University of Chicago under an appointment as a Visiting Instructor in 2000 and 2001
· CS 227 Client/Server Web Programming using Java servlets
Developed and taught the following new course for undergraduate study for Loyola University of Chicago under an appointment as a Visiting Instructor in 1998-2001
· CS 225 Introduction to Web and CGI Programming using JavaScript and Perl
Taught the following graduate courses at Loyola University of Chicago under an appointment as a Visiting Instructor in 1999 and 2000
·
CS 473 Object Oriented Programming in C++ and Java
This course included topics in serialization, design patterns, and concurrency
Taught the following undergraduate courses at Loyola University of Chicago under an appointment as a Visiting Instructor in 1999 and 2000
· CS 271 Data Structures using Java
· CS 272 Object Oriented Programming in C++ and Java
· CS 374 Operating Systems
Taught the following graduate course at Loyola University of Chicago under an appointment as a Visiting Instructor in 1998 and 1999
·
CS 473 Object Oriented Programming in C++ and Java
This course included topics in serialization, design patterns, and concurrency
Taught the following undergraduate courses at Loyola University of Chicago under an appointment as a Visiting Instructor in 1998 and 1999
· CS 170 Introduction to Programming using Java (majors)
· CS 271 Data Structures using Java
· CS 272 Object Oriented Programming in C++ and Java
Taught the following graduate courses at Loyola University of Chicago as a part-time instructor in 1998:
· CS 488 Visual Basic Seminar
Was the class coordinator for CS 125 (Introduction to Programming using Visual Basic) at Loyola University of Chicago in 1998
Taught the following undergraduate courses at Loyola University of Chicago as a part-time instructor in 1998:
· CS 125 Introduction to Programming using Visual Basic (non-majors)
· CS 120 Introduction to Computer Applications
· CS 101 Introduction to the WWW
Performed on-the-job training of other computer professionals in Object Oriented (C++) programming in 1993, 1994, 1995, and 1996
Object Oriented
Technology
|
|
Software Architecture, Test Driven Development, JUnit, Eclipse, |
|
1998 - present |
Performed research in several areas pertaining to distributed computing. Utilized OO techniques (primarily in Java). These research projects concern dynamic load balancing in a cooperative environment between the client application and the resource allocation libraries. The environment must be cooperative because in a non-cooperative environment, the client knows nothing (and should know nothing) about the nodes available nor the relative processing power of those nodes. Similarly, the load balancer knows nothing about the ideal ways of distributing the application. In a cooperative environment, the client supplies information about the process to be distributed to help the load balancer make more efficient uses of the resources. |
|
1998 - 2000 |
Taught C++ and Java, in several undergraduate and graduate OO courses at Loyola University of Chicago. |
|
1994 - 1998. |
Worked in C++ at SPSS as one of 3 very senior programmers with the title Master Software Engineer. Taught other programmers theory and practice of object oriented programming and analysis. |
|
1991 – 1994. |
Worked in C++ at SSA as the local expert in Object Oriented Technology (at that time, a nascent technology). Taught other programmers theory and practice of object oriented programming and analysis. |
|
1989 - 1991. |
Worked in C++ at Datalogics and became the local expert. At this time, Object Oriented Technology was largely unknown in industry. Taught other programmers theory and practice of object oriented programming and analysis. Wrote a generic class library and incorporated some public domain libraries into it. Wrote a class documenter, which allowed documentation to be written in the code (in the header file) and would extract it from there and write a manual and on-line help text. Wrote a system to allow word indexing of a textual database. Helped design and write a document database with two views: structural elements (in SGML) and composed pagination. |
|
1990. |
Worked in SmallTalk at Datalogics and wrote a small prototype system in order to evaluate the potentials of SmallTalk. |
|
1991. |
Worked in Objective C for a research project as part of my Master's Degree curriculum. This project is event driven and interacts with the NeXT machine's DSP in real time. |
|
1991. |
Wrote a generic set of classes in C++ under Microsoft Windows to implement a genetic algorithm and an A* algorithm. |
|
1991-1993 |
Designed, wrote, and implemented a set of base classes in C++ at SSA that were used with generated code for a client/server CASE tool. Also wrote the prototype code that the code generator would generate. The essence of these classes was based on the Codd/Date E-R model. Classes existed for Entities, Relationships, Windows, Databases, Elements, and other general categories. Also assisted our first client in designing and implementing the first set of applications (GL) developed by this CASE tool. (the application to be sold as part of BPCS). Taught other programmers theory and practice of object oriented programming and analysis. |
Event Driven Software and GUI
|
Fall 1990. |
Worked in SmallTalk under OS/2 at Datalogics and wrote a small prototype text database. The user is shown a list of SGML elements in one pane and chooses one. This updates the next pane with the contents of that element. |
|
Summer-Fall 1991. |
Worked in Objective C for a research project as part of my Master's Degree curriculum. The GUI interface was to simulate a graphic equalizer and record equalization settings used by sound experts. The sound expert was to change the value of a slider as though it was a band on an equalizer and the program interacted with the NeXT DSP in real time to perform the given equalization. |
|
1989-1990. |
Wrote a major generic text database system in C++ and RDB at Datalogics. This system, while not truly event driven, was created with classes that would perform the action as though it were selected as an event. |
|
Spring, 1991. |
Wrote a paper and gave a talk as
part of the requirements for a course at Loyola's |
|
1991-present. |
Currently writing a generic genetic algorithm and a generic A* algorithm as a research project as part of my Master's Degree curriculum. These systems are written in Borland C++ under DOS Windows. |
|
Fall 1991. |
Took the Microsoft Windows Technical Workshop. |
|
1991-1993 |
Designed, wrote, and implemented a set of base classes in C++ at SSA to be used with the generated code for a client/server CASE tool and the prototype code that the code generator would generate. The base classes worked with the generated code to form Windows applications to run on the PC (the server portion of the applications was created elsewhere). The Windows base classes and generated classes used the Borland C++ environment with Applications Frameworks. Borland's base classes were encapsulated with configurable base classes to lend a degree of compiler/base class independence. Since the project was started in 1991, it was not known how Microsoft would develop their OOP development environment so no provision to bypass Borland's DDVT methodology was taken. Also assisted our first client in designing and implementing the first set of applications (GL) developed by this CASE tool. (the application to be sold as part of BPCS) |
AI
|
Spring 2006 - ? |
Directed a graduate student performing research in datamining of protein structure data |
|
Fall 1998 to present |
Performed research in several areas pertaining to distributed computing utilizing OO techniques (primarily in Java). These research projects concern dynamic load balancing in a cooperative environment between the client application and the resource allocation libraries. This can be considered AI because one of the client applications that are involved in the study to participate in a distributed environment pertains to a search space that is searched using a heuristic mini-max search in a two-person zero-sum game. The alpha-beta search algorithm enhancement is particularly challenging in a distributed environment. |
|
Summer-Winter 1991. |
Wrote a generic set of classes in C++ under Microsoft Windows to implement a genetic algorithm and an A* algorithm. It was intended for use as a pedagogical paradigm of object oriented programming use in AI (object-oriented programming was quite new at the time). |
|
Summer 1991. |
Used Franz Lisp extensively in a graduate class at Loyola as part of my Master's Degree curriculum. |
|
1989 to 1991 |
Enhanced and maintained a system written in PROLOG that took a simple BNF language as input and gave as output a System Requirements Document text file, a System Design Document text file, a SQL schema, and a set of C and C++ modules to work with the data (including storing and retrieving the data from a choice of several different database managers and a screen). |
|
1990 |
Designed and wrote a system in PROLOG on the PC under DOS that worked with an SGML DTD. It took the DTD and listed all potential tags in context along with all formatting issues that each tag could affect so that a document could be drawn up describing what each tag in context would do. |
|
1996 |
Took a graduate course at Loyola in Neural Nets as part of my Master's Degree curriculum |
Hardware
|
IBM PC (MS-DOS, OS/2, XENIX, Windows, MINIX, Win 95, Win 98, Win NT, Win 2000, WIN XP FreeBSD, Linux RedHat, Linux SUSE, BSDi, Linux Debian) |
18 years 1988-present |
|
Sun (Solaris) |
5 years 2001-present |
|
SG2 |
5 years 2001-present |
|
VAX |
5 years |
|
NeXT |
0.5 years |
|
DG (RDOS, AOS, and AOS/VS) |
8 years |
|
8080 |
3 years |
|
DECsystem-10 |
2 years |
|
PDP-11 (RSTX and UNIX) |
3 years |
|
Univac-1100 |
1 years |
|
Commodore 128 |
6 years |
|
TI99 |
3 years |
|
SUN (UNIX) |
1 years (circa 1988) |
|
3B5 (UNIX) |
2 years (circa 1988) |
|
3B15 (UNIX) |
2 years (circa 1990) |
|
IBM RS6000 |
0.5 years (circa 1993) |
Languages
|
XML |
10 years 1988-1991 (SGML) and 1999-present |
|
Java |
11 years 1995-present |
|
C++ |
18 years 1988-present |
|
C |
20 years 1986-present |
|
C# |
4 years 2002-present |
|
Perl |
3 years 1998-2001 |
|
Visual Basic |
4 years 1995-1999 |
|
80x46 Assembler |
2 years |
|
SmallTalk |
0.5 years |
|
Objective C |
0.5 years |
|
PROLOG |
2 years |
|
DG/L |
6 years |
|
ALGOL |
5 years |
|
DG assembler |
4 years |
|
FORTRAN |
8 years |
|
PDP-11 assembler |
3 years |
|
COBOL |
4 years |
|
LISP (FRANZ) |
1 year |
|
8080 assembler |
3 years |
|
DECsystem 10/20 assembler (MACRO) |
2 years |
|
BASIC |
4 years (also see Visual Basic) |
|
SAIL (an ALGOL derivative) |
2 years |
|
IITRAN |
1 year |
|
PL/C |
1 year |
|
PL/1 |
1 year |
|
Pascal |
4 years |
Databases
|
MS SQL Server |
Used this LAN based version of a relational database manager at SSA to use in the internals of generated applications using our case tool. |
|
QELIB (DBASE) |
Used this PC relational database manager at SSA to use in the internals of generated applications using our case tool. |
|
RDB - VAX |
Used this VAX/VMS relational database manager at Datalogics to build a major generic text database system in C++. Also developed an in-house CASE tool that generated C++ classes using embedded SQL. Also developed a generic toolset of classes in C++ to do word context searching. |
|
Oracle |
Used this relational database manager at Datalogics to build systems both on the VAX and on the PC under DOS. This work was mainly embedded SQL but some work with FORMS was done. |
|
SIR |
Converted this relational database manager to run on DG under AOS/VS (from VAX). Also helped debug the core product under VAX. Began designing a screen oriented forms definition with intelligent user guidance (worked on this design until the company went bankrupt). |
|
Codasyl - Lerner |
Helped design and implement this Codasyl based database manager to run on DG RDOS machines. The Codasyl functionality was implemented for an ALGOL based language (DG/L). Also implemented an entire accounts receivable and general ledger system using this DBMS. |
|
DBMS - DG |
Used this relational database manager at the Orleans Company to develop many new small support programs for an inventory / manufacturing / orders system. Developed mainly in SQL. |
|
Sybase |
Used this relational database manager at many client sites while consulting and at SIR to analyze the competition's product. |
|
Informix |
Used this relational database manager at many client sites while consulting and at SIR to analyze the competition's product. |
|
DM |
Used this (pseudo) relational database manager at Datalogics to maintain a textual database system. Worked mainly in C calling database routines directly. |
|
INFOS |
Used this ISAM database manager at a number of client sites while consulting. Worked in C, COBOL, and FORTRAN calling database routines directly. |
|
ISAM |
Used this DECsystem-10 ISAM database manager at the Chicago Tribune to maintain an inventory / depreciation system in COBOL. |
Communications
|
1980 |
Wrote a system at the Chicago Tribune to send files over an asynchronous line between two TOPS-10 machines. At that time, DEC didn't have a working system to do this. All hand shaking protocols and communication packets were designed and implemented (in a client / server configuration). |
|
1982 |
Designed and wrote a system at Lerner to send files and perform functions on the file system (list directories, delete files, etc.) over a synchronous IPC (inter-processor communications) line between an S-130 running RDOS and an S-230 running AOS. At that time, Data General didn't have a working system to do this. All hand shaking protocols and communication packets were designed and implemented. |
|
1985 |
Performed the communications hardware setup when a system was physically moved to a new site. This included installation and testing of muxes and a wide area network. |
|
1991 |
Designed and wrote a system at Datalogics to manage graphic files for a VAX cluster in an Oracle database. This was written in C++ and worked in a client / server mode keeping separate threads for each connected user. It utilized DECnet software. |
|
1994 |
Took a minor role in helping debug client/server communications for applications generated by our case tool. This required using NSD and CPIC. |
Hardware Management
|
2003-Present |
Managed and taught teams of students (up to 25 in number) using and managing my own 20 node Torque/DCC/Maui cluster and 20 node SunFire and machines from other institutions in the Illinois Bio-Grid. |
|
2001-2002 |
Managed a 3 person team that managed two high performance multiprocessor Linux servers and one high performance multiprocessor Sun server with Solaris. |
|
1997-2002 |
Manager of a 25 person volunteer team managing a Unix Internet server for Chicago Mensa and Mensa International. |
|
1984-1985 |
Was in charge of entire DP site. Performed some cable laying, connector wiring, and end-to-end testing. Ran diagnostic functions on an MV-4000 (Data General) CPU. In charge of all procurement. |
|
1985-1987 |
In various consulting contracts, installed cabling and end-to-end connections for new installations. |
|
1985 |
Performed the communications hardware setup when a system was physically moved to a new site. This included installation and testing of MUXes and a wide area network. |
|
1978 |
While attending college, built my own micro-computer system based on an S-100 bus and an 8080-A microprocessor. Wrote a monitor for this system as well as an 8080 assembler. |
|
1997-present |
Sysadmin of the internet server that supports Chicago Mensa, American Mensa, and Mensa International. The system runs under BSDi |
CASE tools programming
|
1982-1983 |
Wrote a generic screen-oriented database maintenance system in DG/L (a C-like language). The programmer used this system by creating a forms definition file which specified field locations on the screen, prompt strings, which database field the screen field was connected to (along with computations and validations), and access options (read, write, etc.). |
|
1986 to 1988 |
Designed a screen based forms definition package. A programmer would use the system via a set of predefined keys which would designate certain screen portions as prompt fields, input fields, output fields, calculation routines, etc. The system worked in conjunction with a pre-defined SQL schema, which allowed for easy access to database field names. |
|
1989 to 1991 |
Enhanced and maintained a system written in PROLOG that took a simple language as input and gave as output a System Requirements Document text file, a System Design Document text file, a SQL schema, and a set of C and C++ modules to work with the data (including storing and retrieving the data from a choice of several different database managers and a screen). |
|
1990 |
Designed and wrote a system in PROLOG on the PC under DOS that worked with an SGML DTD. It took the DTD and listed all potential tags in context along with all formatting issues that each tag could affect so that a document could be drawn up describing what each tag in context would do. |
|
1991-1993 |
Helped design and took a lead in writing a CASE tool for client/server applications. The server was an AS/400 and the client was a PC under Windows. The definition facility ran on a PC under OS/2. The code generation facility was implemented as an interpreter using PC/YACC. The generated code was C++ for Windows. Also, helped a different team implement the first set of applications (GL to be sold on the open market) using this case tool. |
Compilers
|
1978 |
While attending college, built my own micro-computer system based on an S-100 bus and an 8080-A microprocessor. Wrote a monitor for this system as well as an 8080 assembler. |
|
1982-1984 |
Wrote a pre-processor for DG/L (a block-oriented ALGOL based language) at Lerner to allow for a named database field variable interface to be created and used like modern C like structures. By the generic way this system was designed, it could also be used as a preprocessor macro generator. |
|
1987 |
Wrote a cross assembler for the 8086 in C on a VAX. |
|
1990-1991 |
Enhanced and maintained a CASE tool in PROLOG that would generate documents, SQL schema, and C++ modules. Used Turbo-PROLOG's toolbox to create and parse a BNF language. |
|
1993 |
Wrote an object oriented equivalent of YACC and developed a cross code generator/compiler for the PC to generate IBM RS6000 RISC assembly code. This was a combined personal project and projects for two different graduate courses. |
|
1991-1993 |
Helped write a case tool code generator as an interpreter running under OS/2 and developed in PC/YACC and C. The output of the interpreter was C++ code for the PC for Windows. |
Other
Member of the Board of Directors of the Illinois Medical District’s BiTMap program 2005 to present.
Chair of the Global Grid Forum Research Group on Life Sciences (BioInformatics) 2002 to present (http://www.cs.uchicago.edu/~dangulo/LSG and http://www.gridforum.org)
Chair of the
Chair of the
Founder of the Illinois Bio-Grid 2003 to present
Member of American Mensa Cyberspace Committee 1998 to 2002.
Member of Mensa International Cyberspace Committee 1998 to 2002.
Member of American Mensa and Mensa of
Founder and leader of the Sigma Pi alumni club at Loyola.
Sigma Pi International Webmaster 1995 to 1999.
Sigma Pi International Technology Chairman 1994 to 2000.
Chapter Director of Sigma Pi chapter at Loyola from 1991 to 2000.
Sigma Pi
Executive Board member of the Chicago Area Digital Users Society from 1989 to 1991.
Secretary of the North American Data General Users Group 1986 to 1988 (about 3000 member companies, budget of $750,000 per year).
Secretary of the Chicago Area Data General Users Group 1987 to 1989.
President of the Chicago Area Data General Users Group 1986.
Secretary of the Chicago Area Data General Users Group from 1980 to 1985.
Awards
Best of Conference Poster (my student lead author) at MSEC/CTIRS 2006
Best of Conference Poster at Super Computing 2004 (top conference in field).
Best of Conference Student Poster (my student lead author) at MSEC 2004
Leading member of group that won two of three Grand Challenge awards at Super Computing 2002. (extremely prestigious)
Loyola University Robert B. Reisel award for outstanding academic achievement, 1998.
R&D 100 Award from R&D Magazine (Globus Toolkit™ 2.0) 2002 (extremely prestigious).
Smithsonian Institution Permanent Research Collection of Information Technology award winner (Pivot Tables SPSS) 1997 (extremely prestigious).
Awarded American Mensa Chairman's Award (its highest award) 1999
Awarded Chicago Mensa Service Award (its highest award) 1999
Winner Indiana Science Fair 1974 - entered in International Science Fair
NMSQT national semi-finalist (award for high SAT score 99+ percentile) 1973
Best American Mensa Web Page 2002
Best American Mensa Web Page 2001
Best American Mensa Web Page 2000
Best American Mensa Web Page 1999
Nominated for best American Mensa Web Page 1998
Nominated for best American Mensa Web Page 1997