I'm Michael Vaughn, a Ph.D. student at the University of Wisconsin-Madison, and my advisor is Tom Reps. My research interests lie at the intersection of operating systems and programming languages. In particular, I'm interested in how techniques from formal verification and program synthesis can be applied to make operating systems safer, more secure, and easier to develop.
NoFAQ is a system that learns to repair command-line mistakes based on user input. Users submit failed commands and their associated error messages, and the system attempts to generate possible fixes. If none are found, the system retains the examples, and uses them as a training set for new repair rules.
I'm collaborating with David Bingham Brown and Ben Liblit, and Tom Reps on mutation testing research. We're investigating whether it's possible to improve mutation testing by analyzing the contents of github commits.
I collaborated with Tyler Harter, Charlotte Dagga, Andrea Arpaci-Dusseau, and Remzi Arpaci-Dusseau on A File is Not a File, a detailed analysis of the I/O behavior of modern OS X applications. An SOSP '11 best paper winner!
Linux is pretty darn cool. It's good to know how it works
Linux Kernel Development by Robert Love is a fantastic overview of kernel architecture.
The Linux Cross Reference, because you can't live on grep alone.
An important American philosopher once said, "With great power comes great responsibility." C is a powerful language, and a great tool. It's also the source of millions of security exploits and bugs. Learn it well, and use it with care.
Read K&R. It's a quick read and a life-saver.
Check out Expert C Programming by Peter van der Linden. A wise man told me to read it. He was right.
The NoFAQ backend is written in F#, and it's honestly a delight to maintain. I can't imagine using another language. I strongly recommend learning some ML-esque language, because the skills you learn will pay dividends, even when you're using other languages. Haskell is a good way to start, because it's popular and has a lively user community. Real World Haskell and Learn You a Haskell are both good introductions to the intracacies and applications of ML-style typing and functional programming.
Because you should get away from that darn computer once in a while
When it's not covered in snow, Wisconsin is a great state for cycling. Budget Bicycle Center is a Madison institution with reasonable prices and friendly staff. I ride a Raleigh Clubman with a Brooks saddle. It's just about the most fun you can have making yourself sunburned and incredibly tired.
Read fiction! It's good for you! I like William Gibson, Cormac McCarthy, Jorge Louis Borges, Herman Melville, Charles Dickens, and a lot more.
American Players Theater is a delight. So is the Wisconsin Film Festival.