My primary field of specialization is computer software. I have wide ranging experience with many programming languages and with software systems created from these languages. My specific area of research is software engineering, which has to do with the design and development of large-scale software systems. Recently I have been involved in the Internet/World Wide Web, developing software systems that use the Internet to deliver its results. In addition to my experience as a professor, technical manager, implementor and entrepreneur, I have handled a number of technical legal matters over the past few years. My experience has generally fallen in three major areas:
General Computing: I have provided the court with testimony describing general facts about computers, algorithms, data structures, software development, the Internet, World Wide Web, search engines and peer-to-peer software.
Patents: I have dealt with several cases where the issue was whether a violation of a patent had occurred. In these cases I made a close examination of the patent claims, searched for prior art, and investigated the subject software to determine whether any claim was violated.
Copyrights: Cases here involved a determination of whether one set of computer source code was derivative from another. Some of these systems involved more than one million lines of code. In such cases I use special tools to analyze the software programs. I have applied the court's Abstraction-Filtration-Comparison test, looking for either fragmented literal similarity or comprehensive non-literal similarity.
Litigation support: In all of my cases I have directly supported the attorneys by advising about technical matters. I have written reports for the court on behalf of my clients, I have been deposed, and testified at trial. I always attempt to reduce complicated concepts to their simplest form, and rely upon analogies where appropriate.
For information about specific cases I have worked on, please contact me directly.