Raymond Hettinger

Unit Test From Scratch

8/16/2019 | 9:15 AM-12:45 PM | Twitter


Build-up your Python skills by working on a short, focused project.

This fun workshop is a hands-on class teaching many core Python skills.

We practice test driven development to create and apply a unittest module.

Skills covered:

  • Logging module

  • Named tuples

  • Classes and special methods

  • Writing and using context managers

  • Exception handling

  • Conditional expressions

  • main sections

  • Assertions

  • getattr() and hasattr()

  • F-strings

  • Test driven development

  • The doctest, unittest and py.test modules

  • Code organization and documentation


Micro web framework from scratch

8/16/2019 | 1:45 PM-5:15 PM | Twitter


Beef-up your Python skills by working on a small, focused project.

This fun workshop is a hands-on class teaching foundational Python skills.

We'll create a working web framework from scratch.

Skills covered:

  • Function attributes
  • dict.get() and getattr()
  • Batch function runners with filtering
  • Function based decorators
  • The @-notation
  • Dispatch dictionaries
  • input() and interactive function runners
  • Exception handling
  • Class based decorators with arguments
  • global variables
  • Formatting with F-strings
  • HTTP headers and status codes

  • The dataclasses module and type declarations

  • Joining lists of strings

  • JSON encoding and decoding

  • Query string parsing

  • Dictionary comprehensions

  • How WSGI works (web standards gateway interface)

  • String encoding and decoding

  • Making apps for the wsgiref module


  • Modules: logging, wsgiref, http, urllib.parse, wsgiref

  • Briefly show Flask and Bottle


The Mental Game of Python

Python & Libraries, Intermediate
8/18/2019 | 9:15 AM-10:15 AM | Mya


or "Strategies learned from coaching, teaching, and StackOverflow"

If you work with thousands of developers, ranging from the experienced to the aspirational, you can see what patterns of thought seem to confer success. Raymond shares what he’s seen that works best for developing problem solving skills, learning how to learn, how to get unstuck, and reliable strategies for managing complexity.

The talk includes live coding examples to make these ideas concrete.