David Kaminsky, Ph.D., is a technology specialist in the Washington, D.C., office of Fish & Richardson P.C. David’s practice emphasizes client counseling, patent prosecution, and patent monetization, with a focus on computer and software technologies, including cloud computing, machine learning, security, parallel processing, blockchain, mobile computing, and Internet of Things (IoT).
David is an experienced inventor, with over 100 patents in his name, and has successfully mentored hundreds of inventors as they learned and explored the invention process. David has conducted scores of invention harvesting sessions resulting in hundreds of inventions. He has written about diversity and inclusion among inventors, and how mentoring can improve equity. He is a frequent speaker on the importance of patents to promote the freedom to innovate, including encouraging innovation that relates to open technologies.
David has also participated in numerous patent transactions, providing the technical and business insights needed to ensure proper valuation. He has created portfolio development and maintenance strategies and led their effective executions.
Prior to joining Fish, he was an IP Technologist and Chief Software Patent Architect for International Business Machines (IBM).
A Proactive Energy-Efficient Technique for Change Management in Computing Clouds
Journal on Advances in Networks and Services, volume 3, numbers 1 and 2, 2010
Scheduling-capable autonomic manager for policy-based IT change management system
Journal of Enterprise Information Systems, Volume 4 Issue 4, pp. 423-444, November 2010
Analysis of Energy Efficiency in Clouds
The First International Conferences on Advanced Services Computation, 2009
Best paper award
Scheduling-Capable Autonomic Manager for Policy based IT Change Management System
Proceedings of the AIMS2009 conference, Enschede, Netherland, June 2009
Getting started with Simplified Policy Language
IBM Developerworks, 2008
JOIE: The Java Object Instrumentation Environment
Usenix technical conference, 2008
Policy-Based Automation in the Autonomic Data Center
Scheduling-Capable Autonomic Manager for Policy Based IT Change Management System
IEEE EDOC 2008
Scheduling-Capable Autonomic Manager for Policy-based IT Change Management System
Proceedings of the 12th IEEE International EDOC Conference EDOC’08, 15-19 September 2008, München, Germany
Autonomic Approach to IT Infrastructure Management in a Virtual Computing Lab Environment
CIM-SPL Policies and Virtualization for Systems and Virtualization Management
Build a HAL 9000 with IBM autonomic computing technology
IBM Developerworks, 2006
An Introduction to Policy for Autonomic Computing
IBM Developerworks, 2005
Java for SNA: A Case Study
IBM alphaWorks, 1998
SNA and TCP Enterprise Networking
Book chapter: ISBN:0-13-127168-7, 1997
Adaptive Parallelism with Piranha
IEEE Computer, Volume 28, Issue 1, Jan 1995 Page(s): 40-49
Piranha Scheduling: Strategies and their Implementation
Yale University technical report, 1995
Adaptive Parallelism with Piranha
Ph.D. Thesis, 1993
Supercomputing out of recycled garbage: Preliminary experience with Piranha
ACM Conference on Supercomputing, 1991
“Open Source Software and Patents: Reconciling the Conflict,” Fish Webinar (November 3, 2021)
Representative Patents – Named Inventor
U.S. 10,938,557 – Distributed ledger for generating and verifying random sequence.
U.S. 10,901,896 – Cached result use through quantum gate rewrite.
U.S. 9,276,759 – Monitoring of computer network resources having service level objectives.
U.S. 9,141,433 – Automated cloud workload management in a map-reduce environment.
U.S. 9,088,636 – Quality of service (QoS) based planning in web services aggregation.
U.S. 8,996,500 – Using temporary performance objects for enhanced query performance.
U.S. 8,381,015 – Fault tolerance for map/reduce computing.
U.S. 8,245,140 – Visualization and consolidation of virtual machines in a virtualized data center.
U.S. 8,082,291 – Identifying relevant data from unstructured feeds.
U.S. 7,827,608 – Data leak protection system, method and apparatus.
U.S. 7,743,018 – Transient storage in distributed collaborative computing environments.
U.S. 7,461,166 – Autonomic service routing using observed resource requirement for self-optimization.
U.S. 7,010,681 – Method, system and apparatus for selecting encryption levels based on policy profiling.
U.S. 6,915,386 – Processing service level agreement (SLA) terms in a caching component of a storage system.
U.S. 6,874,015 – Parallel CDN-based content delivery.
U.S. 6,564,260 – Systems, methods and computer program products for assigning, generating and delivering content to intranet users.
U.S. 6,157,960 – Technique for programmatically creating distributed object programs.
U.S. 6,138,156 – Selecting and applying content-reducing filters based on dynamic environmental factors.
U.S. 6,011,918 – Methods, systems and computer program products for generating client/server applications.
Ph.D., Computer Science, Yale University (1994)
M.S., Computer Science, Yale University (1991)
B.A. with distinction, Phi Beta Kappa, Mathematics, University of Virginia (1988)