Code faster and better. In Python.

Improve your value as a software developer in Reuven's small, three-day, live, online class.

Note: No open dates for Master Python are currently scheduled. If you, or your company, would like to schedule a private version of this course, please contact Reuven.

Enter Python.

Python is the darling of software developers around the world because it puts people first. Python stresses clarity, elegance, and maintainability, while simultaneously helping developers to work quickly and efficiently.

Python's success stories are numerous, and companies use it for everything from software development to automated testing to system administration. Python has become the standard among scientific researchers, offering packages that rival Matlab in scope and power. Python makes it easy to work with both SQL and NoSQL databases. And of course, numerous Web applications have been built in Python, using such easy-to-use frameworks as Django.

Learn Python.

If you're an experienced developer who wants to benefit from this combination of elegance and efficiency, then you're a good candidate for Reuven Lerner's three-day online, live Python course.

Reuven has spent more than 10 years as a Python instructor (in the United States, Europe, Israel, and China). He has been a Web developer and consultant since 1993, is the senior columnist at Linux Journal (since 1996), and a panelist on the Freelancers Show podcast.

Reuven's course is a must for anyone who wants to shorten their development time. — Yahel Ron, Red Bend

Reuven has taught this three-day, live course to experienced programmers at such companies as:

The online class is 100 percent live, combining lectures (including ample time for Q&A), hands-on exercises, and live-coding demos. Reuven answers questions, reviews exercises, and does extensive live coding in Python. Ask questions relevant to your work, and get answers from an expert.

You'll emerge from this class like hundreds of previous students — armed with the knowledge and understanding necessary to make Python an everyday part of your work, whether you're an independent developer or a salaried employee.

Reuven is a professional, serious, and attentive lecturer. The course was thorough and clear. I definitely want to take more courses with him. — Lahad Luder, Security developer

Think in Python. Learn by doing.

The course concentrates on how to think like a Python programmer: What data structures should you use? When should you use the standard library? When should you use object-oriented or functional programming techniques?

You'll learn about and practice working with built-in and custom data structures, functions, modules, and Python's object-oriented facilities.

You will learn Python by working on numerous exercises. Reuven reviews, discusses, and solves each exercise — live, giving you a chance to ask questions.

The course takes three full days, with no more than 10 participants. Each 8-hour day includes at least two 15-minute breaks, and one hour-long food break.

After taking this class, you will be more valuable to your company or clients, by knowing how to solve problems quickly using Python.

The course gave me the kick start I needed for working with Python and exploring it on my own. — Dori Levi, Comverse

Are you right for this course?

This class isn't for everyone. The pace is rapid, the level is high, and the expectation is that you'll ask lots of questions. It's not for beginning programmers, or for people who want quiet, low-key lectures.

If this sounds good to you, contact Reuven! We'll talk on Skype or the phone, and see if it's a good fit.

Not sure if you're right for this course? Register for Reuven's free, five-day e-mail course on Python variable scoping. If you like the depth and style of the e-mail course, then you'll love (and benefit from) the three-day live course.

Price for (1) three full days of live lectures and discussion, (2) PDFs of the course slides, (3) video recordings of the course, and (4) copies of all exercise solutions and live-coding examples: $1,000 (i.e., about $40/hour).

I'm so confident in the benefits of this course I offer a 100% money-back guarantee. Just tell me that you didn't gain value, and I'll refund your money. — Reuven Lerner

Again, contact Reuvento find out if this class is good for your or for your organization.

Python course syllabus

This is the syllabus for Reuven Lerner's three-day online Python course.

The course uses Python 2.7, with many pointers and suggestions about Python 3.x. After this course, you should be ready to use either Python 2.7 or 3.x.

Participants should have experience with at least one programming language. Previous students have mainly come from C, Java and C#, with some from Ruby, JavaScript, Perl, and Tcl.

Data structures

  • Interactive Python
  • Variables — dynamic and strict typing
  • Blocks and indentation
  • Writing and executing programs in files
  • Conditionals
  • Basic types: None, boolean, numeric, string , list , tuple, dictionary , set
  • Loops
  • Sequences
  • Reading from and writing to files
  • Creating and working with complex data structures

Functions and modules

  • What is a function? Functions as objects
  • Writing functions
  • Return values, returning sequences
  • Function parameters
  • Variable function parameters with *args and **kwargs
  • Variable scopes in Python: LEGB
  • Functional programming introduction
  • List, set, and dictionary comprehensions
  • Customizing functions by passing function arguments
  • lambda and its functional friends
  • Modules and packages
  • Debugging tools and techniques

Object-oriented Python

  • Classes and instances
  • Constructors and destructors
  • Instance attributes
  • Getters and setters
  • Class attributes
  • Attribute scoping rules
  • Inheritance
  • Best practices when creating Python objects
  • Exceptions
  • Iterators
  • Generators
  • Working with external files and formats (CSV, Pickle, Shelve, JSON)