Patents by Inventor Micah Lemonik

Micah Lemonik 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: 20180285323
    Abstract: A networked application and email application were described herein that provide for an intuitive system by which users can participate in collaborative workflow relating to a network document. In one implementation, a system includes a messaging server component to provide messaging services and an application server component to provide a networked application. The application server component interacts with the messaging server component in response to a user command to initiate collaboration on the network document. The interaction with the messaging server component includes providing a link that refers to a version of the network document as created or edited by the user.
    Type: Application
    Filed: April 27, 2018
    Publication date: October 4, 2018
    Inventors: Jonathan Rochelle, Micah Lemonik, Farzad Khosrowshahi, John Stephen Danaher
  • Patent number: 10082927
    Abstract: A computer-implemented collaborative editing method includes receiving input from a user of a browser-based document editing application on a document displayed by the application; identifying a current location in the document for a cursor of a first user executing the application; receiving from a central server system data that reflects changes made to the document by one or more users other than the first user and current positions in the document of cursors for the one or more other user; updating a document model stored on a computing device that is executing the browser-based application and rendering at least a portion of the model to the browser; and rendering the current positions of the cursors for the one or more other users to the browser.
    Type: Grant
    Filed: January 27, 2016
    Date of Patent: September 25, 2018
    Assignee: GOOGLE LLC
    Inventors: Micah Lemonik, Olga Sergeyevna Saviano, Janani R. Ravi, Luiz Do Amaral De Franca Pereira Filho
  • Patent number: 10031920
    Abstract: Techniques are shown for enabling a network system to index data stored on a third-party server without having to access the raw data on the third-party server. Metadata consisting of one or more of indexable text or indexable html or some combination of indexable text and indexable html is associated with the data stored on a third-party server. An indexing utility processes the metadata at the network system from the third-party server and arranges the metadata on the network system in a manner that is searchable by searching functionality of the network system.
    Type: Grant
    Filed: December 29, 2015
    Date of Patent: July 24, 2018
    Assignee: GOOGLE LLC
    Inventors: Eric Benson Schoeffler, Micah Lemonik, Michael Jeffrey Procopio
  • Patent number: 9959252
    Abstract: A networked application and email application were described herein that provide for an intuitive system by which users can participate in collaborative workflow relating to a network document. In one implementation, a system includes a messaging server component to provide messaging services and an application server component to provide a networked application. The application server component interacts with the messaging server component in response to a user command to initiate collaboration on the network document. The interaction with the messaging server component includes providing a link that refers to a version of the network document as created or edited by the user.
    Type: Grant
    Filed: May 23, 2017
    Date of Patent: May 1, 2018
    Assignee: Google LLC
    Inventors: Jonathan Rochelle, Micah Lemonik, Farzad Khosrowshahi, John Stephen Danaher
  • Publication number: 20180101620
    Abstract: A method includes receiving a spreadsheet application that is executable using a spreadsheet program; converting the spreadsheet application into a data file that defines characteristics of a networked version of the spreadsheet application that was converted from the spreadsheet application by applying permissions that are set in the spreadsheet application and not applied in the spreadsheet application, wherein the characteristics are defined based on the permissions and include information defining cells of the networked version of the spreadsheet application that are displayable to a user of the networked version of the spreadsheet application; and transmitting the data file to a server to make the data file available to network users as the networked version of the spreadsheet application.
    Type: Application
    Filed: December 12, 2017
    Publication date: April 12, 2018
    Inventors: Jonathan P. Rochelle, Micah Lemonik, Farzad Khosrowshahi, John Stephen Danaher
  • Publication number: 20180101515
    Abstract: A method of simultaneous multiuser collaborative access to a spreadsheet includes transmitting the spreadsheet to a first device of a first user having a first privilege for a first part that includes a first cell, transmitting the spreadsheet to a second device of a second user having a second privilege for a second part, receiving a first edit of the first cell from the first device, and a second edit of the second cell from the second device, and in response to the first cell and the second cell being different, the first privilege including an edit privilege, and the second privilege including the edit privilege, accepting the first edit, accepting the second edit, forwarding the first edit for display with the first cell at the second device, and providing, to the second device, a real-time visual indication identifying the first user as a last user editing the first part.
    Type: Application
    Filed: December 12, 2017
    Publication date: April 12, 2018
    Inventors: Jonathan P. Rochelle, Micah Lemonik, Farzad Khosrowshahi, John Stephen Danaher
  • Patent number: 9852120
    Abstract: A distributed spreadsheet application executes at a server and a client in a network. The networked spreadsheet application can generally be used without requiring a user to install any specific spreadsheet software prior to using the application. In one implementation, the spreadsheet application may include a client engine that executes within browser programs of a plurality of client computing devices and server logic. The server logic may be configured to distribute the client engines to the plurality of client computing devices of the spreadsheet application when requested through the browser programs of each of the plurality of client computing devices. The server logic synchronizes a single spreadsheet document that is simultaneously open at the plurality of client computing devices.
    Type: Grant
    Filed: May 20, 2013
    Date of Patent: December 26, 2017
    Assignee: GOOGLE INC.
    Inventors: Jonathan Rochelle, Micah Lemonik, Farzad Khosrowshahi, John Stephen Danaher
  • Publication number: 20170351655
    Abstract: A method and apparatus for performing template-aware document editing is provided. Template-aware document editing may include identifying a document template, the document template including a plurality of rules, generating a document based on the document template, the document including a plurality of document tokens, wherein generating the document includes generating a document tree based on the plurality of rules, altering the document tree in response to user input based on the plurality of rules, and storing or transmitting the document.
    Type: Application
    Filed: September 3, 2013
    Publication date: December 7, 2017
    Applicant: Google Inc.
    Inventors: Wentao Zheng, Micah Lemonik
  • Publication number: 20170255596
    Abstract: A networked application and email application were described herein that provide for an intuitive system by which users can participate in collaborative workflow relating to a network document. In one implementation, a system includes a messaging server component to provide messaging services and an application server component to provide a networked application. The application server component interacts with the messaging server component in response to a user command to initiate collaboration on the network document. The interaction with the messaging server component includes providing a link that refers to a version of the network document as created or edited by the user.
    Type: Application
    Filed: May 23, 2017
    Publication date: September 7, 2017
    Applicant: Google Inc.
    Inventors: Jonathan Rochelle, Micah Lemonik, Farzad Khosrowshahi, John Stephen Danaher
  • Patent number: 9684637
    Abstract: A networked application and email application were described herein that provide for an intuitive system by which users can participate in collaborative workflow relating to a network document. In one implementation, a system includes a messaging server component to provide messaging services and an application server component to provide a networked application. The application server component interacts with the messaging server component in response to a user command to initiate collaboration on the network document. The interaction with the messaging server component includes providing a link that refers to a version of the network document as created or edited by the user.
    Type: Grant
    Filed: March 16, 2015
    Date of Patent: June 20, 2017
    Assignee: Google Inc.
    Inventors: Jonathan Rochelle, Micah Lemonik, Farzad Khosrowshahi, John Stephen Danaher
  • Patent number: 9529791
    Abstract: A method and apparatus for performing template and content aware document and template editing is provided. Template and content aware document and template editing may include identifying a current document template, the current document template including a plurality of rules, generating a current document based on the current document template, wherein generating the current document includes, identifying a rule from the plurality of rules, the rule indicating an object and an object definition for the object, the object definition including a dynamic content definition, and including dynamic content in the current document based on the dynamic content definition, and storing or transmitting the current document.
    Type: Grant
    Filed: December 12, 2013
    Date of Patent: December 27, 2016
    Assignee: GOOGLE INC.
    Inventors: Wentao Zheng, Micah Lemonik
  • Patent number: 9462037
    Abstract: A method for managing a dynamically-sized chunked spreadsheet model on a server includes creating, on the server, a plurality of chunks representing a spreadsheet, where a first chunk in the plurality of chunks includes a first range of cells in the spreadsheet. The method further includes storing on the server a mutation log for the spreadsheet, and receiving a first plurality of mutations from a plurality of client computers, where the first plurality of mutations are stored in the mutation log. The method further includes applying the first plurality of mutations to the first chunk in response to a first client computer in the plurality of client computers requesting the first range of cells, and sending the first chunk to the first client computer.
    Type: Grant
    Filed: January 7, 2013
    Date of Patent: October 4, 2016
    Assignee: Google Inc.
    Inventors: Joshua Ari Danziger, Amod Karve, Zachary Erik Lloyd, Yossi Kahlon, Micah Lemonik
  • Patent number: 9448978
    Abstract: A computer-implemented method for presenting a document for interaction with a user in a web browser includes accessing an electronic model of the document; determining, with a computing device, positions for items in a visual rendering of the electronic model based on relative sizes and positions of other items in the electronic model; and generating, with the computing device, a document object model (DOM) that defines an editing surface, wherein the DOM (a) places placing the items at the determined positions on the editing surface, (b) places a graphic element that represents a cursor at a determined location on the editing surface, and (c) is arranged to receive user input on the editing surface and to correlate a location of the received user input to a location in the electronic model.
    Type: Grant
    Filed: February 26, 2013
    Date of Patent: September 20, 2016
    Assignee: Google Inc.
    Inventors: Micah Lemonik, Olga Sergeyevna Saviano, Janani R. Ravi, Luiz A. F. Pereira Filho
  • Patent number: 9384176
    Abstract: A tangible computer-readable storage medium having encoded on it data that represents a model of a document, the document model including a one-dimensional character string that includes characters of the document in an order in which they appear in the document; a map of styles that includes markers that correspond to changes in styles in the document, and pointers to the character string, wherein the pointers define locations along the character string at which the changes in styles are to occur and define style runs between matched markers; and one or more external references to objects outside the document model, the external references including identifiers for the objects and pointers to the character string indicating where in the character string the object will appear.
    Type: Grant
    Filed: June 4, 2013
    Date of Patent: July 5, 2016
    Assignee: Google Inc.
    Inventors: Micah Lemonik, Olga Sergeyevna Saviano, Janani R. Ravi, Luiz Amaral Franca Pereira Filho, John Day-Richter, Edgard Lindner
  • Publication number: 20160139768
    Abstract: A computer-implemented collaborative editing method includes receiving input from a user of a browser-based document editing application on a document displayed by the application; identifying a current location in the document for a cursor of a first user executing the application; receiving from a central server system data that reflects changes made to the document by one or more users other than the first user and current positions in the document of cursors for the one or more other user; updating a document model stored on a computing device that is executing the browser-based application and rendering at least a portion of the model to the browser; and rendering the current positions of the cursors for the one or more other users to the browser.
    Type: Application
    Filed: January 27, 2016
    Publication date: May 19, 2016
    Inventors: Micah Lemonik, Olga Sergeyevna Saviano, Janani R. Ravi, Luiz Do Amaral De Franca Pereira Filho
  • Publication number: 20160117298
    Abstract: A computer-implemented method for coordinating documents between computer systems includes identifying, on a computing device, changes made by a user to a document having a model stored on the computing device, with corresponding models stored on a remote client and a server system; generating from the identified changes, one or more mutations that describe the changes and a one or more locations that correspond to positions in the model where the changes are to be provided; receiving one or more mutations from the server system and transforming the generated mutations using the received mutations; and updating the model stored on the computing device using the transformed mutations.
    Type: Application
    Filed: January 6, 2016
    Publication date: April 28, 2016
    Inventors: Micah Lemonik, Olga Sergeyevna Saviano, Janani R. Ravi, Nicholas Cooper, Alexey Kalinichenko, John Day-Richter
  • Patent number: 9280529
    Abstract: A computer-implemented collaborative editing method includes receiving input from a user of a browser-based document editing application on a document displayed by the application; identifying a current location in the document for a cursor of a first user executing the application; receiving from a central server system data that reflects changes made to the document by one or more users other than the first user and current positions in the document of cursors for the one or more other user; updating a document model stored on a computing device that is executing the browser-based application and rendering at least a portion of the model to the browser; and rendering the current positions of the cursors for the one or more other users to the browser.
    Type: Grant
    Filed: January 13, 2012
    Date of Patent: March 8, 2016
    Assignee: Google Inc.
    Inventors: Micah Lemonik, Olga S. Belomestnykh, Janani R. Ravi, Luiz A. F. Pereira Filho
  • Patent number: 9280533
    Abstract: A distributed spreadsheet application executes at a server and a client in a network. The networked spreadsheet application can generally be used without requiring a user to install any specific spreadsheet software prior to using the application. In one implementation, the spreadsheet application may include a client engine that executes within browser programs of a plurality of client computing devices and server logic. The server logic may be configured to distribute the client engines to the plurality of client computing devices of the spreadsheet application when requested through the browser programs of each of the plurality of client computing devices. The server logic synchronizes a single spreadsheet document that is simultaneously open at the plurality of client computing devices.
    Type: Grant
    Filed: May 20, 2013
    Date of Patent: March 8, 2016
    Assignee: GOOGLE INC.
    Inventors: Jonathan Rochelle, Micah Lemonik, Farzad Khosrowshahi, John Stephen Danaher
  • Patent number: 9262420
    Abstract: Techniques are shown for enabling a network system to index data stored on a third-party server without having to access the raw data on the third-party server. Metadata consisting of one or more of indexable text or indexable html or some combination of indexable text and indexable html is associated with the data stored on a third-party server. An indexing utility processes the metadata at the network system from the third-party server and arranges the metadata on the network system in a manner that is searchable by searching functionality of the network system.
    Type: Grant
    Filed: April 23, 2012
    Date of Patent: February 16, 2016
    Assignee: Google Inc.
    Inventors: Eric Benson Schoeffler, Micah Lemonik, Michael Jeffrey Procopio
  • Patent number: 9176720
    Abstract: Techniques are shown for installing third-party applications onto a network system in appropriate containers on the network system. The containers store data and content of the same internet media type or MIME-type as the third-party applications.
    Type: Grant
    Filed: April 23, 2012
    Date of Patent: November 3, 2015
    Assignee: Google Inc.
    Inventors: John Day-Richter, Brian Lewis Cairns, Eric Benson Schoeffler, Michael Jeffrey Procopio, Micah Lemonik, Adam Wayne Besen, Brian Edgar Eaton, Robert Eugene Wyrick