skiadas / PanthR

Statistics front-end and webserver with R connection
1 stars 2 forks source link

Workspaces #17

Open skiadas opened 11 years ago

skiadas commented 11 years ago
altermattw commented 11 years ago
skiadas commented 11 years ago

I'm thinking of a Workspace as a whole session on a specific topic. For example, you start with a dataset. This becomes one item in your workspace. Then you compute some descriptives for some variables in this dataset, and this become an output item, that also becomes an item in your workspace. You might decide then that to do some things more clearly, columns 1,4,5 and 6 would go well together without the rest, and you make a new spreadsheet containing those, this becomes the third item in your workspace. Maybe you've also generated some graphs, they become items there. When working on the project you can freely switch from item to item in your workspace, at any time having one item "active". Maybe for instance you want to run a simulation to see how close random events would be to the data you have; you would then create a variable drawn from a random distribution; this would be a new item, it doesn't have to necessarily force itself to be the same length as the dataset variables for instance.

Essentially the Workspace is the totality of all the objects you have at the moment, and all the outputs/reports/graphs/filters etc. This can be saved as a whole, and loaded as a whole.

Say for instance you've done all the above work, but now something urgent came up and you need to work on some totally unrelated data right now. You would save that workspace, either locally or on the server, or both, and start a fresh new workspace. This workspace wouldn't have any of the things you computed previously. Whenever you are done with this new workspace you can again save it and load the previous one again to continue work. You can also send this workspace to someone else to continue your work.

Think of it a bit like an R program, it does a whole bunch of stuff, it defines some things.

It would indeed act as a namespace thing, effectively. You wouldn't be able to access objects from two different workspaces at the same time.

Also in case of disconnect or if you decide to close the window in anger, the current workspace is preserved and will return to you the next time you open the page.

And yes users will be able to delete objects in the workspace that they don't need any more.