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, quantum computing, or computers in general.

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. Commenting is delegated to reddit. LaTeX is rendered by MathJax. 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.)

About the Author

Face Photo

I go by "Craig Gidney". I've programmed my whole adult life, both for fun and for profit. Currently I'm part of Google's quantum computing team in Santa Barbara.

(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 (there's also a posts feedPosts Feed).

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.