Workshops
GOTO Chicago 2019

Sunday Apr 28
09:00 –
16:00

Level Up Your Python

Are you using Python to do productive work, but feeling that your code is somehow not "Pythonic"? Are you not even quite sure what "Pythonic" means? Do you wonder if the styles and practices of a former coding language are working against you producing efficient and effective Python code? Do you wish you could gain a deeper of understanding of how Python really works and "level up" your Python skills?

If so, this course will help you level up your Python understanding. We'll look at how Python works, from classes and standard patterns to iteration, exceptions, and what makes code "Pythonic". Along the way we'll also cover some commonly held misconceptions as well as the practical advantages of using Python as intended.

You should attend if...

  • you have moved to Python from another language, but still don't feel quite "at home."
  • you are an "intermediate" Python programmers and want to deepen your understanding
  • you want to get a better understanding of what "Pythonic" means for your code
  • you have the feeling that your code isn't really making the most of Python's capabilities

What we'll cover

  • The notion of "Pythonic" and how to make your code more Pythonic
  • How classes and objects work in Python and when (not) to use them
  • Iteration - iterables, iterators, loops, comprehensions, and generators
  • How (and why) exceptions are commonly used in Python
  • Corrections for some common (but flawed) mental models

Workshop Format This workshop will focus on code examples and discussion, with coding exercises to reinforce the major points. You are also encouraged bring any code examples or situations where you have questions about what would be Pythonic for discussion. While being able to code in the workshop is recommended, it's not absolutely required.

Prerequisites

  • Intermediate (or strong advanced beginner) knowledge of Python syntax
  • Basic understanding of functions, classes, and exceptions in Python
  • Some acquaintance with the Python standard library
  • Laptop with access to Python 3 environment (recommended, not required)

Naomi Ceder
Instructor
Organized by