Slide 1

Slide 1 text

IPython: How a notebook is changing science Python as a real alternative to MATLAB, Mathematica and other commercial software Juan Luis Cano Rodríguez — @Pybonacci Stockholm — 2015-05-12

Slide 2

Slide 2 text

Who am I? ● Almost aeronautical engineer ● Self-taught Python programmer ● Pythonic life: – Pybonacci blog about scientific Python – Chair of the Python Spain Association – Python developer at Airbus Operations – Final Master project: fluid-structure interaction analysis with Python (FEM + SPH) – Personal endeavour: interplanetary trajectory analysis with Python

Slide 3

Slide 3 text

Let's get to the point

Slide 4

Slide 4 text

Russell's teapot

Slide 5

Slide 5 text

Russell's teapot “If I were to suggest that between the Earth and Mars there is a china teapot revolving about the Sun in an elliptical orbit, nobody would be able to disprove my assertion provided I were careful to add that the teapot is too small to be revealed even by our most powerful telescopes.

Slide 6

Slide 6 text

Expectations...

Slide 7

Slide 7 text

...and Reality™

Slide 8

Slide 8 text

Is there a better way?

Slide 9

Slide 9 text

IPython notebook

Slide 10

Slide 10 text

What is this IPython notebook? ● Interactive Python interpreter in the browser ● Open format combining executable code, text and multimedia ● Inspired in Mathematica ● Based on the Python programming language Demo! http://www.nature.com/news/ipython-interactive-demo-7.21492

Slide 11

Slide 11 text

The counter- analysis in a notebook

Slide 12

Slide 12 text

Python *Demand of Python programmers for Big Data jobs doubled in the last twelve months, says Forbes

Slide 13

Slide 13 text

Teaching tool ● Book: Bayesian Methods for Hackers ● Lorena Barba courses: ● AeroPython* ● 12 steps to Navier Stokes ● Practical Numerical Methods with Python ● Harvard CS109 Data Science *Not to be confused with our AeroPython ;)

Slide 14

Slide 14 text

...the rise to fame

Slide 15

Slide 15 text

More articles!

Slide 16

Slide 16 text

Some myths → There's no support → Won't be free forever → Free software has bugs

Slide 17

Slide 17 text

Some myths → There's no support Enthought, Continuum Analytics → Won't be free forever → Free software has bugs

Slide 18

Slide 18 text

Some myths → There's no support Enthought, Continuum Analytics → Won't be free forever Free software belongs to the community → Free software has bugs

Slide 19

Slide 19 text

Some myths → There's no support Enthought, Continuum Analytics → Won't be free forever Free software belongs to the community → Free software has bugs Naturally.

Slide 20

Slide 20 text

Can we trust CAS?

Slide 21

Slide 21 text

Moral: Free software has bugs

Slide 22

Slide 22 text

World domination?

Slide 23

Slide 23 text

Ju·py·ter /ˈdʒu pɪ tər/ noun 1. the future incarnation of IPython. Julia + Python + R

Slide 24

Slide 24 text

Project Jupyter ● Separation of the language-agnostic components – Jupyter: protocol, format, multi-user server – IPython: interactive Python console, Jupyter kernel ● Jupyter kernels = Languages which can be used from the notebook (33 and counting) ● Surprises are coming...

Slide 25

Slide 25 text

¡IMatlab!

Slide 26

Slide 26 text

Some recent events May 7th, 2015: ● GitHub + Jupyter notebooks = <3 https://github.com/blog/1995-github-jupyter-notebooks-3 ● Embracing Jupyter Notebooks at O'Reilly https://beta.oreilly.com/ideas/jupyter-at-oreilly ...that scalated quickly!

Slide 27

Slide 27 text

Further resources ● Official Python tutorial on python.org ● Langtangen “A primer on Scientific Programming with Python” ● “Curso de Python para científicos e Ingenieros” on YouTube (in Spanish) ● AeroPython #0 with installation and getting started instructions (in Spanish) ● Software Carpentry, programming for scientists and engineers ● MOOCs at Coursera, EdX...

Slide 28

Slide 28 text

No more teapots :)

Slide 29

Slide 29 text

Thank you

Slide 30

Slide 30 text

Questions? http://pybonacci.org [email protected]