This is my
fourth year teaching at BYU. I received my B.S. in Electrical
Engineering from Stanford University in 1990, and my Ph.D. in Computer
Science from the University of Southern California in 1997.
In the fall I will teach CS 460 Computer Communications and Networking and CS 660 Computer Networks CS 460 explains how the Internet works today, from the application layer down to the link layer. Students do some network application programming in Python and also build their own small version of TCP. CS 660 examines Internet research topics, including both classic papers in the field as well as the most recent developments. Students will do some advanced network programming, complete a research project on a networking topic, and learn a lot of valuable research skills.
In the winter term I will teach a section of CS 360 Internet Programming. CS 360 helps students learn a wide range of Internet programming skills.
I conduct research in the areas of wireless networks (routing and transport protocols) and peer-to-peer networking (file transfer, gaming). I also have a strong interest in applying networking technology to genealogy research. Most of my work involves simulation or network experiments using PlanetLab. We are currently in the process of building a wireless mesh network in the Talmage building.
Please see me if you are interested in doing some network research for either your undergraduate or graduate degree.

