Chris L. Adamson

633 Vickery Way
Marietta, GA 30066

SKILL SUMMARY
  • Java SE -AWT (including copy/paste, drag-and-drop), Swing (including undo/redo, styled text), JavaBeans, Java 2D Graphics, I/O, nio, sockets (java.net), reflection, applets.
  • Java EE - JDBC/SQL, Servlets, RMI, Java Message Service (JMS), XML parsing.
  • Other Java - QuickTime for Java, Java Media Framework, Multimedia Home Platform (MHP), JavaSound, JavaHelp, Java Mail, serial I/O (javax.comm), internationalization.
  • Mac OS X development - Cocoa, Objective-C, XCode, Interface Builder, QTKit, legacy C-based QuickTime libraries.
  • Media production - Final Cut Express, Soundtrack, Garage Band, podcast distribution tools.
  • Other - QuickTime and MPEG-4 file formats, MP3 format and ID3 tags, JavaScript, Unix shell scripting, make, ant.
 
EMPLOYMENT
O'Reilly Media
(off-site contractor)
Sebastopol, CA
October 2003 -
present
Editor -- Editor of industry-leading technology websites ONJava and java.net.
  • Solicited article proposals (3-4 / week), reworked with authors, edited copy for clarity and adherence to company style guide.
  • Wrote 20+ blurbs a week on site activities, open source projects, and industry trends. Also wrote five daily blogs and a weekly newsletter.
  • Wrote 30+ by-lined feature articles for these sites (see below).
  • Recorded, tracked, produced, and edited podcasts of developer interviews, technology talks, and opinion pieces.
  • Represented sites at technical conferences: JavaOne, ApacheCon, JBoss World, etc.
Subsequently & Furthermore, Inc.
Marietta, GA
December 2003 -
present
Software consultant/developer -- Designer/developer of cross-platform media solutions
  • "Video Tools" (March-December 2006) -- Developed stand-alone QuickTime for Java application (Mac, Windows) per client requests, offering one-off video capture and editing. Solved long-standing issues in QTJ community regarding rendering of capture data, handling of device or settings changes, pre-configured capture-time compression settings so captured video would not require subsequent re-compression.
 
Pathfire, Inc.
(consultant)
Roswell, GA
January 2002 -
April 2004
Contract Software Engineer -- Developer of Java-based network monitoring and configuration application.
  • Designed, and coded all user screens, wizards, etc in Swing, heavily threaded for responsiveness.
  • Wrote network client classes to receive status reports and send commands, import/export configurations via Java Message Service (JMS), also with RMI, JDBC, and raw sockets.
  • Co-developed DHTML web client to duplicate functionality of an existing media browsing/previewing client, wrote servlet code to proxy database and Jini connectivity to web client.
  • Wrote servlet to report current and historical host status and customer-support ticket info, with information from separate Sybase and SQL Server databases. Created needed Sybase database tables, triggers, and auto-ticketing script fired by trigger.
 
AnyDevice.com
Atlanta, GA
October 2000 -
November 2001
Software Engineer -- Developer for Java-based visual XML editing application used to map internet content (websites, databases, legacy servers) into a wireless-friendly format.
  • Added essential GUI functionality to application: copy-and-paste, drag-and-drop, undo/redo.
  • Prototyped XHTML browser-like rendering engine in Swing and Java2D.
  • Internationalized application for distribution in other languages and regions.
  • Developed sample mobility apps in JavaScript for another project.
 
Video Networks, Inc.
Roswell, GA
July 1997 -
September 2000
Principal Engineer -- Team-lead and primary architect/developer for Java-based client-server system used in television news-rooms.
  • Wrote Swing-based client user-interface.
  • Designed distributed event scheme to update client UI's on arrival of new stories or changes made by other users.
  • Rewrote dubbing code, which plays an MPEG-2 video clip in an external application with text overlay from dynamically-generated BMP image, while controlling VTR via serial cable.
  • Developed "plug-in" system to allow for dynamic loading of arbitrary business logic code on server and client.
  • Also wrote code for back-end transport (file moves, database persistence).
  • Co-architected next generation of this product, moving from client-server to distributed architecture, using JMS and Jini for reliable self-networking.
Primary developer for Java servlet-based media browsing/ordering system
  • Developed servlet session-tracking and JSP-like "server-side tag" functionality before those features were added to servlet API.
  • Designed HTML and dynamic content for query and result pages.
  • Wrote applet to upload files via FTP and hand off to servlet, cryptographically signed for and tested on Windows (95/98/NT), Macintosh, and Unix browsers (Netscape, Internet Explorer, HotJava, and others).

 
CNN Headline News
Atlanta, GA
May 1994 -
July 1997
Writer / Associate Producer -- Wrote top stories for live-hours, then produced update shows.
  • Selected video and stories for 15-minute cut-in shows, assigned stories to writers and copy-edited scripts. Adjusted rundowns during broadcast to keep to time.
  • Frequently filled in as copy editor, editing all scripts for two live hours and produced a cut-in as above. Occasionally produced full live-hour.

PUBLICATIONS
O'Reilly Media
(books)
O'Reilly Media
(online articles,
selected)
  • "Ruby the Rival" -- November 16, 2005.
  • "What's New in QuickTime 7" -- May 10 & June 28, 2005.
  • "Streaming QuickTime with Java" -- January 12, 2005.
  • "Juggling JOGL" -- March 18, 2004.
  • "Making Media from Scratch, Parts 1 & 2" -- August 13 & 27, 2003.
  • "Parsing the QuickTime File Format with Java" -- February 19, 2003.
  • "Self-Playing Media with Java Media Framework" -- October 9, 2002.
 
EDUCATION
Michigan State University
E. Lansing, MI
1991 - 1993
M.A. -- Telecommunications (Media Arts emphasis).
  • Co-created, wrote, co-produced 30-minute sitcom pilot.
  • Designed and authored interactive HyperCard stack to teach basic video editing.
  • Teaching Assistant -- taught two-hour, twice-a-week studio sessions for basic production course (audio, video, hyper-media).
  • Desktop Publishing Mac Lab Administrator -- administered file-servers, printers, and ethernet, helped users with computer basics.
  • Worked in various capacities (remote camera, sound, switcher) for "TelState," a non-profit video-production group.
Stanford University
Stanford, CA
1985 - 1990
B.A. -- English (Creative Writing emphasis).
B.S. -- Symbolic Systems (Artificial Intelligence emphasis).
OTHER
  • Founder and maintainer of open-source projects: "Jicyshout" (streaming MP3 playback / ID3 tag reader for Java Media Framework), "Lloyd" (QuickTime for Java extensions, written in Java and C), and "Keaton" (Java wrapper around Cocoa-based QTKit framework for Mac OS X, written in Java and Objective-C)
  • Native English speaker, conversant in French and Japanese.

References available on request