I'm a scientist, writer, and programmer.
I work on ideas and tools that help people think and create, both individually and collectively.
Want to hear about my projects as they're released? Please join my mailing list.
Neural Networks and Deep Learning: A free online book explaining the core ideas behind artificial neural networks and deep learning. Currently in draft form, with new chapters being added every two or three months. Code.
Reinventing explanation: Using new media to create new types of explanation.
How the Bitcoin protocol actually works: Bitcoin isn't just electronic money. It's a system for creating new types of programmable financial instrument, and thus new types of collective behaviour. Here's how it works, from the ground up.
The Artist and the Machine: How new aesthetics and forms of beauty are discovered as we probe deeper into nature.
How to crawl a quarter billion webpages in 40 hours: I was curious to see how difficult it is to crawl a non-trivial fraction of the web. Not too difficult, it turns out. Now used to crawl billions of images at TinEye.
Lisp as the Maxwell's equations of software: How to implement a fully executable version of what Alan Kay once called "the Maxwell's equations of software".
If correlation doesn't imply causation, then what does? How can we determine when one event causes another? The causal calculus provides a partial answer.
Massively Collaborative Mathematics
Science Beyond Individual Understanding
The Economics of Scientific Collaboration
The Mismeasurement of Science
Shirky's Law and why (most) social software fails
Kasparov Versus the World
Open science now! How changing the political economy of science will transform how we think and create.
The Future of Science
Is Scientific Publishing About to Be Disrupted?
Doing Science Online
Open Access: a Short Summary
Three Myths about Scientific Peer Review
The New Einsteins Will be Scientists Who Share
When can one entangled state be transformed into another?
What about approximate transformation?
A review: majorization and quantum entanglement
Quantum teleportation: Teleporting a quantum state from one end of a molecule to the other.