Mark Jason Dominus

775 North 24th Street
Philadelphia PA 19130
(215) 416-4569

Teaching Experience

Freelance lecturer. August, 1997-present
I have taught Perl-related classes at major conferences, including the O'Reilly Perl Conference, LISA, Yet Another Perl Conference, and Usenix, I have also taught classes around the world for Morgan Stanley, the National Center for Biological Information, British Telecom, and other clients.

I have given classes on web-related security topics at the Usenix LISA (Large Installation System Administrator) conferences, the Usenix Symposium on Information Technology Systems, SAPO (Portugal's largest ISP), the Apache Conference, and Wright-Patterson Air Force base.

Instructor, The Tom Christiansen Perl Consultancy. February, 1998-December, 2000.

Taught three-day courses in Perl programming at DuPont, Bristol-Myers Squibb, Nortel, the Philadelphia Gas Works, IBM, other locations.

Instructor, University of Pennsylvania Department of Computer and Information Science. Summer, 1992.

Taught summer session of ``Introduction to Programming in C'' course. Prepared and graded exams and homework, delivered four 90-minute lectures each week.

Project Leader, Columbia University Double Discovery project. February 1990.

Planned and executed ten-session class on HyperTalk programming for Columbia University-area underprivileged high-school students.

Instructor, Johns Hopkins University Center for Academically Talented Youth. Summer 1990. (Also teaching assistant, summers 1985-1987.)

With another instructor, planned and taught a new three-week intensive course ``Introduction to Advanced Mathematics.'' In previous years, I gave many evening lectures on enrichment topics and extra problems.

Programming and Computer Experience

Senior Programmer Analyst, University of Pennsylvania Information Systems and Computing. January 2003-present.

Develop and maintain critical software systems such as ISC's RADIUS authentication server and user account management utility. Review and critique code written by other department members.

Freelance Consultant. June 1995-January 2003.

I ran Plover Systems, a consulting company that specialized in developing interactive, web-delivered applications. Web sites with applications provided by Plover Systems included: Pathfinder (Time-Warner), Clinique, Reel-Time, the Prudential Insurance Company of America, Schering Drug, Pfizer Inc.

Senior Systems Engineer, Pathfinder Project. September 1994-April 1995.

I was senior planner and programmer for Pathfinder, Time-Warner's World-Wide Web project and main Internet service. I developed Web applications, planned technical infrastructure, administered the UNIX systems, coordinated with thirty content partners, and managed up to four other programmers and system administrators.

Systems Programmer, University of Pennsylvania Department of Computer and Information Science. April 1990-September 1994.

As part of 5-9 person team, administered department graduate computing systems, developed software, and supported user base of about 300 graduate students and professors. Supported about 400 applications. Managed workstation lab with 17 Sun workstations and two Sun file and compute servers. Assisted management of department computing services. Rewrote and expanded new user documentation. Assisted in system and application software upgrades and installations. Developed many applications, including on-line help system, centralized password-management


Higher-Order Perl

My book on applications of functional programming techniques in the Perl language will be published by Morgan Kaufmann in January.

Columnist, The Perl Journal. 1997-1999.

I contributed 14 feature article to The Perl Journal, most of which are reprinted in Computer Science and Perl Programming (O'Reilly and Associates, 2002).

Freelance writer

I was the managing editor of from September 1999-January 2001. I wrote 15 feature articles myself and edited and solicited articles from others. My articles have also appeared in IEEE Software and Wired magazine.


Computer Languages

I am presently fluent in C, Perl (certified developer), Haskell, SML, APL, and a variety of special-purpose languages. I have familiarity with Pascal, Fortran, TCL, Common Lisp, C++, snobol4, System/370 assembly language, forth, HyperTalk, and many others.

I am familiar with TeX/LaTeX, HTML, and nroff. I have written database applications in SQL and other languages for many database systems, including Oracle, Sybase, Ingres, FOCUS, mSQL, and MySQL.

Computing Environments

I am an expert UNIX systems and application programmer. I am comfortable in VAX VMS, CP/CMS, MS-DOS, Windows NT, Windows '95, and Macintosh environments.

Human Languages

I read and write English fluently. I can compose concise, understandable documentation. I communicate well with non-technical people.


I have completed all the mathematics requirements for a Bachelor of Science in mathematics at Rensselaer Polytechnic Institute. I left school with an astronomy requirement still unfilled.