Patents by Inventor Duane Campbell

Duane Campbell has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 10936797
    Abstract: The present disclosure provides methods, systems, and computer products for providing state-based revisions in a document collaboration system. In some aspects, a plurality of users may be simultaneously editing the same document on their respective computing devices. The document may comprise a plurality of editable objects having unique objects identifiers. In such aspects, when a user edits an object in a local version of the document, a state-based revision (“SBR”) record is created. The SBR is populated with information such as, information describing the type of object being edited, a descriptor that uniquely identifies the specific instance of the object being edited, a collection of common references that can be adjusted by the document collaboration engine and an opaque binary stream comprising the modified state of the edited object. The SBR record is then transmitted to one or more additional devices.
    Type: Grant
    Filed: May 22, 2019
    Date of Patent: March 2, 2021
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Nicholas Ryan, Danny Khen, Jenefer Monroe, Alexander Babanov, Kartik Nathan, Dmitri Kotchetov, Konrad Tupaj, Douglas Mangini, Sam Gensburg, Duane Campbell
  • Patent number: 10803841
    Abstract: A hand-held strumming device includes a hollow body, a power source, a motor, a regulator, and a strummer. The power source is disposed in the hollow body. The motor is in electrical communication with the power source. The regulator is in electrical communication with both the motor and the power source. The regulator is configured to selectively adjust a rotational speed of the motor. The strummer is rotatably disposed on the disk. The strummer is configured to be presented to strings of a stringed instrument upon rotation of the motor to strum the strings.
    Type: Grant
    Filed: June 21, 2019
    Date of Patent: October 13, 2020
    Inventors: Mitchell Duane Campbell, Tim Richard Townsend
  • Publication number: 20190392794
    Abstract: A hand-held strumming device includes a hollow body, a power source, a motor, a regulator, and a strummer. The power source is disposed in the hollow body. The motor is in electrical communication with the power source. The regulator is in electrical communication with both the motor and the power source. The regulator is configured to selectively adjust a rotational speed of the motor. The strummer is rotatably disposed on the disk. The strummer is configured to be presented to strings of a stringed instrument upon rotation of the motor to strum the strings.
    Type: Application
    Filed: June 21, 2019
    Publication date: December 26, 2019
    Inventors: Mitchell Duane Campbell, Tim Richard Townsend
  • Publication number: 20190392028
    Abstract: The present disclosure provides methods, systems, and computer products for providing state-based revisions in a document collaboration system. In some aspects, a plurality of users may be simultaneously editing the same document on their respective computing devices. The document may comprise a plurality of editable objects having unique objects identifiers. In such aspects, when a user edits an object in a local version of the document, a state-based revision (“SBR”) record is created. The SBR is populated with information such as, information describing the type of object being edited, a descriptor that uniquely identifies the specific instance of the object being edited, a collection of common references that can be adjusted by the document collaboration engine and an opaque binary stream comprising the modified state of the edited object. The SBR record is then transmitted to one or more additional devices.
    Type: Application
    Filed: May 22, 2019
    Publication date: December 26, 2019
    Inventors: Nicholas Ryan, Danny Khen, Jenefer Monroe, Alexander Babanov, Kartik Nathan, Dmitri Kotchetov, Konrad Tupaj, Douglas Mangini, Sam Gensburg, Duane Campbell
  • Patent number: 10331775
    Abstract: The present disclosure provides methods, systems, and computer products for providing state-based revisions in a document collaboration system. In some aspects, a plurality of users may be simultaneously editing the same document on their respective computing devices. The document may comprise a plurality of editable objects having unique objects identifiers. In such aspects, when a user edits an object in a local version of the document, a state-based revision (“SBR”) record is created. The SBR is populated with information such as, information describing the type of object being edited, a descriptor that uniquely identifies the specific instance of the object being edited, a collection of common references that can be adjusted by the document collaboration engine and an opaque binary stream comprising the modified state of the edited object. The SBR record is then transmitted to one or more additional devices.
    Type: Grant
    Filed: October 15, 2014
    Date of Patent: June 25, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Nicholas Ryan, Danny Khen, Jenefer Monroe, Alexander Babanov, Kartik Nathan, Dmitri Kotchetov, Konrad Tupaj, Douglas Mangini, Sam Gensburg, Duane Campbell
  • Publication number: 20160110326
    Abstract: The present disclosure provides methods, systems, and computer products for providing state-based revisions in a document collaboration system. In some aspects, a plurality of users may be simultaneously editing the same document on their respective computing devices. The document may comprise a plurality of editable objects having unique objects identifiers. In such aspects, when a user edits an object in a local version of the document, a state-based revision (“SBR”) record is created. The SBR is populated with information such as, information describing the type of object being edited, a descriptor that uniquely identifies the specific instance of the object being edited, a collection of common references that can be adjusted by the document collaboration engine and an opaque binary stream comprising the modified state of the edited object. The SBR record is then transmitted to one or more additional devices.
    Type: Application
    Filed: October 15, 2014
    Publication date: April 21, 2016
    Inventors: Nicholas Ryan, Danny Khen, Jenefer Monroe, Alexander Babanov, Kartik Nathan, Dmitri Kotchetov, Konrad Tupaj, Douglas Mangini, Sam Gensburg, Duane Campbell
  • Publication number: 20140372369
    Abstract: Embodiments are disclosed for a system to manage changes to a shared electronic document. In embodiments, a client side method is used to manage changes to a shared electronic document. The method includes receiving a change to a locally stored rendition of a shared electronic document, and updating a change history. In embodiments, the change history captures the change made to the locally stored rendition of a shared electronic document. The method also includes sending information regarding the change to a server, receiving information regarding a master copy of the shared electronic document, and determining based on the received information the change was accepted by the server and applied to the master copy of the shared electronic document.
    Type: Application
    Filed: June 14, 2013
    Publication date: December 18, 2014
    Inventors: Alexander Babanov, Dan Y. Khen, Nicholas Ryan, David Samuel Gensburg, Harold Duane Campbell, Konrad Tupaj, Dmitri Kotchetov, Kartik Nathan, Douglas Allen Mangini, Jenefer Monroe
  • Patent number: 8032821
    Abstract: This disclosure relates to a method and system of processing chain calculations in spreadsheet applications utilizing multiple processors, each having a separate recalculation engine. A single calculation chain may be reordered into a unified chain where supporting and dependent formulas are organized into a tree hierarchy of child chains. The unified chain is further divided into dependency levels, where entries in each dependency level may be moved to a next dependency level during reordering. If an entry within a dependency level is dependent upon another entry not found within its own child chain, the unified chain is ordered such that an entry is only dependent upon an entry in a prior dependency level. Further, dependency levels allow a control thread to perform control-thread-only operations while maintaining multi-thread processing capabilities.
    Type: Grant
    Filed: May 8, 2006
    Date of Patent: October 4, 2011
    Assignee: Microsoft Corporation
    Inventors: Jeffrey J. Duzak, Andrew Becker, Matthew J. Androski, Duane Campbell
  • Patent number: 7533139
    Abstract: Embodiments of the invention involve a method of concurrent processing of chain calculations using multiple processors each having a separate recalculation engine in a spreadsheet program. The operations basically include first determining a number of available processors, then allocating a recalculation engine to each available processor, distributing the formulas between the recalculation engines, and then concurrently evaluating the formulas distributed to each recalculation engine when a recalc operation is called for in the spreadsheet program.
    Type: Grant
    Filed: September 27, 2004
    Date of Patent: May 12, 2009
    Assignee: Microsoft Corporation
    Inventors: Bruce Cordell Jones, Chad B. Rothschiller, David F. Gainer, Jeffrey J. Duzak, Matthew J. Androski, Duane Campbell
  • Publication number: 20070260667
    Abstract: This disclosure relates to a method and system of processing chain calculations in spreadsheet applications utilizing multiple processors, each having a separate recalculation engine. A single calculation chain may be reordered into a unified chain where supporting and dependent formulas are organized into a tree hierarchy of child chains. The unified chain is further divided into dependency levels, where entries in each dependency level may be moved to a next dependency level during reordering. If an entry within a dependency level is dependent upon another entry not found within its own child chain, the unified chain is ordered such that an entry is only dependent upon an entry in a prior dependency level. Further, dependency levels allow a control thread to perform control-thread-only operations while maintaining multi-thread processing capabilities.
    Type: Application
    Filed: May 8, 2006
    Publication date: November 8, 2007
    Applicant: Microsoft Corporation
    Inventors: Jeffrey Duzak, Andrew Becker, Matthew Androski, Duane Campbell