COLLABORATIVE ONLINE SPREADSHEET APPLICATION
First Claim
1. A method comprising:
- receiving a request for a spreadsheet application at a server computing device from a browser program of a client computing device;
transmitting programming code for a first portion of the spreadsheet application to the browser program of the client computing device in response to the request, the programming code for the first portion of the spreadsheet application being designed to locally handle requests from a user of the client computing device relating to navigating or formatting a spreadsheet document of the spreadsheet application; and
executing programming code for a second portion of the spreadsheet application at the server computing device, the programming code for the second portion of the spreadsheet application being programmed to handle updates of functions in the spreadsheet document.
2 Assignments
0 Petitions
Accused Products
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.
177 Citations
24 Claims
-
1. A method comprising:
-
receiving a request for a spreadsheet application at a server computing device from a browser program of a client computing device; transmitting programming code for a first portion of the spreadsheet application to the browser program of the client computing device in response to the request, the programming code for the first portion of the spreadsheet application being designed to locally handle requests from a user of the client computing device relating to navigating or formatting a spreadsheet document of the spreadsheet application; and executing programming code for a second portion of the spreadsheet application at the server computing device, the programming code for the second portion of the spreadsheet application being programmed to handle updates of functions in the spreadsheet document. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer-readable medium containing programming instructions that when executed by a computing device cause the computing device to:
-
receive a request for a spreadsheet application from a browser program of a client computing device; transmit programming code for a first portion of the spreadsheet application to the browser program of the client computing device in response to the request, the programming code for the first portion of the spreadsheet application being designed to locally handle requests from a user of the client computing device relating to navigating or formatting a spreadsheet document of the spreadsheet application; and execute programming code for a second portion of the spreadsheet application, the programming code for the second portion of the spreadsheet application being designed to handle updates of functions in the spreadsheet document.
-
-
9. A device comprising:
-
a processor; and a memory coupled to the processor, the memory storing instructions that, when executed by the processor, cause the processor to; distribute a client engine to a plurality of client computing devices over a network, the client engine implementing a first portion of functionality associated with a spreadsheet application and being distributed to the each of the plurality of client computing devices in response to requests from the plurality of client computing devices for the spreadsheet application; and execute a spreadsheet server component that performs a second portion of the functionality associated with the spreadsheet application locally at the device, the spreadsheet server component updating, in real-time or near real-time, changes made at one of the plurality of client computing devices to other ones of the plurality of client computing devices. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A method comprising:
-
distributing a client engine to a plurality of client computing devices over a network, the client engine implementing a first portion of functionality associated with a spreadsheet application and being distributed to the each of the plurality of client computing devices in response to requests from the plurality of client computing devices for the spreadsheet application; and executing a spreadsheet server component that performs a second portion of the functionality associated with the spreadsheet application locally at the device, the spreadsheet server component updating, in real-time, changes made at one of the plurality of client computing devices to other ones of the plurality of client computing devices. - View Dependent Claims (18)
-
-
19. A system for providing a distributed spreadsheet application to a plurality of users comprising:
-
client engine logic executing within browser programs of a plurality of client computing devices; and server logic 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 synchronizing a single spreadsheet document that is simultaneously open at the plurality of client computing devices. - View Dependent Claims (20, 21)
-
-
22. A method comprising:
-
providing a link that uniquely identifies a spreadsheet document; receiving a request for the link from a web browser that is processing a web page that includes the link embedded within the web page; and transmitting, in response to receiving the request for the link, the spreadsheet document and at least a portion of a spreadsheet application configured to provide the spreadsheet document to a user of the web browser. - View Dependent Claims (23)
-
-
24. A system comprising:
-
client logic executing within browser programs of a plurality of client computing devices, the client logic including a user interface component to handle displaying of spreadsheet documents to one of the client computing devices and a client engine component to locally handle requests from a user of the one of the client computing devices relating to navigating or formatting the spreadsheet document; and server logic configured to distribute the client engines to the plurality of client computing devices when requested through browser programs of each of the plurality of client computing devices, the server logic synchronizing a single spreadsheet document that is simultaneously open at the plurality of client computing devices, the server logic including a front-end server component configured to provide a web interface to the plurality of client computing devices and a back-end component configured to handle updates of functions in the spreadsheet document.
-
Specification