Archive for the 'Tips' Category

Messages to Nowhere

January 3, 2008

This article has been updated, and moved here

What Quality Means

December 18, 2007

I was blown away when I read the first part of this talk given by Joel Spolsky at Yale, because it so totally nails problems I’ve seen at Microsoft and problems at my alma mater.
I was also reminded of Will Shipley’s excellent article on the limitations of unit-testing.

Crash Logs

December 7, 2007

Daniel Jalkut on how to get the most out of crash logs. It’s good advice.
Actually I do have one big issue with the article:
If there’s one behavior of your application that you should focus on eliminating, it’s the behavior of crashing. Above all other “nuisances,” this is the one that is absolutely unacceptable.
But preserving someone’s [...]

Useful MacOSX Terminal Commands

November 16, 2007

This post has moved here.

Assert Outlet Connections

October 16, 2007

This simple NSCAssert has saved me a lot of bother. In any class that has an IBOutlet connected to something, Put
NSCAssert(outlet1 && outlet2 && … && outletn, @”An outlet got disconnected!”);
in the awakeFromNib method. Then if you ever accidentally disconnect an outlet, you’ll find out about it quickly.
I think this is a worthwhile [...]

Better AppleScript Through Expressions

October 13, 2007

When writing a short AppleScript to complete a specific task, do not write a procedure that checks if A exists, then operates on it if it does. Instead, write an expression that operates on A, and ignore any exceptions caused by A not existing. Surrounding the statement in a try-block will ignore any [...]

Unnecessary Quotation Marks

October 11, 2007

I used to do “this” when writing. Don’t make the same mistake. Good copy is vitally important, because text is still best way to explain an abstract concept to someone.
I believe language and grammar should be descriptive. I wish grammar and language were more usable. I think its/it’s, to/too, etc. are [...]

Selecting Text

September 26, 2007

Here’s a helpful MacOSX feature that I finally stumbled upon. If you hold option down while selecting text, you can select an arbitrary rectangle, instead of some number of rows. A picture is worth a lot of words:

This is great for removing extraneous information from console logs (pictured), or copying just what you [...]

Changing a favicon.ico

September 23, 2007

Changing the favicon.ico for the IMLocation website was more trouble then I expected. Here’s how I finally got it working.
The first problem is making the file. GraphicConverter was doing an unacceptably poor job scaling my 128×128 icon down to 16×16. (PhotoShop can probably generate a favicon.ico like this, with little trouble, but [...]

foreach Macro

September 20, 2007

EDITED TO ADD (post Leopard): Objective-C 2.0 introduces Fast Enumeration which is a much better way of handling enumeration then this macro.
I first saw the foreach macro used in some sample code from Michael Tsai’s blog, and I instantly fell in love with the ‘keyword’. It greatly simplifies iterating over items in a Cocoa [...]