My research is in low-level security and systems.
- Shuffler: Fast and Deployable Continuous Re-Randomization
David Williams-King, Graham Gobieski, Kent Williams-King, James P. Blake, Xinhao Yuan, Patrick Colp, Michelle Zheng, Vasileios P. Kemerlis, Junfeng Yang, William Aiello
Proceedings of the Twelfth Symposium on Operating Systems Design and Implementation (OSDI '16), 2016.
- Making Lock-free Data Structures Verifiable with Artificial Transactions
Xinhao Yuan, David Williams-King, Junfeng Yang, Simha Sethumadhavan
2015 Workshop on Programming Languages and Operating Systems.
- Tolerating Business Failures in Hosted Applications
Jean-Sebastien Legare, Dutch T. Meyer, Mark Spear, Alexandru Totolici, Sara Bainbridge, Kalan MacRow, Robert Sumi, Quinlan Jung, Dennis Tjandra, David Williams-King, William Aiello, Andrew Warfield
2013 ACM Symposium on Cloud Computing. (Side project in master's work.)
- The Gold Standard: Automatically Generating Puzzle Game Levels
David Williams-King, Jörg Denzinger, John Aycock, and Ben Stephenson
2012. 8th AAAI Conference on Artificial Intelligence and Interactive Digital Entertainment, poster paper. pp. 191-196. (Undergraduate thesis work.)
- Enbug: when debuggers go bad
David Williams-King, John Aycock, Daniel Medeiros Nunes de Castro
2010. 15th Annual Conference on Innovation and Technology in Computer Science Education. pp. 28-32. (Undergraduate research work.)
Here is my rant about Qt signals/slots: Why I dislike Qt signals/slots
. It was written some time ago, and I've since found this page describing an Event Notifier
design pattern which sort of describes what I was getting at.