Posts tagged: PROGRAMMING

TextMate update

A new “bleeding edge” version of TextMate appeared this evening, featuring extensive improvements to the bundle infrastructure. (If you’re not sure what this means, read my earlier post on how bundles are the heart of TextMate’s stupendousness.) Allan Oddgaard has put a lot of thought into the balance between distributed bundles and user customizations, and has developed some really elegant solutions that allow you to benefit from improvements in the bundles (some of which move at a rapid clip thanks to motivated community developers) while retaining your specific customizations.

Enforcing Style

Browsing some programming blogs this evening I came across Ken Arnold’s provocative “Style is Substance” post from October 2004. In it, he argues that coding style variants should be eliminated by including style in the language definition:

…the only way to get from where we are to a place where we stop worrying about style is to enforce it as part of the language.

This isn’t that shocking to Python programmers (perhaps that’s why he mentions Python twice in his list of “mature” languages?). Python enforces whitespace style. To me this is one of the great joys of working with Python – my code from two years ago, or somebody else’s code in an open-source project I’m looking at, uses exactly the same indentation “conventions” that I do – because they’re not conventions, they’re requirements.

Dabble DB

I can’t remember the last time a software demo made me involuntarily say “holy crap” so many times. In a good way, I mean.

Dabble DB, in case you haven’t heard of it, is a browser-based database exploration/development tool. The interface alone is inspiringly clear, elegant, and rich. And then there’s what it actually does with the data. We’ve all done these things, but we’ve had to do them in much slower, more laborious ways.

The twenty-minute trouble ticket system

People are always going on about how it “only” takes twenty minutes or whatever to knock together some little application. Screencasts don’t count, unless they are screencasts of somebody who hasn’t done any preparation. But damn, I just built a trouble-ticket system in Django in twenty minutes. Really. Of course, I already had a running install, this is just something I added. But it was instantly useful. I assigned four tickets to myself and now I can go have dinner.

Required reading: Steve Yegge

If you frequent any online programmer haunts you may have already been exposed to the writings of Steve Yegge, a former Amazon.com software developer and a technical ranter par excellence. Yegge has re-published his rants, most of which were originally written for an internal audience of developers at Amazon, to the web at large. He urges people not to take them too seriously, but there’s a lot of truth in them. Oh, and they’re wickedly funny.