PixelZoom, Inc. - Boulder, CO.
(President, 7/1990-present)
PixelZoom Inc. provides software design, development, and consulting
services. Clients and projects are described below. Areas of expertise include:
University of Colorado, Physics Education Technology (PhET) project
- Boulder, CO - phet.colorado.edu
(Contractor, 9/2004-present)
Development of interactive science simulations, using
JavaScript, TypeScript, Java, Java2D, Piccolo, JFreeChart, Jmol, and Flash.
I was responsible for implementing the simulations listed below.
JavaScript, TypeScript:
Java, Flash:
Various musicians - CO.
(Contractor, 5/2004-present)
Website design and development for various musicians.
EMC2 - Denver, CO.
(Contractor, 4/2003-5/2004)
Designed and implemented administration tools for EMC's IDM (Intelligent
Data Management) product. GUI and CLI for administration of data management
policies and DVD libraries. Developed under Solaris and Windows using Java
(Swing, JDBC, JAXP), Oracle 8i, XML and XSLT.
Interact-TV - Boulder/Westminster, CO.
(Contractor, 3/2003)
Evaluated a third-party set-top box. Installed Red Hat Linux
and tested various hardware drivers, including Tvia CyberPro 5300 graphics
chip and Sigma Designs NetStream EM8400 MPEG decoder.
(Contractor, 7/2000-5/2001)
Developed various components of "Telly", a Linux-based interactive
television platform, including: video I/O, audio I/O, graphical user interface
widgets, MPEG player, DVD player, audio CD recorder, ISO9660 CD recorder.
Development using C++, Video-for-Linux (V4L), SDL (Simple DirectMedia Layer),
and Sigma Designs NetStream 2000 MPEG board.
G.W. Hannaway & Associates - Boulder, CO.
(Contractor, 9/2001-12/2002)
Developed applications and middleware for an asset management system,
including (1) a set of web services that provides client applications
with access to assets stored in a distributed database, and (2) a highly-threaded
scheduler that handles system management tasks. Development on Linux and
Windows platforms using Java, Visual C++, SOAP, Tomcat, Oracle and MySQL.
(Contractor, 4/1996-5/2001)
Various small projects in the areas of: MPEG-4, digital media (video,
audio, image compression), risk analysis, UNIX systems administration, SGI
systems engineering.
Hypercube Media Concepts - Boulder, CO.
(Contractor, 6/2000-7/2001)
Consulting on a wide range of digital media topics, including: texture
generation & mapping, image processing, MPEG, DVD, audio, video, and
software integration. Development on SGI IRIX using C++ and Perl.
RT-SET America - Arvada, CO.
(Software Engineer, 6/1998-6/2000)
Software products for broadcast television effects, including 3D animation
and effect, character generation, and virtual sets. Responsible for adding
new features to existing products. Technical lead for next-generation product
development. Responsible for the following product features: video texturing
using IRIS Performer and OpenGL, plug-in API for digital video effects,
port to SGI O2 platform. Development on SGI & Linux machines using C++,
X/Motif, Qt, OpenGL, OpenInventor, IRIS Performer and SGI's Digital Media
Libraries.
SimAuthor Incorporated - Boulder, CO.
(Contractor, 4/1999)
Provided a class library that handles playback of QuickTime movie files
using the SGI Movie Library.
(Contractor, 9/1998)
SimAuthor's FlightViz product provides the aviation industry with a
high-performance, interactive analysis and performance assessment environment
for aircraft "blackbox" and simulator data. Their software is extensible
via a plug-in architecture, utilitizing dynamic libraries and C++ subclassing.
I developed a digital audio/video plug-in. This plug-in displays
live video (from a camera or other input source), with optional synchronized
audio, and is used for adding commentary or supplemental demonstrations
to a FlightViz analysis. Development was done on an SGI O2 using C++,
X/Motif, OpenGL and SGI's Digital Media Libraries.
Evolving Video Technologies Corp - Arvada, CO.
(Contractor, 2/1996-5/1998)
Enhancements to Antero (a realtime character/graphics generator for
broadcast television) and development of a video clip store prototype. Antero
enhancements included: (1) port to SGI O2 for The Weather Channel, (2)
compositing with live video (no external keyer), (3) Motion JPEG support,
(4) a "crawl editor" for Fox Television to streamline the process of displaying
scores and statistics for their Fox Sports News program, and (5) a plug-in
API for creating IRIS Performer-based effects. Video clip store included:
a system for capture and scheduled playback of video clips based on SGI's
VCP-Recorder product. Development done on SGI machines using OpenGL,
IRIS Performer, C++, SGI Digital Media libraries, X/Motif, RapidApp, and
Perl.
Inroads Interactive - Boulder, CO.
(Contractor, 7/1994-6/1997)
Designed and developed CD-ROM titles for the educational and entertainment
markets. Services included cross-platform programming and authoring (using
Macromedia Director), conceptualization, user-interface design, storyboarding
and CD mastering. Titles include a popular "pet series" (Dogs, Cats,
Bugs, Horses and Exotic Pets) distributed by Broderbund Software.
Dogs & Cats were included in Computer Shopper magazine's 1995 "Top 10
List" of things to buy for Christmas.
Silicon Graphics Inc. (SGI) - Mountain View, CA.
(Contractor, 7/1995-2/1996)
SGI's entertainment division, Silicon Studio, built the DreamWorks
Digital Studio, a digital production studio for creating, storing, managing
and retrieving creative content. I assisted in the design of StudioCentral,
a set of object-oriented APIs, user-interface components and data models
for multimedia "asset management". Prototyping was done using C++,
ViewKit and RapidApp.
Tabor Visual Media - Denver, CO.
(Contractor, 12/1995-1/1996)
Provided consulting services for a corporate multimedia production,
including: review of production plans and designs; periodic reviews of work
for quality, organization and progress.
Bolder Heuristics, Inc. (BHI) - Boulder, CO.
(Contractor, 11/1992-4/1995)
Subcontracts for Sun Microsystems and Ericsson Raynet, as described below.
Sun Microsystems - Colorado Springs, CO.
(Subcontractor for BHI, 9/1993-7/1994)
Requirements analysis and user-interface design for Sun's "Solstice
DiskSuite" (formerly "Solstice Volume Manager"). DiskSuite is used to administer
RAID and other large storage devices. Responsibilities included: project
leader, requirements analysis, user-interface design and prototyping using
storyboarding techniques, project management and preparation of contract
bids.
Ericsson Raynet - Menlo Park, CA.
(Subcontractor for BHI, 11/1992-11/1993, 8/1994-4/1995)
Developed a GUI for RIDES, a Network Management application for maintenance
and provisioning of fiber-in-the-loop telecommunications facilities. Development
on Sun SPARC platform using C++, C, Ingres/ESQL, and X/Motif. Responsibilities
included: requirements analysis, database development, integration with
customer-supplied libraries, software configuration management and maintenance.
AT&T NSC Performance Laboratory - Denver, CO.
(Contractor, 7/1990-9/1993)
Responsible for the design, development, documentation, and maintenance
of software systems to support the management and maintenance of AT&T's
long-distance network. Designed and implemented (1) a GUI for interfacing
with intelligent network elements (Echo Cancellers), (2) a highly-parallelized
application for collecting and reporting data received from intelligent
network elements, (3) a reporting system for referring network troubles to
RBOCs (local telephone companies), and (4) a multimedia training application
for maintainers of legacy software. Development was done on a wide variety
of UNIX machines using C, C++, INFORMIX, X11/OPENLOOK, and Macromedia Director.
Projects combined advanced concepts in the areas of database, user-interface
design, UNIX inter-process communication, distributed applications, networking,
interactive multimedia, and system administration.
MaeSoft - Hollywood, CA.
(Owner, 2/1990-6/1990)
Designed and implemented Q-Edit, an editor for the Alesis Quadraverb
digital audio effects processor. Q-Edit allowed simultaneous access to
all programmable Quadraverb parameters using the MIDI communications protocol.
Programming in C on Atari 1040ST.
SMV Recording Studios - Studio City, CA.
(Recording Engineer, 10/1989-1/1990)
Built and maintained a Macintosh-based music production studio, controlling
several digital synthesizers on a MIDI network. Implemented a sound library/database.
As a recording engineer, I was responsible for 24-track recordings of musical
groups, songwriter demos, and voice-overs.
AT&T Bell Laboratories - Warren, NJ.
(Member of Technical Staff, 6/1984-8/1988)
Software research and development in the areas of (1) telecommunications,
(2) expert systems, (3) distributed databases, (4) graphical user interfaces,
(5) performance modeling and simulation of software systems, and (6) C++.
Also responsible for administration of various computers and networks.
Recipient of Exceptional Contribution Awards in 1986, 1987, and 1988. Development
done using C, Pascal, OPS5, X11/OPENLOOK, SunView.
M.S. Computer Science (Brown University, 1985)
Concentration in database, artificial intelligence, and programming
languages. Thesis project in the application of artificial intelligence
and logic programming techniques to database query processing. 4.0 GPA.
B.S. Computer Science & Engineering (University of Connecticut, 1984)
Senior project in robotics and natural-language processing. 3.75 GPA.
Vocational Music diploma (Musicians Institute, Hollywood, CA, 1989)
Graduated with highest honors in the guitar program.
Other education:
Languages:
JavaScript, TypeScript, Java, C++, C, Perl, ActionScript, Lingo, Prolog, Lisp, OPS5, Pascal, PL/1, XML, HTML, CSS, VRML
Systems:
UNIX, Linux, macOS, Windows, DOS, IRIX, Solaris, SunOS, Atari TOS,
TI Explorer (Lisp machine), DEC PDP-11, DEC VAX/VMS, IBM System/370
Integrated Development Environments:
WebStorm, IntelliJ IDEA, Eclipse, SGI CASEVision/Workshop, Microsoft VisualStudio, Sun SPARCworks
GUI toolkits:
Java AWT/Swing, Qt, X Window System (X11), OSF/Motif, ViewKit, SDL (Simple
DirectMedia Layer), OPENLOOK
GUI builders:
BXJava, UIM/X, Builder Xcessory, SGI RapidApp
Graphics APIs:
Canvas, WebGL, OpenGL, Java2D, Piccolo, OpenInventor, IRIS Performer, ImageVision
Digital Media APIs:
SGI Digital Media libraries (VL, AL, IC, movielib), Video4Linux
(V4L)
Web:
Apache, Tomcat, SOAP, XML-RPC, HTTP, XSLT
Version Control:
Git/GitHub, SVN, CVS, RCS
Misc. tools & APIs:
GNU, JFreeChart, STL, ATL, COM, Ant, make, Grunt
Database systems:
JDBC, Oracle, MySQL, INFORMIX, Sybase, Ingres, SGI StudioCentral
Networking:
Java RMI, TCP/IP, NFS/NIS, UUCP, AT&T DATAKIT
OOA&D:
Jacobson, Rumbaugh, Booch, Wirfs-Brock
Creative tools:
Adobe/Macromedia Flash, Macromedia Director, GIMP, Adobe Photoshop, Adobe Illustrator, Alias|Wavefront PowerAnimator, misc. others
Documentation:
Javadoc, JSDoc, Doxygen, Adobe FrameMaker, Microsoft Word, OpenOffice
Making Science Simulations and Websites Easily Translatable and Available Worldwide: Challenges and Solutions, W. K. Adams, H. Alhadlaq, C. V. Malley, K. K. Perkins, J. B. Olson, F. Alshaya, S. Alabdulkareem, and C. E. Wieman , Journal of Science Education and Technology, accepted, 2010 online; 2012 in print.
An interactive optical tweezer simulation for science education, T. T. Perkins, C. V. Malley, M. Dubson, and K. K. Perkins , Proceedings of SPIE, Vol. 7762, 776215, 2010.
Making On-Line Science Course Materials Easily Translatable and Accessible WorldWide: Challenges and Solutions, W. K. Adams, H. Alhadlaq, C. V. Malley, K. K. Perkins, J. B. Olson, F Alshaya, S. Alabdulkareem, C. E. Wieman , Il Nuovo Cimento C: Multimedia in Physics Teaching and Learning - MPTL14, Vol 33, no. 3, pp. 113-119, 2009.
Developing and Researching PhET simulations for Teaching Quantum Mechanics, S. B. McKagan, K. K. Perkins, M. Dubson, C. Malley, S. Reid, R. LeMaster, and C. E. Wieman, American Journal of Physics, 76, 406 , May 2008.
2007 Science & Engineering Visualization Challenge, First Place: Interactive Media, Physics Education Technology Project (PhET), C. Weimann et. al., Science magazine, September 2007, Vol. 317, No. 5846, pp. 1858 - 1863, 2007
Technical reviewer for Web Protocols and Practice, Krishnamurthy & Rexford, Addision-Wesley, 2000.
Expert Database Systems, L. Kerschberg, ed., Benjamin/Cummings, 1987. Masters Thesis reprinted in this reference text.
A Knowledge-Based Approach to Query Optimization, C. Malley (AT&T Bell Labs) and S. Zdonik (Brown Univ.). Published and presented at the First International Conference on Expert Database Systems, Charleston, SC, 1986.
A Natural Language Interface to Visual Sensing Systems, C. Malley and M. Selfridge (Univ. of CT). Published in: Spatial Information Technologies for Remote Sensing Today & Tomorrow, The 9th William T. Pecora Memorial Remote Sensing Symposium, Sioux-Falls, SD, 1984.
Browser-driven user interface to a media asset database, patent #5893110 for Silicon Graphics, authors: K. Weber, A. Poon, C. Malley, 1999.
Abstract: A method for automatically constructing a database query
for data assets associated with multimedia works. The database query is
based on the context of a selected point of interest in a multimedia work.
The point of interest is selected by a user interacting with the multimedia
work and pausing the multimedia work at the point of interest. A database
query is automatically constructed that is constrained by data that is
associated with the point of interest.
International Science & Engineering Visualization Challenge, First Place, Interactive Media category, for Physics Education Technology Project (PhET). Awarded by The National Science Foundation and The Journal of Science. Award shared with other contributors to PhET. This competition recognizes outstanding achievements by scientists, engineers, visualization specialists, and artists who are innovators in the use of visual media to promote understanding of research results and scientific phenomena. September 2007.
Exceptional Contribution Award, AT&T Bell Laboratories, 1986, 1987, and 1988.
Available on request.