Algorithmic Assertions - Craig Gidney's Computer Science Blog

About the Blog

Algorithmic Assertions is a computer science blog. Posts are usually technical, on the order of a couple thousand words long, and focused on some idea in mathematics, software engineering, algorithmic complexity, or computers in general.

About the Author

Face Photo

I go by "Craig Gidney". I've programmed my whole adult life, both for fun and for profit. Most of my professional work has been at tiny companies, but currently I'm gainfully employed at Google in NYC.

(Standard disclaimer: any opinions expressed on this blog are mine, not those of my employer.)

Although my work work doesn't involve a ton of theoretical computer science (as opposed to coding), I learn and think about it a lot in my spare time. That's why this blog exists.

You can contact me by email: [my_first_name].[my_last_name] at gmail
I have repositories on github @strilanc.
I announce posts on twitter @craiggidney (but there's a posts feedPosts Feed).

Content is hosted on GitHub pages and generated with Jekyll. The blog's github repository is not private, and pull requests fixing typos or whatever are welcome. LaTeX is rendered by MathJax. Commenting is delegated to IntenseDebate. Visits are estimated using Google Analytics. (I'd prefer to avoid third party scripts entirely, but I don't have better solutions at the moment.)

Most visited posts

  1. Don't Make Javascript Equality Look Worse Than It Is
  2. Things I Can't Solve: Multiplication
  3. Storing Bandwith with Superdense Coding

My favorite posts

Previous blog

I used to write for the Twisted Oak Studios blog. You can find ~80 other posts written by me there. The two most notable are Don't Hold Locks While Notifying, which resulted in RxJava switching how they do synchronization, and Breaking a Toy Hash Function, which was featured in hacker monthly.