“Refactoring” brings out my inner skeptic. I’ve heard too many Agile enthusiasts who sound like they code at Hogwarts, waving their wands while yelling refactorum! at badly written but functional code so it magically realigns itself into a form that adheres to good programming standards.

People Who Know Such Things tell me I’m not being entirely fair, as if being entirely fair is something People Who Publish Blogs are supposed to aspire to. At times, they say, getting code to do what it’s supposed to do first, and then rewriting it into a better form can make more sense than trying to write it both right and well at the same time.

Apple and internal IT have a lot in common.

Not really. But they could.

Take the App Store, and Apple’s well-known policy that before you control what you install on your iPad, Apple first controls what you can’t.

When Apple prevents you from doing what you want with a gadget you bought from it, it gives ownership a bad name.

As a metaphor for how IT might support end-user computing, on the other hand, the App Store provides excellent guidance,