Click the link that follows for more news about CS With Impact.
Doug Woos sees some of the rationale for his interest in academia originating with his passion for moral and political philosophy. "The best attitude for a philosophy class," he says, "is to read a text and buy into it for the entire duration, accepting that it's correct throughout. Then, when you're done, ask what the problems were. Taking that step of really buying in is so important: starting with a critique when reading a research paper or studying a new subject can be a huge mistake."
Doug is joining Brown CS as lecturer next semester (he's one of the first hires in the landmark CS With Impact expansion), and his ability to immerse himself in a subject and suspend critique may stem from hours upon hours spent among the ever-new planets and cultures of science fiction. "I was obsessed with SF as a kid," says Doug, remembering a family basement filled with classics: Clarke, Heinlein, Asimov, Dick, and the eccentric but visionary Cordwainer Smith. "I don't know where I'd be without it."
His first exposure to computer science came early. The son of a programmer, Doug learned Python at age eleven or twelve and worked for his father in middle school, enjoying himself but not expecting to make it a career. As an undergraduate at Swarthmore College, he took computer science classes to avoid atrophy of his programming skills, but his initial plans were to major in physics.
But research with Professor Tia Newhall, Doug's undergraduate advisor, changed his mind. Initial projects with memory allocation in Linux clusters were followed by graduate work at University of Pennsylvania with formal verification and programming languages. "I was still interested in systems," he says, "but I wanted to apply PL tools and techniques."
Doug's interests are unabashedly broad: "CS is such a young field, and it wasn't that many years ago when systems wasn't a separate area from programming languages or artificial intelligence. We've divided ourselves semi-artificially, and I'm skeptical that all of the divisions are useful. I think it pays to be interested in a really broad swath of computer science."
And his recent research, he explains, was directly by inspired by his teaching. Already interested in formally verifying the safety properties of distributed systems ("Verdi: A Framework for Implementing and Verifying Distributed Systems"), he noticed that students in his Distributed Systems class were having a difficult time debugging their work. This led to his current project, Oddity, a graphical debugger for distributed systems.
"It was a great example of what I love about academia," Doug says. "Seeing students thinking about interesting problems, really understanding the material, and asking questions that you can't answer."
In just a few months, he'll be standing up in front of those students, and Doug says he's excited by courses like Tim Nelson's CSCI 1950-Y Logic for Systems and the new sequence of Brown CS introductory courses: "I'd love to help develop the new sequence, and to teach broadly about programming languages, systems, OSes, or compilers."
Or possibly formal methods or verification, he says, explaining that he envisions them growing in prominence in the days ahead. What does he see in the crystal ball? "From my perspective as someone who likes applying PL techniques to systems," he laughs, "more of that!"
Giving the examples of Amazon Web Services and Oracle, Doug says that he sees widespread application of at least lightweight formal methods techniques to distributed systems. "These systems are so big and so complex," he says, "that you find bugs at very surprising levels. We need to understand these systems not just at the level of a diagram on a whiteboard: we need an FM understanding. As we use certain languages more and more, we can only avoid some really serious security vulnerabilities by having language-level guarantees of correctness."
As we wind down our conversation with Doug, we move through science fiction and philosophy to arrive at another of his great loves, coffee. ("I'm drinking it during this conversation," he notes.) A bit spoiled by the world-class scene in Seattle, he notes that Providence has some "pretty tasty" beans of its own that he's ready to put to use.
And he's eager to get started at Brown CS: "I really can't wait. Brown just jumped out at me because of the impressive commitment to undergraduate education. Everyone, even people who are focused on research, are passionately involved in what the undergraduate curriculum is like. I had a huge number of amazing conversations with faculty and students when I was in Providence, and I'm looking forward to more."
For more information, click the link that follows to contact Brown CS Communication Outreach Specialist Jesse C. Polhemus.