This class was highlighted by an enthusiastic and knowledgeable instructor, interesting material, and comprehensive explanations of difficult topics. Many students thought the chal enges and rewards of this course were well worth the struggle. The worst aspects of the course were the difficult exams and the very perplexing material. Much of the material is theoretical and abstract, and homework can be vague. Suggestions to improve the class included more hands on examples, a better text book, and more comprehensive lecture notes. Prospective students should know the material is chal enging and you should study regularly to retain the information. This is not an easy class by any means, but it is fascinating and integral if you plan to go into computer engineering.