ional thinking is using abstraction and decomposition when attacking a large complex task or designing a large complex system. It is separation of concerns. It is choosing an appro...
This paper argues that "formal methods" can (continue to) provide the thinking tools for the future of computing science. Every significant engineering or scientific disc...
This paper discusses our experience in teaching an interdisciplinary general education course called Sound Thinking that is offered jointly by our Dept. of Computer Science and De...
Alex Ruthmann, Jesse M. Heines, Gena R. Greher, Pa...
A key to improving at any task is frequent feedback from people whose opinions we care about: our family, friends, mentors, and the experts. However, such input is not usually ava...