Dr. Dobb's Journal - April 2008 - (Page 56) d04flam_p3ds 2/13/08 10:17 AM Page 56 Swaine’s Flames by Michael Swaine Macworld Expo Considered As a Helix of Semi-Precious Snowclones IF IT’S JANUARY, this must be Macworld. Well, it’s not January, of course, despite the snowclone (definition at the bottom of the page) in the first sentence, but the Samuel R. Delany science fiction novella snowcloned in the title was all about time, so join me as I time-travel back to January, 2008… The First Rule of Apple product releases is: You do not talk about Apple product releases. The Second Rule of Apple product releases is: You DO NOT talk about Apple product releases. There was a time when Apple Computer leaked like Libby, but since the Second Coming of Steve Jobs it has become as furtive as Cheney. Now, what happens in Apple Engineering stays in Apple Engineering. That is, until Steve’s keynote. Oh, Steve, you had me at “We’ve got some awesome stuff to tell you about.” True, there are lies, damned lies, and Steve Jobs keynotes. Granted, he’s not an engineer but he plays one at Macworld. But when Steve Jobs takes the stage, the anticipation is so thick you can cut it with the knife you slice the bread with that CEO Steve is currently the best thing since. Okay, whatever else he is or isn’t, Jobs is the King of Keynote. And I, for one, welcome our new corporate overlord. I mean, remember how it was before Steve returned? Will the last person to leave Apple please turn off the lights? That’s the scenario Chris (Employee Number 8) Espinosa was looking at before Steve Jobs came back, he once told me. Even Steve thought Apple was toast. Mmmm, toast. And then came the iMac. Bondi. Name’s Bondi. The brightly colored all-in-one computer was a gamble, but the package and the pitch were somehow perfect. Tigers and Leopards and Panthers, oh my! The software side, specifically the operating system replacement that Apple had to implement to survive, began in false starts and abandoned paths, but before long found its way. And this year at Macworld, the OS was no longer the focus, as Apple seems to have transitioned to a longer-than-a-year OS reversioning cycle. But Macworld always has big announcements; if not in the OS, where’s the (fruitarian) beef? Well, there’s that exercise in trade-offs, MacBook Air. Dude, where’s my Firewire? Will someone please think of the battery replacement strategy? Oh my God, they killed Ethernet! Optical drives? We don’t need no stinking optical drives! Read my lips: No second USB port. No, this is not your father’s Macbook. Apple sacrificed many features to get the World’s Thinnest Laptop, leading some to say… Air is the new Cube, or: There’s a thin line between thinness and cubism. Will MacBook Air go the way of the Mac Cube, which had an eye-catching form factor but was ultimately a failed product? I think not, because thin is the new fast. Thin isn’t just a snazzy look, it’s a feature. And Air doesn’t make more compromises than other ultraportables, just different ones. Also, the fact that Air is not a replacement for any other Mac but a new box in the product grid means that expectations for Air sales need not be high—although I may have said something like that about the Cube in 2000. I Phone therefore I Pod. It’s the software, stupid. The Multitouch gesture language introduced in iPhone is migrating to iPods, but I’m keeping my eye on that version of OS X that iPhone runs. Here’s my question: Is Apple trying to discover the perfect set of features and form factor for merging the Mac and iPod platforms into a future mobile computing/communication device? Time Capsule, movie rentals, yadda yadda. I love the smell of hype in the morning. One more thing: If we don’t buy Apple products, then the terrorists have won. Steve has left the building. When I hear the word snowclone, I think of some sort of frozen dessert (snowclone is a dish best served cold?), but a snowclone, according to Wikipedia, is “a multi-use, customizable, instantly recognizable, timeworn, quoted or misquoted phrase or sentence that can be used in an entirely open array of different jokey variants by lazy journalists and writers.” The first official snowclone recipe was, “If Eskimos have N words for snow, surely X have M words for Y.” My first title for this column was the snowclonic “Dr. Snowclone or: How I Learned to Stop Worrying and Love Clichés,” but a snowclone based on Chip Delany’s “Time Considered as a Helix of Semi-Precious Stones” seemed to work better, especially since Delany has himself been described snowconically as “a writer of semi-precious words.” Snowclones are all more or less semi-precious wordplay. Michael Swaine Editor-at-Large mike@swaine.com 56 Dr. Dobb’s Journal l www.ddj.com l April 2008 http://www.ddj.com
Table of Contents Feed for the Digital Edition of Dr. Dobb's Journal - April 2008 Dr. Dobb's Journal - April 2008 Contents Hmmmm Alia Vox Developer Diaries Dr. Dobb's Excellence in Programming Award Conversations Fast String Search on Multicore Processors The Byzantine Generals Problem Optimizing Math-Intensive Applications with Fixed-Point Arithmetic Random Numbers in a Range Using Generic Programming The Agile Edge Effective Concurrency Swaine's Flames Dr. Dobb's Journal - April 2008 Dr. Dobb's Journal - April 2008 - Dr. Dobb's Journal - April 2008 (Page Cover1) Dr. Dobb's Journal - April 2008 - Dr. Dobb's Journal - April 2008 (Page Cover2) Dr. Dobb's Journal - April 2008 - Dr. Dobb's Journal - April 2008 (Page 1) Dr. Dobb's Journal - April 2008 - Dr. Dobb's Journal - April 2008 (Page 2) Dr. Dobb's Journal - April 2008 - Dr. Dobb's Journal - April 2008 (Page 3) Dr. Dobb's Journal - April 2008 - Contents (Page 4) Dr. Dobb's Journal - April 2008 - Contents (Page 5) Dr. Dobb's Journal - April 2008 - Hmmmm (Page 6) Dr. Dobb's Journal - April 2008 - Hmmmm (Page 7) Dr. Dobb's Journal - April 2008 - Hmmmm (Page 8) Dr. Dobb's Journal - April 2008 - Hmmmm (Page 9) Dr. Dobb's Journal - April 2008 - Alia Vox (Page 10) Dr. Dobb's Journal - April 2008 - Alia Vox (Page 11) Dr. Dobb's Journal - April 2008 - Developer Diaries (Page 12) Dr. Dobb's Journal - April 2008 - Developer Diaries (Page 13) Dr. Dobb's Journal - April 2008 - Developer Diaries (Page 14) Dr. Dobb's Journal - April 2008 - Developer Diaries (Page 15) Dr. Dobb's Journal - April 2008 - Dr. Dobb's Excellence in Programming Award (Page 16) Dr. Dobb's Journal - April 2008 - Dr. Dobb's Excellence in Programming Award (Page 17) Dr. Dobb's Journal - April 2008 - Conversations (Page 18) Dr. Dobb's Journal - April 2008 - Conversations (Page 19) Dr. Dobb's Journal - April 2008 - Fast String Search on Multicore Processors (Page 20) Dr. Dobb's Journal - April 2008 - Fast String Search on Multicore Processors (Page 21) Dr. Dobb's Journal - April 2008 - Fast String Search on Multicore Processors (Page 22) Dr. Dobb's Journal - April 2008 - Fast String Search on Multicore Processors (Page 23) Dr. Dobb's Journal - April 2008 - Fast String Search on Multicore Processors (Page 24) Dr. Dobb's Journal - April 2008 - Fast String Search on Multicore Processors (Page 25) Dr. Dobb's Journal - April 2008 - Fast String Search on Multicore Processors (Page 26) Dr. Dobb's Journal - April 2008 - Fast String Search on Multicore Processors (Page 27) Dr. Dobb's Journal - April 2008 - Fast String Search on Multicore Processors (Page 28) Dr. Dobb's Journal - April 2008 - Fast String Search on Multicore Processors (Page 29) Dr. Dobb's Journal - April 2008 - The Byzantine Generals Problem (Page 30) Dr. Dobb's Journal - April 2008 - The Byzantine Generals Problem (Page 31) Dr. Dobb's Journal - April 2008 - The Byzantine Generals Problem (Page 32) Dr. Dobb's Journal - April 2008 - The Byzantine Generals Problem (Page 33) Dr. Dobb's Journal - April 2008 - The Byzantine Generals Problem (Page 34) Dr. Dobb's Journal - April 2008 - The Byzantine Generals Problem (Page 35) Dr. Dobb's Journal - April 2008 - The Byzantine Generals Problem (Page 36) Dr. Dobb's Journal - April 2008 - The Byzantine Generals Problem (Page 37) Dr. Dobb's Journal - April 2008 - Optimizing Math-Intensive Applications with Fixed-Point Arithmetic (Page 38) Dr. Dobb's Journal - April 2008 - Optimizing Math-Intensive Applications with Fixed-Point Arithmetic (Page 39) Dr. Dobb's Journal - April 2008 - Optimizing Math-Intensive Applications with Fixed-Point Arithmetic (Page 40) Dr. Dobb's Journal - April 2008 - Optimizing Math-Intensive Applications with Fixed-Point Arithmetic (Page 41) Dr. Dobb's Journal - April 2008 - Optimizing Math-Intensive Applications with Fixed-Point Arithmetic (Page 42) Dr. Dobb's Journal - April 2008 - Optimizing Math-Intensive Applications with Fixed-Point Arithmetic (Page 43) Dr. Dobb's Journal - April 2008 - Random Numbers in a Range Using Generic Programming (Page 44) Dr. Dobb's Journal - April 2008 - Random Numbers in a Range Using Generic Programming (Page 45) Dr. Dobb's Journal - April 2008 - Random Numbers in a Range Using Generic Programming (Page 46) Dr. Dobb's Journal - April 2008 - Random Numbers in a Range Using Generic Programming (Page 47) Dr. Dobb's Journal - April 2008 - Random Numbers in a Range Using Generic Programming (Page 48) Dr. Dobb's Journal - April 2008 - The Agile Edge (Page 49) Dr. Dobb's Journal - April 2008 - The Agile Edge (Page 50) Dr. Dobb's Journal - April 2008 - The Agile Edge (Page 51) Dr. Dobb's Journal - April 2008 - Effective Concurrency (Page 52) Dr. Dobb's Journal - April 2008 - Effective Concurrency (Page 53) Dr. Dobb's Journal - April 2008 - Effective Concurrency (Page 54) Dr. Dobb's Journal - April 2008 - Effective Concurrency (Page 55) Dr. Dobb's Journal - April 2008 - Swaine's Flames (Page 56) Dr. Dobb's Journal - April 2008 - Swaine's Flames (Page Cover3) Dr. Dobb's Journal - April 2008 - Swaine's Flames (Page Cover4)
For optimal viewing of this digital publication, please enable JavaScript and then refresh the page. If you would like to try to load the digital publication without using Flash Player detection, please click here.