James W Cooper, Ph.D.

48 Old Driftway
Wilton, Ct 06897


A visionary software architect who excels at creating innovative solutions. Inventor (7 patents granted, 5 more filed), author (15 books), columnist (62 columns for JavaPro magazine). Skilled in Ajax, Dojo, web client-server architecture and development. Expert in Medical Analytics and Text Analytics. Acknowledged expert in the use of Design Patterns for object-oriented design. Expert Java program designer and system architect. Experienced writer and speaker.

Software expertise: Java, JavaScript, Dojo, Ajax, JavaServer Pages, HTML, XML, CSS, Design Patterns, Object-oriented design, Eclipse, PHP, SQL, MySQL, DB2, Access, Apache, Tomcat, C#, C++, C,

Professional Experience

IBM Corporation 1984-2009

IBM T J Watson Research Center, Hawthorne, NY (1990-2009)

The IBM T J Watson Research Center is the world's leading industrial research organization.

Research Staff Member, Medical Analytics (2006-2009)

Responsible for the design and execution of unique technologies for representing the evolution of brain cancer symptoms over time
bulletWorked with Columbia faculty and IBM team to design and test a system for representing evolution of brain cancer symptoms. Invented unique representations that could be displayed in any web browser. Evaluated the system using medical residents and included results as major part of NIH proposal. Published results of study in paper for SIMM 2009 conference. A US Patent has been filed on concepts the IBM team developed.
bulletInvented and created the powerful new Tara system for displaying 3D MRI images in any web browser, and using a server connected to the IBM Cell high speed processor to register pairs of images in real time. Demonstrated the system at the 2007 RSNA conference. Installed and documented the system for use in the IBM Industrial Solutions Laboratory and coached the ISL staff on how to demonstrate it. Presented paper at CARS 2008 conference and filed US Patent on the use of web browsers to display 3D images.
bulletDesigned and implemented a prototype web-based system for displaying and comparing pediatric X-rays by age or by body part. Installed at IBM customer site in Indiana.
bulletDesigned and implemented a system for displaying cancer diagnoses in a visual structured data model.
Research Staff Member - Text Analytics (2000-2005)
Designed a system for extracting annotations from pathology reports and representing them using standards-compliant methods.

bulletDesigned and implemented a standards-compliant system for representing pathology reports in the Clinical Document Architecture (CDA). Incorporated reader and translator modules into MedTAS medical text analytics system.
bulletDesigned system for extracting annotations from pathology reports into databases as part of team working on project with Memorial Sloan Kettering.
bulletInvented and constructed a system for detection of protein-protein relations in Medline abstracts. Found better precision and recall (94/89) than any previously reported, based on test collection. Published paper in BMC Bioinformatics journal.
Manager, Education, Healthcare and Scientific Solutions (1990 - 2000)
Managed teams in K-12 Education research, Healthcare solutions and Programming and Scientific Solutions.

Advisory Engineer, IBM Academic Information Systems (1989 - 1990)
Worked with on-site staff at the Cornell Supercomputer Center on interfacing and technical details. Designed and wrote the IBM Grapher program shipped as part of the IBM College PC Pack.

Staff Scientist, IBM Instruments, Danbury, CT (1984 - 1988)
Designed and implemented the PC-NMR software system for acquiring and processing data from FT-NMR spectrometers. Assisted in sales and marketing and customer and sales education.

JAVAPRO MAGAZINE, Freemont, CA 1998 - 2003
Contributing Editor
With IBM's approval, contributed 62 "JavaTecture" columns to JavaPro magazine.

BRUKER INSTRUMENTS, INC., Billerica, MA 1980 - 1984
Bruker Instruments is a major multi-national manufacturer of magnetic resonance spectrometers.
Vice-President for Software Development
Managed a multi-national team of programmers in designing and building a multitasking computer system for acquisition and processing of NMR data. Assisted in customer education. Wrote all the technical documents and gave classes for customers.

TUFTS UNIVERSITY, Medford, MA 1972 - 1980
Assistant Professor of Chemistry
Wrote the first successful book on programming the PDP-11 computer. Published extensively in the area of computational efficiency in NMR. Developed a new course in computers in chemistry. Taught general and organic chemistry, organic chemical spectroscopy.

bulletPost-doctoral study, Physical Chemistry, SUNY/Buffalo, NY, with Prof. R. J. Kurland
bulletM.S., Ph.D. Organic Chemistry, Ohio State University, Columbus, OH.,with Prof. Gideon Fraenkel
bulletA.B., Oberlin College, Oberlin, OH
  1. C# Design Patterns: A Tutorial. Addison-Wesley, 2002 (also in Japanese and Chinese, and Korean).
  2. Visual Basic Design Patterns: VB6 and VB.Net, Addison-Wesley, 2001 (also in Polish, Japanese and Chinese).
  3. Java Design Patterns: A Tutorial, Addison-Wesley, 2000 (also in Japanese, Polish and Korean)
    The above three best-selling books represent widely acknowledged best introductory textbooks for understanding Design Patterns.
  4. Principles of Object-Oriented Programming in Java 1.1, Ventana/Coriolis, 1997
  5. The Visual Basic Programmer's Guide to Java, Ventana/Coriolis, 1996
  6. Object Oriented Programming in Visual Basic, Pinnacle, 1995
  7. A Jump Start Course in C++ Programming, (with Richard B. Lam), Wiley-Interscience, 1994.
  8. Visual BASIC for DOS: Building Scientific and Technical Applications, Wiley-Interscience, 1993.
  9. Writing Scientific Programs Under the OS/2 Presentation Manager, Wiley-Interscience, 1990.
  10. Microsoft QuickBASIC for Scientists, Wiley-Interscience, 1988.
  11. The Laboratory Microcomputer, Wiley-Interscience, 1984.
  12. The Minicomputer in the Laboratory, 2nd edition, Wiley-Interscience, 1983.
  13. Introduction to Pascal for Scientists, Wiley-Interscience, 1981.
  14. Spectroscopic Techniques for Organic Chemists, Wiley-Interscience, 1980.
  15. The Minicomputer in the Laboratory, Wiley-Interscience, 1977

Patents awarded

  1. US Patent 6092081 -System and method for taggable digital portfolio creation and report generation. (J Cooper, S Alpert, P Fairweather, R. Lam)
  2. US Patent 6101503 - Active markup--a system and method for navigating through text collections. (J Cooper and M Neff)
  3. US Patent 6185553 -System and method for implementing cooperative text searching
  4. US Patent 6397211- A System and Method for Detecting Duplicate and Very Similar Documents (J W Cooper, A Coden, and E Brown)
  5. US Patent 6405226 - System and method for implementing cooperative text searching
  6. Scalable Computation of Unnamed Relations (rated publish)
  7. US Patent 6973428 -Searching, analyzing and display text transcripts after imperfect speech recognition. (J Cooper and B Boguraev)
  8. US Patent 7171365 - A time logging device using speech recognition (J Cooper and D Byron)
  9. US Patent 7676358 - Recognizing Chemical Names in Patents
  10. US Patent 7899827 - Recognizing chemical structures in patents (J Cooper, A Coden and S Boyer)

Patents filed

  1. Organizing and Display of Multimodal Medical Records (S Ebadollahi and J Cooper)
  2. Identifying and describing topics in a document collection (R Ando, M Neff, J Cooper, B Boguraev)
  3. Rapid Display of 3D Images on a Thin Client (J Cooper)

Recent Technical Papers

  1. Analysis and Display of Multi-modal and Temporal Information for Brain Tumor Patient Management [with Ebadollahi, Kaufman, DeLaPaz, Rosenfeld and Welch], presented at SIIM 2009, Charlotte, NC.
  2. Automatically extracting cancer disease characteristics from pathology reports into a Disease Knowledge Representation Model {with Coden, Savova, Sominsky, Tanenblatt, Masanz, Guan, and de Groen. J. Biomedical Informatics (in press).
  3. Concept-Oriented Access to Longitudinal Multimedia Medical Records: A Case Study in Brain Tumor Patient Management. [with Ebadollahi, Kaufman, Laine, Levas, DeLaPaz and Neti]
  4. A Thin Client Interface to a Multimodal Image Analytics System, with Eide and Ebadollahi, presented at HICSS-42, Kona, Hawaii, 2009.
  5. A Medical Imaging Informatics Appliance, (with Ebadollahi, Eide, Neti and Iyengar, presented at CARS 2008, Seattle, WA
  6. Discovery of Protein-Protein Interactions Using a Combination of Linguistic and Statistical Methods, BMC Bioinformatics, 6:143 (2005)
  7. An Evaluation of Unnamed Relations in the Detection of Protein-protein Interactions, Biomedical Workshop at SIGIR, Toronto, 2003.
  8. Visualization of Relations Text Information for Biological Discovery, IVIRA symposium at JCDL 2003
  9. Tutorial on Design Patterns in Java and .NET, OOPSLA, 2002.
  10. Detecting Similar Documents using Salient Terms [with Coden and Brown] presented at CIKM 2002.
  11. Building Searchable Collections of Enterprise Speech Data (JCDL 2001)
  12. Toward Speech as a Knowledge Source [with Brown, Coden, Srinivasan, Amir, and Ponceleon] (IBM Systems Journal)
  13. Extracting Knowledge from Speech [with Brown, Srinivasan, Coden, Ponceleon, Amir and Pieper] (KDD01)
  14. Construction of a OO Framework for Text Mining [with So, Mack and Cesar] (OOPSLA 2001)
  15. The Technology of Lexical Navigation (presented at JCDL '01)
  16. Towards Speech as a Knowledge Source ( CIKM 2001) with Brown, Srinivasan, Coden, Ponceleon, Amir and Pieper.
  17. Computing Related Terms in a Corpus of Documents [with Coden and Brown] presented at HICSS-36
  18. A Novel Method for Detecting Similar Documents, [with Coden and Brown] presented at HICSS-35.
  19. A Tutorial of Java Design Patterns. Presented at JavaOne. UML World, Colorado Software Summit, Sigs Java developer's Conference.
  20. Samsa: A Speech Analysis, Mining and Summary Application, 34th Hawaii International Conference of System Sciences.
  21. Antiserendipity: Finding Useless Documents and Related Documents, 33rd Hawaii International Conference on System Sciences, Maui, HI, 2000.
  22. A Knowledge Management Prototype presented at NLDB 1999, [with Mary Neff] Klagenfurt, Austria.
  23. ASHRAM - Active Markup and Query-Free Searching, 32nd HICSS conference, Maui, 1999.
  24. OBIWAN- The One-Button Interface With Associated Network, 31st HICSS, Kona, HI, 1998.
  25. Lexical Navigation - Visually Prompted Query Expansion and Refinement, ACM Digital Libraries, 1997
  26. Lexical Navigation - Using Incremental Graph Drawing for Query Refinement.[with D. Tunkelang] GraphDrawing 97.

Articles for JavaPro Magazine

  1. Are you Building Objects or Writing Code?
  2. Factories for Making Classes
  3. Your Command is my Wish
  4. Calling the Mediator
  5. Observing your Windows
  6. Handling Databases More Effectively
  7. A Piece of the Action
  8. User Interfaces that Vary with your Data
  9. Object Oriented Plotting
  10. Handling Exceptions Effectively
  11. Java Business Expo
  12. The Factory Down the Road
  13. A Singleton in Port
  14. Adapting Your Work
  15. Why I Finally Learned to Love Servlets
  16. I've Got a Little List
  17. RMI Objects
  18. Patterns on the Table
  19. Highlighting Documents
  20. Using Java Server Pages
  21. How JavaServer Pages can use Design Patterns
  22. Comparing JSPs, Servlets and ASPs
  23. A Politically Correct Use for Java Native Methods
  24. A Challenging Title Search
  25. Bitten by the ASP
  26. Is Software Engineering Immature?
  27. Don't Object to Objects
  28. Making Databases Easier for Your Users (October, 2000)
  29. Is Java Threatened? (Tbd)
  30. The Future of Java Applications (Special edition, October, 2000)
  31. The Visit (November, 2000)
  32. Why Aren't YOU Using Design Patterns? (December 2000)
  33. Using JSPs for Stupid Browser Tricks (January 2001)
  34. Patterns for Parsing (February 2001)
  35. Do Design Patterns Really Help? (March 2001)
  36. Objective Memories (April 2001)
  37. Introduction to Using SOAP for RPC (May, 2001)
  38. Soaping your Windows (June, 2001)
  39. Unchained Malady (July, 2001)
  40. Can We Manage Programming Knowledge? (August, 2001)
  41. Database Design Patterns with Cloudscape (September, 2001)
  42. Going to Extremes (October, 2001)
  43. The SOAP Factory (Special issue, October , 2001)
  44. Courage in Profiles (November, 2001)
  45. XML and Lobster Traps (December, 2001)
  46. Java Compared with C# (January, 2002)
  47. Report on OOPSLA (February 2002)
  48. Is Java Fast Enough? (March 2002)
  49. Naked Objects- Do You Really Need User Interfaces? (April, 2002)
  50. Eclipsing Your IDE (May, 2002)
  51. You Can't Go Home Again (June, 2002)
  52. Workbooking Through Design Patterns (July, 2002)
  53. Environments and Debugging (August, 2002)
  54. Stating Your Preferences (September , 2002)
  55. Practicing Safer SAX (October, 2002)
  56. Handling SAX Errors (November, 2002)
  57. The Focus Puller (December, 2002)
  58. Easy as Reeling off a Log (January, 2003)
  59. Aspects, Concerns and Java (March, 2003)
  60. Just the Ticket (June, 2003)
  61. The Trie of Knowledge (August, 2003)
  62. Parsing Nested XML (October, 2003)
  63. Using Java Web Start. (December, 2003) Click here for demo.