
ipython 2.0.0 - kseistrup
http://ipython.org/ipython-doc/dev/whatsnew/version2.0.html
======
pvnick
I just woke up and, after seeing this announcement, I know it's going to be a
great day. I do statistical research for my university, and I just found
ipython notebook a couple weeks ago. I don't remember being so excited about a
piece of software since I first installed sublime. Although I've been doing
data-heavy software engineering for several years now, this one tool has
already completely revolutionalized the way I do day-to-day data mining. Props
to everyone involved in this release!

I'm especially excited about the notebook subfolders. Ah, the little things in
life.

~~~
HCIdivision17
Subfolders is _huge_. That, combined with URLs like
[http://127.0.0.1:8888/notebooks/SomeFolder/aRandomNotebook.i...](http://127.0.0.1:8888/notebooks/SomeFolder/aRandomNotebook.ipynb)
means I can organize and reference files elsewhere. I happen to keep a
TiddlyWiki worklog, and being able to directly hotlink to my IPython workspace
is just fantastic!

------
shoyer
It took some searching to find the "What's New" page:
[http://ipython.org/ipython-
doc/dev/whatsnew/version2.0.html](http://ipython.org/ipython-
doc/dev/whatsnew/version2.0.html)

    
    
        The principal milestones of 2.0 are:
        - interactive widgets for the notebook
        - directory navigation in the notebook dashboard
        - persistent URLs for notebooks
        - a new modal user interface in the notebook
        - a security model for notebooks

~~~
dang
Thanks. I changed it.

~~~
rspeer
Awesome.

If you're in the mood to fix something else: the changelog doesn't currently
agree with itself about whether Python 3.2 is supported.

~~~
staticshock
for the record: dang is Daniel Gackle, an HN moderator, not an ipython person

~~~
dang
Right. While I would be honored to be an IPython person, all I meant was that
I changed the url to be the better one suggested by shoyer. Clerical staff at
your service.

------
rjtavares
Can't wait to see what people come up with using the new widgets capabilities.
Here's a demo of Excel-like grid editing for Pandas:
[http://nbviewer.ipython.org/gist/rossant/9463955](http://nbviewer.ipython.org/gist/rossant/9463955)

~~~
lightcatcher
I'm hugely excited to work with the new widgets framework. It might be
slightly outside the designed use-case of the IPython notebook, but I'm
interested in doing live plotting inside of a notebook and using a notebook as
a sort of analytics dashboard.

~~~
pwang
Bokeh ([http://bokeh.pydata.org](http://bokeh.pydata.org)) has excellent
IPython notebook support, and provides interactive, live plots inside the
notebook.

It also has matplotlib support, so you can trivially turn Matplotlib figures
into interactive web plots (e.g. this interactive plot built via Seaborn,
which is a statistical plotting package that uses matplotlib):
[http://bokeh.pydata.org/docs/gallery/violin.html](http://bokeh.pydata.org/docs/gallery/violin.html)

~~~
jasongrout
How do the interactive bokeh plots work? Is it necessary to start up a
separate server, or can it work through the widget communication channels?

~~~
pwang
Actually, Bokeh plots are not (yet) integrated with the widget infrastructure
at all, and work in IPython 1.x. There is a fully embeddable javascript
library (BokehJS) which handles all the interactivity entirely in the browser.
Data can be directly and fully embedded in the DOM.

If you want to view larger data, access the downsampling capabilities of the
Bokeh plot server, coordinate views between multiple instances of the
notebook, or do streaming and animated plots, then you will need to run the
bokeh server.

------
stevetjoa
Hooray, IPython 2.0.0 now has `Audio` in IPython.display. As someone who uses
IPython notebooks for audio signal processing, this is huge. There were
previous user-contributed ways to get around it, but now it's built in.

See
[http://nbviewer.ipython.org/github/ipython/ipython/blob/2.x/...](http://nbviewer.ipython.org/github/ipython/ipython/blob/2.x/examples/Interactive%20Widgets/Beat%20Frequencies.ipynb)
for an example.

------
nicpottier
I've always hovered around iPython with a vague sense that it could be used in
a really cool way, but have never managed to make the jump to incorporate it
into my daily workflow despite some fun experiments.

It is much more clear how those using Python for scientific work would use it,
but does anyone have some great examples on how you use it when building apps
or other projects?

~~~
adwn
I use it as a better shell. Scripting in bash or sh is a horrible experience,
and pure Python lacks the conciseness of bash for simple exploration and
manipulation of a file system hierarchy (cd, cp, mv, ls...).

For example, you can write stuff like

    
    
      files = !ls -a
      for f in files:
        !diff $f "some_file"
        if _exit_code != 0:
          some_function(f)
    

and it even correctly handles spaces in file names. (what sorcery is this?!)

~~~
a3n
Not at all to pick a nit, but that still depends on bash or sh (the bang
commands).

Does anyone have any experience reports on using ipython as a better shell on
top of cmd.exe rather than on top of a *nix shell?

~~~
adwn
> _Not at all to pick a nit, but that still depends on bash or sh (the bang
> commands)._

That's a good point, and not nit-picky at all. However, I think the dependency
is on the Unix commands (mv, cp, ...), not _bash_ or _sh_ , which still makes
this mixed approach unsuitable for truly platform-independent scripting.

Of course, this point is moot when you use it as your personal shell, or when
scripting for your Unix servers, etc.

------
GeneralMaximus
Just grabbed it off pip. Turns out a simple `pip install ipython` doesn't pull
in all the dependencies for iPython Notebook. To grab all of those as well,
run:

    
    
      pip install ipython pyzmq jinja2 tornado
    

And then:

    
    
      ipython notebook
    

should open the web UI in your default browser.

~~~
lars512

        pip install ipython[notebook]

------
matthiasv
For me, IPython will always be a double-edged sword. On the one hand I love
what the project brings in terms of scientific exploration and ease of use. On
the other hand it is annoyingly hard to integrate the shell into my own
application: the API changes way too often and the source is a very complex
and tangled mess.

------
mineo
Looks like there's no changelog available (yet), so here's the rst file on
GitHub:
[https://github.com/ipython/ipython/blob/rel-2.0.0/docs/sourc...](https://github.com/ipython/ipython/blob/rel-2.0.0/docs/source/whatsnew/version2.0.rst)

~~~
bezidejni
Here's the same thing on their official site: [http://ipython.org/ipython-
doc/dev/whatsnew/version2.0.html](http://ipython.org/ipython-
doc/dev/whatsnew/version2.0.html)

------
childoftv
I really really really want some robust multiuser interactive support...time
to try and help...

------
erikcw
Just a quick heads up -- if you are using Vimium for Chrome or Vimperator on
Firefox, make sure to exclude iPython Notebook from the plugin. Otherwise the
majority of "Command Mode" keyboard shortcuts won't work.

------
camus2
Congrats, ipython is an very usefull tool,especially for teaching when one
cant afford Mathlab or paid software.It's simple and fun to use. thanks
again,cant wait to try that new version.

------
rrtwo
Any idea when will it be available on Anaconda?

~~~
gallamine
Can you not do "conda update ipython"?

~~~
a3n
If I do "conda search ipython" then for each of ipython, ipython-notebook and
ipython-qtconsole it shows that I'm at version 1.1.0 on python 2.7. It also
shows other previous or later versions available (but not 2.0.0).

So I think the answer to your question may be "not today."

Probably the simplest thing is to wait until a version of Anaconda with the
new ipython is available, then update Anaconda itself.

Someone please correct me, I'm a newish Anaconda user.

~~~
stevetjoa
Good news: a moment ago, I was just able to install IPython 2.0.0 with `conda
update ipython`. I'm excited -- it looks great.

Interestingly, if I then do `conda update anaconda`, it unlinks IPython 2.0.0
and re-links 1.1.0 after confirmation (which I decline, of course).

~~~
a3n
Interesting. I just did that, got ipython 2.0.0 installed, then searched again
and saw 2.0.0 for ipython, but 1.1.0 for the other two. When I then tried to
update notebook it said that it would revert ipython back to 1.1.0, so I said
no.

Then I started ipython notebook and got the new interface. So cool, but not
sure what conda search is telling me now. Anyway, thanks for that, I'll use it
with care and eyes open.

------
jimmcslim
The widget capability in this release might give the interactive side of
Mathematica notebooks a run for their money.

------
dgulino
ipython is something I miss when I use any other language's shell. Amazing
Ruby doesn't have something nearly as good (well, there is a hack:
[http://nbviewer.ipython.org/gist/minrk/4689728](http://nbviewer.ipython.org/gist/minrk/4689728))

------
grn
I must admit that I never saw that much value in ipython. Of course I
understand that you can create a nice notebook with embedded plots, etc. but
apart from that what does ipython give me? How does it compare to Vim + Jedi
(autocompletion) + QuickRun (running the script with a single key)?

~~~
iamartnez
I'm also a VIM+Jedi a user.

ipython is a pretty sweet interactive interpreter. Also try ipdb[0]. I can't
live without the interactive debugging it offers.

[0] [https://pypi.python.org/pypi/ipdb](https://pypi.python.org/pypi/ipdb)

------
tdicola
Weird, I don't see anything on their homepage yet:
[http://ipython.org/](http://ipython.org/) There is of course a link to the
2.0 version in development--perhaps you just stumbled on the current in
development 2.0 bits on pypi?

~~~
joshz
Stable is up on pypi.

------
marksbrown
The remapping of shortcuts was mildly annoying, but it looks good.

------
plg
I'm confused ... is it (declared) stable? or is this a beta?

~~~
if_by_whisky
It's a release, so you can "presume" it "stable", depending on the reputation
of the project.

