To my eternal shame, I’ve never blogged about one of the most important open source projects I’m involved in: Helios. Helios is for all intents and purposes a .NET port of Java’s wildly successful Netty project, the reactive high-performance socket server...
Cassandra, Hive, and Hadoop: How We Picked Our Analytics Stack

This is an archive of a blog post I wrote for the MarkedUp Analytics blog on February 19th, 2013. It’s been a popular post and I’m posting it here in order to preserve it.
When we first made MarkedUp Analytics available...
Read More
Scalability Lessons we can Learn from Voat

Last weekend I found voat.co on the /r/dotnet subreddit, one of the places I frequent for news and happenings related to...
Read More
Talking about Akka.NET and the Actor Model on Hanselminutes and .NET Rocks
I’ve done a bit of a “press tour” for Akka.NET since we released Akka.NET v1.0 at the beginning of April and I wanted to share a couple of the interviews I’ve done in the .NET community since.
Hanselminutes: Inside the Akka.NET open source...
Read More
How to Start Contributing to Open Source Software
The Petabridge team (all two of us) just wrapped up a big two weeks. We launched Akka.NET V1.0 and then traveled to Portland to talk about .NET open source software at .NET Fringe.
Read More
On a Mission to Mars
This weekend I went through the Landmark Forum and had to confront a big secret that I’ve been keeping hidden for virtually my entire life: the true aim of my ambitions.
Ever since I was a middle schooler, I’ve wanted to help build the first human colony on Mars....
Read More
Want me to work on your distributed .NET applications?

Time for a brief commercial interruption…
Recently Petabridge announced its professional services offerings around Akka.NET.
I’ve been...
Read More
The Right Way to do Equality in C#
One of the pitfalls of doing development in C#, Java, C++, or really any predominantly Object Oriented language (OOP) is how “equality” is defined.
In C#, for instance, you have the following methods that are built into every object:
object.Equals- the
==operator ReferenceEquals, for explicitly checking reference equality
My personal opinion: in any managed language, checking for referential equality is a pretty bad default - and if you’re working with immutable objects then equality by reference doesn’t really work.
In C/C++, where pointer arithmetic and knowing the precise location of something in memory matters it’s a different story. Equality by reference is the correct default in that case.
What’s the right thing to do?
Read More
Akka.NET - One Year Later

I originally posted this at Beyond HTTP, Petabridge’s official blog. Read More