History of notebooks.

844 views
Skip to first unread message

Thierry Dumont

unread,
Oct 3, 2015, 11:35:29 AM10/3/15
to sage-devel
Hello,

I am preparing a talk I will give to a group of engineers, about
"Notebooks". I mean web technology based notebooks (not java, qt or
something else, but notebooks which use your web browser); so I will
speak about Sage Notebook, Ipython and Jupyter notebooks.

My question is:

-> Was Sage notebook at the origin of all ?

Yours,
Thanks

t.


tdumont.vcf

William Stein

unread,
Oct 3, 2015, 1:53:27 PM10/3/15
to sage-devel, Alex Clemesha, Tom Boothby
As you define it above, yes, I think it was the origin of all... but
it was also *very* heavily influenced by many other things. I wrote
the first version with help from Tom Boothby and Alex Clemesha in
2006. Our motivation was

(1) A failed summer attempt by two students in San Diego to provide
a GUI for iPython, which was not web based, but was demoed in a talk
at Sage Days 1. I instantly started prototypingvery crappy approachs
to the same problem, maybe minutes after that talk.

(2) Mathematica, obviously. Alex Clemesha was a UCSD physics
undergrad who like/used Mathematics notebooks. Of course, I had used
Maple/Mathematica notebooks myself too back in 1993 as an undergrad.

(3) Gmail and Google maps, which pioneered use of "AJAX" = web
applications that don't have to refresh the whole page every time you
do anything.

I clearly remember standing in my office in 2006 and trying to figure
out solutions to problems like "make the output appear as it is
produced when you run this code:
for i in range(10):
sleep(1)
print i"

I demoed the first public web-based sage notebook at a talk I gave at
digipen (a video-game programming college near Microsoft). If I
remember correctly, there were no accounts -- all users shared
everything. There were named worksheets, but I think you could only
add new cells (not delete existing stuff). It was all persistent
though.

I used to teach every summer in this program (SIMUW):

http://www.math.washington.edu/~simuw/thisyear/index.html

A year after the first sage notebook stuff, mentioned above, mostly me
and Bobby Moretti spend a huge amount of time during about *2 weeks*
right before 2007 SIMUW writing a new version of the Sage notebook
that was much more powerful, in that it had user accounts, making
documents public, etc. We had to finish the entire thing in about 2
weeks, since I wanted to use it for SIMUW, and those dates were fixed.
Instead of worrying about UI design, we mostly just copied Google
docs, so in 2007 Sagenb looked almost exactly the same as Google docs.
(I don't think Google docs had synchronized editing back then -- only
one at a time, just like sagenb even today.) Actually, sagenb *today*
in 2015 looks much the same as Google docs looked in 2007, but nothing
like Google docs today, since just as we were releasing sagenb, Google
docs's UI got completely redone.

Google also had something called "Google notebook" for a little while
-- they release it after sage notebook, but it coincidentally looked
very similar. It didn't compute anything -- it was like Sage notebook
without any computational ability. Of course Google killed it.
There was also Google wave, which was again similar, and again got
killed.

I think in 2008, Alex Clemesha wrote something called Knoboo, which is
here: https://github.com/knoboo/knoboo It hasn't been touched in 6
years. He would have continued working on massively improving the
sage notebook, but I couldn't afford to pay him. [Repeatedly
realizing and actually acknowledging the number of massive lost
opportunities for lack of money during the last 10 years really
hurts.] So he tried some new experimental open source stuff on his
own, but then stopped as he had a fulltime job.

Mike Hansen, Robert Bradshaw, Jason Grout and I at some point rewrote
some of the notebook backend in FLASK/Twisted so that it would scale
up a little more since a lot of people wanted to use it. The site
sagenb.org got a lot of traffic, but would routinely die due to
overuse, and was massively limited by lack of scalability (not lack of
demand). It also regularly got abused in every imaginable way by
assholes, causing no end of grief (and having all of the sage.math
resources banned from the internet multiple times at UW).

For a while Tim Dummol -- a 16 year old high school student in the
Philippines (!) -- became the main developer on the sage notebook,
polishing many little things, fixing every bug he could find, etc.,
etc. Then he graduated high school, went to college somewhere, and
we never heard from him again.

In 2012 maybe (?) some student from I think Brown University started
using sagenb, but described the UI as "making him want to gouge his
eyes out" (exact quote). I think we mustered up $5K of NSF money to
fund his work on improving the frontend. He seemed to not understand
the backend at all, only the frontend, and also deleted much
functionality that was documented, but I guess he hadn't read the
docs. Anyways, this never got merged and I don't know what happened
to it. I think this was the last nontrivial work on sage notebook.

I hope that is helpful... It's all from memory so don't take the
dates seriously. I'm sorry for anybody I omitted.

-- William


>
> Yours,
> Thanks
>
> t.
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sage-devel+...@googlegroups.com.
> To post to this group, send email to sage-...@googlegroups.com.
> Visit this group at http://groups.google.com/group/sage-devel.
> For more options, visit https://groups.google.com/d/optout.



--
William (http://wstein.org)

kcrisman

unread,
Oct 3, 2015, 2:48:12 PM10/3/15
to sage-devel
In 2012  maybe (?) some student from I think Brown University started
using sagenb, but described the UI as "making him want to gouge his
eyes out" (exact quote).  I think we mustered up $5K of NSF money to
fund his work on improving the frontend.   He seemed to not understand
the backend at all, only the frontend, and also deleted much
functionality that was documented, but I guess he hadn't read the
docs.  Anyways, this never got merged and I don't know what happened
to it. I think this was the last nontrivial work on sage notebook.


The newui branch still exists, if that's what you're talking about, and a couple very helpful contributors at the sagenb github site have kept it from getting too stale.  I've never had the chance to try it out but from what I understand it's not bad, though as you say I'm sure it's not 100% on the functionality.

Jason Grout

unread,
Oct 3, 2015, 7:37:57 PM10/3/15
to sage-...@googlegroups.com, Fernando Perez, Brian Granger
The Sage notebook certainly preceded the IPython and Jupyter notebooks
and served as one of the main inspirations for them. I've CCd Fernando
and Brian from the Jupyter project to get a more definitive statement.

Thanks,

Jason

Thierry Dumont

unread,
Oct 4, 2015, 4:30:35 AM10/4/15
to sage-...@googlegroups.com
William,

Thank you for this detailed answer!

For my talk to the group of engineers I mentioned, it is more than perfect.
But I am also involved a bit in the history of computing: I think we
must keep track of the different developments and writing history
without such documents is very difficult.
Thank you again.

t.
tdumont.vcf

Sébastien Labbé

unread,
Oct 6, 2015, 5:57:40 AM10/6/15
to sage-devel
You may also want to read this blog post:

Fernando Perez, ​The IPython notebook: a historical retrospective, January 2012
http://blog.fperez.org/2012/01/ipython-notebook-historical.html

Sébastien
Reply all
Reply to author
Forward
0 new messages