This morning I discovered something exceedingly rare: a bit of writing about software that made me laugh out loud. On purpose.
I've spent a significant portion of the last decade reading and editing what other people have written about software. While the people doing the writing are wonderful and smart and know their technical stuff up, down, and inside-out, their writing can sometimes be... informative. And by "informative" I mean dry enough to drain a swamp.
To be fair, writing about software is rightfully judged on the level and quality of the technical information and expertise it provides. But still, is a little personality too much to ask?
The software development world desperately needs better writing. If I have to read another 2000 page book about some class library written by 16 separate people in broken ESL, I’m going to flip out. If I see another hardback book about object oriented models written with dense faux-academic pretentiousness, I’m not going to shelve it any more in the Fog Creek library: it’s going right in the recycle bin. If I have to read another spirited attack on Microsoft’s buggy code by an enthusiastic nine year old Trekkie on Slashdot, I might just poke my eyes out with a sharpened pencil. Stop it, stop it, stop it!
To a large extent, these potatoes really are all you need to understand about RDFS and OWL classes. OO people, especially, are worried about “multiple inheritance”. But we are not talking about programmatic objects here, in which inheritance brings methods with it. Just about intersecting potatoes. Subclassing is just putting a potato inside another one. Unions and intersections are just misshaped potatoes made by following the contours of existing potatoes. How hard can all that be?
Do yourself a favor and read the entire post.
William, if you're going to be at OpenWorld, I'd like to buy you a drink.