Patents by Inventor Benjamin Wolfe Simon

Benjamin Wolfe Simon 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).

  • Publication number: 20220237371
    Abstract: A first request of the first user device to perform a copy-past change to copy content from a source range to a destination range of a local model of the collaborative spreadsheet stored at the first user device is received by a first user device. An indication of a second request of a second user device to perform an intersecting change to modify one or more cells is received by the first user device. Responsive to receiving the indication of the second request of the second user device, the local model of the collaborative spreadsheet is transformed by the first user device. The transforming includes determining, among a plurality of intersecting change types, that the intersecting change qualifies as a first intersecting change type, and performing one or more transformation operations corresponding to the first intersecting change type to transform the local model of the collaborative spreadsheet.
    Type: Application
    Filed: February 7, 2022
    Publication date: July 28, 2022
    Inventors: Benjamin Wolfe Simon, Amod Karve, Joshua Ari Danziger, Zachary Erik Lloyd
  • Patent number: 11244105
    Abstract: Systems and methods are disclosed herein for editing a collaborative spreadsheets hosted on a server. Multiple users may edit the spreadsheet, resulting in situations of intersecting or conflicting edits. A change provided by one user may intersect the cells affected by a change provided by another user. In these cases, one user's change is transformed against the other user's change. In this manner, the conflict is resolved and both changes can be applied to the spreadsheet. Each user device may perform these transforms, and the server may also perform these transforms. This can result in transmission of a reduced volume of data over a network between the devices and the server, in comparison with other methods.
    Type: Grant
    Filed: December 4, 2014
    Date of Patent: February 8, 2022
    Assignee: Google LLC
    Inventors: Benjamin Wolfe Simon, Amod Karve, Joshua Ari Danziger, Zachary Erik Lloyd
  • Patent number: 9720897
    Abstract: Mutations representing spreadsheet edit operations are received at a server from client computers of collaborators and also at a collaborator's client computer from other collaborators and the server. Different mutations may conflict, i.e., provide contradictory instructions on how a spreadsheet is to be edited. Techniques for representing sort operations, cut-and-paste operations, and operations to change cell properties as mutations, and operational transform techniques that can be used to resolve conflicts between such mutations, are disclosed herein. Further disclosed herein are techniques for identifying and processing computationally intensive types of mutations in a calculation thread which operates asynchronously with respect to a UI thread at a collaborator's client computer. The processing may include performing an operational transform on results of the calculation thread based on results obtained in the UI thread.
    Type: Grant
    Filed: June 11, 2013
    Date of Patent: August 1, 2017
    Assignee: GOOGLE INC.
    Inventors: Joshua Ari Danziger, Amod Karve, Zachary Erik Lloyd, Yossi Kahlon, Manuel Tragut, Benjamin Wolfe Simon
  • Patent number: 9635105
    Abstract: Systems and methods for viewing filters on a collaborative spreadsheet stored on a cloud computing service include accessing, from each of a plurality of client computers, a first sheet of a spreadsheet stored on a cloud computing service, where a plurality of filters is associated with the first sheet. A first client computer in the plurality of client computers receives a command by a first user to apply a first filter in the plurality of filters to the first sheet, and applies the first filter to the first sheet on the first client computer. The filtered first sheet is displayed to the first user, and a second client computer in the plurality of client computers concurrently displays an unfiltered first sheet.
    Type: Grant
    Filed: May 31, 2016
    Date of Patent: April 25, 2017
    Assignee: Google Inc.
    Inventors: Benjamin Wolfe Simon, Manual Tragut, Zachary Erik Lloyd, Joshua Ari Danziger, Daniel Gundrum
  • Patent number: 9489367
    Abstract: Mutations representing spreadsheet edit operations are received at a server from client computers of collaborators and also at a collaborator's client computer from other collaborators and the server. Different mutations may conflict, i.e., provide contradictory instructions on how a spreadsheet is to be edited. Techniques for representing sort operations, cut-and-paste operations, and operations to change cell properties as mutations, and operational transform techniques that can be used to resolve conflicts between such mutations, are disclosed herein. Further disclosed herein are techniques for identifying and processing computationally intensive types of mutations in a calculation thread which operates asynchronously with respect to a UI thread at a collaborator's client computer. The processing may include performing an operational transform on results of the calculation thread based on results obtained in the UI thread.
    Type: Grant
    Filed: June 4, 2013
    Date of Patent: November 8, 2016
    Assignee: Google Inc.
    Inventors: Joshua Ari Danziger, Amod Karve, Yossi Kahlon, Benjamin Wolfe Simon, Zachary Erik Lloyd
  • Publication number: 20160277487
    Abstract: Systems and methods for viewing filters on a collaborative spreadsheet stored on a cloud computing service include accessing, from each of a plurality of client computers, a first sheet of a spreadsheet stored on a cloud computing service, where a plurality of filters is associated with the first sheet. A first client computer in the plurality of client computers receives a command by a first user to apply a first filter in the plurality of filters to the first sheet, and applies the first filter to the first sheet on the first client computer. The filtered first sheet is displayed to the first user, and a second client computer in the plurality of client computers concurrently displays an unfiltered first sheet.
    Type: Application
    Filed: May 31, 2016
    Publication date: September 22, 2016
    Inventors: Benjamin Wolfe Simon, Manual Tragut, Zachary Erik Lloyd, Joshua Ari Danziger, Daniel Gundrum
  • Publication number: 20160162461
    Abstract: Systems and methods are disclosed herein for editing a collaborative spreadsheets hosted on a server. Multiple users may edit the spreadsheet, resulting in situations of intersecting or conflicting edits. A change provided by one user may intersect the cells affected by a change provided by another user. In these cases, one user's change is transformed against the other user's change. In this manner, the conflict is resolved and both changes can be applied to the spreadsheet. Each user device may perform these transforms, and the server may also perform these transforms. This can result in transmission of a reduced volume of data over a network between the devices and the server, in comparison with other methods.
    Type: Application
    Filed: December 4, 2014
    Publication date: June 9, 2016
    Inventors: Benjamin Wolfe Simon, Amod Karve, Joshua Ari Danziger, Zachary Erik Lloyd
  • Patent number: 9361287
    Abstract: Systems and methods for viewing filters on a collaborative spreadsheet stored on a cloud computing service include accessing, from each of a plurality of client computers, a first sheet of a spreadsheet stored on a cloud computing service, where a plurality of filters is associated with the first sheet. A first client computer in the plurality of client computers receives a command by a first user to apply a first filter in the plurality of filters to the first sheet, and applies the first filter to the first sheet on the first client computer. The filtered first sheet is displayed to the first user, and a second client computer in the plurality of client computers concurrently displays an unfiltered first sheet.
    Type: Grant
    Filed: May 22, 2013
    Date of Patent: June 7, 2016
    Assignee: Google Inc.
    Inventors: Benjamin Wolfe Simon, Manuel Tragut, Zachary Erik Lloyd, Joshua Ari Danziger, Daniel Gundrum
  • Patent number: 9298688
    Abstract: Systems and methods for processing user actions on a collaborative spreadsheet include accessing an unfiltered sheet of a spreadsheet stored on a server to display on a client computer, where a plurality of filters is associated with the unfiltered sheet, and receiving a selection by a user of a first filter in the plurality of filters to be applied to the unfiltered sheet. A filtered sheet is displayed to the user, where the filtered sheet is obtained by applying the first filter to the unfiltered sheet. User actions inputted by a user on the client computer are received that reference cells of the unfiltered sheet. User actions are sent to the server and transformed against the first filter. The display of the filtered sheet is updated based on the transformed user action.
    Type: Grant
    Filed: May 22, 2013
    Date of Patent: March 29, 2016
    Assignee: GOOGLE INC.
    Inventors: Benjamin Wolfe Simon, Manuel Tragut, Zachary Erik Lloyd, Joshua Ari Danziger, Daniel Gundrum
  • Publication number: 20150199327
    Abstract: Mutations representing spreadsheet edit operations are received at a server from client computers of collaborators and also at a collaborator's client computer from other collaborators and the server. Different mutations may conflict, i.e., provide contradictory instructions on how a spreadsheet is to be edited. Techniques for representing sort operations, cut-and-paste operations, and operations to change cell properties as mutations, and operational transform techniques that can be used to resolve conflicts between such mutations, are disclosed herein. Further disclosed herein are techniques for identifying and processing computationally intensive types of mutations in a calculation thread which operates asynchronously with respect to a UI thread at a collaborator's client computer. The processing may include performing an operational transform on results of the calculation thread based on results obtained in the UI thread.
    Type: Application
    Filed: June 4, 2013
    Publication date: July 16, 2015
    Inventors: Joshua Ari Danziger, Amod Karve, Yossi Kahlon, Benjamin Wolfe Simon, Zachary Erik Lloyd
  • Publication number: 20150199328
    Abstract: Mutations representing spreadsheet edit operations are received at a server from client computers of collaborators and also at a collaborator's client computer from other collaborators and the server. Different mutations may conflict, i.e., provide contradictory instructions on how a spreadsheet is to be edited. Techniques for representing sort operations, cut-and-paste operations, and operations to change cell properties as mutations, and operational transform techniques that can be used to resolve conflicts between such mutations, are disclosed herein. Further disclosed herein are techniques for identifying and processing computationally intensive types of mutations in a calculation thread which operates asynchronously with respect to a UI thread at a collaborator's client computer. The processing may include performing an operational transform on results of the calculation thread based on results obtained in the UI thread.
    Type: Application
    Filed: June 11, 2013
    Publication date: July 16, 2015
    Inventors: Joshua Ari Danziger, Amod Karve, Zachary Erik Lloyd, Yossi Kahlon, Manuel Tragut, Benjamin Wolfe Simon
  • Patent number: 8983901
    Abstract: Systems and methods are provided for determining mutation regions for a spreadsheet. Mutation regions are iteratively assigned to a first region of cells in the spreadsheet. To assign a mutation region, a column is selected from the first region. A first row in the first region of cells is associated with the selected column that is not assigned to a mutation region and that is not included in a second region of the spreadsheet is determined. A largest region contained within the first region that does not overlap with the second region for which the cell in the selected column and the first row is in a designated position is determined. The largest region is assigned as a mutation region for the spreadsheet.
    Type: Grant
    Filed: February 5, 2013
    Date of Patent: March 17, 2015
    Assignee: Google Inc.
    Inventor: Benjamin Wolfe Simon
  • Patent number: 8943142
    Abstract: Systems and methods for providing filters for collaborative spreadsheets include storing a spreadsheet on a server, where the spreadsheet comprises a plurality of sheets, granting a plurality of client computers concurrent access to the spreadsheet, and receiving from the plurality of client computers a plurality of filters to be applied to a first sheet in the plurality of sheets. The plurality of filters are stored on the server, and the plurality of filters is associated with the first sheet. The plurality of filters are provided to each client computer. When a user on a first client computer in the plurality of client computers applies a first filter in the plurality of filters to the first sheet, the display of the first sheet on a second client computer in the plurality of client computers is independent of the filter application on the first client computer.
    Type: Grant
    Filed: May 22, 2013
    Date of Patent: January 27, 2015
    Assignee: Google Inc.
    Inventors: Benjamin Wolfe Simon, Manuel Tragut, Zachary Erik Lloyd, Joshua Ari Danziger, Daniel Gundrum