Blog

  • 20% off all books + courses during PyCon

    Hi!  I’m in Cleveland, Ohio, for PyCon 2018.  I’ve already heard back from others who are here for the conference, and will be coordinating with all of you privately to meet up in person.  I’m excited to meet (and learn from) lots of other Python developers from around the world! To celebrate the conference, I’m…

    Read more

  • PyCon!

    I’ll be attending PyCon 2018 in Cleveland, Ohio later this week — from Friday morning through the first day of sprints on Monday. I’m hoping to meet lots of people from the worldwide Python community — as well as readers of Linux Journal, listeners to the “Freelancers Show” podcast, people who have attended my training…

    Read more

  • Master Python objects (and understand how they work)

    I’ve been teaching Python for many years now, and it never ceases to amaze me to discover just how many people are able to use Python without ever having really learned it. In particular, there are lots of people writing and using Python objects who assume that classes and instances in Python work just like…

    Read more

  • Freelancers Show #300 — live!

    As you may know, I’ve been a panelist on the Freelancers Show podcast for a few years.  It’s one of the high points of my week to chat with my co-panelists, discuss various aspects of freelancing/consulting, and to interview interesting people who can help us improve our freelancing careers. I’ve been consulting since 1995, but…

    Read more

  • Announcing my new Python course, “Comprehending Comprehensions”

    What’s the hardest part of Python to understand? For nearly 20 years, I’ve been teaching Python to engineers at companies around the world. And if I had to say what most confuses my students, it’s list comprehensions. And yes, if you’re wondering, set and dict comprehensions are equally confusing. Comprehensions are both powerful and compact.…

    Read more

  • My new course, “Understanding and Mastering Git,” is now available

    Ah, Git.  It’s one of the best and most important tools I use as a software developer.   Git is everything I want in a version-control system: It’s fast. It lets me collaborate. I can work without an Internet connection.  I can branch and merge easily, using a variety of techniques.  I can take a personal…

    Read more

  • Four ways to assign variables in Python

    Within minutes of starting to learn Python, everyone learns how to define a variable. You can say: x = 100 and voila!  Your You have created a variable “x”, and assigned the integer value 100 to it.  It couldn’t be simpler than that. But guess what?  This isn’t the only way to define variables, let…

    Read more

  • Using Python to delete files based on other files’ names

    I recently asked subscribers to my free, weekly “better developers” newsletter to send me their Python programming questions, promising that (a) I’d try to solve them, and publish the result to YouTube, and (b) anyone who submitted a problem that I selected would then get a coupon for 30% off of any of my books…

    Read more

  • Less content + more exercises = better learning + more satisfaction. That’s Weekly Python Exercise.

    I’ve been training people in programming, including in Python, for 20 years. I’ve always enjoyed teaching; it’s an amazing feeling to know that you’re helping people to accomplish things that they couldn’t do before. The fact that I get to travel the world, meeting so many smart and interesting people, and helping them to use…

    Read more

  • Registration closes soon for Weekly Python Exercise

    “Weekly Python Exercise” starts on January 2nd, and is designed to help intermediate Python developers level up their coding skills.  But registration ends on December 20th!  What does the course include, how does it work, and what do you get for $180?  I explain it all in this video… More than 20 years of programming…

    Read more