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

Etherpad suppor fot nbviewer #13

Closed
damianavila opened this issue Jan 9, 2013 · 17 comments
Closed

Etherpad suppor fot nbviewer #13

damianavila opened this issue Jan 9, 2013 · 17 comments

Comments

@damianavila
Copy link
Member

This is a proof of concept...

http://nbviewerpad.herokuapp.com/urls/raw.github.com/ipython/ipython/master/docs/examples/notebooks/00_notebook_tour.ipynb

What do you think?

@Carreau

@takluyver
Copy link
Member

I like the idea of having some sort of way to comment on notebooks. But I think we'll need something a bit bigger than nbviewer. I'm thinking of a site that associates notebooks with an author/owner, who can enable or disable comments, and get notifications when people comment.

Also, have a look at OKFN annotator: http://okfnlabs.org/annotator/

@damianavila
Copy link
Member Author

El 09/01/13 10:54, Thomas Kluyver escribió:

I like the idea of having some sort of way to comment on notebooks.
But I think we'll need something a bit bigger than nbviewer. I'm
thinking of a site that associates notebooks with an author/owner, who
can enable or disable comments, and get notifications when people comment.

I also like this idea...

Also, have a look at OKFN annotator: http://okfnlabs.org/annotator/

This is really interesting... I do not know it... I will look into it.
Thanks.

@damianavila
Copy link
Member Author

OK, I looked into the annotator project and is really interesting, I will do a proof of concept with that when I get some additional time... thanks very much Thomas!

@damianavila
Copy link
Member Author

Even more... we can have both... etherpad for general notes and chat and annotator specific notes filtered by tags and name... this would be very interesting... great!

@Carreau
Copy link
Member

Carreau commented Jan 9, 2013

That nice.

I think the chat is great, I'm not sure about the etherpad, I would prefere to have a half-dynamic notebook where mdcells are etherpad by themselves.

If notebook are gist it would be good to have github OAuth so that comment could be posted/ retrived from the corresponding gist.

In the end I think there are a lot of things to do with nbviewer but it really need nbconvert to be refactored and nbviewer itself re-written to be maintainable.

It will be a huge pain to maintain all those functionality right now.

@ellisonbg
Copy link
Contributor

Damian,

I definitely think it is within the scope of the IPython Notebook for us to
think about a way for people to post comments. My current thought is that
this should be built into the notebook UI and notebook format itself, not
just nbviewer. Also, we are not quite ready to work on the
collaborative/multiuser aspects of the notebook. We are sort of going in a
million directions right now and we need to bring some focus to the
project, to enable us to tackle some the really hard problems before us.

On Wed, Jan 9, 2013 at 9:04 AM, Bussonnier Matthias <
notifications@github.com> wrote:

That nice.

I think the chat is great, I'm not sure about the etherpad, I would
prefere to have a half-dynamic notebook where mdcells are etherpad by
themselves.

If notebook are gist it would be good to have github OAuth so that comment
could be posted/ retrived from the corresponding gist.

In the end I think there are a lot of things to do with nbviewer but it *
really* need nbconvert to be refactored and nbviewer itself re-written to
be maintainable.

It will be a huge pain to maintain all those functionality right now.


Reply to this email directly or view it on GitHubhttps://github.com//issues/13#issuecomment-12054753.

Brian E. Granger
Cal Poly State University, San Luis Obispo
bgranger@calpoly.edu and ellisonbg@gmail.com

@damianavila
Copy link
Member Author

El 09/01/13 14:04, Bussonnier Matthias escribió:

That nice.

Thanks!

I think the chat is great, I'm not sure about the etherpad, I would
prefere to have a half-dynamic notebook where mdcells are etherpad by
themselves.

If notebook are gist it would be good to have github OAuth so that
comment could be posted/ retrived from the corresponding gist.

Interesting...

In the end I think there are a lot of things to do with nbviewer but
it really need nbconvert to be refactored and nbviewer itself
re-written to be maintainable.

It will be a huge pain to maintain all those functionality right now.

I agree with the idea of nbconvert re-factorization... I will look in
your PR to give you my feedback and help you in anything I can...

@damianavila
Copy link
Member Author

El 09/01/13 16:17, Brian E. Granger escribió:

Damian,

I definitely think it is within the scope of the IPython Notebook for
us to
think about a way for people to post comments.
OK
My current thought is that
this should be built into the notebook UI and notebook format itself, not
just nbviewer. Also, we are not quite ready to work on the
collaborative/multiuser aspects of the notebook.
I understand...
We are sort of going in a
million directions right now and we need to bring some focus to the
project, to enable us to tackle some the really hard problems before us.
OK, Brian... some thoughts... my english in not good as I want, my only
intention is open a constructive discussion about some thing I saw the
last weeks :-)

I assume by your answer and your recent posts in your blog that you (and
the other core dev) need to focus in other big things before addressing
some tiny thing like this one... and I understand that and I agree in a
certain way...
The idea behind show you this integration is to get some feedback from
you to better delineate the development and, in the future, integrate it
to the main project if this feature is inside your scope (this is more
probably if you give your feedback and ideas in the meantime).

I saw, and see, some needs in the community using the ipython
notebook... these are needs for me too... So, I coded some simple
solutions to address this problems... This solution are poor, short time
developments ("hacks" if you want...) but give me "fast" the desired
feature. I know that you (I mean, the team) will bring us more solid
solutions in the future, but the future maybe is far from some of the
users...

For example, I need to give talks... soon, now... and I want a solution
to get the slideshow directly from the notebook, so I "hack" nbconvert
to get it (and with some help from Matthias, it is working great... but
I need this feature now (and I think that a lot of people also want this
feature soon) but you can see that I open the IPEP9 to get the names of
the slides and we can not agreed with names because we can not discuss
about that (not because we discuss a lot that will be great... instead
there is no discussion at all). I understand that the reveal converter
can not be before the metaui landed, so I understand the no-review of
the code for now, but I have the feeling that the discussion was stopped
too early... in the design step and maybe this is not too much consuming
for you but it is very valuable for me and the future development of
this feature...

And now with this etherpad enhancement... the people want to comment,
chat... interact with others when they saw a notebook... I know that
some time ahead you will bring us the multiuser support... but in the
"meantime", some "hack" like this or similar can be useful for the
users... I understand this is far away from you want, but in this very
baby step it is very useful, so I decided to show you for feedback... I
do not want to integrate this feature to nbviewer now, because I know it
has to be refactored (this is only an issue, not a PR), and this is a
proof of concept. But, your feedback is great for me because I can have
soon (actually, now) a service for all the users that want to discuss
over some work done in your notebooks: a mirror or parallel "nbviewer"
site (not living inside the IPython project for now, I hope yes in the
future), but with an enhanced functionality until you bring us with a
solid multiuser/collaborative support.

So, maybe I am asking too much, your time, I know... but if not you,
who? You maybe have to understand that because your are a little group,
there is no chance to get feedback from others if not you... And I think
that with time... more people will bring you more code and ask for more
feedback. I do not know where is the solution, I am only thinking loud
with you to give my view of the interaction of new people (e.g. me) with
the project.

Maybe this is for a comment for your blog and not post in the current
issue, but I need the need to say something...

As always... I hope your feedback, hehe :-)

Damián.

pinging @ellisonbg @Carreau @fperez to join the discussion and everyone
else is invited :-)

@ellisonbg
Copy link
Contributor

Damian,

OK, Brian... some thoughts... my english in not good as I want, my only

intention is open a constructive discussion about some thing I saw the
last weeks :-)

I assume by your answer and your recent posts in your blog that you (and
the other core dev) need to focus in other big things before addressing
some tiny thing like this one... and I understand that and I agree in a
certain way...

While the core devs have not decided anything formally, my own feeling is
that we (the entire dev community, not just the core devs) are currently
going in too many directions at once. This is particularly true of the
notebook/nbviewer work. I think we just need a bit more focus so we can
all push in the same direction. One area that needs work are bug fixes,
cleanup and refactoring of the notebook. It will be very hard to do lots
of new work without doing some of this first.

The idea behind show you this integration is to get some feedback from

you to better delineate the development and, in the future, integrate it
to the main project if this feature is inside your scope (this is more
probably if you give your feedback and ideas in the meantime).

I always think that playing around with code is a good idea - it is fun and
productive - and this is part of what I love about Python and Javascript.
But there is also a risk - you, or someone else, could spend a lot of time
playing with something only to discover later that the project is going in
a different direction. As I talked about in my blog post - it is really
hard to say no to people when they have already written code. A bit more
planning and focus would help everyone to know where we are headed.

I saw, and see, some needs in the community using the ipython
notebook... these are needs for me too... So, I coded some simple
solutions to address this problems... This solution are poor, short time
developments ("hacks" if you want...) but give me "fast" the desired
feature. I know that you (I mean, the team) will bring us more solid
solutions in the future, but the future maybe is far from some of the
users...

For example, I need to give talks... soon, now... and I want a solution
to get the slideshow directly from the notebook, so I "hack" nbconvert
to get it (and with some help from Matthias, it is working great... but
I need this feature now (and I think that a lot of people also want this
feature soon) but you can see that I open the IPEP9 to get the names of
the slides and we can not agreed with names because we can not discuss
about that (not because we discuss a lot that will be great... instead
there is no discussion at all). I understand that the reveal converter
can not be before the metaui landed, so I understand the no-review of
the code for now, but I have the feeling that the discussion was stopped
too early... in the design step and maybe this is not too much consuming
for you but it is very valuable for me and the future development of
this feature...

Your work on the slide show export has been fantastic! That is one of the
directions we do want to focus on right now. The slowness of code review
is largely my fault and I apologize for that, I have been focused on other
things over Christmas and am just now digging back into things. Those PRs
are at the top of my code review list. It is really important work.

And now with this etherpad enhancement... the people want to comment,
chat... interact with others when they saw a notebook... I know that
some time ahead you will bring us the multiuser support... but in the
"meantime", some "hack" like this or similar can be useful for the
users... I understand this is far away from you want, but in this very
baby step it is very useful, so I decided to show you for feedback... I
do not want to integrate this feature to nbviewer now, because I know it
has to be refactored (this is only an issue, not a PR), and this is a
proof of concept. But, your feedback is great for me because I can have
soon (actually, now) a service for all the users that want to discuss
over some work done in your notebooks: a mirror or parallel "nbviewer"
site (not living inside the IPython project for now, I hope yes in the
future), but with an enhanced functionality until you bring us with a
solid multiuser/collaborative support.

For me, in this case it is a question of scope. The implicit scope of
nbviewer is viewing notebooks that are posted elsewhere on the web. I
think that downloading those notebooks and viewing them in different
formats, such as slide shows is well within that scope. Adding
collaboration features like etherpad represents a massive expansion in
scope that I am not convinced makes sense. nbviewer is beautiful in its
simplicity, and I would much rather focus our efforts on perfecting the
experience of the current scope before we expand it. People should be able
to download beautiful PDF versions of notebooks, slideshows, etc. from
nbviewer. Once we can put some $ towards nbviewer (with the grant we can!)
we can track the most popular notebooks, and provide useful information for
people to discover notebooks. It would also be nice to autogenerate
bit.lylinks for each notebook for easy posting elsewhere - maybe even
a "post
this to Twitter" button? All of these things lie within the current scope
of nbviewer and are things that we can do and should do a spectacular job
on. Expanding the scope would mean that these core features get less
attention. I am not saying we won't ever expand the scope, just not yet.

So, maybe I am asking too much, your time, I know... but if not you,

who? You maybe have to understand that because your are a little group,
there is no chance to get feedback from others if not you... And I think
that with time... more people will bring you more code and ask for more
feedback. I do not know where is the solution, I am only thinking loud
with you to give my view of the interaction of new people (e.g. me) with
the project.

I think there are two factors here:

  • I personally just need to spend more time doing code review. I started
    working full time on IPython only 3 days ago and I spent those days
    creating the blog posts and doing general admin work. Before I do any
    coding myself, I am going to focus on helping you and Matthias get our
    current pull requests reviewed and merged.
  • The core developers need to do a better job in communicating our vision
    and scope for the project and its components. We don't know yet for this
    will look like yet, but will be moving in that direction soon.

Maybe this is for a comment for your blog and not post in the current
issue, but I need the need to say something...

Or you could reply to my thread on ipython-dev and ipython-user about the
blog posts. I really want our community to discuss these issues.

As always... I hope your feedback, hehe :-)

Damián.

Thanks so much for your hard work and participation in the community. The
reveal.js slide show stuff is some of the most excited recent work on the
project and will make a huge splash at Strata/PyCon/PyData.

Cheers,

Brian

pinging @ellisonbg @Carreau @fperez to join the discussion and everyone
else is invited :-)


Reply to this email directly or view it on GitHubhttps://github.com//issues/13#issuecomment-12107297.

Brian E. Granger
Cal Poly State University, San Luis Obispo
bgranger@calpoly.edu and ellisonbg@gmail.com

@Carreau
Copy link
Member

Carreau commented Jan 10, 2013

Just a small response, after I'll probably crash on my bed.

The problem to release a draft of something that will be part of a project is that people will start using it and will rely on curent behavior (hum hum... nbviewer... hum hum), then you are stuck with the current de facto spec and/or are really waiting for you to finish it.

I have for example a working live collaboration on notebook
http://elacave.lmdb.eu/~carreau/NotebookLiveCollaboration.mov
for almost 4 month now and I will not release it because I know
it would be harmfull as it is.

@damianavila
Copy link
Member Author

El 10/01/13 18:16, Brian E. Granger escribió:

One area that needs work are bug fixes,
cleanup and refactoring of the notebook. It will be very hard to do lots
of new work without doing some of this first.

I know that and I agree with you... For me is more easy to code new tiny
things over the existing structure because I do not know the details of
the base implementation and I do not have the background to understand
some things (I am a novice programmer w/o formal formation in CS). But I
will try to understand and contribute with the refactoring with my few
abilities.
A bit more
planning and focus would help everyone to know where we are headed.

I think this would be very helpful for all...
Your work on the slide show export has been fantastic! That is one of the
directions we do want to focus on right now. The slowness of code review
is largely my fault and I apologize for that, I have been focused on
other
things over Christmas and am just now digging back into things. Those PRs
are at the top of my code review list. It is really important work.

You do not have to apologize... I know that Christmas is very consuming
social and familiar activity. Please, do not apologize...
For me, in this case it is a question of scope. The implicit scope of
nbviewer is viewing notebooks that are posted elsewhere on the web. I
think that downloading those notebooks and viewing them in different
formats, such as slide shows is well within that scope. Adding
collaboration features like etherpad represents a massive expansion in
scope that I am not convinced makes sense. nbviewer is beautiful in its
simplicity, and I would much rather focus our efforts on perfecting the
experience of the current scope before we expand it. People should be
able
to download beautiful PDF versions of notebooks, slideshows, etc. from
nbviewer. Once we can put some $ towards nbviewer (with the grant we
can!)
we can track the most popular notebooks, and provide useful
information for
people to discover notebooks. It would also be nice to autogenerate
bit.lylinks for each notebook for easy posting elsewhere - maybe even
a "post
this to Twitter" button? All of these things lie within the current scope
of nbviewer and are things that we can do and should do a spectacular job
on. Expanding the scope would mean that these core features get less
attention. I am not saying we won't ever expand the scope, just not
yet
.

OK, thanks for the clarification...

I think there are two factors here:

  • I personally just need to spend more time doing code review. I started
    working full time on IPython only 3 days ago and I spent those days
    creating the blog posts and doing general admin work. Before I do any
    coding myself, I am going to focus on helping you and Matthias get our
    current pull requests reviewed and merged.
    Thanks, just a little of your time it would be great... I also want see
    your code... :-)
  • The core developers need to do a better job in communicating our vision
    and scope for the project and its components. We don't know yet for this
    will look like yet, but will be moving in that direction soon.

I really think that knowing you vision more deeply would be very
valuable, and with your blog post you have beginning... thanks
Or you could reply to my thread on ipython-dev and ipython-user about the
blog posts. I really want our community to discuss these issues.

I will resume some of my thought in your threads...

Thanks for your kindly and quickly answer.

Cheers,

Damián.

@damianavila
Copy link
Member Author

El 10/01/13 18:31, Bussonnier Matthias escribió:

The problem to release a draft of something that will be part of a
project is that people will start using it and will rely on curent
behavior (hum hum... nbviewer... hum hum), then you are stuck with the
current de facto spec and/or are really waiting for you to finish it.
OK, this is a risk, I know... this is why I ask for feedback... not only
for details in the implementation, but also for directions about this
kind of stuff, like publication of draft work.

Thanks Mathias, and I hope you do not crush in bed to hard... he he :-)

Damián.

@ellisonbg
Copy link
Contributor

On Thu, Jan 10, 2013 at 2:09 PM, Damián Avila notifications@github.comwrote:

El 10/01/13 18:16, Brian E. Granger escribió:

One area that needs work are bug fixes,
cleanup and refactoring of the notebook. It will be very hard to do lots
of new work without doing some of this first.

I know that and I agree with you... For me is more easy to code new tiny
things over the existing structure because I do not know the details of
the base implementation and I do not have the background to understand
some things (I am a novice programmer w/o formal formation in CS). But I
will try to understand and contribute with the refactoring with my few
abilities.

Don't underestimate yourself. None of us has formal CS education, we just
love working on this stuff and have learned to do it along the way. You
are definitely more than capable of helping us with the core work of the
project. Plus we are here to help.

A bit more
planning and focus would help everyone to know where we are headed.

I think this would be very helpful for all...

Your work on the slide show export has been fantastic! That is one of the
directions we do want to focus on right now. The slowness of code review
is largely my fault and I apologize for that, I have been focused on
other
things over Christmas and am just now digging back into things. Those PRs
are at the top of my code review list. It is really important work.

You do not have to apologize... I know that Christmas is very consuming
social and familiar activity. Please, do not apologize...

For me, in this case it is a question of scope. The implicit scope of
nbviewer is viewing notebooks that are posted elsewhere on the web. I
think that downloading those notebooks and viewing them in different
formats, such as slide shows is well within that scope. Adding
collaboration features like etherpad represents a massive expansion in
scope that I am not convinced makes sense. nbviewer is beautiful in its
simplicity, and I would much rather focus our efforts on perfecting the
experience of the current scope before we expand it. People should be
able
to download beautiful PDF versions of notebooks, slideshows, etc. from
nbviewer. Once we can put some $ towards nbviewer (with the grant we
can!)
we can track the most popular notebooks, and provide useful
information for
people to discover notebooks. It would also be nice to autogenerate
bit.lylinks for each notebook for easy posting elsewhere - maybe even

a "post
this to Twitter" button? All of these things lie within the current scope
of nbviewer and are things that we can do and should do a spectacular job
on. Expanding the scope would mean that these core features get less
attention. I am not saying we won't ever expand the scope, just not
yet
.

OK, thanks for the clarification...

I think there are two factors here:

  • I personally just need to spend more time doing code review. I started
    working full time on IPython only 3 days ago and I spent those days
    creating the blog posts and doing general admin work. Before I do any
    coding myself, I am going to focus on helping you and Matthias get our
    current pull requests reviewed and merged.
    Thanks, just a little of your time it would be great... I also want see
    your code... :-)

Me too, can't wait to get coding...

  • The core developers need to do a better job in communicating our vision
    and scope for the project and its components. We don't know yet for this
    will look like yet, but will be moving in that direction soon.

I really think that knowing you vision more deeply would be very
valuable, and with your blog post you have beginning... thanks

We will be starting more of these discussions over the next few weeks.

Or you could reply to my thread on ipython-dev and ipython-user about the
blog posts. I really want our community to discuss these issues.

I will resume some of my thought in your threads...

Great.

Cheers,

Brian

Thanks for your kindly and quickly answer.

Cheers,

Damián.


Reply to this email directly or view it on GitHubhttps://github.com//issues/13#issuecomment-12121475.

Brian E. Granger
Cal Poly State University, San Luis Obispo
bgranger@calpoly.edu and ellisonbg@gmail.com

@Carreau
Copy link
Member

Carreau commented Jan 11, 2013

Agreed with brian.
15 month ago I had never wrote a single line of javascript neither did I get CS classes.
Except a few hours of dooing Fortan, but as most of my class mate would have said :
"We stopped at the 'if loop' section..." ...

@damianavila
Copy link
Member Author

Thanks for the feedback...
I started to code (actually read, cut and paste...) some javascript, css and html with the reveal_converter...
I am finishing my PhD in a few months (by april, I hope... I am writing the thesis but there is a few biological experiments to perform yet)... so I hope/wish to get more involved with in the next months...
Cheers,

Damián.

@ellisonbg
Copy link
Contributor

well then your first project is going to be a huge hit!

On Fri, Jan 11, 2013 at 8:01 AM, Damián Avila notifications@github.comwrote:

Thanks for the feedback...
I started to code (actually read, cut and paste...) some javascript,
css and html with the reveal_converter...
I am finishing my PhD in a few months (by april, I hope... I am writing
the thesis but there is a few biological experiments to perform yet)... so
I hope/wish to get more involved with in the next months...
Cheers,

Damián.


Reply to this email directly or view it on GitHubhttps://github.com//issues/13#issuecomment-12150348.

Brian E. Granger
Cal Poly State University, San Luis Obispo
bgranger@calpoly.edu and ellisonbg@gmail.com

@rgbkrk
Copy link
Member

rgbkrk commented Dec 18, 2013

Closing this, as it's a bit out of scope as discussed here. The original proof of concept is gone now too. (Yes, I'm going through and closing lots of old issues right now. Don't feel bad if I knock some of these out -- feel free to re-open)

@rgbkrk rgbkrk closed this as completed Dec 18, 2013
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

5 participants