Greg Little

Ph.D. in Computer Science, MIT
Berkeley, CA · glittle@gmail.com · (617) 308-4673 · glittle.org · github.com/dglittle

Experience

Independent Researcher / Software EngineerBraid Project2018–Present
Designed Sync9 (CRDT for collaborative text editing) and the Antimatter algorithm, enabling practical history pruning in CRDTs while preserving full consistency guarantees.
CTOEnsoRecent
End-to-end encrypted real-time collaboration platform for text editing and file sharing.
Solo ConsultantStealth Creative Tools Project2019–2024
Sole engineer building a Figma-style collaborative design tool from scratch, owning the full stack with deep AI integration.
Algorithm EngineerSIV (siv.org)2020
Wrote the initial implementation of SIV's cryptographic shuffle, based on C. Andrew Neff's verifiable secret shuffle (A Verifiable Secret Shuffle and its Application to E-Voting, ACM CCS 2001).
Algorithm EngineerCryptocurrency MiningContract
Built a GPU-based zCash mining algorithm working around the GPU-resistant Equihash proof-of-work.
Labor ScientistoDesk (now Upwork)2011–2013
Researched distributed hiring and on-the-fly workforce integration, extending thesis work on human computation to real labor markets.
Video Game Developer2000–2002
Shipped Operation Blockade (fixed bunker-defense FPS) and Operation Steel Tide (submarine combat, hybrid third-person navigation and first-person surface combat).

Education

MIT — Ph.D. & M.S. in Computer Science (2005–2011). Thesis: Programming with Human Computation; created TurKit for iterative algorithms on Mechanical Turk.

Arizona State University — B.S. in Computer Science (2002–2005).

Selected Publications

Little, G. (2011). Programming with Human Computation. Doctoral thesis, MIT.

Little, G., Chilton, L.B., Goldman, M., & Miller, R.C. (2010). TurKit: Human computation algorithms on Mechanical Turk. UIST 2010.

Carr, R.D., Konjevod, G., Little, G., Natarajan, V., & Parekh, O. (2009). Compacting cuts: A new linear formulation for minimum cut. ACM Trans. Algorithms. (Erdős number: 3)

Little, G. & Miller, R.C. (2007). Keyword programming in Java. ASE 2007.

Little, G. & Miller, R.C. (2006). Translating keyword commands into executable code. UIST 2006.