Core Python

When I describe my programming background these days, I say that I code “primarily in Python, JavaScript, Clojure, C… and Zig!” I put Python first in that list for good reason. This is a post about the core Python language, but also the ways in which Python is evolving its single-core and multi-core CPU performance. … Continue reading Core Python

How Python programmers can uncontroversially approach build, dependency, and packaging tooling (+ a note on Zig)

A few years back, I published The Elements of Python Style, a popular Python code style guide. Since publishing it, friends of mine in the Python community have wondered if I might consider adding a section about package installation, dependency management, and other similar “standard tooling” recommendations. This is a reasonable request, since Python lacks … Continue reading How Python programmers can uncontroversially approach build, dependency, and packaging tooling (+ a note on Zig)

Python 3 is here and the sky is not falling

James Bennett, a long-time Python developer, blogger, and contributor to Django, recently wrote a nice post about the “end” of Python 2.x, entitled “Variations on the Death of Python 2.” It’s a great read for anyone who, like me, has been in the Python community a long time. I’ve been a Python user since the … Continue reading Python 3 is here and the sky is not falling

Idiomatic Python Resources

Let’s say you’ve just joined my team and want to become an idiomatic Python programmer. Where do you begin? Well, you can move up the learning curve quickly using resources from this blog: Pythonic means idiomatic and tasteful import this: learning the Zen of Python The 3 Best Python Books for Your Team I also … Continue reading Idiomatic Python Resources

The 3 Best Python Books for Your Team

Python was the core programming language used at Parse.ly. It is a widely-used language with huge adoption among open source projects. It’s no wonder it’s one of the leading languages for software teams. I’ve written a couple of blog posts with original material for learning Python, including “import this: learning the Zen of Python with … Continue reading The 3 Best Python Books for Your Team

Web interest in Apache Storm, Kafka, Spark in the Python community

Apache Storm, Kafka, and Spark are gaining a lot of momentum in the data analysis and processing communities. I was curious whether the interest in using these technologies with Python, in particular, is growing. Based on these Google Trends reports, it seems like it is.

Clojonic: Pythonic Clojure

In June 2012, I promised myself that I’d learn Clojure “as a mind expander”. As a long-time Python programmer who has been using Python full-time in my work at Parse.ly, I wanted to explore. I wrote then: I don’t know whether Clojure programs will be better or worse than equivalent Python programs. But I know … Continue reading Clojonic: Pythonic Clojure

Python annotations and type-checking

In 2010, the Python core team wrote PEP 3107, which introduced function annotations for Python 3.x. Nearly 4 years ago, I wrote this response to the PEP, but I published it to a discussion site that ended up becoming defunct (Clusterify). I saw that recently, interest in function annotations for type-checking was revived by GvR, … Continue reading Python annotations and type-checking

streamparse: Python + Apache Storm for real-time stream processing

Parse.ly released streamparse today, which lets you run Python code against real-time streams of data by integrating with Apache Storm. We released it for our talk, “Real-time streams & logs with Apache Kafka and Storm” at PyData Silicon Valley 2014. An initial release (0.0.5) was made. It includes a command-line tool, sparse, with the ability … Continue reading streamparse: Python + Apache Storm for real-time stream processing

Functional dynamic dispatch with Python’s new singledispatch decorator in functools

I just read about Python 3.4’s release notes. I found a nice little gem. I didn’t know what “Single Dispatch Functions” were all about. Sounded very abstract. But it’s actually pretty cool, and covered in PEP 443. What’s going on here is that Python has added support for another kind of polymorphism known as “single … Continue reading Functional dynamic dispatch with Python’s new singledispatch decorator in functools