I'm Paul Bissex. I build web applications using open source software, especially Django. In the '90s I did graphic design for newspapers and magazines. Then I wrote technology commentary and reviews for Wired, Salon.com, Chicago Tribune, and lots of little places you've never heard of. Then I taught photographers how to create good websites. I co-wrote a book along the way. Now I am helping turn a giant media corporation into a digital enterprise. Feel free to email me.
I'm co-author of "Python Web Development with Django", an excellent guide to my favorite web framework. Published by Addison-Wesley, it is available from Amazon and your favorite technical bookstore as well.
Built using Django, served by Apache and mod_wsgi. The database is SQLite. The operating system is FreeBSD, on a VPS hosted at Johncompanies.com. Comment-spam protection by Akismet. Vintage topo imagery from the Maptech archive. The markup engine is Markdown.
Akismet, bitbucket, del.icio.us, Django, Emacs, FreeBSD, Git, jQuery, LaunchBar, Markdown, Mercurial, OS X, Postfix, Python, Review Board, S3, SQLite, TextMate, Ubuntu Linux
At least 184779 pieces of comment spam killed since January 2008, mostly via Akismet.
Tonight we had a special edition of the Western Mass. Developers' Group as Rich Hickey made the long trek north to talk to us about Clojure, his functional Lisp dialect that runs on the JVM.
I enjoyed Rich's presentation a lot. He's clearly a very smart guy with very focused goals for the language. He breezed through the basic Clojure intro stuff to get to slides and a demo app focused specifically on concurrency issues. He walked us through almost every piece of the example app, a simple graphical simulation a couple hundred lines long. Remarkably, given that I have almost no non-toy experience with Lisp or Java, I found it mostly understandable.
He's definitely on a tear against gratuitous mutability in software. Those are my words, not his; what he said was: "Mutability is the new spaghetti code." (If this seems perplexing, reading up on functional programming may help. I know I had no idea why people were railing against mutability and state before I started playing with Haskell.)
Some miscellaneous things that I found interesting or cool:
boot.clj source file.Rich is an effective language advocate not just because he's smart and articulate, but because he's clearly done his research and understands the relevant alternatives and tradeoffs in a deep way. When asked about Erlang, he took pains to point out the things that Erlang does well, and the differences between Clojure and Erlang that are the result of different conscious tradeoffs. Engineering is about tradeoffs.
Thanks to Lou and Chas for organizing and hosting this, and of course to Rich for making the drive and the time to evangelize Clojure to a small group of programmers in the (relative) sticks.
Thanks for reading! Please note: Your comment will not appear until approved, which may take a few hours or more. Spammers will be torpedoed.
Booktools
2 comments
A different kind of URL shortener
4 comments
The syncbox
2 comments
Branching and merging in real life
8 comments
Marko Knöbl
Understanding tuples vs. lists in Python
3 days ago
Marko Knöbl
Understanding tuples vs. lists in Python
4 days ago
Matt Stevens
Understanding tuples vs. lists in Python
72 days ago
Chirag
Understanding tuples vs. lists in Python
81 days ago
B.J. Justice
Trying to send eBay a message?
107 days ago
Copyright 2013
by Paul Bissex
and E-Scribe New Media