Handout (3.1 MB)
Today, Python is a mature language with a vibrant community; this is quite likely its greatest asset to meteorology. No longer does the meteorology community need to be responsible for the entirety of the development of its analysis tools. Instead, the well tested stack of scientific Python tools can be leveraged as a solid foundation for development of domain-specific functionality. This also lets meteorology exploit the latest gains in the Python ecosystem; this includes the rapidly growing Jupyter (formerly IPython) ecosystem as well as tools like Pandas for time series analysis. Jupyter notebooks especially have given the community a powerful tool for education and research that provides a document environment mixing code, visualizations, equations, and explanatory text.
The future of Python is bright, as its reach, especially for scientific applications, continues to extend. The uptake of Python 3, after a long transition from Python 2, has recently accelerated greatly. The use of Jupyter notebooks continues to be pervasive in scientific applications of Python, with new efforts around web dashboards and a new JupyterLab interface. The story of Python’s slow performance may also start to become history, as experiments in new Python interpreters like PyPy start to become mainstream; projects like Numba designed around accelerating scientific code also show great promise. For meteorology, the domain-specific pieces continue to grow, making Python full-stack of tools for meteorological analysis and visualization.