Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Firming up the idea #9

Open
betatim opened this issue Jan 29, 2016 · 9 comments
Open

Firming up the idea #9

betatim opened this issue Jan 29, 2016 · 9 comments

Comments

@betatim
Copy link
Member

betatim commented Jan 29, 2016

Build the infrastructure required to create and publish scientific output that is more than a simple, static document. To make this a success two things are needed:

This openscienceprize project will create a web app that allows you to display a single, interactive notebook for your publication. (Build on top of experience from thebe). Use ORCID ID as auth. Build in the components of the "social web". Meaning ability to ⭐ and fork publications. (or alternative ways to have "the crowd" assign credit/fame/prestige)

In order for people to be able to publish in such a place they need to know how to create a publication that is reusable. The technical components required to build a data analysis that is geared towards reusability and richer publication format already exist (github + docker + jupyter + snakemake). To use these tools right now, you have to be more of a geek than your average researcher is. What is missing is the social component. This openscienceprize project will create (and contribute to existing training initiatives #6) a blue print for setting up such a environment.

@betatim
Copy link
Member Author

betatim commented Feb 2, 2016

usability wise make it as easy as using the arxiv or even partner with them. Upload individual files, a tar.gz, or link to a git repo. Normal users wouldn't have to figure out git @takluyver suggested running static analysis on the repo to figure out missing files, then execute the notebook to find missing data files. Tool for finding dependencies: https://github.com/ericdill/depfinder

@tritemio
Copy link

tritemio commented Feb 2, 2016

It would be cool to provide a web service to easily create an environment containing Jupyter Notebook, execute it remotely (a la mybinder.org) and then provide some way to download the container and easily run it locally.

Running locally allows, among other things, to quickly process new datatsets (I'm thinking about medium data, ~1GB) without the need to upload them first.

@betatim
Copy link
Member Author

betatim commented Feb 2, 2016

You mean as a way to get going with a new analysis?

I was thinking we should create a tool that allows you to do exactly this locally, something like:

mkdir new-project
cd new-project
openscience init

which creates all the things necessary to run locally.

Should add openscience fork <something-something> as a way to quickly get the environment of paper something-something locally.

@tritemio
Copy link

tritemio commented Feb 2, 2016

@betatim, yes. I was thinking of a way to get people hooked. If you try it online and you like it, you can download/clone it and run it locally. Locally you can more easily develop the analysis/paper. Also, as a user, you want to be in control of your work. So even if you have a copy online that is runnable, you want all the data locally and be able to run it on your own computer.

Orthogonally, the idea of a "fork" command to duplicate local environments is really cool.

@tritemio
Copy link

tritemio commented Feb 3, 2016

Following the concept of a GitHub for science, a useful tool would be a github desktop/SourceTree for science projects. A GUI that lets you create a new repo with a default structure, initializes the environment (for example with conda), and gives you a "button" to activate the environment and launch a notebook.

Another "button" could push the repo to github an automatically set it up for execution on mybinder.

@cranmer
Copy link
Contributor

cranmer commented Feb 24, 2016

An extension of this idea is that I've wanted to setup a docker image, launch it in the cloud somewhere, and then point thebe to it. Currently I can make the image, but I stopped when I realized I needed to launch my own tempnb server. Ideally I could have a generic tempnb server where I get to specify my docker image in the thebe javascript.

@betatim
Copy link
Member Author

betatim commented Feb 24, 2016

For that you want to watch jupyter/enhancement-proposals#12

@parente
Copy link

parente commented Mar 1, 2016

@betatim I know we had a chat on some Jupyter issue in the recent past about thebe, jupyter-js-services, and related topics. I can't find where that is now. Hope you don't mind if I drop in here with a pointer to https://github.com/jupyter-incubator/dashboards_server which is coming along and might be of interest. Not for its exact implementation, but rather how it gets around the bundling of assets from notebook 4.x by using the new jupyter-js-notebook, jupyter-js-widgets, jupyter-js-services, etc. libraries.

@betatim
Copy link
Member Author

betatim commented Mar 1, 2016

Thanks for the pointer! The discussion was in jupyter/nbviewer#557

On Tue, Mar 1, 2016 at 6:04 PM Peter Parente notifications@github.com
wrote:

@betatim https://github.com/betatim I know we had a chat on some
Jupyter issue in the recent past about thebe, jupyter-js-services, and
related topics. I can't find where that is now. Hope you don't mind if I
drop in here with a pointer to
https://github.com/jupyter-incubator/dashboards_server which is coming
along and might be of interest. Not for its exact implementation, but
rather how it gets around the bundling of assets from notebook 4.x by using
the new jupyter-js-notebook, jupyter-js-widgets, jupyter-js-services, etc.
libraries.


Reply to this email directly or view it on GitHub
#9 (comment)
.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants