Hello. My name is Jonathan LaCour. I teach people how to program in Python in just four days. Below is a summary of the topics covered in my course.
Principles of Python
A short introduction to the core concepts, principles, and philosophy of the Python programming language.
- The Zen of Python
- Dynamic Languages and Duck Typing
- Whitespace and TOOWTDI
- Batteries Included
A Rapid Introduction to Python
A whirlwind tour of the core Python language, intended to review the syntax and basic language features.
- Variables, Expressions, and Conditionals
- I/O, Strings, and Unicode
- Collections & Iteration: Tuples, Lists, Sets, & Dictionaries
- Functions, Classes and Object-Oriented Programming
- Exceptions and Exception Handling
- Style & Structure: Modules, Packages, and PEP 8 Style Guide
An introduction to a variety of intermediate Python topics, with practical example code, and real-life scenarios.
- Iterators, Generators, and Co-Routines
- Function, Method, and Class Decorators
- Control Flow and Exceptions: Best Practices
- Lambdas and Dynamic Creation of Functions and Classes
- Unit Testing via unittest
Advanced Object-Oriented Programming
A more in-depth look at objects and object-oriented programming in Python.
- Inheritance and the MRO
- Leveraging Special Methods
- Metaclasses and Metaprogramming
An overview of concurrency constructs and best practices in Python. The instructor will not only present the concepts of concurrency in Python, but also discuss potential pitfalls, and outline a variety of options for concurrency.
- Concepts of Concurrency
- Locks, Conditions, and Events
- Best Practices and the Queue object
- Threading is Evil
- Multi-Processing and the GIL
- Best Practices and IPC
- Asynchronous IO
The client will have the opportunity to select three of the following topics to be included in their training.
- Packages and Dependencies with Python Eggs
- Advanced Unit Testing with Nose and Doctest
- XML with ElementTree
- Library Integration with CTypes
- Relational Databases with SQLAlchemy
- Leveraging HTTP through WSGI and Python Paste
I am an experienced programmer who has been using Python for over ten years. I have given numerous technical talks at a variety of conferences and user groups, and enjoy helping developers learn Python. My passion for dynamic programming languages, agile development, and unit testing permeates my teaching style.
Want to know more? . My rates are competitive, and my course can be customized to your needs.