The aim of this course is to provide students with knowledge and understanding of how computing will be used in the future. It is about moving beyond the traditional desktop computing model, into embedding computing into everyday objects and everyday activities. Topics covered will include the visions of Ubiquitous Computing and some of its applications, Location in Ubiquitous Computing, Context awareness in Ubiquitous Computing, P2P networks systems, Human-computer interaction, Privacy in Ubiquitous Computing.