Shared posts

20 Jun 21:53

Portraits of neglected Unicode characters #3: ⋩ SUCCEEDS BUT NOT EQUIVALENT TO

by mtraven


This symbol, somewhat awkward in both name and graphic, seems to be perfect for denoting certain types of human relationships, such as fathers and sons, teachers and students, influencers and artists. In all cases, the right side of the relationship obviously owes a great debt to the left side that precedes them, but determinedly asserts their non-equivalence.

The “but” seems weak though, as though it wasn’t really believed. Successors have to go through a process of overthrowing the influence of their predecessors. Like most revolutions, it can be at best a partial success, the revolutionary child inevitably ends up copying many of the strongest aspects of the paternal authority they are rebelling against. And over the course of time they tend to end up on the other side of the relationship, wondering how the hell they came to play a role that they defined themselves against.

(for father’s day)
02 Apr 16:55

The Splintered Mind Liability Release

by Eric Schwitzgebel
Notice: By reading The Splintered Mind you agree to release, indemnify and hold forever harmless, the Splintered Mind, its owners, agents, officers, affiliates, volunteers, participants, employees, nominees, heirs, referees, commenters, commentators, publishers, guests, and all the great and minor and intermediate figures of the history of philosophy and psychology and in contemporary philosophy and psychology that might or might not be mentioned directly or indirectly herein (hereinafter "SM"), on behalf of yourself, your spouse, children, heirs, representatives, assigns, agents, estate, publishers, co-authors, academic or personal associates, and governmental and corporate and group-mind bodies, spirits, or other metaphysical vehicles over which you might or might not have full or partial control, from all responsibilities, liability, actions, demands, claims, losses, or costs of any sort whatsoever arising in any manner whatsoever from your use, non-use, or accidental or intentional discovery of this site, its archives, its links, the material in its links and to which it has failed to link and any behavior whatsoever on or off the internet, connected or unconnected with this site or the material within or not within, whether due to oversight, neglect, abuse, well-intentioned ineptitude, deliberate criminal malevolence aforethought, or arising from any cause or coincidence or lack of coincidence whatsoever. Should SM incur any legal costs directly or indirectly related to your action or lack of action, you agree to pay all such legal costs on behalf of SM plus an inconvenience fee of $1000 per hour (CPI adjusted to 2013 dollars) and free massages, even in the metaphysically impossible event that SM is found civilly or criminally responsible.

You hereby also further agree that reading The Splintered Mind is a risky activity that might result in false beliefs, dangerous lemmas, despair, loss of religion, adoption of a false region, injury, death, insanity, in-between attitudes, ill-advised pragmatism, philosophical error, the sudden kindling of prurient desires, bizarre and uncontrollable thoughts, hatred of small cuddly kittens, up to and including condemnation to eternal torment; and that there are further risks, some known but intentionally held secret from you and some neither specified nor known. By reading this far (but even before reading this far), you have waived all of your rights in every jurisdiction, not only in the actual world but also in all possible and impossible worlds, whether distant, proximate, or entirely absurd, to any sort of action whatsoever and leave it entirely to the discretion of SM to treat you in any way they deem fit or unfit, without necessity of justification or defense.

If any portion of this contract is found void or unenforceable, the remaining portions shall remain in full force and effect.

This contract shall be binding upon all persons, non-human animals, aliens, group minds, and other entities and processes that have any casual contact or quantum-mechanical entanglement with SM, forward, backward, or sideways in time, mediated or unmediated, of any form whatsoever, whether they read this statement or not.

(Inspired by SkyZone and Hangar 18.)

14 Mar 06:49

IEEE Computer issue on the CAP Theorem

by Daniel Abadi
Due to Hurricane Sandy, Yale gave me a day off from teaching today and I have finally been able to get to a few things on my "to-do" list. One of them is to write a blog post about the IEEE Computer CAP Retrospective edition and make my paper that appeared inside of it publicly available.

Earlier this year, the IEEE Computer magazine came out with an issue largely devoted to a 12-year retrospective of the CAP theorem and contains several articles from distributed systems researchers that contribute various opinions and thoughts about CAP. The first article is from Eric Brewer, who coined the CAP theorem 12 years ago (though he points out in his article that it was actually 14 years ago). A PDF of Brewer’s article is available for free from: http://www.infoq.com/articles/cap-twelve-years-later-how-the-rules-have-changed. The second article is from Seth Gilbert and Nancy Lynch (the same Gilbert and Lynch that proved the CAP theorem 10 years ago). 


The third article is from me, and contains my criticisms of CAP that long-time readers of my blog will be familiar with. In particular, I point out that many people assume that modern NoSQL systems relax consistency guarantees in order to gain availability due to the constraints of the CAP theorem, when the reality is that these systems give up on consistency even in the absence of network partitions, which is not required according to the CAP theorem. The  reason why they give up on consistency is because of a desire to improve system latency, an increasingly important requirement in the modern impatient world. I then describe the latency-consistency tradeoff in more detail, and end the article with the PACELC reformulation of CAP that debuted on my blog over two years ago. With the permission of the IEEE, I am making a free version of this article available today. This article is the first time that the PACELC formulation and my thoughts on CAP appear in a scholarly article, which gives people a venue to refer to (bibtex code available here) when citing this work (you can stop citing a blog post!)


The fourth article is from Raghu Ramakrishnan, entitled “CAP and Cloud Data Management” and describes the PNUTS system that I have mentioned in the past as a good example of a system for which the consistency-latency tradeoff has had a more direct impact on the system design than the consistency-availability tradeoff of CAP. The fifth article is from Ken Birman, Daniel Freedman, Qi Huang, and Patrick Dowell of Cornell University on overcoming CAP with soft-state replication. Unfortunately, I cannot find a free link to Raghu’s article, but if you have an IEEE account, you can access it at at: http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=6122007&tag=1. The Birman et. al. article can be found for free at: http://www.cs.cornell.edu/Projects/mrc/CAP.pdf.


If you have enjoyed my thoughts on CAP on this blog, I highly recommend you read each of these five articles. 

The Brewer article in particular acknowledges my past criticism of CAP not actually being about picking two of three out of C (consistency), A (availability), and P (partition tolerance) due to the fact that it does not make sense to reason about a system that is ‘CA’. (If there is no partition, any system can be both consistent and available --- the only question is what happens when there is a partition --- does consistency or availability get sacrificed?) Brewer uses this observation to lead into a nice generalization of consistency-availability tradeoff. In particular, when a partition occurs, the system does three things: (1) detect that the partition occurred, (2) enter a partition mode that may or may not limit some operations, and (3) initiate some sort of reconciliation algorithm when the partition is fixed. Depending on how these three things are implemented, it is  possible to obtain much of the spectrum between CP systems and AP systems. The article also contains a nice reference to the CRDT work by Shapiro et. al. at INRIA. Overall, I strongly support Brewer’s approach to navigating this tradeoff. It also fits nicely with Mehul Shah’s talk at HPTS in the way that the spectrum between consistency and availability is explicitly considered at system design time, rather than trying to bolt consistency on top of an AP (eventually consistent) system after the fact (a wildly suboptimal endeavor).

While most of Brewer’s article focused on the consistency-availability tradeoff, Brewer also briefly acknowledges that “in its classic interpretation, the CAP theorem ignores latency”, and that some systems reduce consistency for latency (he even refers to the PNUTS example I used in my original blog post). I remain convinced that PACELC is the best way to reason about both of these tradeoffs in a single formulation: if there is a partition (P) how does the system tradeoff between availability and consistency (A and C); else (E) when the system is running as normal in the absence of partitions, how does the system tradeoff between latency (L) and consistency (C)?