Book Image

Mastering IPython 4.0

By : Thomas Bitterman, Dipanjan Deb
Book Image

Mastering IPython 4.0

By: Thomas Bitterman, Dipanjan Deb

Overview of this book

IPython is an interactive computational environment in which you can combine code execution, rich text, mathematics, plots, and rich media. This book will get IPython developers up to date with the latest advancements in IPython and dive deep into interactive computing with IPython. This an advanced guide on interactive and parallel computing with IPython will explore advanced visualizations and high-performance computing with IPython in detail. You will quickly brush up your knowledge of IPython kernels and wrapper kernels, then we'?ll move to advanced concepts such as testing, Sphinx, JS events, interactive work, and the ZMQ cluster. The book will cover topics such as IPython Console Lexer, advanced configuration, and third-party tools. By the end of this book, you will be able to use IPython for interactive and parallel computing in a high-performance computing environment.
Table of Contents (18 chapters)
Mastering IPython 4.0
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface
6
Works Well with Others – IPython and Third-Party Tools
Index

The rise of parallelism


It is commonplace to remark that a cell phone has more computing power than the Apollo rocket that sent the astronauts to the Moon. It is somewhat less common to hear that the cell phone also costs a lot less. How did this happen? It required the interplay of economics and technology to bring the development community to its current position.

In the beginning, computers were big, slow, and expensive. Programmers were rare and highly skilled. It was worth spending a programmer's time to save a computer's time. This is the era of mainframes, assembly language, and Fortran.

As time went on, computers got faster and cheaper. Programmers became somewhat less rare, but still commanded a premium. At some point, it became more cost-effective to spend the computer's time to save some programmer time. This is the era of PCs and high-level languages.

For a time, things were good. Computers were always getting faster, and memory was always getting bigger. There was no need to write...