Notes taken by Julien Milli during PyCoffee with Eric Emsellem: - anaconda: http://docs.continuum.io/anaconda/index It is an integrated environment for Python, that enables: - to create specific Python environments having different versions of Pythons or different modules available, each being isolated from the other. For instance, if one wants to test one’s Python program on Python2.7 and Python3.4, Anaconda can creates 2 separate environments for that purpose. - to install easily 95% of all packages you will need with Python - astropy.modeling is a powerful package to perform modelling, which is the basis for most astrophysical problems. Some minimisation methods (Chi squared minimisation with Levenberg-Marquardt, Nelder-Mead gradient descent… ) and models (polynoms, 1d gaussians, 2d gaussians) are already there and can be easily used in an object-oriented manner. It is also very easy to create new models or new minimisation methods and re-use the existing properties of the modelling package thanks to inheritance. http://docs.astropy.org/en/stable/modeling/ - inheritance is one the strength of Python, with respect to IDL. Some codes can be programmed in a very efficient way called object-oriented, defining classes that enable to create objects and attributes. Inheritance is the way a new class can inherit properties and methods from a parent class. A good tutorial is available here: http://learnpythonthehardway.org/book/ex44.html