Regular Expressions Are Nothing to Fear

Last week at PyATL I gave an introductory talk about regular expressions. The talk was a bit less pre-written than my usual because I wanted it to be more interactive, so there is no longer blog post to go with the slides but there are some speaker notes. For some similar examples with more code, see PyMOTW: re. The slides are available on my site, via the repository on github, and at the bottom of this post.

Continue reading Regular Expressions Are Nothing to Fear

How OpenStack Makes Python Better, and Vice-Versa

I’ve been a Python developer since the late 1990s and came to the OpenStack project from that long background within the rest of the community. Thierry Carrez is on the staff of the OpenStack Foundation and the chair of the OpenStack Technical Committee. He came to Python through OpenStack’s adoption of the language.

At EuroPython 2016, we delivered a presentation titled “How OpenStack Makes Python Better, and Vice-Versa”, discussing the history of the decision to use Python, our perspectives on how the two communities benefit each other, and how we can improve the relationship. The recording of the presentation, and the slides, are below.

Continue reading How OpenStack Makes Python Better, and Vice-Versa

PyOhio 2015 Talk on Smiley and Iterative Development

Yesterday I gave a talk titled “How I Built a Power Debugger Out of the Standard Library and Things I Found On the Internet” at
PyOhio 2015. The slides and video are now online.

Smiley demonstrates how to use Python’s native tracing capabilities to monitor not just what parts of your program run, but the data flowing through the program as it runs. All of the data is recorded for study after the program exits, which means you can pass different inputs and then compare the results of the runs. In this presentation, I will describe the evolution of Smiley, from concept through internal API changes as I worked on the implementation. I will also talk about tracing Python programs in general, and explain how the trace code in Smiley can be used to send trace data to different output

Continue reading PyOhio 2015 Talk on Smiley and Iterative Development

Taking the Long View: How the Oslo Program Reduces Technical Debt

The video from the presentation I gave with Mark McLoghlin at the
OpenStack summit last week is online.

In the fast-paced world of OpenStack development, we often focus on
short-term needs like bug fixes and new features. The Oslo Program
takes a longer view of the health and sustainability of the
project. Our mission is to make OpenStack more maintainable by
addressing cross-project code reuse and architectural issues. In this
presentation we will cover the origins of Oslo and the processes and
tools the team uses to improve OpenStack from the bottom up, making it
easier to deploy, more approachable for new contributors, and
sustainable for long-term use.

Dynamic Code Patterns: Extending Your Applications with Plugins

My second presentation from PyCon 2013 is available online:

Python makes loading code dynamically easy, allowing you to
configure and extend your application by discovering and loading
extensions at runtime. This presentation will discuss the techniques
for dynamic code loading used in several well-known applications and
weigh the pros and cons of each approach.

And the video:

Hidden Treasures of the Standard Library

The slides from my PyCon 2011 presentation are on slideshare now.