1203 ipython pycon
TRANSCRIPT
![Page 1: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/1.jpg)
IPython: Python at your fingertips
Fernando Pé[email protected]
http://fperez.org
Brian E. Granger (Cal Poly San Luis Obispo), Min Ragan-Kelley (UC Berkeley)Thomas Kluyver (U Sheffield), Evan Patterson (Enthought).
PyCon 2012March 9, 2012
![Page 2: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/2.jpg)
Why IPython?
I is for interactive...
In scientific computing,we typically don’t know what we’re doing.
Exploratory computing is not just for scientists
![Page 3: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/3.jpg)
Why IPython?
I is for interactive...
In scientific computing,we typically don’t know what we’re doing.
Exploratory computing is not just for scientists
![Page 4: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/4.jpg)
Why IPython?
I is for interactive...
In scientific computing,we typically don’t know what we’re doing.
Exploratory computing is not just for scientists
![Page 5: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/5.jpg)
Why IPython?
I is for interactive...
In scientific computing,we typically don’t know what we’re doing.
Exploratory computing is not just for scientists
![Page 6: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/6.jpg)
Python: an excellent base for aninteractive environment
![Page 7: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/7.jpg)
I said a base...
![Page 8: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/8.jpg)
Mmh, introspection?
![Page 9: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/9.jpg)
Basic comforts?
![Page 10: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/10.jpg)
Useful error info
![Page 11: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/11.jpg)
We can do better...
![Page 12: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/12.jpg)
My files, thankyouverymuch
![Page 13: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/13.jpg)
Some object details?
![Page 14: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/14.jpg)
More info??
![Page 15: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/15.jpg)
When things go wrong
![Page 16: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/16.jpg)
Interactive architecture
FP (UC Berkeley) IPython: Python at your fingertips 3/9/2012 13 / 26
![Page 17: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/17.jpg)
Terminal console with visualization
![Page 18: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/18.jpg)
Qt console: inline plots, html, multiline editing, ...Evan Patterson (Enthought)
![Page 19: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/19.jpg)
Microsoft Visual Studio 2010 integrated consoleDino Viehland and Shahrokh Mortazavi; http://pytools.codeplex.com
![Page 20: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/20.jpg)
Browser-based notebook: rich text, code, plots, ...Brian Granger, James Gao (Berkeley), rest of the team
![Page 21: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/21.jpg)
Interactive and high-level parallel APIsMin Ragan-Kelley, Brian Granger
![Page 22: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/22.jpg)
How did we get here?A brief history of IPython
October/November 2001: “just a little afternoon hack“$PYTHONSTARTUP: ipython-0.0.1.py (259 lines)IPP (Interactive Python Prompt) by Janko Hauser (Oceanography)LazyPython by Nathan Gray (CalTech)
2002: Drop John Hunter’s Gnuplot patches: matplotlib2004: Brian Granger, Min Ragan-Kelley: Parallel on Twisted...2005-2009: Mayavi, Wx support, refactoring; slow period.2010: discover ØMQ, Enthought support.
Move to Git/Github.Build Qt console (Evan Patterson).Rewrite parallel support with ZeroMQ.Python 3 port (Thomas Kluyver).
2011: Web Notebook.
FP (UC Berkeley) IPython: Python at your fingertips 3/9/2012 19 / 26
![Page 23: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/23.jpg)
How did we get here?A brief history of IPython
October/November 2001: “just a little afternoon hack“$PYTHONSTARTUP: ipython-0.0.1.py (259 lines)IPP (Interactive Python Prompt) by Janko Hauser (Oceanography)LazyPython by Nathan Gray (CalTech)
2002: Drop John Hunter’s Gnuplot patches: matplotlib2004: Brian Granger, Min Ragan-Kelley: Parallel on Twisted...2005-2009: Mayavi, Wx support, refactoring; slow period.2010: discover ØMQ, Enthought support.
Move to Git/Github.Build Qt console (Evan Patterson).Rewrite parallel support with ZeroMQ.Python 3 port (Thomas Kluyver).
2011: Web Notebook.
FP (UC Berkeley) IPython: Python at your fingertips 3/9/2012 19 / 26
![Page 24: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/24.jpg)
How did we get here?A brief history of IPython
October/November 2001: “just a little afternoon hack“$PYTHONSTARTUP: ipython-0.0.1.py (259 lines)IPP (Interactive Python Prompt) by Janko Hauser (Oceanography)LazyPython by Nathan Gray (CalTech)
2002: Drop John Hunter’s Gnuplot patches: matplotlib2004: Brian Granger, Min Ragan-Kelley: Parallel on Twisted...2005-2009: Mayavi, Wx support, refactoring; slow period.2010: discover ØMQ, Enthought support.
Move to Git/Github.Build Qt console (Evan Patterson).Rewrite parallel support with ZeroMQ.Python 3 port (Thomas Kluyver).
2011: Web Notebook.
FP (UC Berkeley) IPython: Python at your fingertips 3/9/2012 19 / 26
![Page 25: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/25.jpg)
How did we get here?A brief history of IPython
October/November 2001: “just a little afternoon hack“$PYTHONSTARTUP: ipython-0.0.1.py (259 lines)IPP (Interactive Python Prompt) by Janko Hauser (Oceanography)LazyPython by Nathan Gray (CalTech)
2002: Drop John Hunter’s Gnuplot patches: matplotlib2004: Brian Granger, Min Ragan-Kelley: Parallel on Twisted...2005-2009: Mayavi, Wx support, refactoring; slow period.2010: discover ØMQ, Enthought support.
Move to Git/Github.Build Qt console (Evan Patterson).Rewrite parallel support with ZeroMQ.Python 3 port (Thomas Kluyver).
2011: Web Notebook.
FP (UC Berkeley) IPython: Python at your fingertips 3/9/2012 19 / 26
![Page 26: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/26.jpg)
How did we get here?A brief history of IPython
October/November 2001: “just a little afternoon hack“$PYTHONSTARTUP: ipython-0.0.1.py (259 lines)IPP (Interactive Python Prompt) by Janko Hauser (Oceanography)LazyPython by Nathan Gray (CalTech)
2002: Drop John Hunter’s Gnuplot patches: matplotlib2004: Brian Granger, Min Ragan-Kelley: Parallel on Twisted...2005-2009: Mayavi, Wx support, refactoring; slow period.2010: discover ØMQ, Enthought support.
Move to Git/Github.Build Qt console (Evan Patterson).Rewrite parallel support with ZeroMQ.Python 3 port (Thomas Kluyver).
2011: Web Notebook.
FP (UC Berkeley) IPython: Python at your fingertips 3/9/2012 19 / 26
![Page 27: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/27.jpg)
How did we get here?A brief history of IPython
October/November 2001: “just a little afternoon hack“$PYTHONSTARTUP: ipython-0.0.1.py (259 lines)IPP (Interactive Python Prompt) by Janko Hauser (Oceanography)LazyPython by Nathan Gray (CalTech)
2002: Drop John Hunter’s Gnuplot patches: matplotlib2004: Brian Granger, Min Ragan-Kelley: Parallel on Twisted...2005-2009: Mayavi, Wx support, refactoring; slow period.2010: discover ØMQ, Enthought support.
Move to Git/Github.Build Qt console (Evan Patterson).Rewrite parallel support with ZeroMQ.Python 3 port (Thomas Kluyver).
2011: Web Notebook.
FP (UC Berkeley) IPython: Python at your fingertips 3/9/2012 19 / 26
![Page 28: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/28.jpg)
(Incomplete) Cast of CharactersBrian Granger - Physics, Cal State San Luis ObispoMin Ragan-Kelley - UC BerkeleyThomas Kluyver - U. SheffieldJörgen Stenarson - SP Technical Research Institute of SwedenPaul Ivanov - UC BerkeleyRobert Kern - EnthoughtEvan Patterson - Caltech/EnthoughtStefan van der Walt - UC BerkeleyJohn Hunter - TradeLink Securities, Chicago.Prabhu Ramachandran - Aerospace Engineering, IIT BombaySatra Ghosh- MIT NeuroscienceGaël Varoquaux - Neurospin (Orsay, France)Ville Vainio - CS, Tampere University of Technology, FinlandBarry Wark - Neuroscience, U. Washington.Ondrej Certik - Physics, U Nevada RenoDarren Dale - CornellJustin Riley - MITMark Voorhies - UC San FranciscoNicholas Rougier - INRIA Nancy Grand EstThomas Spura - Fedora projectJulian Taylor - Debian/UbuntuMany more! (~140 commit authors)
![Page 29: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/29.jpg)
Some quick stats. http://www/ohloh.net/p/ipython
![Page 30: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/30.jpg)
Other projects using IPython
ScientificEPD: Enthought Python Distribution.Sage: open source mathematics.PyRAF: Space Telescope Science InstituteCASA: Nat. Radio Astronomy ObservatoryGanga: CERNPyMAD: neutron spectrom., Laue LangevinSardana: European Synchrotron RadiationASCEND: eng. modeling (Carnegie Mellon).JModelica: dynamical systems.DASH: Denver Aerosol Sources and Health.Trilinos: Sandia National Lab.DoD: baseline configuration.Mayavi: 3d visualization, Enthought.NiPype: computational pipelines, MIT.PyIMSL Studio, by Visual Numerics.
...
Web/OtherVisual Studio 2010: MS.Django.Turbo Gears.Pylons web frameworkZope and Plone CMS.Axon Shell, BBCKamaelia.Schevo database.Pitz: distributedtask/bug tracking.iVR (interactive VirtualReality).Movable Python(portable Pythonenvironment)....
![Page 31: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/31.jpg)
SupportThank you!
Enthought, Austin, TX: Lots!Tech-X Corporation, Boulder, CO: Parallel/notebook (previousversions)Microsoft: WinHPC support, Visual Studio integrationNIH: via NiPy grantNSF: via Sage compmath grantGoogle: summer of code 2005, 2010.DoD/HPTi: funding through Sept. 2012 (thanks to Jose Unpingco!).
![Page 32: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/32.jpg)
IPython in brief1 A better Python shell2 Embeddable Kernel and powerful interactive clients
1 Terminal2 Qt console3 Web notebook
3 Flexible parallel computing
http://ipython.org
http://github.com/ipython
![Page 33: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/33.jpg)
Demo time!
![Page 34: 1203 ipython pycon](https://reader034.vdocuments.net/reader034/viewer/2022042513/554e848cb4c90573338b45e7/html5/thumbnails/34.jpg)