IP Library Granted Patent US 11,106,332
Granted Patent B2
US 11,106,332 · App. 16/570,779 · Granted Aug 31, 2021

Operations log

Inventors: Melissa Ming-Sak Boucher (Los Altos, CA); Jeremy Edward Britton (Santa Cruz, CA); Luke Bayes (St. Petersburg, FL); Monica F. Caso (Burlingame, CA); Alexander W. Deneui (Emerald Hills, CA); Christopher Leland Eck (Sammamish, WA); Nigel Robin Ellis (Redmond, WA); Filipe P. Fortes (Sarasota, FL); David Lilja Greenspan (Aptos, CA); Brett Robert Hobbs (Santa Monica, CA); Matthew B. Hudson (San Carlos, CA); Timothy Andrew James (Seattle, WA); Kenneth Francis Mendes (Sunnyvale, CA); Shishir S. Mehrotra (Los Altos, CA); Trevor Michael O'Brien (San Francisco, CA); Lane Patrick Shackleton (San Francisco, CA); Rhed Shi (San Jose, CA); Hariharan Sivaramakrishnan (Sunnyvale, CA); Jason Peter Stowe (Newcastle, WA); Jason Andrew Tamulonis (Seattle, WA); Himanshu Vasishth (Sunnyvale, CA); Ramesh Krishna Vyaghrapuri (Kenmore, WA); David Richard Wright (Redwood City, CA); Irvin Zhan (New Hyde Park, NY); Roger Mathieu Zurawicki (San Francisco, CA)
Assignee: Coda Project, Inc.
G06F3/0482G06F3/0486G06F3/04847G06F16/2228G06F16/2282G06F40/106G06F40/14G06F40/177G06F40/18G06F40/197G06F40/205G06F3/04842G06F7/544G06F11/3438G06F11/3476G06F16/235G06F16/2358G06F16/26G06F16/93G06F40/10G06T11/206G06T2200/24
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,106,332
App. No.
16/570,779
Granted
Aug 31, 2021
Kind
B2
Abstract

The present invention discloses receiving a first operation log from a first computing device, creating a first document view in response to the first operation log, the document view comprising content generated using at least a portion of the first operation log, providing the first document view to a display device, receiving a user document change input value, and creating a local operation log in response to the first operation log and the user document change input value, the local operation log comprising at least one sequential operation defining operations to create a second document, updating the first document view in response to the user document change input value, and communicating a change value for the first operation log to the first computing device in response to the first operation log and the local operation log.

Claims (83)

1. A method, comprising:

receiving a first operation log from a first computing device, the first operation log comprising at least one first sequential operation defining operations to create a first document;

creating a first document view in response to the first operation log, the first document view comprising content generated using at least a portion of the first operation log;

providing the first document view to a display device;

receiving a user document change input value, and creating a local operation log in response to the first operation log and the user document change input value, the local operation log comprising at least one sequential operation defining operations to create a second document;

updating the first document view in response to the user document change input value;

communicating a change value for the first operation log to the first computing device;

updating the first operation log in response to the change value; and

generating a reduced set of operations based on the operations in the updated first operation log.

2. The method of claim 1 , wherein the reduced set of operations comprises a consolidated set of operations from the updated first operation log.

3. The method of claim 1 , wherein the reduced set of operations is a sequence of operations based on the operations of the first operation log configured to provide the same output as the updated first operation log.

4. The method of claim 3 , wherein the reduced set of operations is a sequence of operations configured to have a smaller size than the updated first operation log.

5. The method of claim 3 , wherein the reduced set of operations is a sequence of operations configured to have a reduced memory usage compared to the updated first operation log.

6. The method of claim 1 , further comprising:

further comprising determining a snapshot, the snapshot comprising at least one sequential operation defining at least one second sequential operation, wherein the at least one second sequential operation, if executed, results in an equivalent document to the first document updated by the change value; and

providing the snapshot as the updated first operation log.

7. The method of claim 6 , wherein the snapshot comprises the reduced set of operations.

8. The method of claim 1 , further comprising:

accessing a data element of the first document;

providing a first view in response to the data element, wherein the first document view comprises at least a portion of the data element;

determining a visualization element (VE) in response to the data element, and further in response to at least one of: a user visualization selection or a user context value; and

wherein the updating the first document view is further in response to the VE and the data element; and

wherein the creating the local operation log is further in response to the VE and the data element.

9. The method of claim 1 , further comprising:

determining a calculation definition in response to at least one formula of the first document, generating an executable object in response to the calculation definition, and wherein the executable object comprises instructions which, upon execution, cause the first client computing device to perform operations in response to the calculation definition; and

interpreting a user focus location, and directing execution of the executable object in response to the user focus location.

10. A method, comprising:

receiving a first operation log from a first computing device, the first operation log comprising at least one first sequential operation defining operations to create a first document;

creating a first document view in response to the first operation log, the first document view comprising content generated using at least a portion of the first operation log;

providing the first document view to a display device;

receiving a user document change input value, and creating a local operation log in response to the first operation log and the user document change input value, the local operation log comprising at least one sequential operation defining operations to create a second document;

updating the first document view in response to the user document change input value;

communicating a change value for the first operation log to the first computing device in response to the first operation log and the local operation log; and

determining a snapshot in response to the change value, the snapshot comprising at least one sequential operation defining at least one second sequential operation, wherein the at least one second sequential operation, if executed, results in an equivalent document to the first document updated by the change value.

11. The method of claim 10 , further comprising:

updating the first operation log, wherein the updating comprises determining a reduced set of operations; and

replacing the first operation log with the reduced set of operations.

12. The method of claim 11 , wherein the snapshot comprises the reduced set of operations.

13. The method of claim 11 , wherein the first operation log comprises higher resolution operations than the snapshot.

14. The method of claim 12 , wherein the snapshot comprises a consolidated set of operations from the first operation log.

15. The method of claim 12 , wherein the reduced set of operations is a sequence of operations configured to have a smaller size than the first operation log.

16. The method of claim 12 , wherein the reduced set of operations is a sequence of operations configured to have a reduced memory usage compared to the first operation log.

17. The method of claim 10 , further comprising:

accessing a data element of the first document;

providing a first view in response to the data element, wherein the first document view comprises at least a portion of the data element;

determining a visualization element (VE) in response to the data element, and further in response to at least one of: a user visualization selection or a user context value; and

wherein the updating the first document view is further in response to the VE and the data element; and

wherein the creating the local operation log is further in response to the VE and the data element.

18. The method of claim 10 , further comprising:

determining a calculation definition in response to at least one formula of the first document, and generating an executable object in response to the calculation definition, and wherein the executable object comprises instructions which, upon execution, cause at least one of the document server first computing device and the first client computing device to perform operations in response to the calculation definition; and

interpreting a user focus location, and directing execution of the executable object in response to the user focus location.

19. A system, comprising:

a first computing device communicatively coupled to a second computing device;

the first computing device comprising a document server structured to communicate a first operation log to the second computing device, the first operation log comprising at least one first sequential operation defining operations to create a first document;

the second computing device structured to:

create a first document view in response to the first operation log, the first document view comprising content generated using at least a portion of the first operation log;

provide the first document view to a display device;

receive a user document change input value, and to create a local operation log in response to the first operation log and the user document change input value, the local operation log comprising at least one sequential operation defining operations to create a second document;

update the first document view in response to the user document change input value;

communicate a change value for the first operation log to the first computing device;

update the first operation log in response to the change value; and

generate a reduced set of operations based on the operations in the updated first operation log.

20. The system of claim 19 , wherein the reduced set of operations comprises a consolidated set of operations from the updated first operation log.

21. The system of claim 19 , wherein the reduced set of operations is a sequence of operations based on the operations of the first operation log configured to provide the same output as the updated first operation log.

22. The system of claim 21 , wherein the reduced set of operations is a sequence of operations configured to have a smaller size than the updated first operation log.

23. The system of claim 21 , wherein the reduced set of operations is a sequence of operations configured to have a reduced memory usage compared to the updated first operation log.

24. The system of claim 19 , further comprising:

wherein the second computing device is structured to:

determine a snapshot, the snapshot comprising at least one sequential operation defining at least one second sequential operation,

wherein the at least one second sequential operation, if executed, results in an equivalent document to the second document; and

provide the snapshot as the updated first operation log.

25. The system of claim 24 , wherein the snapshot comprises the reduced set of operations.

26. The system of claim 19 ,

wherein the second computing device is further structured to:

access a data element of the first document;

provide a first view in response to the data element, wherein the first document view comprises at least a portion of the data element;

determine a visualization element (VE) in response to the data element, and further in response to at least one of: a user visualization selection or a user context value; and

wherein the updating the first document view is further in response to the VE and the data element; and

wherein the creating the local operation log is further in response to the VE and the data element.

27. The system of claim 19 ,

wherein the second computing device is further structured to:

determine a calculation definition in response to at least one formula of the first document, and generate an executable object in response to the calculation definition, and wherein the executable object comprises instructions which, upon execution, cause at least one of the document server, first computing device, and the first client computing device to perform operations in response to the calculation definition; and

interpret a user focus location and directing execution of the executable object in response to the user focus location.

Assignments (5)
CHANGE OF NAME Recorded Nov 21, 2025
From: GRAMMARLY, INC.
To: SUPERHUMAN PLATFORM INC.
Reel/Frame 073655/0099 →
MERGER Recorded Mar 5, 2025
From: CODA PROJECT, INC.
To: CODA PROJECT, LLC
Reel/Frame 070407/0635 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 5, 2025
From: CODA PROJECT, LLC
To: GRAMMARLY, INC.
Reel/Frame 070407/0687 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 14, 2020
From: BOUCHER, MELISSA MING-SAK; BRITTON, JEREMY EDWARD; BAYES, LUKE; CASO, MONICA F.; DENEUI, ALEXANDER W.; ECK, CHRISTOPHER LELAND; ELLIS, NIGEL ROBIN; FORTES, FILIPE P.; GREENSPAN, DAVID LILJA; HOBBS, BRETT ROBERT; HUDSON, MATTHEW B.; JAMES, TIMOTHY ANDREW; MENDES, KENNETH FRANCIS; MEHROTRA, SHISHIR S.; O'BRIEN, TREVOR MICHAEL; SHACKLETON, LANE PATRICK; SHI, RHED; SIVARAMAKRISHNAN, HARIHARAN; STOWE, JASON PETER; TAMULONIS, JASON ANDREW; VASISHTH, HIMANSHU; VYAGHRAPURI, RAMESH KRISHNA; WRIGHT, DAVID RICHARD; ZHAN, IRVIN; ZURAWICKI, ROGER MATHIEU
To: KRYPTON PROJECT, INC.
Reel/Frame 051513/0762 →
CHANGE OF NAME Recorded Jan 14, 2020
From: KRYPTON PROJECT, INC.
To: CODA PROJECT, INC.
Reel/Frame 051631/0373 →
Continuity (4)
Continuation 15499887 · Apr 27, 2017
Provisional Application 62485908 · Apr 15, 2017
Provisional Application 62328469 · Apr 27, 2016
Related Publication 20200073518A1 · Mar 5, 2020
Cited By (4)
US 12,288,024 US 12,346,653 US 12,591,351 US 12,645,343