Posts tagged: TIPS

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.

Understanding tuples vs. lists in Python

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.

It's not "RAW", it's just "raw"

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.

Attachment-viewing script for mutt

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.

Protecting the server with mod_evasive

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.

In-place import using Subversion

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.

Managing a Django project using darcs

Preamble This article is two things: A description of one way to use version control with a Django project An introduction to using the darcs distributed version control system in particular First, though, a mini-sermon which someday will be a post in the You Really Should series: You really should use version control. Most of you probably do. But if you’re among those not using version control to manage your software projects, start now!