About

Hi, I'm Joey Robert, a physics student at UW and a developer at PostRank. I blog occasionally here. Contact me via email at Sorry blind people or through one of the social networks below.

Delicious | Facebook | GitHub | Last.fm | LinkedIn | StackOverflow | Twitter

Projects

Fiasco Chess Engine

Fiasco is an open source, pre-alpha chess engine written in C# and .NET. It features a "classic" alpha/beta brute force search and an opening book. It's based on a 10x12 mailbox board representation.

It was developed on Windows 7 Professional using Microsoft Visual C# Express 2008 and tested on Ubuntu 9.04 using Mono 2.0.1 and MonoDevelop 2.0.

GitHub Project Page

6502.NET Screenshot

6502.NET

6502.NET is MOS Technology 6502 (an 8-bit microprocessor that powered the Apple II, Commodore 64, Atari 2600 and NES) emulator written in C# and .NET. 6502.NET has approximately 40% opcode coverage. On a modern computer 6502.NET can operate up to 100 MHz and is both Windows .NET and Mono compatible.

6502.NET features both a Winforms GUI and a console display. It was inspired by 6502asm.com: a 6502 compatible assembler and emulator in Javascript.

GitHub Project Page

BloomFilter.NET

BloomFilter.NET is an generic implementation of a bloom filter. A bloom filter is a space-efficient probabilistic data structure that is used to test whether an element is a member of a set. False positives are possible, but false negatives are not. Elements can be added to the set, but not removed.

GitHub Project Page

Example (C#)

using System;
using System.Collections.Generic;
using DataTypes;

class Program
{
    static void Main()
    {
        BloomFilter<string> bf = new BloomFilter<string>(20, 2);

        bf.Add("testing");
        bf.Add("nottesting");

        bf.Contains("badstring"); // False
        bf.Contains("testing");   // True

        List<string> testItems = new List<string>() { "badstring",
                                                      "testing",
                                                      "test" };

        bf.ContainsAll(testItems); // False
        bf.ContainsAny(testItems); // True

        // 0.040894188143892
        bf.FalsePositiveProbability();
    }
}

ConwayJS

The Game of Life is a cellular automaton devised by the British mathematician John Horton Conway in 1970. My goal was to build a simple and pretty implementation in JavaScript. Recommended Browsers: Chrome 3+, Safari 4+, Firefox 3+, Opera 10+.

GitHub Project Page

Music

I make music under the alias harmonyofchaos using Guitar Pro. Check out some of my latest stuff. All music is licensed under Creative Commons License.