[ TEACHING ]
Through my company Dabeaz, LLC, I offer the following programming courses on an ongoing basis
in Chicago. They can also
be taught on-site or as virtual courses worldwide.
- Practical Python
Programming. A 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 developers
who are coming into Python from another programming language.
- Advanced Python Mastery.
An intense class that covers the more advanced aspects of the Python
programming language. This course is primarily designed for
programmers making the jump from simple scripts to working with large
applications, frameworks, or libraries. Course material is strongly
focused on different aspects of program design, performance, and control
of the Python environment. Attendees will walk away for a significantly greater
awareness of what's possible in Python.
- Python Programming Language [VIDEO].
Can't attend an in-person class? This is an intense 6+ hour video series that
takes you on a tour of the Python programming language with a series
of practical coding examples. Aimed at programmers with some
experience, the video covers a mix of topics from both my Practical
Python and Advanced Python Mastery courses. It consists entirely of live-coded
examples of Python in action. You won't be bored.
About The Courses
These courses have been developed by David Beazley, a 21-year
Python programming and education veteran. Dave is the author of "Python
Essential Reference, 4th Ed." (Addison-Wesley) and the "Python
Cookbook, 3rd Ed." (O'Reilly Media). Dave has a Ph.D. in computer
science and previously spent seven years teaching operating systems,
networks, and compilers as a tenure-track professor 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
- Minimal jargon and buzzwords.
Concepts are clearly explained using plain language and examples that are
designed to be understood by people who have 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 or marketing. Classes are solely focused
on using Python effectively. They do not advocate any
particular method of programming, software development, or usage of tools.
There is more than one way to do it as well as tradeoffs. I am
an independent voice in the Python community and not affiliated
with any company that intends to sell tools, services, or support.
- 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. Classes are organized around short lecture
segments (10-20 minutes) followed by coding exercises (20-30 minutes).
Here are a few recent conference presentations.
Want to see more? Check out my talks and presentations page.
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.
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.