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.
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.
Python has two seemingly similar sequence types, tuples and lists.
The difference between the two that people notice right away, besides literal syntax (parentheses vs. square brackets), is that tuples are immutable and lists are mutable. Unfortunately, because this distinction is strictly enforced by the Python runtime, some other more interesting differences in application tend to get overshadowed.
One common summary of these more interesting, if subtle, differences is that tuples are heterogeneous and lists are homogeneous.
At the end of this old post by John Nack at Adobe I found corroboration of my feeling that putting “RAW” (as in, raw image files from digital cameras) in all caps is silly. Some might feel this is a level of detail that only concerns copy editors and trademark lawyers, but I’m like that sometimes.
I’ve always preferred the nice, simple “raw” as the term for this sort of format.
My primary email client for my e-scribe mail is mutt. This came about in an almost accidental way.
Last summer I moved all my websites and mail to a new server. As I was setting it up I realized that I had an opportunity to decide that no passwords for this box would ever be sent in the clear. No telnet and no FTP, that was easy. But given the hassle of setting up encrypted mail authentication, I had in the past let that one slide.
As I hinted in my report several days ago about this server suffering a DOS attack, I’ve taken some measures to prevent a repeat occurrence. One of them was to install the mod_evasive Apache module, which was suggested by a number of people.
(There’s also mod_security. It’s way more complex than I need right now, but would be worth looking at for a busier server.)
Initially I was skeptical, since mod_evasive doesn’t seem to be a very actively maintained project.
Thanks to the helpful folks on the #svn IRC channel I learned that it is possible to turn a directory into a svn checkout in-place, i.e. without having to replace the directory itself with a fresh checkout after you svn import. This is very handy for things like /etc files and other stuff that you’d rather not be shuffling around unnecessarily.
The key nugget of info is here in the svn FAQ.