<commit_before>{
 "metadata": {
  "name": "introduction"
 },
 "nbformat": 3,
 "nbformat_minor": 0,
 "worksheets": [
  {
   "cells": [
    {
     "cell_type": "markdown",
     "source": [
      "# Unidata Technology with Python\n"
     ]
    },
    {
     "cell_type": "markdown",
     "source": [
      "## What is Python?\n",
      "\n",
      "- General purpose, high-level language invented by <NAME>.\n",
      "-  Multiple paradigms\n",
      "  - scripting\n",
      "  - object-oriented\n",
      "  - imperative\n",
      "  - functional\n",
      "- \"Python is executable pseudocode\"\n",
      "\n",
      "![<NAME>](http://upload.wikimedia.org/wikipedia/commons/thumb/6/66/Guido_van_Rossum_OSCON_2006.jpg/160px-Guido_van_Rossum_OSCON_2006.jpg)"
     ]
    },
    {
     "cell_type": "markdown",
     "source": [
      "## Why Unidata technology with Python?\n",
      "\n",
      "**\"I have used a combination of Perl, Fortran, NCL, Matlab, R and others for routine research, but found out this general-purpose language, Python, can handle almost all in an efficient way from requesting data from remote online sites to statistics, graphics.\"** -UCAR Scientist\n",
      "\n",
      "- Avenue for exploring, and leveraging netCDF and THREDDS Data Server technologies.\n",
      "- Embraced by earth science community for analysis and exploration (see table).\n",
      "- Publication quality graphics and visualization which are improving all the time. "
     ]
    },
    {
     "cell_type": "markdown",
     "source": [
      "## Language popularity measured by search hits on AMS [web site](https://ams.confex.com/ams/93Annual/webprogram/start.html#srch=words%7Cjava%7Cmethod%7Cand%7Cpge%7C2)"
     ]
    },
    {
     "cell_type": "markdown",
     "source": [
      "```\n",
      "|------+--------+------+---------|\n",
      "| Year | Python | Java | Fortran |\n",
      "|------+--------+------+---------|\n",
      "| 2011 |     19 |    2 |       4 |\n",
      "| 2012 |     57 |    9 |       2 |\n",
      "| 2013 |     60 |   12 |       9 |\n",
      "|------+--------+------+---------|\n",
      "```"
     ]
    },
    {
     "cell_type": "markdown",
     "source": [
      "##  Python environment\n",
      "\n",
      "Setting up a Python environment can be challenging. Having various libraries some of which require native dependencies can be difficult to install and have working properly. There are various solutions to this problem.\n",
      "\n",
      "- Obtain a commercial Python distribution with a package manager from Enthought or Anaconda. Academic use is free. This is the best option for beginners, but does not necessarily have the Python library you are interested in.\n",
      "- Alternatively, you can \"roll your own\" Python library management strategy as you gain experience.\n",
      "\n",
      "For various reasons the scientific Python world is still at Python 2.7.x so that is what we will be using.\n"
     ]
    },
    {
     "cell_type": "markdown",
     "source": [
      "## Python editor\n",
      "\n",
      "For these lectures, we will be editing and executing code directly in the ipython notebook. While this is a good choice for presentations, for Python code development you will probably want to use a [Python IDE](http://stackoverflow.com/questions/81584/what-ide-to-use-for-python). Here are a few that we stumbled upon that you might try:\n",
      "\n",
      "- [Python Tools for Visual Studio](http://pytools.codeplex.com/)\n",
      "- [Spyder is the Scientific PYthon Development EnviRonment](https://code.google.com/p/spyderlib/)\n",
      "- [Emacs IPython Notebook](http://tkf.github.io/emacs-ipython-notebook/)\n",
      "- [Enthought Canopy Editor](http://docs.enthought.com/canopy/quick-start/code_editor.html)\n",
      "- [Wakari, a hosted Python data analysis environment](https://www.wakari.io/)"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "print sys.version"
     ],
     "language": "python",
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "2.7.3 |EPD 7.3-2 (64-bit)| (default, Apr 12 2012, 11:14:05) \n",
        "[GCC 4.0.1 (Apple Inc. build 5493)]\n"
       ]
      }
     ],
     "prompt_number": 1
    },
    {
     "cell_type": "markdown",
     "source": [
      "## Background material\n",
      "\n",
      "- [Lectures on scientific computing with Python](https://github.com/jrjohansson/scientific-python-lectures#online-read-only-versions)\n",
      "- [A Hands-On Introduction to Using Python in the Atmospheric and Oceanic Sciences](http://www.johnny-lin.com/pyintro/)\n",
      "- [Enthought](https://www.enthought.com)\n",
      "- [Python Scientific Lecture Notes](http://scipy-lectures.github.io/)\n",
      "- [Lightning Talk - <NAME> - Oceanographic Anaylsis with Python]( http://vimeopro.com/pydata/pydata-nyc-2012/video/53095330)\n",
      "- [Why Python is the Next Wave in Earth Sciences Computing](http://journals.ametsoc.org/doi/pdf/10.1175/BAMS-D-12-00148.1)"
     ]
    },
    {
     "cell_type": "markdown",
     "source": [
      "[![Python for Data Analysis](http://akamaicovers.oreilly.com/images/0636920023784/lrg.jpg \"Python for Data Analysis\") ](http://shop.oreilly.com/product/0636920023784.do \"Python for Data Analysis\")"
     ]
    },
    {
     "cell_type": "markdown",
     "source": [
      "## Where to ask for help?"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "from IPython.display import HTML\n",
      "HTML('<iframe src=http://stackoverflow.com width=700 height=350></iframe>')\n"
     ],
     "language": "python",
     "outputs": [
      {
       "html": [
        "<iframe src=http://stackoverflow.com width=700 height=350></iframe>"
       ],
       "output_type": "pyout",
       "prompt_number": 46,
       "text": [
        "<IPython.core.display.HTML at 0x10b9596d0>"
       ]
      }
     ],
     "prompt_number": 46
    },
    {
     "cell_type": "markdown",
     "source": [
      "Tag your questions with `python`, `netcdf`, `thredds`, etc."
     ]
    }
   ]
  }
 ]
}<commit_msg>Fixing broken iframe<commit_after>{
 "metadata": {
  "name": "introduction"
 },
 "nbformat": 3,
 "nbformat_minor": 0,
 "worksheets": [
  {
   "cells": [
    {
     "cell_type": "markdown",
     "source": [
      "# Unidata Technology with Python\n"
     ]
    },
    {
     "cell_type": "markdown",
     "source": [
      "## What is Python?\n",
      "\n",
      "- General purpose, high-level language invented by <NAME>.\n",
      "-  Multiple paradigms\n",
      "  - scripting\n",
      "  - object-oriented\n",
      "  - imperative\n",
      "  - functional\n",
      "- \"Python is executable pseudocode\"\n",
      "\n",
      "![<NAME> Rossum](http://upload.wikimedia.org/wikipedia/commons/thumb/6/66/Guido_van_Rossum_OSCON_2006.jpg/160px-Guido_van_Rossum_OSCON_2006.jpg)"
     ]
    },
    {
     "cell_type": "markdown",
     "source": [
      "## Why Unidata technology with Python?\n",
      "\n",
      "**\"I have used a combination of Perl, Fortran, NCL, Matlab, R and others for routine research, but found out this general-purpose language, Python, can handle almost all in an efficient way from requesting data from remote online sites to statistics, graphics.\"** -UCAR Scientist\n",
      "\n",
      "- Avenue for exploring, and leveraging netCDF and THREDDS Data Server technologies.\n",
      "- Embraced by earth science community for analysis and exploration (see table).\n",
      "- Publication quality graphics and visualization which are improving all the time. "
     ]
    },
    {
     "cell_type": "markdown",
     "source": [
      "## Language popularity measured by search hits on AMS [web site](https://ams.confex.com/ams/93Annual/webprogram/start.html#srch=words%7Cjava%7Cmethod%7Cand%7Cpge%7C2)"
     ]
    },
    {
     "cell_type": "markdown",
     "source": [
      "```\n",
      "|------+--------+------+---------|\n",
      "| Year | Python | Java | Fortran |\n",
      "|------+--------+------+---------|\n",
      "| 2011 |     19 |    2 |       4 |\n",
      "| 2012 |     57 |    9 |       2 |\n",
      "| 2013 |     60 |   12 |       9 |\n",
      "|------+--------+------+---------|\n",
      "```"
     ]
    },
    {
     "cell_type": "markdown",
     "source": [
      "##  Python environment\n",
      "\n",
      "Setting up a Python environment can be challenging. Having various libraries some of which require native dependencies can be difficult to install and have working properly. There are various solutions to this problem.\n",
      "\n",
      "- Obtain a commercial Python distribution with a package manager from Enthought or Anaconda. Academic use is free. This is the best option for beginners, but does not necessarily have the Python library you are interested in.\n",
      "- Alternatively, you can \"roll your own\" Python library management strategy as you gain experience.\n",
      "\n",
      "For various reasons the scientific Python world is still at Python 2.7.x so that is what we will be using.\n"
     ]
    },
    {
     "cell_type": "markdown",
     "source": [
      "## Python editor\n",
      "\n",
      "For these lectures, we will be editing and executing code directly in the ipython notebook. While this is a good choice for presentations, for Python code development you will probably want to use a [Python IDE](http://stackoverflow.com/questions/81584/what-ide-to-use-for-python). Here are a few that we stumbled upon that you might try:\n",
      "\n",
      "- [Python Tools for Visual Studio](http://pytools.codeplex.com/)\n",
      "- [Spyder is the Scientific PYthon Development EnviRonment](https://code.google.com/p/spyderlib/)\n",
      "- [Emacs IPython Notebook](http://tkf.github.io/emacs-ipython-notebook/)\n",
      "- [Enthought Canopy Editor](http://docs.enthought.com/canopy/quick-start/code_editor.html)\n",
      "- [Wakari, a hosted Python data analysis environment](https://www.wakari.io/)"
     ]
    },
    {
     "cell_type": "code",
     "collapsed": false,
     "input": [
      "print sys.version"
     ],
     "language": "python",
     "outputs": [
      {
       "output_type": "stream",
       "stream": "stdout",
       "text": [
        "2.7.3 |EPD 7.3-2 (64-bit)| (default, Apr 12 2012, 11:14:05) \n",
        "[GCC 4.0.1 (Apple Inc. build 5493)]\n"
       ]
      }
     ],
     "prompt_number": 1
    },
    {
     "cell_type": "markdown",
     "source": [
      "## Background material\n",
      "\n",
      "- [Lectures on scientific computing with Python](https://github.com/jrjohansson/scientific-python-lectures#online-read-only-versions)\n",
      "- [A Hands-On Introduction to Using Python in the Atmospheric and Oceanic Sciences](http://www.johnny-lin.com/pyintro/)\n",
      "- [Enthought](https://www.enthought.com)\n",
      "- [Python Scientific Lecture Notes](http://scipy-lectures.github.io/)\n",
      "- [Lightning Talk - <NAME> - Oceanographic Anaylsis with Python]( http://vimeopro.com/pydata/pydata-nyc-2012/video/53095330)\n",
      "- [Why Python is the Next Wave in Earth Sciences Computing](http://journals.ametsoc.org/doi/pdf/10.1175/BAMS-D-12-00148.1)"
     ]
    },
    {
     "cell_type": "markdown",
     "source": [
      "[![Python for Data Analysis](http://akamaicovers.oreilly.com/images/0636920023784/lrg.jpg \"Python for Data Analysis\") ](http://shop.oreilly.com/product/0636920023784.do \"Python for Data Analysis\")"
     ]
    },
    {
     "cell_type": "markdown",
     "source": [
      "## Where to ask for help?"
     ]
    },
    {
     "cell_type": "markdown",
     "source": [
      "[![Stackoverflow](http://cdn.sstatic.net/stackexchange/img/logos/so/so-logo.png \"Stackoverflow\") ](http://stackoverflow.com/ \"Stackoverflow\")\n"
     ]
    },
    {
     "cell_type": "markdown",
     "source": [
      "Tag your questions with `python`, `netcdf`, `thredds`, etc."
     ]
    }
   ]
  }
 ]
}
{'fraction_non_alphanumeric': 0.17089131875414182, 'fraction_numerical': 0.024519549370444003, 'mean_word_length': 2.3158472946992585, 'pattern_counts': {'":': 86, '<': 14, '<?xml version=': 0, '>': 14, 'https://': 10, 'lorem ipsum': 0, 'www.': 6, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5242438', 'n_tokens_mistral': 4127, 'n_tokens_neox': 3799, 'n_words': 991}