Wednesday, June 30, 2010

alter-ego - A Reactive AI Library

> alter-ego is a reactive AI library based on the concept of behavior trees. Behavior trees combines a number of AI techniques such as Hierarchical State Machines, Scheduling, Planning, and Action Execution. Their strength comes from the fact that it is very easy to see logic, they are fast to execute and easy to maintain.

Posted via email from miner49r

Tuesday, June 29, 2010

VoltDB Decapitates Six SQL Urban Myths

 VoltDB: a pure SQL, pure ACID, pure OLTP, shared nothing, sharded, scalable, lockless, open source, in-memory DBMS, purpose-built for running hundreds of thousands of transactions a second. VoltDB claims to be 100 times faster than MySQL, up to 13 times faster than Cassandra, and 45 times faster than Oracle, with near-linear scaling.

Posted via email from miner49r

Monday, June 28, 2010

Clojure's n00b attraction problem

A good article from Greg Slepak:

Clojure is a beautiful language, but if its community wants more people to appreciate the language, then it may want to consider making the getting started experience beautiful too.

They're working on it.  I think it's still early in the game, but once Clojure 1.2 is done, it makes sense for the community to work on the initial programming experience.

Posted via email from miner49r

Friday, June 25, 2010

JGC: What's wrong with Flash Cookies?

All the major web browsers have control for regular HTTP cookies built in. In contrast, none of them provide control of Flash Cookies. That's a pity since we know that people delete their HTTP cookies very regularly. If you want to delete them then you need to visit this page on

Posted via email from miner49r

Wednesday, June 23, 2010

Stop Forking with CSS3: eCSStender

I decided to build a JavaScript library that supports clean living (or at least clean CSS): eCSStender.  [...] Boiled down to its essence, eCSStender (pronounced “extender”) is a JavaScript library (akin to jQuery or Prototype) specifically built for working with CSS. On its own, eCSStender doesn’t do anything but analyze your stylesheets. When powering “extensions,” however, eCSStender allows you to use properties such as @border-radius and selectors without having to resort to forks or hacks.

Posted via email from miner49r


HTML 5 info and demos (from Google):

Posted via email from miner49r

disclojure: public disclosure of all things clojure

Monday, June 21, 2010

iOS 4 walkthrough

Complete feature guide to Apple’s latest iOS 4 (with video demos):

Posted via email from miner49r

Thursday, June 17, 2010

'Diverging Diamond' Traffic Flow

It's not often that you can make traffic flow more smoothly and safely without spending significant time and money. But drivers in Springfield, Mo., are the first in the United States to use a new interchange design that transportation officials say is quick, cheap, and safe.

The "diverging diamond" is being put to the test. Fans of the new highway interchange design say it improves traffic flow by eliminating problematic left turns. There's just one catch: It briefly sends all cars over to the left side of the road.

Follow the link for a diagram.

Posted via email from miner49r

Wednesday, June 16, 2010

Plaxo plugin disabled by 10.6.4 update

Just FYI: After updating to Mac OS X 10.6.4, Apple Mail complains about an incompatible plugin.

> Mail has disabled the following plug-ins:
>> PlaxoMailCTC
>> Contact the makers of these plug-ins for versions that are compatible with Mail 4.3 and Message 4.3.

I reported the problem to As long as the rest of plaxo works, I'm not too worried, but I'll need to do some more testing before I'm sure it's OK.

By the way, Plaxo is a free tool that synchronizes your contacts and calendars among several computers. It mostly works fine.

Posted via email from miner49r

Carte - clojure relational mapping

Carte is relational mapping for Clojure. It maps nested immutable data structures to an underlying relational database management system. It is meant only to provide simple access and manipulation of relational data, it is not meant to be a replacement for SQL

 or relational algebra.

Posted via email from miner49r

Tuesday, June 15, 2010

Tom Watson at the US Open

Tom Watson is my favorite Stanford golfer.  He'll be playing in the US Open at Pebble Beach starting on Thursday.  Good luck, Tom!

In Watson’s 1982 U.S. Open win at Pebble Beach, he holed a touchy chip shot from the greenside rough to birdie the 71st hole—arguably one of the greatest pressure shots ever—and then birdied the 18th to top Nicklaus.

Posted via email from miner49r

Monday, June 14, 2010

JavaScript Blacklist - extension for Safari

I used to edit /etc/hosts to block these bad guys.  Now, there's a Safari extension for non-programmers to use.

JavaScript Blacklist is a simple extension for Safari 5 which blacklists scripts from a configurable list of domains. If a common "utility" script used by sites that you visit is annoying you, this will let you opt out quickly and easily.

Here are some examples of common annoying scripts. JavaScript Blacklist comes pre-configured to block these by default.

Posted via email from miner49r

Wednesday, June 2, 2010

Mac Vintage meeting tonight (Wednesday) at 7 p.m.

The Mac Vintage (Macintosh Users) Group will meet on Wednesday at 7 p.m. in the Town Center. The main topic is iPhoto.

Posted via email from

Tuesday, June 1, 2010

Accessing the App Engine Datastore - Compojure on GAE

To use the datastore API I need to include a jar that comes with the GAE SDK in my app. I could call the Java API directly, but there are already a few Clojure libraries that provide friendly wrappers around it. One of the first (that I know of) was appengine-clj by John Hume (who was also one of the first to write about using Clojure on GAE).

I decided to go with this fork of appengine-clj by Roman Scherer, which seems to be more complete and actively maintained.

Posted via email from miner49r