Daniel W. Holth
4229 SW 68th Ter. Apt. D
Gainesville, FL 32608
dholth@fastmail.fm
+1.352.328.9613
Education
Stetson University, DeLand, FL.
- Bachelors of Science in Computer Science with a Minor in
Mathematics. May 2002.
Honors
- Faculty Merit Scholarship.
- Maris Prize for Outstanding Student Research.
Professional Experience
Consulting work. Oct - Dec. 2007.
Implemented MySQL backend and CRUD interface for a local real-estate company using PHP with XSLT templates.
Programmer II. Gleim Publications, Inc. Feb. 2006 - present.
Maintain in-house and public Java software, applets, servlets,
and PHP for this educational publisher, primarily a Java rich client
used for order management.
- Reliably release in-house Java client/server application
every week.
- Implemented in-database audit logging system using stored
procedures.
- Implemented reliable automated deployment scripts (in
Apache ant) for Java
client/server application.
- Migrated projects from CVS to Subversion and Mercurial
version control systems.
- Implemented object/relational mapping with Hibernate.
Maintenance Computer Programmer (subcontractor for Enigmatix).
Apr. 2005 - Jan. 2006.
Design and develop enhancements to legacy medical billing and
records software as an independent contractor. Used Python to
adapt legacy C/ISAM database calls to a newly designed SQL database.
Used Python to create an XML report generator and a host of data
transfer tools. Maintained trac
project management system.
PC Technician. CBMM, Inc. Aug. 2004 - Apr. 2005.
Diagnose, repair, install, and deliver Windows computers. Make
service calls, install networking equipment, provide technical
support. Remove viruses and spyware. Install hardware and
software.
Systems Administrator. Stetson University Computer Science Lab.
Nov. 1998 - May 2002.
Install and maintain a heterogeneous network of Red Hat and
Mandrake Linux workstations and servers. Maintain associated Irix
and Linux servers. Deploy configuration and software set management
systems.
Administrative Assistant. William J. Holth, DDS, PA. Aug. 2002
-Aug. 2004.
Schedule and confirm appointments. Assist mailings, insurance
filing, technology purchase decisions, site maintenance, and
intra-oral photography. Made improved use of office computer
systems.
Skills
- Modern, object oriented programming with Python, C++ and
Java.
- Java applets. Servlets. AWT. Swing.
- Jython (Python in Java).
- Web programming with PHP, Python.
- Unicode, UTF-8 and character encoding issues.
- Shell scripting.
- 14+ years programming. C since 1994. C++ and Java since 1998.
Python since 2002.
- Combining Python and C++ with Boost::Python.
- Using the GNU programming tool chain (automake, autoconf, gcc,
g++).
- Relational database design and programming. SQL.
- 10+ years Linux use.
- Knoppix, Ubuntu, Debian, Gentoo, Redhat, Mandrake Linux.
- IPv4, IPv6 configuration.
- Apple OS X.
- Linux/UNIX systems and network administration.
- RPM package creation and management.
- Configuration management with cfengine
- Apache, FTP, DHCP, PXE, LDAP server administration.
- OpenGL. Vi, Vim. GTK. HTML. CSS. NFS. XML.
- Software development and design.
- Mercurial, Subversion, CVS revision control systems.
- Palm OS application development.
- Linear algebra.
- ISAM databases.
- Fluent Spanish.
Accomplishments
- Co-developed an award-winning senior thesis and successful open
source networking toolkit called wiretap, in multithreaded C++,
including a compatible Python kit.
- Added TCP/IP steganography to the Linux kernel. Time: less than
24 hours.
- Wrote custom software to render maps from the TIGER vector GIS
data, and to display a tiled map as a web page.
- Gave educational lecture on the elegant object-oriented
programming language Python.
- Designed an algorithm for efficiently creating password guesses
that fit specific criteria.
- Using Boost.Python, wrote bindings allowing theora video
playback in pygame (SDL for Python).
- Prototyped vorbis+theora video streaming with personally
modified Icecast server and client libraries.
Projects
Database Adapter
For my contract I created a database adapter that embeds
Python in a C application. The adapter translates ISAM calls from
legacy C code to a MySQL database, making it possible to manipulate
the data with modern tools without having to re-write all the
legacy code. Python allowed a very quick development cycle,
essential for software that does not initially have a clear
design.
I also wrote data conversion utilities to moveprintouts from the
customer's old application to the SQL database and a reporting
program to create a government-required XML report. To manage the
project I installed the excellent web-based trac project management
system, also written in Python, and migrated Enigmatix, Inc.'s CVS
repository to Subversion.
Multimedia Bindings
Boost.python is useful for exposing libraries written in C or
C++ to Python. I have released bindings for ogg, vorbis,
theora, shout, and xmms to allow Python programs to manipulate
multimedia for streaming, encoding and decoding, and playback.
Networking Kit
I implemented the OSC networking protocol in Python to
complement a server written in C++. This open source project has
been successful, allowing at least one artist to control real-time
3d animation in Blender.
MIDP Game
Ported a Java applet to MIDP for play on a mobile phone.
This document is available at http://dingoskidneys.com/~dholth/resume.html