Summary |
Skills |
Open Source Projects |
Job History |
Education |
Recognitions
Creative and versatile individual with recognized experience in
SGML/XML, Web and Internet technologies. Experienced in distributed
application design and development in Java, Perl, and C; Unix system
administration; and GUI development. Maintain a variety of
free software applications used by hundreds of users throughout the
world. Proven ability to learn quickly and become an expert in a
variety of technologies. Skilled at producing quality work with limited
resources.
- Programming/Computer Languages:
-
Bourne shell script,
C (ANSI, K&R),
CSS,
Java,
JavaScript,
MS-DOS/Windows batch script,
Perl (4 & 5),
some Python,
some SQL,
some UML,
some VBScript,
XPath,
XSLT
- Computer Protocols:
- HTTP,
MIME,
POP3, SMTP
- Document Languages:
- XML,
HTML,
SGML,
Docbook,
Frame Maker Interchange Format (MIF),
S1000D,
some nroff/troff
- Programming Libraries:
-
Dojo,
DOM,
Java Servlet API,
JavaBeans,
JAXP,
JDK 1.2 and later,
JFC/Swing,
JSP,
Log4j,
SAX,
- Operating Systems:
- HP-UX,
Linux,
Solaris, Windows.
- Software:
-
Ant,
Apache HTTP Server,
CVS,
IzPack,
FrameMaker,
IIS,
Linux iptables,
Lucene,
(GNU) make,
Saxon,
sendmail,
subversion,
Tomcat,
XDesigner,
XEP,
Xerces-J,
Creation and contribution of open source software since 1993,
including:
- DTDParse*
- Provided updates and fixes to Perl-based SGML/XML DTD parsing tool
originally developed by Norman Walsh.
- man2html*
- Creator of Perl-based program for web-based searching and
viewing of Unix/Linux manpages.
- MHonArc*
- Creator and maintainer of one of the top free web-based
email archivers, recognized in several publications and used
by numerous web sites.
- nmh
- Contributed patches
to the nmh mail handling system.
- perlSGML*
- Creator of a collection of Perl-based tools for parsing
and analyzing SGML DTDs.
- Proc::Daemon*
- Creator of Perl module to allow a Perl program to run as
a Unix/Linux daemon process.
- Text::Bind*
- Creator of Perl module for binding Perl structures to a text file,
with its primary use for supporting HTML templates for CGI-based programs.
- XML Commons Resolver
- Provided patches to support Windows drive-letters in
pathnames, recognition of xml.catalog.verbosity if
CatalogManager.properties is not used, and proper setting
of systemID of InputSource during SAX parsing of XML
catalog files.
* Software available at
<http://www.mhonarc.org/release/>.
Senior Computer Systems Designer
Lead architect and developer of NSIV, an
Interactive Electronic Technical Publication (IETP) viewer for
NAVAIR
supporting S1000D
and other military document specifications.
Independent Software Consultant
Various consulting services, including product development,
web application development, technical and electronic publication,
content management, and open source software.
Clients
EPS Corporation
PBM Associates, Inc:
- Co-architect of NSIV,
an S1000D
Interactive Electronic Technical Publication (IETP) viewer for
NAVAIR,
based on web and open source technologies:
- Designer and implementor of the IETP
compilation process utilizing
Ant,
Saxon, and
Lucene (for full-text
searching).
- Designer and implementor of IETP-based web services
using Java servlet technology
under Apache Tomcat.
- Designer and implementor of a modular
Java Swing-based application for simplifying NSIV management operations
for non-technical users.
- Designer an implementator of S1000D Issue 3.0 and 4.0 applicability,
including submitting technical feedback to S1000D working groups
for improving the S1000D applicability model.
- Browser-based user interface development using
JavaScript
and Dojo.
- Designer and implementor of automated software installation using
IzPack.
- Developed testing framework using
Ant,
JUnit,
XmlUnit,
HtmlUnit,
and other OSS libraries to facilitate automated testing.
- Source tree, application build, and distribution packaging
management.
- Architect and implementor of a Java-based
S1000D BREX
(Business Rules Exchange) data module (DM) validator using
Saxon
(XPath 2.0) and
Xerces.
Features include:
- S1000D Issues 2.2 through 4.1 BREX support.
- Layered BREX support.
- GUI inteface.
- Command-line interface (for batch validation).
- Java API.
- XML and HTML report formats.
RSI Content Solutions:
RSuite
custom solutions development in Java, Javascript, and XML: Workflows,
action handlers, web services, and UI customizations.
Hewlett-Packard:
Provide strategic recommendations in improving and managing XML-based
authoring and publishing environment
·
Enhance and maintain Docbook-based XSLT transforms for PDF and HTML
publications
·
Re-designed and re-implemented conversion process from older
FrameMaker+SGML-based documents to Docbook-based XML documents, improving
the conversion process time by over 4,000 percent.
Hewlett-Packard:
Produced a 150+ page developer's guide documenting HP's custom Adobe
FrameMaker+SGML 6.0 authoring environment: EDD analysis, localization
procedures, custom third-party plugins analysis, including compilation
and installation · Provided strategy recommendations
for upgrading to FrameMaker 7.0 and the transition from SGML- to
XML-based authoring · Provided advise on graphics authoring and
conversion.
Senior Architect
Goodmail
Systems, Inc
- Architect of key components of
Goodmail Systems'
secure stamping system for email:
- Format of stamps within email.
- Stamping process.
- Stamp validation process.
- Overall security model.
- Bootstrapped the company's initial development system
- Developed initial set of cryptographic- and stamp-related
libraries utilizing OpenSSL.
Software Engineer
Language Computer
Corporation
Provided guidance and effort in the porting of
research, academic-oriented work into commercial, production quality
work · Designed and developed C++ API for a Question &
Answering product that uses natural language processing · Developed
and maintain C/C++ utility library for use within LCC products ·
Established source code management respository using CVS
and a collection of Perl scripts I developed to automate source code
management tasks · Developed (GNU) makefiles for managing the
compilation of projects for multiple programming languages:
C/C++, Java, Perl.
Web Applications Architect
Texas Instruments
- Co-architect of a collaborative wireless classroom learning system
utilizing
Java,
Perl,
Apache,
Tomcat, and
XML,
under Solaris, Linux, and Win32.
- Design, develop, and maintain core
Java application
library, which includes:
- Proprietary message system supporting asynchronous and sychronous
message delivery that can adapt to multiple application network
protocols (e.g. HTTP). Messaging based on a point-to-point
queuing model with message delivery relay support.
- Servlet-based framework for web application development.
- General utilities like caches, application property resource
management, thread pooling, and jar file merging.
Created non-synchronized versions of some JDK classes for improved
runtime performance.
- Software project administration:
- CVS repository management.
- Cross-language software build management using GNU make.
- Automated nightly build and release processes developed
in Perl.
- Tools to auto-generate template source code from technical
specifications.
- Miscellaneous tasks: technical consultation to colleagues,
system administration, QA rollover procedures.
Senior Software Engineer
Excite@Home
- Web application development for Excite@Home
broadband content service:
- Designer and developer of a server-side application framework in
Java:
- Page layout management.
- Reusable page components.
- Encapsulation and management of various server-side data repositories.
- Debugging modes.
- Utility classes.
- Development and maintenance of core server application library
built on top of the Java Servlet API:
- HTML component library to help support a consistent look across
applications and web browsers by hiding the rendering differences of
browsers and to promote better reusability of visual components:
- Font and color settings.
- Font and color inheritence.
- Markup minimization to reduce page size.
- Automatic generation of CSS styles and/or FONT elements.
- Java-based web server (based on Tomcat 2.1).
- Co-branding support.
- Custom page dispatching.
- Logging.
- Developed various modules for the broadband news application, including:
news photo viewer, full news story display,
online games listing, top movie/music/tv listings, and lottery.
- Developed a multi-windowed web-based editor for the creation and
editing of cover pages for @Home's news and sport channels:
- Client-side interface implemented in JavaScript and HTML.
- Service-side implemented in Perl, invoked via standard CGI or
Apache::Registry module running under
Apache's
mod_perl.
Software Engineer
Lucent Technologies/Quadritek
- X/Motif development for
Quadritek's main product QIP, an
IP management software product for large corporate TCP/IP networks:
- Design and implement hierarchical and table views
with the help of Microline's widget library.
- Create custom event handlers and action routines to extend
widget behavior.
- Design and implement HTML-based help system.
- Icon/image management.
- Application X resource management.
- Reusable widget component development to reduce redundant code.
- Troubleshoot X/Motif technical problems.
- Designed and implemented QIPxpress: a
web/Perl application for managing and configuring
Quadritek/Lucent's
DHCP and DDNS/DNS servers with optional LDAP support.
Application designed to run under WinNT and Unix systems with a variety of
HTTP servers
(Apache,
Netscape, and IIS).
Senior Information Analyst
Reed Technology
and Information Services Inc.
- Administrator and co-developer for large on-line community project:
- Project component development using C, C++ and
Perl
programming
languages; CGI; Netscape API (NSAPI);
Sybase Open Client;
NetGravity API; SybPerl.
- Developed source code and configuration management software
for the entire project using SCCS and Perl.
- Netscape Suitespot server administration.
- Sapphire/Web project administration.
- Software packaging, distribution, and installation.
- Designed and authored technical documentation.
- Unix (Solaris) administration.
- Sub-project integration.
- Technical consulting for colleagues.
- Developed a pipelined-based conversion process in
Perl for
migrating the Physicians' Desk
Reference SGML source from an in-house legacy main-frame
typesetting system to newer Xyvision XPP-based system.
- Document analysis and design ·
Document conversion and processing ·
Technical consulting on SGML, WWW, and other related
technologies ·
Perl course development and instruction ·
Sun Sparc Solaris 2.5 system administration, including:
third party software installation/compilation;
peripheral installation (memory, disk-drives, etc);
user account management;
and sendmail configuration
- College:
- B.S. in
Information & Computer Science
from the
University of California in Irvine.
- Training:
-
C++ ·
Eliot Kimber's HyTime course ·
Introduction to Rational Rose/C++ Using UML ·
Java ·
Java Swing and XML Programming ·
Microsoft Access ·
NetGravity ·
Object-Oriented Analysis & Design with C++ ·
Omnimark Programming I & II ·
Practical Formatting Using DSSSL ·
Project Management ·
Sapphire/Web ·
TogetherSoft
Java Workshop ·
X/Motif
Work has been included or recognized in several publications
and web sites:
- BYTE Magazine
- HTML & CGI Unleashed,
Sams.net Publishing
- The HTML Sourcebook,
John Wiley & Sons Inc
- Managing Internet Information Services,
O'Reilly & Associates, Inc
- MH & xmh: Email for Users & Programmer,
O'Reilly & Associates, Inc
- PARSEME.1st,
Prentice-Hall, Inc
- Perl 5 for Dummies®,
IDG Books Worldwide, Inc
- Perl Conference 3.0 (Speaker), Open Source Conference
- The Perl Journal
- SGML CD,
Prentice-Hall, Inc
- SGML for Dummies®,
IDG Books Worldwide, Inc
- The SGML/XML Web Page
- Special Edition Using SGML,
Que Corporation
Summary |
Skills |
Open Source Projects |
Job History |
Education |
Recognitions
$Date: 2014/12/22 20:59:31 $