Skip to main content

Interview with tutorial presenter Dave Beazley

Dave Beazley is no stranger to PyCon. He’s been attending them since the beginning, including a few last-minute road trips, the ones close to home in Chicago, and all the ones in between. Throughout the years he’s given several mind blowing talks, followed up some of those talks with equally mind blowing open spaces. He has presented before the entire audience on the plenary stage, and has brought his educational skills on the road for numerous tutorial sessions.

For PyCon 2013 he’s running two great tutorials: Wednesday afternoon’s “Learn Python Through Public Data Hacking”, and Thursday afternoon’s “Python 3 Metaprogramming.” The first aims to introduce Python to complete beginners, and the second aims to fill the advanced user’s tool belt with some of the shiny new features of Python 3. He’s also sponsoring this year’s conference, a first for Dabeaz, LLC.

For the Beginner

When it comes to the Learn Python tutorial, the emphasis really is on the first two words: Learn Python. “It's a tutorial for complete beginners, but with a completely different focus than what you normally see,” he states. “For example, instead of having students write a one-line ‘hello world’ program, I'll start out by having them write a six-line program that tells them when the next city bus will drive by my office,” speaking of his Clark Street office on the north side of Chicago.

The approach gets away from the standard examples like fibonacci, instead showing off Python’s power right out of the gate. The students then learn that they can leverage other civic datasets on crime and buildings to create interesting mashups.

One of Dave’s more interesting mashups involved a correlation between the City of Chicago’s rat and rodent baiting database and available FourSquare checkins on Twitter. “Both sets of data included geographic coordinates so the program would watch Twitter for people checking into places, pull the coordinates, and check the rodent database to see if any nearby rats had been recently reported,” he explains. “If so, a special Twitter ‘rat’ account would reply with a simple ‘squeak’ message and nothing else. Silly stuff to be sure.”

“The thing I like about these kinds of examples is that they are real-world, yet something that everyone can relate to in their day-to-day life,” says Beazley. Hopefully none of you got the “squeak” reply on Twitter, though.

On top of learning the Python language, attendees will get their hands on the Pandas library as well as IPython’s notebook feature. “In my opinion, IPython notebook and Pandas might be the two most exciting Python projects going right now,” he enthusiastically stated.

Building Tomorrow’s Experts

Dave’s second tutorial, “Python 3 Metaprogramming,” digs much deeper for an advanced look into Python’s powerful metaclass, descriptor, and decorator features. He also covers a few very new features, including the function signature objects of PEP 362, which were implemented in the 3.3 release of CPython, which took place in September 2012.

I asked him what he thought about Python 3 in general and he had plenty to say.

He began by stating, “the best advance of Python 3 is the fact that it has taken a huge collection of ‘hacks’ that people were already doing with Python 2 and organized them into a coherent system of features.”

When it comes to looking into Python 3, one of the common issues is one of backwards incompatibility. For example, the
print statement is now a function in Python 3, which will cause a SyntaxError at runtime when given the Python 2 style usage. “I know a lot of programmers are fixated on the whole backwards-incompatible aspect of Python 3, but that is really missing the big picture”, he opines.

Dave’s view is that if you approach Python 3 with an open mind and you take what it gives you, you’ll walk away with knowledge of a better language than you came in with. “After you use it for a while, you just won't want to go back to Python 2,” he says of the new version. “You can do some pretty amazing things without having to resort to crazy hacks,” referring to a myriad of dances involved in some deeper aspects of Python 2 code.

If you’re looking to take your Python knowledge to the next level, the metaprogramming tutorial is a good way to get there. Given that Python 3 is the future, with all feature development now focused on the 3.x line, the tutorial provides a great opportunity to expand your knowledge and get with the times as Python 3 continues to grow.

Cooking with Python 3

On pace for a May release, Dave and co-author Brian Jones (who collaborated with Dave on a tutorial in 2011) are looking forward to the third edition of the Python Cookbook. The book has been entirely rewritten for Python 3 and adds a lot more material, including some of Dave’s favorite in areas of concurrency and classes. He's also including a lot of great material on metaprogramming, some of which you're likely to see in his tutorial. There’s also an extensive chapter on C extensions.

“I’ve learned more working on the Cookbook than any past writing project,” he says of the experience. “I think people will like it.”


If you can’t make any of the tutorials, Dave runs training courses out of his Chicago office as well as on-site. He’s run the gamut of Python’s feature set not just through his coursework but also in his work writing the Python Essential Reference as well as the Cookbook.

He’s running both introductory and advanced courses in February and May, respectively. While February’s “Practical Python Programming” is already sold out, the “Advanced Python Mastery” and “Write a Compiler” courses are open and accepting students.

The organizers thank Dave for sponsoring PyCon 2013, and we’re looking forward to the great tutorials he’s sharing with the community. Don’t forget to register for the conference before it sells out. Reserve a seat in any of our great tutorial selection while you’re at it!

Comments

Popular posts from this blog

PyCon 2018 Registration is Now Open!

We’re thrilled to announce the opening of registration for PyCon 2018 in Cleveland, Ohio! The prior six PyCons have sold out, so prepare for another one and get your tickets early. The first 800 tickets sold are priced at an early bird discount, saving over 20% on corporate tickets and over 12% on individual tickets. Students save $25 if they purchase early!

To get started, create an account and head to https://us.pycon.org/2018/registration/ to get your tickets!

You get a package that is hard to beat when you register for PyCon. The conference itself is three days worth of our community’s 95 best talks, amazing keynote speakers each morning, and our famed lightning talks to close out each day, but it’s much more than that. It’s having over 3,000 people in one place to learn from and share with. It’s joining a conversation in the hallway with the creators of open source projects. It’s taking yourself from beginner to intermediate, or intermediate to advanced. For some, it’s getting st…

PyCon Opens Financial Aid Applications

Even though PyCon prides itself on being an affordable conference, registration is one of several expenses an attendee must incur, and it’s likely the smallest one. Flying, whether halfway around the world or from a few hundred miles away, is more expensive. Staying in a hotel for a few days is also more expensive. All together, the cost of attending a conference can become prohibitively expensive. That’s where our Financial Aid program comes in. We’re opening applications for Financial Aid today, and we’ll be accepting them through February 15, 2018.
Once you have an account on the site, you can apply here or through your dashboard.
We offer need-based grants to enable people from across our community to attend PyCon. The criteria for evaluating requests takes into account several things, such as whether the applicant is a student, unemployed, or underemployed; their geographic location; and their involvement in both the conference and the greater Python community. Those presenting at …

Introducing the PyCon Hatchery Program

PyCon is known around the world as the Python community’s premier event, attracting people from 39 countries. Outside of the main track of talks, PyCon is home to a growing number of additional events such as Young Coders, the Education Summit, Language Summit, Poster Session, among others. The conference strives to be globally representative by promoting diversity and inclusion through these additional events and outreach programs.
Our community works to meet these goals year on year. In the past, we have received requests to add events to PyCon but have not had the resources to make them work. Although we are still limited on staff resources, we are proposing a stepping point that may lead us in the right direction. What is the end goal?We want to support our community and enable them to add events to PyCon that are important to our community. The long-term goals of this program are to support and grow sustainable events that will become a recurring part of PyCon itself or find a home…