E-Scribe : a programmer’s blog

About Me

PBX I'm Paul Bissex. I build web applications using open source software, especially Django. Started my career doing graphic design for newspapers and magazines in the '90s. Then wrote tech commentary and reviews for Wired, Salon, Chicago Tribune, and others you never heard of. Then I built operations software at a photography school. Then I helped big media serve 40 million pages a day. Then I worked on a translation services API doing millions of dollars of business. Now I'm building the core platform of a global startup accelerator. Feel free to email me.

Book

I co-wrote "Python Web Development with Django". It was the first book to cover the long-awaited Django 1.0. Published by Addison-Wesley and still in print!

Colophon

Built using Django, served with gunicorn and nginx. The database is SQLite. Hosted on a FreeBSD VPS at Johncompanies.com. Comment-spam protection by Akismet.

Pile o'Tags

Stuff I Use

bitbucket, Django, Emacs, FreeBSD, Git, jQuery, LaunchBar, Markdown, Mercurial, OS X, Python, Review Board, S3, SQLite, Sublime Text, Ubuntu Linux

Spam Report

At least 236325 pieces of comment spam killed since 2008, mostly via Akismet.

Does Python scale?

(This is another thing I found myself writing on Quora and wanted to keep. The question was "Does Python have any scalability limitations?")

"Scalability" is a term people like to throw around, but the less specific you are as to what you mean by it, the less substantial the answers will be. It is not a simple linear measure on which languages can be given some numerical score.

Languages and their implementations do have certain inherent performance characteristics, but in order to understand their relevance to your needs you have to get specific about your needs.

You will always be able to find stories where people used technology X and found it "didn't scale". Sometimes this is because they didn't know, or chose not to pursue, certain performance optimizations. Sometimes this is because technology X was a poor fit for their problem.

(If you're into programming language esoterica, the technical feature of Python that gets the most attention in performance discussions is the Global Interpreter Lock.)

If it suits your project, use it. There's not some hidden performance ceiling that's going to suddenly appear and crush you. The Python system I work on serves 20+ million pages per day.

Friday, July 31st, 2015
+ +

Comments are closed for this post. But I welcome questions/comments via email or Twitter.