Skip to content
View MysteryBlokHed's full-sized avatar
💬
💬

Highlights

  • Pro

Organizations

@hackermancool @color-js @uOttawaSESA

Block or report MysteryBlokHed

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
MysteryBlokHed/README.md

Hello, World!

GitHub Stats

Most Used Languages

About my projects

Click to read info

At first I thought this project was actually going to be relatively simple to implement, but it actually ended up being quite challenging and fun to do. The difficulty here was actually in the discovery of inference methods much more than the code implementation of them.

This was my first time learing and applying set theory, although it wasn't actually until after I had started work on the inference logic that I realized that. Speaking of: I've also tried to document the theory/proof behind what my code does on a page in that repo. Hopefully it's as interesting to read as it was to write.

I also decided to eventually port the core of the inference logic to Rust (with WebAssembly), because I noticed performance issues for a feature to determine the most likely guilty cards (since it's essentially just brute-forcing all possible hand arrangements given the current data). That was my first time ever using WebAssembly.

After porting to Rust, I ended up becoming somewhat obsessed with hyper-optimizing my code to run as fast as possible. I've managed to make it something like 30× faster than it was with the original TypeScript, even while adding new and often complex inference methods.

My contributions

I've been invited to help maintain this project, along with a handful of some other great developers: https://github.com/orgs/color-js/people. Most of my work here is on writing and updating typings for TypeScript support.

Pinned Loading

  1. color-js/color.js color-js/color.js Public

    Color conversion & manipulation library by the editors of the CSS Color specifications

    JavaScript 2k 84

  2. cluecards cluecards Public

    Automatic inference for interactions in Clue (Cluedo). Mirrored from https://gitlab.com/MysteryBlokHed/cluecards.

    TypeScript

  3. chess chess Public

    A JavaScript implementation of chess. Made for my high school computer science course.

    JavaScript

  4. DefinitelyTyped/DefinitelyTyped DefinitelyTyped/DefinitelyTyped Public

    The repository for high quality TypeScript type definitions.

    TypeScript 49.1k 30.3k