
I’m Will! You may also know me by kernelmethod
in many spaces.
About me
I graduated from the University of Colorado Boulder in May 2020 with a M.Sc. and B.Sc. in applied mathematics, and a B.Sc. in computer science. During my time at CU I did research in Stephen Becker’s lab, where I focused on randomized algorithms (especially LSH) for large-scale data analysis.
I’ve also done graduate-level research at UCLA in Yuan Tian’s lab in machine learning privacy and fairness, and have publications at SIGKDD and EMNLP.
I am currently a machine learning engineer at Karambit.AI.
I enjoy writing in my free time; check out my (slowly-updated) notes.
Things I’ve worked on
- I taught a section of CS3710: Intro to
Cybersecurity for the University of Virginia
in Fall 2022.
- I wrote all of the lecture materials, assignments, and exams for my class! You can find code for assignments here; lecture materials will be published to their own repo in the near-ish future.
- BSides Boulder: I’m a co-founder of the BSides Boulder security conference.
- The Encryption Compendium: I co-developed The Encryption Compendium, which provides comprehensive resources on debates around encryption policy.
Side projects
- Tardis: a simple multi-executable packer and crypter that I wrote for ISTS 2022.
- LSHFunctions.jl: a Julia package for locality-sensitive hashing.
- Seagrass: a library for dynamically instrumenting and auditing Python code at runtime. I started developing this package alongside my research to help me debug and profile my code more easily.
- ChaChaCiphers.jl: a
Julia implementation of the ChaCha stream cipher family. It provides keystream
access compatible with Julia’s
AbstractRNG
interface, which allows for fast, GPU-compatible CRNG. You should also check out my fork of pytorch/csprng for PyTorch-compatible secure RNG. - I’m a massive AppArmor nerd. I’ve written homework assignments on AppArmor and added AppArmor integration to sudo (currently available in Debian unstable). I’m hoping to eventually get out my long-planned AppArmor internals blog series (ETA “whenever I have a few months to kill”).
- I’ve written a handful of mods for the science-fantasy roguelike game Caves of Qud. I’m also the author of the Snapjaw Mages! introductory modding tutorial.
Publications and preprints
- Kunlin Cai, Jinghuai Zhang, Zhiqing Hong, William Shand, Guang Wang, Desheng Zhang, Jianfeng Chi, and Yuan Tian. 2024. Where Have You Been? A Study of Privacy Risk for Point-of-Interest Recommendation. In Proceedings of the 30th ACM SIGKDD Conference on Knowledge Discovery and Data Mining (KDD ‘24). Association for Computing Machinery, New York, NY, USA, 175–186. https://doi.org/10.1145/3637528.3671758
- Jianfeng Chi, William Shand, Yaodong Yu, Kai-Wei Chang, Han Zhao, Yuan Tian. Conditional Supervised Contrastive Learning for Fair Text Classification. EMNLP Findings 2022. https://arxiv.org/abs/2205.11485
- William Shand, Stephen Becker. 2020. Locality-sensitive hashing in function spaces (preprint). https://arxiv.org/abs/2002.03909