The Mole recently attended an SDForum Software Architecture and Modeling SIG talk on Cassandra, a "distributed storage system for managing structured data that is designed to scale to a very large size across many commodity servers". Cassandra was developed at Facebook to speed up certain searches; to the Mole's understanding, it was built to support indexing of user-to-user messages by the words in those messages. (That is, if a message contains the phrase "Jeering Mole", the words "Jeering" and "Mole" will be put into the index as keys with the message id as the corresponding value.) The developers seemed to have hopes or expectations that Cassandra will be rolled out more widely into the Facebook infrastructure.
The Mole hesitates to contrast this talk with the previous one ("The Magic Behind Multi-tenancy", which The Mole described as a righteous hack) with the phrase "from the sublime to the ridiculous". There is some possibility that The Mole's understanding was more limited than he realized, a deficiency not compensated for by excellent presentation skills. More likely, however, is the possibility that Casandra is just hacking -- fancy, upscale hacking by talented programmers -- without the clean architectural lines of Salesforce.com's delightful perversion of relational database design principles. [The Mole promises to blog at greater length about that talk.]
But what really distressed The Mole was slide 19 of the Cassandra talk, "Information Flow in the Implementation". The content does not bother The Mole: it actually seems quite interesting, in its original context. The problem is that the diagram and the text below it are taken without attribution from the paper "The \phi Accrual Failure Detector" by Naohiro Hayashibara, Xavier Defago, Rami Yared and Takuya Katayama [pdf]. Poor form, gentlemen.
Overall, The Mole's conclusion is that these speakers are clever but sloppy. They have mashed up several good ideas -- deliberately accepting errors in order to achieve high availability, using hashing to load balance, accrual failure detection -- into a system that apparently works. While the result may scale to larger server farms, the process by which is was delevered will not scale to more substantial projects.
[The title of this entry is indeed meant to echo the title of the famous story by Jacques Futrelle.]
Last night The Mole went to the Computer History Museum to hear David Alan Grier's talk "Too Soon to Tell: Essays for the End of the Computer Revolution" (drawn largely from his new book of the same title). The Mole usually emerges from such talks energized and enthusiastic, with a reinvigorated commitment to moving back to doing substantial software work at a high-performing outfit. (The reader is welcome to draw his or her own conclusions about what may or may not be implied about The Mole's current employer.) On this occasion, however, The Mole found himself dispirited. Not only do the glory days of software appear to be past, but also glory goes only to the young.
With some food (starting with a light meal at Totoro with Tim Kay (founder of Boopsie) after the talk) and twenty four hours between him and the talk, The Mole has regained his equilibrium and says "Onion sauce!" to such defeatist musings. It has to be possible to do interesting technical work even when family responsibilities make living on packaged ramen in a dump with six co-founders and working 18 hours a day an unreasonable approach to success.
Last night The Mole went to an event at the Computer History Museum where Doron Swade and Nathan Myhrvold spoke about the Difference Engine #2 that has just arrived at the museum. The machine itself astonishes, the vindication of Charles Babbage is a monumental achievement, Babbage's insights and vision are amazing. (Myhrvold's expenditures on the effort, though not revealed in detail, must have been jaw-dropping.)
The Mole cannot begin to convey the depths of wonder the Engine triggered. It will be on display at the museum for a year before taking up residence in Myhrvold's living room. Go see it!
Any sufficiently advanced technology is indistinguishable from magic. A key difference in the Mole's opinion is that magic is impenetrable, impervious to reason; technology is not. In the case at hand, the Mole is certain he could learn the intricacies of b2evolution (and, if necessary, php). As he has not, however, the white screen of nothingness that presented itself after an attempt at a point-and-click site upgrade some months ago was quite daunting. The Mole thought he might have to immerse himself in the internals of blog engines.
Like the Sorceror's Apprentice, however, the Mole muttered incantations beyond his understanding (i.e., clicked the upgrade button again) and found his blog restored.
So the Mole is back in business, gamely scribbling inanities that the world can continue to ignore vigorously.
So last week the Mole attended the SDForum SAM SIG meeting to hear Ted Neward speak on "State Management: Shape and Storage: object/relational (O/R) impedance mismatches for persisting objects between transient & persistent states." This is a topic that has long fascinated the Mole, which, he discovered, is another way of saying that the Mole was not the target audience. Most of the talk was about the problem; the Mole was looking for new insights into the answer.
In the car on the way home, the Mole thought some more about the issues. One of the phrases that had come into his mind during the talk was "locality of reference". It seems to the Mole that the spectrum of distances from the processor core (registers -- cache -- RAM -- disk -- offsite tape) reflects a range of concerns from extremely process-centric to extremely data-centric. An object model is very useful for computing (duh: OO, by definition, couples data with behavior); a relational model is very useful for long-term data storage. One day the Mole will draw a picture and elaborate on this.
The Mole also recommended Fabian Pascal's writings (some of which are specifically relevant) to a couple of people attending the event. The Mole believes Santayana's dictum that "those who do not remember the past are doomed to repeat it."
:: Next Page >>
"Onion sauce! Onion sauce!" he remarked jeeringly, and was gone before they could think of a thoroughly satisfactory reply. (Kenneth Grahame, The Wind in the Willows)
| Next >
| Sun | Mon | Tue | Wed | Thu | Fri | Sat |
|---|---|---|---|---|---|---|
| << < | > >> | |||||
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 | |||