the further adventures of

Mike Pirnat

a leaf on the wind

Text Me Maybe: Smarter Real-World Integrations with Python
Showing how to combine affordable tools like IFTTT, AWS Lambda and API Gateway, Twilio, and just the right amount of Python to make some "smart" devices smarter.
Presented at PyOhio 2016.
Using Python to Get Out the Vote
How I used Python to support the get-out-the-vote campaign for a local school levy, including data modeling and munging with SQLAlchemy and reading and writing CSV files.
Presented at PyOhio 2015, CodeMash 2016
Shiny, Let's Be Bad Guys: Exploiting and Mitigating the Top 10 Web App Vulnerabilities
A hands-on-walkthrough of exploiting and mitigating the OWASP Top 10 web app vulnerabilities, with strategies to secure web applications in general and Django and Flask in particular.
Presented at PyCon 2013-2016, PyOhio 2013, OSCON 2016, and CodeMash 2017
Web Development with Python and Django
A possibly overly-ambitious introduction to web development with Django. In the v1 version we create a hypothetical tech conference website with user login and presentation submission from the "outside in" (starting with simple pages and working our way toward interacting with the database). In the v2 version we create the core of a D&D-inspired fantasy roleplaying game from the "inside out" (starting with the model and working our way toward the presentation layer).
v1 presented at CodeMash 2013 and 2014; v2 presented at CodeMash 2015.
A Few of My Favorite (Python) Things
A whirlwind tour of ways in which Python makes me happy.
Presented at CodeMash 2012.
A Few of My Favorite (Python) Things from Michael Pirnat
Win at Parenting with Python
The deck I used to formally announce the launch of How Old Is My Kid.
Presented during the PyCon 2011 lightning talks.
Win at Parenting with Python from Michael Pirnat
Exhibition of Atrocity
A confessional tour of my sins against Python and advice on how to avoid various antipatterns.
Presented at PyCon 2011.
Exhibition of Atrocity from Michael Pirnat
Dateutil to the Rescue!
An overview of the capabilities of dateutil, a powerful set of extensions for Python's datetime library.
Presented at PyCon 2007.
The Joy of Logging
How to use Python's logging module for doing all kinds of crazy ninja logging magic (or just simple things too).
Presented at ClePy in September 2006.
Python can Survive in the Enterprise
Dispelling the then-popular myth that "Python doesn't scale" with some discussion of how American Greetings uses Python to deliver the performance necessary to survive in a high-volume, high-trafic web application environment.
Presented at PyCon 2006.
Fun with RSS
A quick look at parsing and generating RSS with Python; introduces feedparser and PyRSS2Gen, and illustrates how to combine them to generate filtered subfeeds.
Presented at ClePy in December 2005.
Introduction to TurboGears
An introduction to the TurboGears web framework and its components.
Presented to ClePy in November 2005.