We have pondered if computers could be taught to learn ever since they were first created. The impact would be significant if we could figure out how to programme them to learn to get better automatically as they gain experience. Imagine computers analysing medical records to determine the best treatments for novel diseases, or personal software assistants identifying users' changing interests to highlight particularly pertinent articles from the morning newspaper online. A thorough grasp of how to make computers learn would pave the way for numerous new applications, levels of proficiency, and levels of customization.