Optimistic Concurrency in Orleans

the Storage Provider infrastructure in Orleans exposes an 'Etag' field representing a particular revision of the data in the underlying storage system. This can be used to detect writes competing writes to overwrite grain state.

Thoughts on Deploying Orleans

A post discussing a future possibility for deploying Orleans to Azure

Running io.js on Azure Websites

You can run io.js on Azure Websites easily, by configuring azure to use a custom node version. This blog shows you how.

Bootstrap provider in Orleans

The bootstrap provider enables you to hook in some code at silo startup. There are a variety of reasons for doing this, perhaps you want to set some local grains up, or initialize some data. The Hub design pattern makes use of the bootstrap provider create a stateless worker in each Silo.

Grain placement in Orleans

It is possible to change this behavior by adding an attribute from the `Orleans.Placement` namespace to the Grain interface.


In the office we have a healthy, ongoing discussion about language choice. We generally discuss some hypothetical long term (10, 25, 100 year?) software project, and what language would be the most suitable.

Thoughts on Julia

I have been playing around with the Julia programming language for about a week. I like it. It has a easy to read syntax, and makes sense.

Farewell Wordpress

I have moved my blog to GitHub