
IPython 3.0 released - cjdrake
http://ipython.org/ipython-doc/3/whatsnew/version3.html
======
baldfat
This is the last release of iPython which will be called Jupyter Julia, Python
and R name mash up) to show the kernel agnostic nature of the product. iPython
will only refer to the Python specific parts AKA the interactive python kernel
and a few other pieces. You can run iPython/Jupyter with over 30 different
kernels. My favorite is R and Haskell.
[https://github.com/ipython/ipython/wiki/IPython%20kernels%20...](https://github.com/ipython/ipython/wiki/IPython%20kernels%20for%20other%20languages)

~~~
ogrisel
Just a note in passing as many people make the mistake when writing about
IPython: the name of the project is written 'IPython' instead of 'iPython'.
The project maintainers would like to encourage people to avoid the latter
casing, in particular to avoid any confusion with Apple products. If you don't
like the 'IPython' casing it's better to just use lowercase 'ipython' instead.

~~~
baldfat
I am the last person in the world that would ever want to have anything Apple
seen in other projects. I will always go with IPython, BUT once again Apple
steals something that wasn't theirs iX was before iMac.

------
ehvatum
That "whatsnew" page doesn't mention it, but IPython 3.0 adds official PyQt5
support for IPython event loop integration (ie, time slicing so the text
console with local kernel remains responsive) and PyQt5 support for Qt
console. Spyder recently merged in PyQt5 support as well, and Matplotlib has
it, too. We're getting to the point where everyday IPython users can finally
move over to PyQt5.

------
icegreentea
So I was super excited when IPython started rolling widgets into itself - I
thought I would be using them a lot. But turns out that I just ended up using
one pattern (slider + matplotlib to cycle through dataset visualizations).
What I've found is that googling for IPython widget documentation or tutorials
is just... really difficult. There's stuff from a lot of eras, and it's often
quite tricky to figure out exactly what the

I'm pretty certain its just my poor google-fu in this case, but does anyone
have a particularly good/authoritative 2.x (or 3.x if those even exist yet)
tutorial or guide to follow?

~~~
jasongrout
Jonathan Frederic just updated the example notebooks for widgets before the
release:
[http://nbviewer.ipython.org/github/ipython/ipython/tree/mast...](http://nbviewer.ipython.org/github/ipython/ipython/tree/master/examples/Interactive%20Widgets/).
We've also listed a few examples of cool widgets at
[https://github.com/ipython/ipython/wiki/widgets](https://github.com/ipython/ipython/wiki/widgets)
(though some of these may not have been updated to run on IPython 3.x). You're
welcome to ask questions on the IPython mailing list or the gitter chat:
[https://gitter.im/ipython/ipython/help](https://gitter.im/ipython/ipython/help).

------
stared
I am in the middle of IPython Cookbook ([http://ipython-
books.github.io/cookbook/](http://ipython-books.github.io/cookbook/)), which I
enjoy a lot.

I wanted to ask which things gets outdated, but it seems that the author tries
keep it up to date ([https://github.com/ipython-books/cookbook-
code/issues/17](https://github.com/ipython-books/cookbook-code/issues/17)).

------
arocks
The turtle widget [1] looks exactly like what I was looking for. It can be
used to teach Python programming to kids within an IPython notebook.

[1]: [https://github.com/takluyver/mobilechelonian/tree/require-
wi...](https://github.com/takluyver/mobilechelonian/tree/require-widgets)

~~~
cproctor
Turtle is also part of Python's standard library. Re-implementing geometric
puzzles we already solved in Scratch works well as a transition to Python for
my seventh graders.

------
calebm
I'm really excited about the interactive widgets. I've been curious about the
idea of creating a spreadsheet widget to provide excel-like functionality in
Jypyter.

~~~
brudgers
The thing about Excel is there are many 50~80% use case implementations. But
none with all 30 years of Microsoft's spreadsheet experience baked in. The
long tail use cases are where Excel excels, and in spreadsheets there are a
lot of snowflake use cases.

~~~
baldfat
The biggest thing about "Excel" and spreadsheets is the work you do is not
reproducible and it is the main reason why you should program all your work.
What people do with macros and spreadsheets is very dangerous and unless it is
documented it has too much human error capability.

~~~
brudgers
The business case for using Excel overwhelms engineering best practices up to
somewhere around five or six sigmas. The big ball of mud software architecture
is good enough to make money. Anyway explaining business logic to a technical
programmer is also fraught with human error. TANSTAAFL.

~~~
bwanab
Not necessarily. There have been a number of disasters in the last few years
caused by errors that have been directly attributed to spreadsheet usage. Many
financial firms are reining in excel use by their business users. Prototyping
a solution is fine, but for production use they are requiring an auditable
solution that has proper source code control and can't be tweaked by the end
user.

Spreadsheets are great products but for production use they are really two
edged swords.

~~~
brudgers
Sure, but that shift is happening under the same logic that leads businesses
to run ERP applications on big iron mainframes even here in the 21st century.

It's a matter of degree, but human error remains. The subprime clusterfuck
wasn't based on using Excel.

------
ngoldbaum
Go to try.jupyter.org to give it a spin.

------
stillsut
I'm really excited about IPython as a tool for MOOCs. For example check out
this ComputerVision class:
[https://www.kickstarter.com/projects/1186001332/pyimagesearc...](https://www.kickstarter.com/projects/1186001332/pyimagesearch-
gurus-become-a-computer-vision-openc)

Ultimately, instead of thousands of going thru the same material, I think
small groups could break out and build an independent project in Ipython as it
documents the results and source in one place.

~~~
jasongrout
Are you talking about a small group all working together on an IPython
notebook + source files? IPython doesn't (yet) support collaborative editing
by itself, but SageMathCloud
([https://cloud.sagemath.com/](https://cloud.sagemath.com/), source at
[https://github.com/sagemath/cloud](https://github.com/sagemath/cloud)) has
patched IPython to have Google Docs-style collaborative editing. SageMathCloud
is still using the latest IPython 2.x release (updated soon, probably in
conjunction with upgrading the version of IPython in Sage). Still, it's
probably your best bet right now for collaborative editing in IPython
notebooks.

That said, several IPython developers are working on adding Google Drive
support, and I believe they are working on the collaborative editing
capabilities as part of that.

~~~
omaranto
Is SageMathCloud really based on the IPython notebook? I had assumed it was
based instead on the earlier Sage Notebook.

~~~
jasongrout
SageMathCloud is a completely new thing, which is _much_ more comprehensive
than either the IPython notebook or the previous Sage notebook. It provides
the ability to run arbitrary services and connect to them, and provides a very
easy way to launch an IPython notebook server. Log in, create a project, click
"New", and then click "IPython notebook". It starts up an IPython notebook
server (patched to allow collaborative editing) and tunnels the connection out
so that you are interacting with the IPython notebook server it started up.
Beyond that, it has a completely new Sage notebook, terminal, latex editor
(all allowing real-time collaboration), automatic snapshots every few minutes,
and many more things.

------
jackgolding
Such an awesome tool for my day to day work. I'm so lucky that I have a job
where I can send these between myself and my GM.

------
rogerallen
Anyone know how long it typically takes Anaconda to package up new ipython
releases?

~~~
takluyver
It normally becomes available a few days after a release. Run 'conda update
ipython ipython-notebook' to check for a newer version.

------
andyidsinga
this is really cool. I love the ipython notebook model of dev...and splitting
apart those features from languages is a good idea

