Monday, February 28, 2011
Friday, February 25, 2011
ElephantDB is a database that specializes in exporting key/value data from Hadoop. We have been running it in production at BackType for over half a year now and are excited to be open-sourcing it. In this post, I'll introduce ElephantDB, show how to use it, and then compare it to other databases out there. ElephantDB is hosted on GitHub here.
Unlike most other databases, ElephantDB dissassociates the creation of a database index from the serving of that index. ElephantDB is comprised of two components. The first is a library that is used in a MapReduce job to create an indexed key/value dataset that is stored on a distributed filesystem. The second component, ElephantDB server, is a daemon that downloads a subset of a dataset and serves it in a read-only, random-access fashion. A group of ElephantDB servers working together to serve a full dataset is called a ring. Both the creation and serving of a dataset are done in a fully distributed fashion.
Thursday, February 17, 2011
Wednesday, February 16, 2011
Indeed, when I called Watson’s creators to ask how the supercomputer controls its buzzer, they admitted that Watson does have a strong built-in advantage. According to David Shepler, who is IBM’s Challenge Program Manager for the Watson project, “The buzzer is enabled when the clue is done being read, when Alex Trebek gets to that last syllable, and the guy off stage pushes a button. That’s when people can buzz in, and at the same time a signal is sent to Watson saying the same thing—telling Watson that it can buzz in if it so desires.” This is akin to playing against an opponent with near-perfect reflexes. “When we built the demonstration system, the first incarnation of a fully functioning game-playing Watson, Watson was buzzing in electronically,” Shepler said, but they decided this was too unfair. IBM added an electromagnetic “hand” to Watson that will depress an actual buzzer which gives the humans a little more time, but not much. Asked if Watson still has an advantage under the new arrangement, Shepler told me that experienced players will sometimes get the jump on the supercomputer because they can anticipate the end of a clue, “but it's true that on average a machine has very good reflexes. The machine is probably going to beat a human at buzzing.” And the computer will never buzz in too early and get locked out.
Thursday, February 10, 2011
Tuesday, February 8, 2011
Monday, February 7, 2011
Since the bulk of the server side for The Path of the Seven Millennia has just been completed, we would like to spend a couple of words on the technological stack of our choice and our experience with it so far.[...]
Clojure is a wonderful language, even though I must confess that my skills in it are still not good at all. Lisp has always been a very powerful and expressive language and Clojure takes the best out of it, with some more nice added features. I’m really impressed by how easy was to build our server side part. Functional programming seems really suited for web development (our server is mainly a REST api called by our apps). After using Clojure for a while, I’m starting to look at OOP with different eyes.
To ease development I’m of course using some Clojure libraries. For the REST implementation I use Compojure (which is built on Ring). To interface with GAE I useAppengine Magic. This library still has not reached the 1.0 release, but it does already a very good job to interface with GAE without using directly Java from Clojure.
Friday, February 4, 2011
AWS Elastic Beanstalk is an even easier way for you to quickly deploy and manage applications in the AWS cloud. You simply upload your application, and Elastic Beanstalk automatically handles the deployment details of capacity provisioning, load balancing, auto-scaling, and application health monitoring.
The first release of Elastic Beanstalk is built for Java developers using the familiar Apache Tomcat software stack which ensures easy portability for your application. There is no additional charge for Elastic Beanstalk - you only pay for the AWS resources needed to store and run your applications.
Wednesday, February 2, 2011
So there are R, G, and B cones. The signals from these cones don’t go straight to the brain; they first pass through a pre-processing filter, and it’s this filter that explains all the mysteries. Actually there are three filters.
To do this “wheel” thing properly, you have to represent the red/green and blue/yellow opposites. It’s not at all difficult, so it amazes me how rarely it’s seen or taught:
Four primary colors? Yes, why not? It’s the closest thing to the actual physiology without getting complex.