My son will apply to study (undergraduate) Computer Science, and after attending the open days of a couple of universities, he found the Computing course of Imperial College especially exciting. It appealed to him that beside a mathematicaly based foundation, the theory is put into practice (eg. writing your own compiler). However, he would prefer not to live in London if possible. Is there another University offering a course with a similar combination of theory and practice?