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.

Elsewhere

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 236528 pieces of comment spam killed since 2008, mostly via Akismet.

"Reverse" game update -- my language safari

My "Let's play a game" post, featuring a simple number game implemented in three different scripting languages, has received many comments and updates in the few weeks it's been up. There are now twelve implementations, seven written by me (wide variations in quality!) and five contributed by readers. The languages represented, as of today: Haskell, Io, JavaScript, Lisp, Logo, Lua, PHP, Prolog, Python, REBOL, Ruby, and Scheme.

I've learned a hell of a lot, and gotten some good ideas about which languages might be rewarding to dive into further. My favorite new discovery so far is Io. It's clean, simple, consistent, and yet very pragmatic at the same time (e.g. lots of useful bindings, embeddable, etc.). The messaging syntax feels very natural, and the lack of brackets (cf. Objective-C) gives more than just visual relief: you don't have to backtrack to the beginning of the expression to insert a bracket when you decide you need to chain one more message on the end.

As time permits I hope to also check out a few more languages (Slate or OCaml or, hell, even C#) and then pick one of the new-to-me languages for further study throughout the year (following the advice of the Pragmatic Programmers).

My criteria, broadly, are that the language should be: 1) fun 2) significantly different from Python (my primary work language these days) and 3) applicable to my own work in some way (so that I'm more likely to use and really learn it).

This survey has also been a chance for me to size up Python against a number of other options. For the most part it has reaffirmed my choice to center my coding work around Python for the foreseeable future. If I didn't already know Python it would likely be at the top of the list.

Friday, February 24th, 2006
+ +

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