I Learned Python, Now What: Python 102 for Scientific Computing and Data Analysis
TimeMonday, July 231:30pm - 5pm
DescriptionThere is no shortage of resources for researchers, scientists and data analysts seeking to learn programming at an introductory level. Many such tutorials/courses target productive languages such as Python, R or MATLAB, and cover sufficient material to help them acquire the skills necessary to automate repetitive tasks, and to manipulate, analyze and visualize data.
However, very often when faced with more complex problems which require more "serious" programming (for example, writing custom tools or implementing a new algorithm), novice programmers may struggle to find the right approach. They may often find themselves re-inventing the wheel, employing ad-hoc software development practices, and ending up with unwieldy code that is difficult to use, re-use and share with others.
This tutorial will cover the "intermediate" skills necessary for novices to write programs that are well-tested, well-documented and performant. While Python will be the language used, the concepts covered translate well to any other language.
Specifically, the tutorial will cover:
1. Packaging: or how to organize your code into functions, modules and packages that can be easily tested, re-used and shared with others.
2. Testing and debugging: or how to ensure the correctness of your code.
3. Documenting: or how to make your code easier for you and others to use and understand.
4. Performant programming: or how to measure, reason about, and improve the performance of your code.