[ TEACHING ]
Dabeaz LLC offers the following programming courses for on-site
delivery at your place of business. Public courses open for individual
enrollments are offered on an ongoing basis in Chicago.
- Practical Python
Programming. A 3-day class on the Python programming language
and standard library with a focus on applying Python to problems in
scripting, data analysis, and systems programming. This course assumes no prior
experience with Python, but assumes that participants already know how to program
in another programming language. It is especially well-suited for programmers
who want to know what Python is all about without extra fluff.
- Advanced Python Mastery.
An intense 4-day class that covers the more advanced aspects of the
Python programming language. This course is primarily designed for
programmers working on large applications, frameworks, or libraries.
Course material is strongly focused on tradeoffs between different implementation
techniques, performance properties, and usage of Python's metaprogramming features
(decorators, context managers, metaclasses, descriptors, etc.).
- Python Networks, Concurrency, and Distributed Systems..
A 4-day class that focuses on the use of Python to build distributed systems. Major topics include
socket programming, internet data handling (XML, JSON, etc.), simple web
programming, WSGI, REST, actors, remote procedure call (RPC), message
passing, distributed objects, and asynchronous I/O. The course also
includes material on concurrent programming techniques including
threads, processes, and multiprocessing. A major focus of this course
is on the underlying principles that form the foundation of the
programming frameworks and applications that you may be using now--you
will walk away with new insight and ideas for improving your
About The Courses
These courses have been developed by David Beazley, a 16-year
Python programming veteran, elected member of the Python Software
Foundation, frequent PyCON presenter, and author of the well-respected
"Python Essential Reference." Dave has a Ph.D. in computer science, a
M.S. in mathematics, and previously spent seven years teaching
operating systems, networks, and compilers at the University of
Chicago. Here's what to expect if you take a course:
- Real-world focus. The primary focus is on practical
applications and common programming problems faced by actual Python
programmers. As such, you're not going to find toy problems from
computer science classes and job interviews (e.g., computing Fibonacci
numbers, 8-queens puzzles, fizzbuzz, etc.). Instead, you'll learn how
to crunch data, interact with the operating system, organize programs,
integrate Python with other software, write tests, and more.
- Attention to detail. Thousands of man-hours have gone into
developing the presentation materials and exercises. Course notes
include hundreds of pages of fully indexed reference material,
figures, and code examples. Exercises provide the essential building
blocks for writing larger Python programs after you're done with the
- Hands-on. In these classes, more than half of the time
is spent writing programs. You're going to get your hands dirty writing
- No marketing jargon or buzzwords.
Concepts are clearly explained using plain language and examples are
designed to be understood by anyone who has had some prior programming
experience. It is not necessary to be a professional computer
scientist, software engineer, or an expert in some specific kind of
software development methodology (i.e., object-oriented programming).
- No advocacy. Classes are solely focused
on using Python--not convincing you to use
Python in the first place. They also do not advocate any
particular method of programming or software development.
There is more than one way to do it as well as tradeoffs.
- No regurgitation. I am the author of the book and
don't need to read from it to teach a course. My classes are wholly
original works that are strongly focused on core concepts and building
an understanding of why you use various Python features and
why Python works in the way that it does.
- A brisk pace. Your time is valuable. These courses present
information in a way that is highly organized and which prefers
hands-on programming over drawn-out talking. Classes are organized
around short lecture segments (10-20 minutes) followed by coding
exercises (20-30 minutes). You won't be bored.
Want to see more? Check out some of Dave's talks
and presentations for a sampling of past presentations.
What Others Say
About the "Python Essential Reference"...
"Python Essential Reference is exactly what the title says - it's *essential*... [It] is a book that you must have
on your bookshelf." - Mike Riley [Dr. Dobb's CodeTalk ]
"This is not a book for learning Python. It is a book for writing Python." - Doug Hellmann.
"This is the best programming book I have ever seen." - Amazon review
About Dave's PyCON tutorials...
"This was my favorite technical talk at PyCon and I learned quite
a bit. If you get a chance to do a training session with David, do
it. You will get more than your money's worth." [ link
"The best tutorial on Python's powerful generator feature I've seen anywhere"
[ link ]
"A very interesting and easy to understand introduction to Python generators... I would say it is
a must read for all Python developers."
[ link ]
About Python training classes... (from course evaluations)
"Awesome course! Very useful. Especially good: the short, real world examples, having the teacher step through the code, the good speaking style, and good pace."
"Dave's slides are by far the best, most-thorough, and polished slides of any lecture I've attended, college, professional training, or otherwise."
"David is highly articulate and knows the subject well. Also the exercises are based on real world problems rather than useless theoretical problems. Please emphasize the class is for programmers."
"I loved the level of detail presented. The examples were also informative and well planned. I couldn't have asked for a better class in Python."
Schedule a Course
To schedule a course at your place of business, contact Dave directly
by sending an email to "dave" at "dabeaz.com". Classes are typically
scheduled 8-32 weeks in advance and can be held worldwide.
Are you looking for Python training for just yourself or a friend?
Check out Dave's Chicago courses which
are open to anyone and which offer a completely unique training experience.
Dabeaz LLC has delivered nearly 200 Python training courses over the
last six years. Click here to view past