updates from ipython notebook