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: 20220237371Abstract: 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: ApplicationFiled: February 7, 2022Publication date: July 28, 2022Inventors: Benjamin Wolfe Simon, Amod Karve, Joshua Ari Danziger, Zachary Erik Lloyd
-
Patent number: 11244105Abstract: 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: GrantFiled: December 4, 2014Date of Patent: February 8, 2022Assignee: Google LLCInventors: Benjamin Wolfe Simon, Amod Karve, Joshua Ari Danziger, Zachary Erik Lloyd
-
Patent number: 9720897Abstract: 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: GrantFiled: June 11, 2013Date of Patent: August 1, 2017Assignee: GOOGLE INC.Inventors: Joshua Ari Danziger, Amod Karve, Zachary Erik Lloyd, Yossi Kahlon, Manuel Tragut, Benjamin Wolfe Simon
-
Patent number: 9635105Abstract: 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: GrantFiled: May 31, 2016Date of Patent: April 25, 2017Assignee: Google Inc.Inventors: Benjamin Wolfe Simon, Manual Tragut, Zachary Erik Lloyd, Joshua Ari Danziger, Daniel Gundrum
-
Patent number: 9489367Abstract: 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: GrantFiled: June 4, 2013Date of Patent: November 8, 2016Assignee: Google Inc.Inventors: Joshua Ari Danziger, Amod Karve, Yossi Kahlon, Benjamin Wolfe Simon, Zachary Erik Lloyd
-
Publication number: 20160277487Abstract: 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: ApplicationFiled: May 31, 2016Publication date: September 22, 2016Inventors: Benjamin Wolfe Simon, Manual Tragut, Zachary Erik Lloyd, Joshua Ari Danziger, Daniel Gundrum
-
Publication number: 20160162461Abstract: 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: ApplicationFiled: December 4, 2014Publication date: June 9, 2016Inventors: Benjamin Wolfe Simon, Amod Karve, Joshua Ari Danziger, Zachary Erik Lloyd
-
Patent number: 9361287Abstract: 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: GrantFiled: May 22, 2013Date of Patent: June 7, 2016Assignee: Google Inc.Inventors: Benjamin Wolfe Simon, Manuel Tragut, Zachary Erik Lloyd, Joshua Ari Danziger, Daniel Gundrum
-
Patent number: 9298688Abstract: 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: GrantFiled: May 22, 2013Date of Patent: March 29, 2016Assignee: GOOGLE INC.Inventors: Benjamin Wolfe Simon, Manuel Tragut, Zachary Erik Lloyd, Joshua Ari Danziger, Daniel Gundrum
-
Publication number: 20150199327Abstract: 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: ApplicationFiled: June 4, 2013Publication date: July 16, 2015Inventors: Joshua Ari Danziger, Amod Karve, Yossi Kahlon, Benjamin Wolfe Simon, Zachary Erik Lloyd
-
Publication number: 20150199328Abstract: 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: ApplicationFiled: June 11, 2013Publication date: July 16, 2015Inventors: Joshua Ari Danziger, Amod Karve, Zachary Erik Lloyd, Yossi Kahlon, Manuel Tragut, Benjamin Wolfe Simon
-
Patent number: 8983901Abstract: 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: GrantFiled: February 5, 2013Date of Patent: March 17, 2015Assignee: Google Inc.Inventor: Benjamin Wolfe Simon
-
Patent number: 8943142Abstract: 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: GrantFiled: May 22, 2013Date of Patent: January 27, 2015Assignee: Google Inc.Inventors: Benjamin Wolfe Simon, Manuel Tragut, Zachary Erik Lloyd, Joshua Ari Danziger, Daniel Gundrum