Previously he led the creation of Parallel Language Integrated Query (PLINQ), Parallel Extensions to the .NET Framework, and software transactional memory on the Common Language Runtime (CLR) team. His latest book, Concurrent Programming on Windows (Addison-Wesley), was published in November 2008, and his next, Notation & Thought: A Brief History of Programming Languages, is well underway. When not working, Joe enjoys studying the history of mathematics, dabbling in various branches of abstract algebra, and, most of all, spending time and traveling with his fiancée Kim.