Clojure is cool

Clojure is cool

clojure logo 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.

Django Mercurial mirror tweaks

Update: As of 2012, the primary Django repo is on GitHub. The mirror described in this post has been retired.

I really enjoyed my participation in the last Django sprint, but prior commitments prevent me from participating in the PyCon Django sprint that begins today. On the chance that people may be taking advantage of my Mercurial mirror of the Django repository, I made a couple tweaks:

  • Increased the update frequency from hourly to every 15 minutes
  • Added downloadable gzipped tarballs (about 2.5MB for trunk).

Have fun!

From PHP to Python

A former colleague from my days in print design (and a wonderfully loyal reader of my blog to boot) writes to ask whether he should learn Python. He’s a smart guy with a deep background in typography, publishing, and the Mac. He is not a programmer by trade, but has taught himself enough PHP to build a custom CMS for his newspaper. He writes:

I’ve invested so much time in PHP, and am quite proficient now (not bad for it being more of an avocation), but I respect your opinion and for a long time have wondered about switching.

Latest iPhone SDK bug reports

From a post at Rogue Amoeba:

  • Allow applications to be installed at the user’s discretion, not Apple’s
  • Allow applications to run in background on iPhone
  • Allow access to root user on iPhone
  • A MediaPicker API for accessing the iPod music files is needed
  • Add option to allow iPhone applications to access entire filesystem
  • Allow iPhone applications to access the host computer when docking
  • Permit Voice over IP on the cellular network
  • Allow iPhone applications to access the docking port

Funny, it reads more like a list of demands! I’m +1 on it all though.

Clojure talk in Northampton MA

I just wanted to post a quick note for anyone who is in my region and interested in functional programming that the Western Mass. Developers Group is hosting a presentation by Rich Hickey, creator of the Clojure language, on March 20th.

This event was put in motion by Lou Franco, who is doing a “20 days of Clojure” series on his blog in the days running up to the event. Chas Emerick has arranged the meeting space. See the event listing for more information.

Racebike building and software engineering

I just came across this list in an old “should blog about this someday” file. It’s from a 1983 interview of legendary racing motorcycle tuner Rob Muzzy, speaking to legendary motorcycle journalist Kevin Cameron. It’s about how to be smart about going fast.

I don’t do a lot of work that’s extremely performance-critical, but most of what Muzzy says rings true for me when applied to software systems. The engineering mindset looks remarkably similar across disciplines.