Patents by Inventor Aaron Boodman

Aaron Boodman 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: 11799984
    Abstract: According to one general aspect, a method of executing a web application installed on an apparatus may include executing, via a processor included by the apparatus, a web browser. The method may include loading, via the web browser, the web application. In some embodiments, the web application may include a manifest and at least a portion of a web site and wherein the web application was packaged as an installable entity. The method may further include managing, by the web browser, the execution of the web application. The method may include accessing, via the web browser, from a local storage medium one or more portions of the web site included by the web application. In some embodiments, the one or more portions of the web site may have been stored in the local storage medium when the web application was installed.
    Type: Grant
    Filed: February 14, 2022
    Date of Patent: October 24, 2023
    Assignee: GOOGLE LLC
    Inventors: Aaron Boodman, Erik Kay, Rafael Weinstein, Matthew Perry, Glen Murphy
  • Patent number: 11785083
    Abstract: A system to synchronize application data bidirectionally between N clients and one server, by: (a) pushing mutations made in the client to the server, wherein each mutation is comprised of a mutation name identifying the type of mutation, and arguments provided by the application modifying the behavior of the mutation, and the pusher also pushes a client ID and mutation ID for each mutation to the server; (b) pulling server differentials to the client; (c) storing key/value pairs in a versioned cache, wherein the keys are text strings and the values are data provided by an application in the client; and (d) resolving conflicts between the client and the server with a rebaser that: forks the cache to create a synch branch when the client receives the latest server differential, applies the latest received server differential to the synch branch, applies only those mutations to the synch branch that have not already been acknowledged by the server, and then makes the synch branch the main branch of the cach
    Type: Grant
    Filed: January 11, 2023
    Date of Patent: October 10, 2023
    Assignee: ROCICORP, LLC
    Inventors: Aaron Boodman, Fritz Schneider, Erik Arvidsson
  • Patent number: 11733850
    Abstract: Disclosed herein are system, method, and computer program product embodiments for slide grid snapping for presentations slides in a cloud collaboration platform. An embodiment operates by displaying a slide made up of rows and columns of pixels, receiving inputs to select and move an object, interpreting the movement, based on proximity to particular rows and columns, places the object along the particular row and column of pixels, and rendering the resulting slide. By serializing and coordinating design actions using the slide grid, the ease of design and the efficiency of the user experience may be enhanced. The grid system further allows users to comment anywhere in the document, associating those comments with objects or layers, and adjusting or moving the comments in response to grid-based actions.
    Type: Grant
    Filed: January 31, 2019
    Date of Patent: August 22, 2023
    Assignee: Salesforce, Inc.
    Inventors: Andy Chung, Aaron Boodman, Joshua Li, Erik Arvidsson, Kevin Gibbs, Diana Berlin
  • Publication number: 20230156081
    Abstract: A system to synchronize application data bidirectionally between N clients and one server, by: (a) pushing mutations made in the client to the server, wherein each mutation is comprised of a mutation name identifying the type of mutation, and arguments provided by the application modifying the behavior of the mutation, and the pusher also pushes a client ID and mutation ID for each mutation to the server; (b) pulling server differentials to the client; (c) storing key/value pairs in a versioned cache, wherein the keys are text strings and the values are data provided by an application in the client; and (d) resolving conflicts between the client and the server with a rebaser that: forks the cache to create a synch branch when the client receives the latest server differential, applies the latest received server differential to the synch branch, applies only those mutations to the synch branch that have not already been acknowledged by the server, and then makes the synch branch the main branch of the cach
    Type: Application
    Filed: January 11, 2023
    Publication date: May 18, 2023
    Applicant: ROCICORP, LLC
    Inventors: Aaron BOODMAN, Fritz SCHNEIDER, Erik ARVIDSSON
  • Patent number: 11582302
    Abstract: A system to synchronize application data bidirectionally between N clients and one server, by: (a) pushing mutations made in the client to the server, wherein each mutation is comprised of a mutation name identifying the type of mutation, and arguments provided by the application modifying the behavior of the mutation, and the pusher also pushes a client ID and mutation ID for each mutation to the server; (b) pulling server differentials to the client; (c) storing key/value pairs in a versioned cache, wherein the keys are text strings and the values are data provided by an application in the client; and (d) resolving conflicts between the client and the server with a rebaser that: forks the cache to create a synch branch when the client receives the latest server differential, applies the latest received server differential to the synch branch, applies only those mutations to the synch branch that have not already been acknowledged by the server, and then makes the synch branch the main branch of the cach
    Type: Grant
    Filed: January 26, 2022
    Date of Patent: February 14, 2023
    Assignee: ROCICORP, LLC
    Inventors: Aaron Boodman, Fritz Schneider, Erik Arvidsson
  • Patent number: 11520780
    Abstract: Systems and techniques are described for efficient, general-purpose, and potentially decentralized databases, distributed storage systems, version control systems, and/or other types of data repositories. Data is represented in a database system in such a way that any value is represented by a unique identifier which is derived from the value itself. Any database peer in the system will derive an identical identifier from the same logical value. The identifier for a value may be derived using a variety of mechanisms, including, without limitation, a hash function known to all peers in the system. The values may be organized hierarchically as a tree of nodes. Any two peers storing the same logical value will deterministically represent that value with a graph, such as the described “Prolly” tree, having the same topology and hash value, irrespective of possibly differing sequences of mutations which caused each to arrive at the same final value.
    Type: Grant
    Filed: May 10, 2021
    Date of Patent: December 6, 2022
    Assignee: Salesforce, Inc.
    Inventors: Aaron Boodman, Rafael Weinstein, Erik Arvidsson, Chris Masone, Dan Willhite, Benjamin Kalman
  • Publication number: 20220247833
    Abstract: According to one general aspect, a method of executing a web application installed on an apparatus may include executing, via a processor included by the apparatus, a web browser. The method may include loading, via the web browser, the web application. In some embodiments, the web application may include a manifest and at least a portion of a web site and wherein the web application was packaged as an installable entity. The method may further include managing, by the web browser, the execution of the web application. The method may include accessing, via the web browser, from a local storage medium one or more portions of the web site included by the web application. In some embodiments, the one or more portions of the web site may have been stored in the local storage medium when the web application was installed.
    Type: Application
    Filed: February 14, 2022
    Publication date: August 4, 2022
    Inventors: Aaron Boodman, Erik Kay, Rafael Weinstein, Matthew Perry, Glen Murphy
  • Publication number: 20220239737
    Abstract: A system to synchronize application data bidirectionally between N clients and one server, by: (a) pushing mutations made in the client to the server, wherein each mutation is comprised of a mutation name identifying the type of mutation, and arguments provided by the application modifying the behavior of the mutation, and the pusher also pushes a client ID and mutation ID for each mutation to the server; (b) pulling server differentials to the client; (c) storing key/value pairs in a versioned cache, wherein the keys are text strings and the values are data provided by an application in the client; and (d) resolving conflicts between the client and the server with a rebaser that: forks the cache to create a synch branch when the client receives the latest server differential, applies the latest received server differential to the synch branch, applies only those mutations to the synch branch that have not already been acknowledged by the server, and then makes the synch branch the main branch of the cach
    Type: Application
    Filed: January 26, 2022
    Publication date: July 28, 2022
    Applicant: ROCICORP, LLC
    Inventors: Aaron BOODMAN, Fritz Schneider, Erik Arvidsson
  • Publication number: 20220063106
    Abstract: Disclosed herein are system, method, and computer program product embodiments for improving user experiences within a cloud collaboration platform that integrates communication tools with word processor functions to enhance workflows, save time, and promote teamwork in the development of slide presentations. To improve usability, a cloud collaboration platform may furnish a reader mode to streamline the presentation review process. The reader mode may allow viewers to review the presentation as the presentation will eventually be presented to an audience. The viewers may provide comments and feedback on the presentation without being inundated with comments and metadata added to an edit mode of the presentation by the original authors.
    Type: Application
    Filed: September 7, 2021
    Publication date: March 3, 2022
    Applicant: salesforce.com, inc.
    Inventors: Andy Chung, Aaron Boodman, Erik Arvidsson, Kevin Gibbs, Julie Tung, Diane Berlin
  • Patent number: 11252252
    Abstract: According to one general aspect, a method of executing a web application installed on an apparatus may include executing, via a processor included by the apparatus, a web browser. The method may include loading, via the web browser, the web application. In some embodiments, the web application may include a manifest and at least a portion of a web site and wherein the web application was packaged as an installable entity. The method may further include managing, by the web browser, the execution of the web application. The method may include accessing, via the web browser, from a local storage medium one or more portions of the web site included by the web application. In some embodiments, the one or more portions of the web site may have been stored in the local storage medium when the web application was installed.
    Type: Grant
    Filed: February 18, 2020
    Date of Patent: February 15, 2022
    Assignee: GOOGLE LLC
    Inventors: Aaron Boodman, Erik Kay, Rafael Weinstein, Matthew Perry, Glen Murphy
  • Patent number: 11113666
    Abstract: Disclosed herein are system, method, and computer program product embodiments for improving user experiences within a cloud collaboration platform that integrates communication tools with word processor functions to enhance workflows, save time, and promote teamwork in the development of slide presentations. To improve usability, a cloud collaboration platform may furnish a reader mode to streamline the presentation review process. The reader mode may allow viewers to review the presentation as the presentation will eventually be presented to an audience. The viewers may provide comments and feedback on the presentation without being inundated with comments and metadata added to an edit mode of the presentation by the original authors.
    Type: Grant
    Filed: January 31, 2019
    Date of Patent: September 7, 2021
    Assignee: salesforce.com, inc.
    Inventors: Andy Chung, Aaron Boodman, Erik Arvidsson, Kevin Gibbs, Julie Tung, Diane Berlin
  • Publication number: 20210263913
    Abstract: Systems and techniques are described for efficient, general-purpose, and potentially decentralized databases, distributed storage systems, version control systems, and/or other types of data repositories. Data is represented in a database system in such a way that any value is represented by a unique identifier which is derived from the value itself. Any database peer in the system will derive an identical identifier from the same logical value. The identifier for a value may be derived using a variety of mechanisms, including, without limitation, a hash function known to all peers in the system. The values may be organized hierarchically as a tree of nodes. Any two peers storing the same logical value will deterministically represent that value with a graph, such as the described “Prolly” tree, having the same topology and hash value, irrespective of possibly differing sequences of mutations which caused each to arrive at the same final value.
    Type: Application
    Filed: May 10, 2021
    Publication date: August 26, 2021
    Inventors: Aaron Boodman, Rafael Weinstein, Erik Arvidsson, Chris Masone, Dan Willhite, Benjamin Kalman
  • Patent number: 11030187
    Abstract: Systems and techniques are described for efficient, general-purpose, and potentially decentralized databases, distributed storage systems, version control systems, and/or other types of data repositories. Data is represented in a database system in such a way that any value is represented by a unique identifier which is derived from the value itself. Any database peer in the system will derive an identical identifier from the same logical value. The identifier for a value may be derived using a variety of mechanisms, including, without limitation, a hash function known to all peers in the system. The values may be organized hierarchically as a tree of nodes. Any two peers storing the same logical value will deterministically represent that value with a graph, such as the described “Prolly” tree, having the same topology and hash value, irrespective of possibly differing sequences of mutations which caused each to arrive at the same final value.
    Type: Grant
    Filed: May 17, 2017
    Date of Patent: June 8, 2021
    Assignee: salesforce.com, inc.
    Inventors: Aaron Boodman, Rafael Weinstein, Erik Arvidsson, Chris Masone, Dan Willhite, Benjamin Kalman
  • Publication number: 20200258133
    Abstract: According to one general aspect, a method of executing a web application installed on an apparatus may include executing, via a processor included by the apparatus, a web browser. The method may include loading, via the web browser, the web application. In some embodiments, the web application may include a manifest and at least a portion of a web site and wherein the web application was packaged as an installable entity. The method may further include managing, by the web browser, the execution of the web application. The method may include accessing, via the web browser, from a local storage medium one or more portions of the web site included by the web application. In some embodiments, the one or more portions of the web site may have been stored in the local storage medium when the web application was installed.
    Type: Application
    Filed: February 18, 2020
    Publication date: August 13, 2020
    Inventors: Aaron Boodman, Erik Kay, Rafael Weinstein, Matthew Perry, Glen Murphy
  • Publication number: 20200090126
    Abstract: Disclosed herein are system, method, and computer program product embodiments for improving user experiences within a cloud collaboration platform that integrates communication tools with word processor functions to enhance workflows, save time, and promote teamwork in the development of slide presentations. To improve usability, a cloud collaboration platform may furnish a reader mode to streamline the presentation review process. The reader mode may allow viewers to review the presentation as the presentation will eventually be presented to an audience. The viewers may provide comments and feedback on the presentation without being inundated with comments and metadata added to an edit mode of the presentation by the original authors.
    Type: Application
    Filed: January 31, 2019
    Publication date: March 19, 2020
    Inventors: Andy Chung, Aaron BOODMAN, Erik ARVIDSSON, Kevin GIBBS, Julie TUNG, Diane BERLIN
  • Publication number: 20200089397
    Abstract: Disclosed herein are system, method, and computer program product embodiments for slide grid snapping for presentations slides in a cloud collaboration platform. An embodiment operates by displaying a slide made up of rows and columns of pixels, receiving inputs to select and move an object, interpreting the movement, based on proximity to particular rows and columns, places the object along the particular row and column of pixels, and rendering the resulting slide. By serializing and coordinating design actions using the slide grid, the ease of design and the efficiency of the user experience may be enhanced. The grid system further allows users to comment anywhere in the document, associating those comments with objects or layers, and adjusting or moving the comments in response to grid-based actions.
    Type: Application
    Filed: January 31, 2019
    Publication date: March 19, 2020
    Inventors: Andy Chung, Aaron Boodman, Josh Li, Erik Arvidsson, Kevin Gibbs, Diana Berlin
  • Patent number: 10580051
    Abstract: A computer-implemented method includes running a background element that is an invisible element in a browser application, where the background element includes a declared association with an application and includes instructions related to one or more visible elements of the application in the browser application and executing the instructions on the background element to perform a function related to the one or more visible elements of the application in the browser application.
    Type: Grant
    Filed: May 18, 2011
    Date of Patent: March 3, 2020
    Assignee: Google LLC
    Inventors: Aaron Boodman, Erik Kay, Matthew Perry, Rafael Weinstein, Andrew T. Wilson
  • Patent number: 10567543
    Abstract: According to one general aspect, a method of executing a web application installed on an apparatus may include executing, via a processor included by the apparatus, a web browser. The method may include loading, via the web browser, the web application. In some embodiments, the web application may include a manifest and at least a portion of a web site and wherein the web application was packaged as an installable entity. The method may further include managing, by the web browser, the execution of the web application. The method may include accessing, via the web browser, from a local storage medium one or more portions of the web site included by the web application. In some embodiments, the one or more portions of the web site may have been stored in the local storage medium when the web application was installed.
    Type: Grant
    Filed: August 25, 2014
    Date of Patent: February 18, 2020
    Assignee: GOOGLE LLC
    Inventors: Aaron Boodman, Erik Kay, Rafael Weinstein, Matthew Perry, Glen Murphy
  • Patent number: 10068270
    Abstract: A computer-implemented method includes providing an online marketplace to developers of web applications that may be downloaded from the marketplace to a client computing device for execution by a browser executing on the client device and receiving a request from a party to the marketplace to list a proposed web application for sale in the marketplace. One or more processors of a computer system automatically determine the permissions requested by the proposed web application and automatically determine if the permissions match one or more predetermined permissions. If the permissions match one or more predetermined permissions, then the proposed application is flagged for a manual vetting process before listing the proposed application in the marketplace, and if they do not match, then the proposed application is listed in the marketplace without manual review of the application.
    Type: Grant
    Filed: April 3, 2014
    Date of Patent: September 4, 2018
    Assignee: GOOGLE LLC
    Inventors: Erik Kay, Aaron Boodman, Lei Zheng, Michael Noth
  • Patent number: 10013497
    Abstract: Methods for loading a current version of a web page in the background of a previous version of the web page are provided. In one aspect, a method includes receiving a request to display a web page, and providing, for display, a previously visited version of the web page in response to the request. The method also includes determining whether an updated version of the web page is available. When the determination indicates an updated version of the web page is available, the method includes loading the updated version of the web page while the previously visited version of the web page is provided for display, and replacing the display of the previously visited version of the web page with a display of the updated version of the web page after the updated version of the web page has been loaded. Systems and machine-readable media are also provided.
    Type: Grant
    Filed: September 17, 2014
    Date of Patent: July 3, 2018
    Assignee: GOOGLE LLC
    Inventor: Aaron Boodman