7 0
7 0
7 0
7 0
7 0
7 0
- - - E P C T O
E:Python Essential Reference, 4th Edition
P:PLY-3.3 (Python Lex-Yacc)
C:Chicago-area Python Classes
T:Talks & Tutorials


Dabeaz LLC conducts Python training courses for both on-site delivery and at Dave's Chicago office.

On-site Courses

The following hands-on courses are currently available for on-site delivery at your business.

  • 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 3-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 code.

Courses are best suited for small groups of 8-12 programmers and can be customized according to your needs.

About The Courses

These courses have been developed by David Beazley, a 14-year Python programming veteran, elected member of the Python Software Foundation, frequent PyCON presenter, and author of the well-respected "Python Essential Reference." Dave is also a former assistant professor of computer science, having 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 class. Ultimately, the goal is to bring the same attention to detail found in the "Essential Reference" to a training course.
  • Hands-on. In these classes, more than half of the time is spent writing programs. You're going to get your hands dirty writing useful programs.
  • 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. These classes are original works, not a reformulation or repackaging of any existing Python tutorial or material. Moreover, they are not based on simply repeating information from the reference manual. Instead, courses are strongly focused on core concepts and building an understanding of why you use various Python features.

  • 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 in North America, Europe, and India.

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.

Past Courses

Dabeaz LLC has delivered more than 75 Python training courses over the last four years. Click here to view past training schedules.