Thursday, March 22, 2012
Tuesday, March 20, 2012
Sunday, March 18, 2012
The title refers to the quiz included in Dr. Charles Murray's new book, Coming Apart: The State of White America, 1960 – 2010.
Monday, March 12, 2012
Sunday, March 11, 2012
Saturday, March 10, 2012
Since version 10.5 “Leopard”, Mac OS X has had DTrace, a tool used for performance analysis and troubleshooting. It provides data for Apple’s Instruments tool, as well as a collection of command line tools that are implemented as DTrace scripts.
Thursday, March 8, 2012
>> Clojure-Py is an implementation of Clojure running atop the Python VM.
> As it currently stands, we have translated over 235 functions from
> clojure.core. This is not a clojure interpreter in python; the
> Clojure-Py compiler compiles clojure code directly to python code.
> Clojure-py functions are python functions. Clojure-py types are python
> types, Clojure-py name spaces are python modules.
You can't avoid the CAP theorem, but you can isolate its complexity and prevent it from sabotaging your ability to reason about your systems. The complexity caused by the CAP theorem is a symptom of fundamental problems in how we approach building data systems. Two problems stand out in particular: the use of mutable state in databases and the use of incremental algorithms to update that state. It is the interaction between these problems and the CAP theorem that causes complexity.
In this post I'll show the design of a system that beats the CAP theorem by preventing the complexity it normally causes. But I won't stop there. The CAP theorem is a result about the degree to which data systems can be fault-tolerant to machine failure. Yet there's a form of fault-tolerance that's much more important than machine fault-tolerance: human fault-tolerance. If there's any certainty in software development, it's that developers aren't perfect and bugs will inevitably reach production. Our data systems must be resilient to buggy programs that write bad data, and the system I'm going to show is as human fault-tolerant as you can get.
This post is going to challenge your basic assumptions on how data systems should be built. But by breaking down our current ways of thinking and re-imagining how data systems should be built, what emerges is an architecture more elegant, scalable, and robust than you ever thought possible.
Tuesday, March 6, 2012
Rich Hickey, Stuart Halloway, and others at Relevance, Inc. have announced Datomic — a new kind of database.