|
1 | 1 | ---
|
2 | 2 | title: Wrap-Up
|
3 |
| -teaching: 20 |
4 |
| -exercises: 0 |
| 3 | +teaching: 5 |
| 4 | +exercises: 5 |
5 | 5 | ---
|
6 | 6 |
|
7 | 7 | ::::::::::::::::::::::::::::::::::::::: objectives
|
8 | 8 |
|
9 |
| -- Name and locate scientific Python community sites for software, workshops, and help. |
| 9 | +- Name and locate scientific Python community sites for further learning. |
| 10 | +- Use Python community coding standards (PEP-8). |
| 11 | +- Reflect on what you learned. |
10 | 12 |
|
11 | 13 | ::::::::::::::::::::::::::::::::::::::::::::::::::
|
12 | 14 |
|
13 | 15 | :::::::::::::::::::::::::::::::::::::::: questions
|
14 | 16 |
|
15 | 17 | - What have we learned?
|
16 | 18 | - What else is out there and where do I find it?
|
| 19 | +- How can I make my programs more readable? |
17 | 20 |
|
18 | 21 | ::::::::::::::::::::::::::::::::::::::::::::::::::
|
19 | 22 |
|
20 |
| -Leslie Lamport once said, "Writing is nature's way of showing you how sloppy your thinking is." |
21 |
| -The same is true of programming: |
22 |
| -many things that seem obvious when we're thinking about them |
23 |
| -turn out to be anything but when we have to explain them precisely. |
24 | 23 |
|
25 |
| -## Python supports a large community within and outwith research. |
26 | 24 |
|
27 |
| -- The [Python 3 documentation](https://docs.python.org/3/) covers the core language |
28 |
| - and the standard library. |
| 25 | +## Python Resources |
29 | 26 |
|
30 |
| -- [PyCon](https://pycon.org/) is the largest annual conference for the Python community. |
| 27 | +There are tons of Python resources out there, and Google is generally a good place to start when it comes to troubleshooting Python errors or finding tutorials. A few resources that we recommend: |
31 | 28 |
|
32 |
| -- [SciPy](https://scipy.org) is a rich collection of scientific utilities. |
33 |
| - It is also the name of [a series of annual conferences](https://conference.scipy.org/). |
| 29 | +- [PEP8](https://www.python.org/dev/peps/pep-0008) is a style guide for Python that discusses topics such as how you should name variables, how you should use indentation in your code, how you should structure your `import` statements, etc. Following PEP8 guidelines makes it easier for other Python developers (and for your future self) to read and understand your code. |
| 30 | +- The [Python 3 documentation](https://docs.python.org/3/) covers the core language and the standard library. |
| 31 | +- [Pandas](https://pandas.pydata.org/) is the home of the Pandas data library. |
| 32 | +- [Stack Overflow](https://stackoverflow.com/) is a helpful site collecting community questions and answers related to programming challenges. Most of the issues you're likely to run into as a Python novice have probably been answered there. |
34 | 33 |
|
35 |
| -- [Jupyter](https://jupyter.org) is the home of the Jupyter Notebook. |
| 34 | +### Generative AI and Python |
| 35 | +Generative AI tools such as ChatGPT, Genesis, and Claude can often generate helpful code templates and suggestions for Python problems. These tools work best: |
36 | 36 |
|
37 |
| -- [Pandas](https://pandas.pydata.org/) is the home of the Pandas data library. |
| 37 | +1. when you structure your questions using [pseudocode](https://en.wikipedia.org/wiki/Pseudocode), by breaking down the programming task you hope to accomplish using natural language. |
| 38 | +2. when you have enough experience in Python that you can troubleshoot errors and read over the code to ensure it's doing what you think it is. The Python code that ChatGPT suggests can be flawed in small (and sometimes large) ways. You'll have more success using generative AI for programming help as you gain more experience writing and editing Python. |
| 39 | + |
| 40 | + |
| 41 | +::::::::::::::::::::::::::::::::::::::: challenge |
| 42 | + |
| 43 | +## Reflection |
38 | 44 |
|
39 |
| -- Stack Overflow's [general Python section](https://stackoverflow.com/questions/tagged/python?tab=Votes) |
40 |
| - can be helpful, |
41 |
| - as can the sections on [NumPy](https://stackoverflow.com/questions/tagged/numpy?tab=Votes), |
42 |
| - [SciPy](https://stackoverflow.com/questions/tagged/scipy?tab=Votes), |
43 |
| - [Pandas](https://stackoverflow.com/questions/tagged/pandas?tab=Votes), |
44 |
| - and other topics. |
| 45 | +Take a few minutes to think about what you learned during the workshop. Consider the following: |
| 46 | + |
| 47 | +1. Are there ways for you to implement Python in your work moving forward? |
| 48 | +2. Do you have any questions or confusion about how you might implement Python in a particular workflow? |
| 49 | + |
| 50 | +With the time remaining, discuss these topics with your instructors, helpers, and co-learners. |
| 51 | + |
| 52 | +:::::::::::::::::::::::::::::::::::::::::::::::::: |
45 | 53 |
|
46 | 54 | :::::::::::::::::::::::::::::::::::::::: keypoints
|
47 | 55 |
|
48 | 56 | - Python supports a large community within and outwith research.
|
| 57 | +- Follow standard Python style (using PEP8) in your code. |
49 | 58 |
|
50 | 59 | ::::::::::::::::::::::::::::::::::::::::::::::::::
|
51 | 60 |
|
|
0 commit comments