Lesson 1.1: Welcome & Setup
Course Title
A Primer on Computational Methods Using Python
Course Description
This is an immersive course that covers the basics of computation using the Python programming language. Topics include basic Python syntax, dictionaries, object oriented programming, data import/export, data visualization, and more. This course is targeted at scientists who have prior programming experience in other languages, but are looking to expand their skill set to include this increasingly powerful platform.
Course Hours
Tuesday 11 MAY 2021 - Thursday 13 MAY 2021, 0800-1600
Instructors
Gary Huntress, Code 4542, NUWC Newport, [email protected]
Dr. Jesse Daily, Code 1512, NUWC Newport, [email protected]
Computing Environment Options:
Option 1: Use Python locally on your NMCI or home computer
There are directions on https://wiki.navsea.navy.mil/display/NPUG/NAVSEA+Python+Users+Group+Home that will tell you how to install Python on your NMCI machine.
Benefits:
Local
Free
No internet connection required
Option 2: We also have a (paid) cloud-based service called CoCalc (http://www.cocalc.com) to support all of the computing we will do this week.
Benefits:
There is nothing you need to install on your machine.
All you need is (1) a web browser, and (2) a live internet connection.
Let's Setup Your Computing Environment
You should have received an email from cocalc.com, with an invitation to this course. (This was sent to the email address on file for the course.)
You need to sign up for an account on CoCalc (it's free).
After this, you should see a project called "COURSE NAME"
Click on the project. You are setup!
We are using CoCalc as a service (no installation necessary)
However, if you are installing yourself, we recommend the Anaconda distribution...
The Anaconda Distribution comes with a bunch of useful things:
Python 3 (the language)
IPython (interactive console)
Jupyter (notebooks)
Spyder (an editor and simple development environment)
plus a whole bunch of other things (like RStudio!)...
There are lots of online resources for learning Python
Home Base: http://www.python.org
Python 3 Documentation: https://docs.python.org/3/
Python 3 Tutorial: https://docs.python.org/3/tutorial/index.html
Think Python 2e, by Allan B. Downey
Free online: https://greenteapress.com/wp/think-python-2e/
Automate the Boring Stuff With Python, by Al Sweigart
Free online: https://automatetheboringstuff.com/
Python for Data Analysis, by Wes McKinney, 2nd Ed (2017)
But everything you need is online: https://pandas.pydata.org/
Lots more
Python 3 Module of the Week, by Doug Hellmann: https://pymotw.com/3/
we will see lots more as we go through
Shameless Plug !!!!!
Please go to: https://wiki.navsea.navy.mil/display/NPUG/NAVSEA+Python+Users+Group+Home
To get documents, cheatsheets, tutorial notebooks, Q&A, and more about using Python at NUWC.
While We Are Setting Up, Let's Do Introductions
Let's do a quick round-robin (no more than 1 min each).
Name, Job Title, Area of Expertise
What you do in your daily work
Past experience in computing? In Python?
What you hope to get out of this course