
Azure Jupyter Notebooks - douche
https://notebooks.azure.com/
======
smortaz
Hi folks - Thanks for taking a look at Azure notebooks. Here's some background
info:

 _What is it?_

It's an offshoot of Azure ML Studio which has Jupyter support. We asked the
powers that be if we could also instantiate it also as a free service - "yes"
was the answer.

 _Who is it aimed at?_

Students, faculty, casual users, folks that want to give webinars, classrooms,
etc & want to skip software install headaches.

 _What does it support?_

Currently R, Py2, Py3, F#. Python is backed by the Anaconda distro. More
kernels will be added based on user feedback. Environment runs on
Linux/docker.

 _Is it free?_

Yes.

 _I need an account?_

Not to view content (a la nbviewer). To run, create notebooks, etc. you need a
Microsoft account (xbox, outlook, hotmail, ...). Sample notebook to view
(click on the eyeball):

[https://notebooks.azure.com/library/LIGOOpenScienceCenter](https://notebooks.azure.com/library/LIGOOpenScienceCenter)

 _I don 't like the UI!_

We are admittedly not UI people and are grateful to our summer intern for the
current UI! Please send feedback to nbhelp@microsoft.com and we'll improve it!

[EDIT: additions:]

 _Can I get a bash prompt, install linux pkgs?_

Yes! In Jupyter, you can click on Terminal & you are in bash (ubuntu).

 _Can I use pip, install.packages(), nuget, ... ?_

In Python/R/F#, you can use each environment's pkg mgr to install pkgs. EG
"!pip install pkg", install.packages("ggplot2"), etc. See Py examples here:

[https://notebooks.azure.com/library/Intro_To_CNTK](https://notebooks.azure.com/library/Intro_To_CNTK)

 _Is my environments saved?_

Currently, your notebooks are saved based on your login. Proper data, load
github repo, etc. support is coming.

For a bit more info, please view the faq:

[https://notebooks.azure.com/faq](https://notebooks.azure.com/faq)

Thanks! [msft]

~~~
hedgehog
Are there plans to add GPU support?

~~~
smortaz
[msft] Yes! Azure N-Series was announced recently and we hope to make it an
option (HW selection in general). Whether it'll be free or not is above my pay
grade. Would be nice to have a free tier at least (time/size).

------
reacharavindh
Did not expect this to happen with Microsoft.

Giving away access to a public Jupyter Server (open source project)

Running it in Linux (Ubuntu) and letting users have a play with it.

I for one am super happy to play with it however long this lasts.

Some info so far.

!free -h

    
    
                  total        used        free      shared     buff/cache   available
                  Mem:            55G        7.5G         26G                   70M         21G         44G
                  Swap:           99G          0B         99G
    

!uname -a

    
    
                 Linux nbserver 4.4.0-51-generic #72-Ubuntu SMP Thu Nov 24 18:29:54 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
    

Look! I can even install stuff I want from pip...

!pip install terminaltables

Collecting terminaltables Downloading terminaltables-3.1.0.tar.gz Building
wheels for collected packages: terminaltables Running setup.py bdist_wheel for
terminaltables ... - \ done Stored in directory:
/home/nbuser/.cache/pip/wheels/96/0c/9a/0ec2bcad2ac1fb1d0e4695879386460cec1a947cd7413d1b17
Successfully built terminaltables Installing collected packages:
terminaltables Successfully installed terminaltables-3.1.0 You are using pip
version 8.1.2, however version 9.0.1 is available. You should consider
upgrading via the 'pip install --upgrade pip' command.

~~~
smortaz
[msft] :). Interestingly enough, the decision to use linux/docker was a no-
brainer. I know from the outside it might seem odd, but these days, the
attitude (and rightly so) is: use the language/stack/OS/toolchain/etc. you
need to get your job done. I think you'll see an explosion of
Linux/Python/Java/Go/... internally & externally on Azure.

Data point - our team (Python), wanted to hold a "Python day @ msft" event to
teach/inform internal teams on the language/ecosystem. We were hoping maybe
50..100 would show up, if lucky. A _thousand and twenty one_ people showed up!

Another data point - the official Azure CLI was just rewritten in Python
(win/macos/linux):

[https://github.com/Azure/azure-cli](https://github.com/Azure/azure-cli)

Thanks!

~~~
denfromufa
Maybe it runs on Linux because jupyterhub does not work on Windows, not even
on Linux subsystem? Microsoft ported docker to Windows, please do the same
with jupyterhub!

~~~
smortaz
[msft] Hi dnfromufa. Actually the decision to go with linux/docker was purely
because, (at least) at that time, container mgmt was better on linux. In fact
Azure ML backends run Windows and you can use notebooks to build ML models,
then deploy to windows backends. Thank you Python & Anaconda xplat support!

RE Jupyterhub on Windows - if enough customers want it, I'm sure it can be
done. Not convinced the demand is there yet. If you have data I'd love to see
it!

Thanks.

~~~
denfromufa
Here is some activity recently on this issue, but Jupyter team is not
interested:

[https://github.com/jupyterhub/jupyterhub/issues/703](https://github.com/jupyterhub/jupyterhub/issues/703)

Also original issue here and "Wontfix" comment:

[https://github.com/jupyterhub/jupyterhub/issues/7](https://github.com/jupyterhub/jupyterhub/issues/7)

~~~
smortaz
[msft] Thanks for digging! Honestly I understand as their team is actively
trying to make things like jupyterlab work well right now. My guess is that if
services like ours become wildly popular, someone (msft?) may step up and do &
maintain the Windows port. I'm sure it'll be popular at Wall Street etc type
shops. TBD.

------
nickcw
I've been experimenting with Jupyter notebooks recently so I thought I'd try
uploading one I made which solves a wooden puzzle. It seemed to work just
fine!

[https://notebooks.azure.com/library/puzzles](https://notebooks.azure.com/library/puzzles)

I had to host the images in the notebook elsewhere rather than upload them
with the notebook. It looks like that is possible but then I'd have to grapple
with Azure blobs...

~~~
arethuza
Working with Azure Storage Blobs is pretty straightforward - you can use the
cross platform azure CLI application or use the Azure Storage Explorer
application (which appears to be cross-platform as well in its latest form):

[http://storageexplorer.com/](http://storageexplorer.com/)

~~~
Pigo
I've been using the linux version for a couple months now, and it's a truck
ton better than exploring through VS. I'm still waiting for it to support
tabs, or any other multi-tasking interface. That's sort of a pain.

~~~
viggity
for those on windows and don't mind dropping a little $, I've been relatively
happy with CloudXPlorer
[http://clumsyleaf.com/products/cloudxplorer](http://clumsyleaf.com/products/cloudxplorer)
for browsing blobs. Has most of the features I care about

TableXPlorer (for Azure Table Storage is decent too)

------
enricosada
Awesome to see F# supported, based on OSS F# for Jupyter Notebooks
([https://github.com/fsprojects/IfSharp](https://github.com/fsprojects/IfSharp))
work.

It's really lovely when a tool written in another tech (Python there) can be
used/extended with others stack/tech, because was written as language
agnostic. That should be a rule for good design in oss tooling. Not starting
using language specific communication, but extensibile from day0 in design
(obv default language can be bundled)

~~~
nnq
Seeing APIs that look like:

    
    
        Chart.Line(data) |> Chart.WithTitle("smth") |> ...
    

...makes anyone say "yuck" and avoiding F# for any exploratory work. And even
after you _understand how the pipe operator works_ and _how useful it can be
in other contexts_. I mean, ugh... Even putting up with superfluous verbosity
like `List.Map(myList)` instead of a `map(myList, ...)` or `myList.map(...)`
because "that's how F#/OCaml does it, stfu" is ok, but this seems like
purposeful obsfucation.

No wonder R and Python are the only languages popular in ML. They are the only
ones leading to sane readable code by people having other stuff to keep loaded
in their head than language details. I mean, yeah, syntax that doesn't matter,
_unless it 's so f annoying and ugly that you simply can't put up with it as
much as you try!_

~~~
KirinDave
I'm... confused what you're upset about. Are you upset about the leading
"Chart?"

This is very, very easy stuff for functional programming. Most of the people I
know in ML, talented ML folks doing data science within the org I work for to
do exciting things... they actually aren't huge fans of the way Python does
things. They're huge fans of the libraries Python has to speed up ML work. F#
has a real lack there (surprisingly!).

But like, saying that you like:

    
    
        Chart.Line(data).WithTitle("smth").render()
    

as opposed to:

    
    
        Chart.Line(data) |> Chart.WithTitle("smdh")
    

seems to me like 6 of one or half a dozen of the other. Especially since when
you're reusing any given part of the pipeline, the ML way is alot more terse.

And it's not like Python is devoid of hideous examples of poor language
design. For example, self parameters. All we're told is some new age mysticism
about how "explicit is better than implicit", but somehow that doesn't apply
when we need higher order functions and we're using private function with
lambda names to try and signal to readers that, "Sorry I needed 2 statements
in my list comprehension and Python talks down to me like that guy from
Timecube because of it." Why is explicitness valuable there but not on tuple
construction?

And it's not like Python doesn't make you arbitrarily choose between
List.function and list.method with no seeming decisions to make.

 _Which is not to say Python is especially bad._ It is to say that you may
have normalized Python so much that you forget all computer languages are
somewhat arbitrary.

~~~
nnq
> all computer languages are somewhat arbitrary

No, _avoiding unnecessary repetition_ (god damn DRY at the syntax level) and
_avoiding visual noise_ is not arbitrary. It's just good practical taste. I
don't live in houses where doors have 2 knobs that need to be pressed at the
same time to open a door. And I don't eat steak with a fork that has a knife
as a handle. Both of those could work and make sense for some, but overall
they are bad taste and awkward for 99% of people.

Python gets it right. Ruby gets it right. Julia gets it right. Most lisps get
it right etc. (Even Java and C# get them "as right as they could" considering
all their history and past choices that seriously limited what kinds of
languages they could be.)

And my issue is that _I like the semantics of languages like F# and OCaml and
Haskell after having played a bit with them_ but by god, they couldn't have
chosen more infuriating syntaxes and name resolution systems or module systems
or tools for them... like they tried as hard as they could to piss off "the
plebs in the industry" who actually care about syntax and other such little
details, because, ya know, when what you're developing is not that
interesting, you should at least have the pleasure of writing code that you
aesthetically enjoy to read! And it's hard to convince fellow industry plebs
of the usefulness of advanced type systems when the first code sample they see
elicits an "ugh" or "yuck" reaction. Most of us programmers are shallow and
lazy and we should be proud of this and build tools that cater to our
"virtues".

Or maybe I'm in the minority by liking _dense_ and _non-repetitive_ notations
and finding them easier to read too...

~~~
KirinDave
> Python gets it right. Ruby gets it right. Julia gets it right. Most lisps
> get it right etc.

What. I ship Clojure all day, got CL in my past. Was a full time ruby dev. I
got a list of ugh and eck for all of them. I can name 30 more issues with
Python. Truth be told, I think Python is a rancid language and I think people
who love it are basically eating barf pancakes every day and thanking people
who look down on then for it. GVR doesn't do that bs "I don't get lambdas"
garbage in the company of other language designers, that's for sure.

What you consider visual noise is arbitrary. It's like what color paper you
prefer to note take on. Every language has issues. Python is _riddled_ with
syntactic noise and artifacts that you've normalized. Ruby's syntax is better,
but still full of quirks and surprises. Don't even get me started on Scala.

"I am used to this" and "this is objectively better unless you are some
academic" is a classic example of industry insecurity. You shouldn't avoid
Haskell because you are irritated with a bit of syntax, you should avoid it
because you can't ship or maintain the kind of deliverables you need to write.

> Most of us programmers are shallow and lazy and we should be proud of this
> and build tools that cater to our "virtues".

Pride is one of the ugliest sins of our industry, I agree. Too many developers
refuse to accept that there might be progress in the industry outside of what
they experienced in their first 2 years in the industry.

~~~
jsjohnst
While his vitriol was extremely hyperbolic, I get his point somewhat on obtuse
syntax.

Take this example of Haskell from their docs:

    
    
      thenP :: P a -> (a -> P b) -> P b
      m `thenP` k = \s ->
         case m s of 
           Ok a -> k a s
    	 Failed e -> Failed e
    

It doesn't matter how good you are in [insert almost any common language],
you'll _really_ struggle to understand that code.

It's my same objection to things like Coffeescript, if you think you are so
much more productive not typing semantic tokens like ()s or {}s, then you need
to lay off the coffee and get some sleep as you're clearly dillusional.

~~~
codygman
> It doesn't matter how good you are in [insert almost any common language],
> you'll really struggle to understand that code.

Perhaps I've been using Haskell too long but that code looks very clear to me.

~~~
tome
And it looks slightly clearer when laid out correctly

    
    
      thenP :: P a -> (a -> P b) -> P b
      m `thenP` k = \s ->
         case m s of 
           Ok a     -> k a s
           Failed e -> Failed e
    

But this is not a fair test. There needs to be a control. Implement the same
functionality in Python and then we'll talk about which language is clearer.

~~~
jsjohnst
I copy-pasted directly from the doc page that layout, guess I should've
proofread it to make sure alignment was right. Thanks!

As to the comment re: control / python, I'm sorry but it's so obvious to me
the syntax would be more legible to most developers (since "most" use Algol
descendent syntax languages) even if done somewhat poorly, I don't feel like
taking the time. I welcome you to prove me wrong, I'll gladly stand corrected
if so!

~~~
tome
What?! How would you even _write_ that combinator in Python? You can't
possibly convince me it would be clearer!

------
AdamSC1
I am a huge fan of Jupyter notebooks, the idea of being able to run my code
easily alongside natural prose is crucial when telling the story of data.

But, Jupyter faces most of it's challenges in the word-editor part of their
product rather than in the code part.

I'd love to see a partnership between them and the Eve programming language
([http://witheve.com/](http://witheve.com/)) who have absolutely mastered the
IDE interface in early renditions of their product.

I know a lot of people are against the concept of Eve from a purist
perspective of code not needing to be humanized. But, one of the common goals
in data is to communicate insights and solutions through visually crafted and
accessible stories. I think there is still a long way we can come in that.

------
matt4077
The concept of Jupyer Notebooks is absolute fantastic. The product,
unfortunately, fails at the basics of being a text editor.

I'd wish the VSCode team could somehow integrate the concept. They seem to be
excellent at execution.

(Or, if they finish their work on "html zones" (block decorators in atom),
I'll start doing it myself)

~~~
baq
I agree about the editor part, it's quite bad compared to anything people
actually use when developing software.

...but perhaps software developers aren't the target audience in the first
place. I tried to use Jupyter a few times, first when it was still only
IPython, and it never seemed to fit in my code-execute-fix workflow that you
have when developing scripts. In particular having to always reset the kernel
to reexecute everything from scratch drove me crazy.

~~~
nnq
> code-execute-fix workflow

Do you know of a better tool for such a flow, combined with the ability to
have markdown+latex docs intermingled with the code? 'cause this is my
workflow, but jupyter's code editor and kernell restart drives me crazy and
anything else will have me keep the notes/docs separate from the code...

And please don't suggest Mathematica :) I absolutely love it's ux/i, but
nobody uses it in ML/AI...

~~~
IanCal
I use rmarkdown for creating data reports to deliver to people
[http://rmarkdown.rstudio.com/](http://rmarkdown.rstudio.com/)

You can use whatever editor you want, but I quite like rstudio (I'm generally
not a huge R person, so an environment with more help is useful, whereas with
python I'd prefer just my own setup).

Edit - Importantly though, you actually don't need to use R, you can use
python. I'm not sure how well that works with caching, as I've never tried it,
but it's probably worth a go.

~~~
nnq
hmm... thanks for making me take another look around. I'm trying
rstudio+python and rodeo tonight to see if I like them better.

(Right now I use jupyter for some things, ipython gui for others, and pycharm
for "real coding" tasks. Tried Spyder, but something about it makes it neither
a good IDE nor a good notes/documentation system... though I can understand
its appeal for Matlab folks).

------
mmsmatt
Clicked link from IE11. Got this:

> "Internet Explorer is not supported by Jupyter: For best results use
> Microsoft Edge, Chrome, Firefox, or another modern browser."

This makes me so happy - MS products leaving old browsers behind gives all web
developers a ball and bat in the same fight.

------
hatmatrix
Is this just a hosting solution for Jupyter Notebooks? Or does it add
something to the standard Jupyter Notebooks?

~~~
rickycook
it seems to have forking, and allows you to execute the code on the back end

so kind of a learning environment, because you can have people fork something
like a ML notebook and play around with the different parameters

------
JayOtter
Or, if you prefer your interactive notebooks not to rely on a backend service:
[http://www.joelotter.com/kajero/](http://www.joelotter.com/kajero/)

~~~
anc84
That only works with JavaScript though or am I overlooking something?

~~~
JayOtter
Currently, yeah, just JS. It's aimed more at non-technical folks - the "clever
graphing" stuff should work without writing much code, if any.

~~~
Sean1708

      > Currently, yeah, just JS.
    

How do they plan to make it support multiple languages without having a
backend service?

~~~
jsjohnst
There are a number of projects for transpiling X language into JavaScript.
Most aren't super robust, but generally good enough for basic purposes. I feel
once WebAssembly gets more steam, this will get even more robust.

Not claiming this is a good solution, but definitely would be one possible
route.

------
closeparen
One of my physics major friends uses a Chromebook (and a shitty Windows laptop
he prefers not to deal with). I set up a DigitalOcean droplet for him to run
Jupyter. One of the big problems is that it's not safe for him to share
Jupyter notebooks by URL, since anyone to whom he discloses the web UI
password gets remote code execution (exec and friends work).

A professionally maintained, sufficiently sandboxed Jupyter environment could
be awesome for people who want to work on and share Jupyter notebooks, but not
be responsible for servers.

~~~
simonbyrne
Check out [https://juliabox.com/](https://juliabox.com/), which despite the
name also supports Python.

(Disclaimer: service is run by my employer)

~~~
closeparen
Your CSS is very broken in Chrome, would love to check it out though.

~~~
simonbyrne
I don't have any issues with Chrome: would you mind sending me a screenshot
(simonbyrne@gmail.com)?

~~~
closeparen
Working now, must've been a transient issue with where the CSS was hosted.
Looks awesome!

------
rjbwork
Very interesting. I just put some R code into production on Azure via MS R
Server (DeployR), and it was not a particularly fun experience. I really want
to see them do a hosted R service where we can just take these Jupyter
Notebooks and expose it as a web service on a PAYG basis.

~~~
madenine
Depending on what you're doing - deploy a webservice with Azure ML?

~~~
rjbwork
We looked at that, in fact it was my first recommendation, but the way it
forces you to set things up is less than ideal. We may give it another go, but
it was not conducive to just taking the data scientist's R code and exposing
it as a web endpoint - it requires a complete restructuring of the code.

------
askvictor
And today I was just about to spin up a jupyterhub server for my class...

~~~
smortaz
[msft] Feel free to use it for your class askvictor & let us know ushow it
does and how we can improve the service!

For a sample course that was taught for ~400 students this fall, see:

[https://notebooks.azure.com/library/CUED-IA-Computing-
Michae...](https://notebooks.azure.com/library/CUED-IA-Computing-Michaelmas)

~~~
askvictor
I certainly will; this couldn't have dropped at a better time!

------
bargl
OK this is freaking awesome. I've been working on some Machine Learning
courses and they use Jupyter. I have the issue where whenever I switch
computers I have to sync files and all that jazz. I'm so excited about this
tool I can't even contain myself.

------
anc84
Is it possible to share them publically, without the need for a Microsoft
account for the user?

~~~
elsen
[https://news.ycombinator.com/item?id=13104807](https://news.ycombinator.com/item?id=13104807)

Click on the eye icon. You won't be able to run the notebook code, which would
be a surprising thing to allow without some sort of authentication.

~~~
anc84
That's a shame, I was hoping to be able to use these for interactive learning.
Requiring signup is a showstopper for me. :(

~~~
chupapuma
The signup you need is a Microsoft account. This is the same account you use
for Xbox Live, hotmail/outlook, etc. We have found most people already have
these accounts. It also works with organizational accounts so a good number of
college email addresses work if your university has taken the time to set it
up. Plenty of university professors have been trying out our platform with
their classes. They have had little issues with the login barrier. The user
that posted before me is correct that this is a calculated decision. Some of
it is for security considerations but also just so we can return a user to
their previous content and not have to field questions on 'where did my files
go' when they weren't logged in before and so they didn't persist.

Thanks! Azure Notebooks Dev

------
asadm
This is amazing, I had set up a jupyter hub using some docker hacks to allow
my students to access their own personal instance(running inside a new
container) using github login. This might be a good low-cost alternative.
Thanks Azure!

~~~
smortaz
[msft]

Awesome! Cambridge University (Dr Wells) just did that. Here's their notebook:

[https://notebooks.azure.com/library/CUED-IA-Computing-
Michae...](https://notebooks.azure.com/library/CUED-IA-Computing-Michaelmas)

------
rem1313
Excited! Let's load some data and try it out!

Ok, let's use OneDrive to load data. Where is that option?

Nvm, let's use Dropbox instead. Does not work "Something went wrong. Please
refresh the page."

Maybe Azure storage? Trying to sign-up, filled sign-up form, verified account
via SMS, entered CC data. Nope! "Cannot proceed with signup due to issue with
your account. Contact support". (tried multiple times)

Contacting support.. creating incident, describing the issue. When trying to
attach screenshot I get "The file upload service server is not available at
this time. Wait a few minutes and then try it again."

Seriously, Microsoft??

~~~
smortaz
[msft] RE Dropbox - Very sorry about that :(. We discovered an issue earlier
and are feverishly looking at fixing it. Will remove the UI until it is fixed.
Meanwhile you can !curl in data among other approaches.

RE Storage/CC sign up. I'll locate someone in that group & reply back.

~~~
rem1313
Thanks! Somebody got back to me and apparently prepaid CC are not supported

------
sixhobbits
This looks really nice. I've always hated how buggy the free hosted Jupyter
notebook services are, and setting up a remote server yourself is definitely
not a one-click experience. Surprised to see how unrestricted this is (for now
anyway). They'll probably see some abuse of the resources soon and add more
restrictions. The "etc" from the restrictions section of the faq is pretty
broad.

"Usage should be limited to learning, research, general computing, etc."

~~~
chupapuma
Thanks sixhobbits. Our goal isn't to restrict you if it isn't required. We do
need to maintain the right to stop people from abusing this and make sure
there is room on the service for multiple users. Aside from that you are
basically free to party on :)

\- Azure Notebooks Dev

------
dobin
Pretty interesting as a tool to learn Python or other things. I'm intrigued.

I'm doing something similar with exploit development learning, but with a
javascript based terminal and linux containers, and a markdown writeup
([https://exploit.courses](https://exploit.courses) for anyone interested).
But the close interaction of code and text in Jupyter is much more advanced,
and useful :-)

------
tedmiston
This is an awesome offering from MS.

I'm not sure I understand this bit though — by "data" do they mean they'll
delete a notebook not accesssed for 60 days?

> Storage: We reserve the right to remove your data from our storage after 60
> days of inactivity to avoid storing unused/abandoned user data

~~~
chupapuma
If you don't access your account for 60 days we reserve the right to remove
your data (currently Notebooks but eventually notebooks, csv files, etc). This
is to avoid us wasting storage on users that aren't actually using the
service.

As we are still new, we haven't started deleting files yet, but we wanted to
be sure to have a policy for handling this upfront and not decide when there
was a problem later and then start destroying content without any sort of
notice.

Thanks! -Azure Notebooks Dev

------
pjmlp
Great to see F# on the samples list.

------
dandare
I have not visited any Microsoft property for some time now and I have this
strange feeling about the UX. Sadly I can not say if it is my deeply rooted
aversion against everything Microsoft or if the UX is really odd.

~~~
chupapuma
Hi dandare. I am a dev on Azure Notebooks at Microsoft and can tell you that
our team also delivers Python Tools for Visual Studio, Azure SDK for Python, R
Tools for Visual Studio, and previously Node.js Tools for Visual Studio.

The UX was not done in any way to feel like something else. We tried to design
something that worked well for Jupyter users as well as looked nice and was
usable.

That being said, our teams strengths are not in UX by far. We are starting to
work with designers to improve the "dev-UI"" we currently have.

If you have any more feedback you would like to share we would love to hear
it. There is a public tracker at
[https://github.com/microsoft/azurenotebooks](https://github.com/microsoft/azurenotebooks)
and an email that goes to the team at nbhelp@microsoft.com

~~~
dandare
Hi chupapuma, thanks for reaching out. Notebooks is certainly very interesting
product, I wish you and your team best luck.

------
fonnesbeck
Seems like they did something to the notebook interface to make it more
responsive on tablets. I usually cannot manipulate Jupyter notebooks from an
iPad, but I can here. Is this just a MS modification?

------
vaibhavsagar
This is very similar to Sage Math Cloud:
[https://cloud.sagemath.com/](https://cloud.sagemath.com/)

------
todd8
Jupiter is a great project for data scientists. Here is a one sentence
explanation from jupyter.org:

"The Jupyter Notebook is a web application that allows you to create and share
documents that contain live code, equations, visualizations and explanatory
text."

------
mrmondo
Sorry to sound cynical but haven't they taken something that's existed for a
long time and spent money on marketing it to add / repair value to their
brand? It feels a little obvious to me to be honest?

~~~
wyldfire
I suppose it's publicly hosted which might be rare or totally new. TBH the
most frustrating thing is that unlike github's notebook hosting you need to
login just to view the content.

And for some reason the back button doesn't work once you encounter the login
page. That's enough to make me want to stay away.

~~~
chupapuma
Thanks for the feedback wyldfire. I am a dev on Azure Notebooks and wanted to
mention we do allow viewing the content without login. However, to be in an
executable context (jupyter) we require login. Our samples, in order to avoid
extra clicks, take you straight into an executable environment.

Any notebook can be opened in an html view:
[https://notebooks.azure.com/library/fsharp/html/FSharp%20for...](https://notebooks.azure.com/library/fsharp/html/FSharp%20for%20Azure%20Notebooks.ipynb)

It sounds like you would like being able to view those more easily without
logging in?

Thanks! Chris

~~~
wyldfire
Thanks for being so responsive, Chris. I think that the 'view notebook' [eye
icon] is too out-of-the-way to notice.

IMO a design that might be less surprising would be for clicking on the name
of the notebook to take you to the read-only view of the notebook. From there
you could click on something that would promote it to an executable/editable
view and login if necessary.

But the broken back button on login page is a real bummer.

EDIT either it was my imagination to begin with or it's already fixed because
I tried it again and the back button appears to work correctly.

------
stcredzero
This looks like a Microsoft hosted cloud based "Dynabook."

[https://en.wikipedia.org/wiki/Dynabook](https://en.wikipedia.org/wiki/Dynabook)

Is that what it basically is?

~~~
smortaz
[msft] Not sure. It's a hosted Jupyter Notebook service. A Notebook here is a
polyglot, browser based, REPL on steroids.

See:

[http://jupyter.org](http://jupyter.org)

Sample notebooks (html captures of runnable notebooks):

[https://nbviewer.jupyter.org/](https://nbviewer.jupyter.org/)

~~~
stcredzero
_A Notebook here is a polyglot, browser based, REPL on steroids._

Smalltalk is somewhat of a primitive browser and very much a REPL on steroids.
Instead of being polyglot from the standpoint of supporting multiple
languages, Smalltalk was designed to be usable by people from grade school
students up through researchers. (It largely succeeded in that goal, but
failed in that it didn't attain enough popularity with mainstream
engineers/programmers.)

Some of the educational uses of Squeak Smalltalk are very much in the same
vein.

------
karl42
There's also [https://wakari.io/](https://wakari.io/) by continuum analytics.
Can anyone summarize the differences?

~~~
smortaz
[msft] Wakari is a more complete product from our partners at Continuum.io (we
use their Anaconda distro for Azure Notebooks). We have various improvements
planned & hope to reach parity soon!

------
FLGMwt
Supported languages are: Python (2/3), R, F#

------
cbHXBY1D
The "Import from Dropbox" feature is currently broken. Shame because it would
be useful for data scientists...

~~~
chupapuma
Thanks for the feedback cbHXBY1D. We discovered this having issues just a bit
back. We have some devs looking at it now and hopefully can have it up and
running soon.

If this is blocking you, there are libs to use dropbox throuhg python:
[https://pypi.python.org/pypi/dropbox](https://pypi.python.org/pypi/dropbox)

-Azure Notebooks Dev

------
luzvioleta
I use notebooks a lot, but with Julia. In any case, this is <3 amazing news !

~~~
smortaz
+1 for Julia - Please kindly file a request on github:

[https://github.com/Microsoft/AzureNotebooks](https://github.com/Microsoft/AzureNotebooks)

(user request > our wishes)

~~~
luzvioleta
Hey ! It's already posted <3

[https://github.com/Microsoft/AzureNotebooks/issues/4](https://github.com/Microsoft/AzureNotebooks/issues/4)

------
tonyedgecombe
Yet another product where I haven't got a clue what it is after reading the
front page.

~~~
Senderman
I had the same problem; This cleared it up:
[http://jupyter.org](http://jupyter.org)

~~~
Pigo
I actually thought this was some kind of laptop for awhile, even after reading
much of the front page. I googled Jupyter Notebook after a few context clues
finally tipped me off. I just thought I was being dense, though.

------
zargath
just small bug

1: Click "sign in". 2: Choose account I want to signin with 3: Click "cancel".
4: I get "500, Runtime Error" without custom error page.

Anyway, looks interresting

~~~
chupapuma
I filed a bug for you on our GitHub issue tracker. Thanks!
[https://github.com/Microsoft/AzureNotebooks/issues/20](https://github.com/Microsoft/AzureNotebooks/issues/20)

