 Felly, y theory of quantum information is the extension of ideas from classical information theory and computer science to the quantum realm, because we know that quantum mechanics behaves very differently to our everyday experience and has all sorts of interesting effects that we don't see in our everyday life. Quantum information theory is the theory that tries to harness these effects for our advantage to do interesting things that we can't do with normal physics. Quantum computing, quantum information are becoming increasingly more important and especially right at the moment because in a few years time we'll start seeing very large scale quantum devices being developed, examples being the work going on here at IBM also elsewhere which can really solve problems which we don't know how to solve using our normal computers and this could really be the next significant change in the IT industry and it could affect a number of other important industries worldwide. So I think now is the time for students to try and understand how these machines really work. There are several ways that they can do that. One way is they can go to a university and do some courses to do with quantum computing, quantum information. I teach one myself at Bristol but there are many excellent courses worldwide including ones available online. But now they can also experiment with online quantum computer simulators or even real quantum computers. For example IBM's own quantum experience cloud based quantum computing interface is a nice example of this. So there's a number of different ways that they can get into this area from just small scale tinkering to really full on preparation for a career in quantum computing. So the interesting thing about quantum algorithms is that they are based on very different principles to classical algorithms and they try and use these interesting quantum effects to do things we can't do without quantum mechanics. Because these effects are so different to our everyday experience it makes it hard to write algorithms in this way. So we've seen that even though there's been a lot of exciting work done on quantum algorithms we don't have as many algorithms as we would like. There's still a lot of interesting challenges ahead. One way in which this is changing is that soon people will be able to run fairly large scale algorithms on real devices and even now they can already run small scale algorithms on real devices. So I think that we're going to start seeing more quantum algorithms being developed like both intrinsically new algorithms and ones based on optimising and refining existing algorithms now that people have access to real devices to play with. So I think it's an exciting time in that sense. I wish there was a magic standard straight forward technique that would just take a classical algorithm and give us a quantum speed up. Unfortunately there isn't in full generality and there are algorithms where we know that we can't achieve a quantum speed up. But there are some fairly general techniques that we do know which are often based around choreograph and quantum interference in some clever way to try and achieve a desired result. So we know for example some fairly general purpose techniques for speeding up the solution of constraint satisfaction problems and certain optimisation problems and I think finding new approaches for general speed up of classical algorithms is an exciting direction for the future. I think the killer app for quantum computers at the moment seems to be simulation of quantum systems, quantum physical systems. So this is something which is very hard to do in full generality on a classical computer. But we know some very clever quantum algorithms that enable efficient simulation of quantum mechanical systems which could have applications in areas as diverse as material science, drug design, this kind of thing. But also I think an area which is very interesting is quantum speed ups of hard optimisation tasks which could have very wide ranging impacts in all sorts of different industries because in almost every aspect of life nowadays there are algorithms behind the scenes solving hard computational problems and I think that it will be very interesting to see to what extent these kind of optimisation problems that are going on behind the scenes can be accelerated with a quantum computer. A quantum algorithm for accelerating a class of classical algorithms which are known as backtracking algorithms. So these are algorithms for solving constraint satisfaction problems classically which can be seen as trial and error type algorithms. You try a solution, if it doesn't work you try a slightly different solution etc. And it turns out that you can get a fairly substantial quantum speed up of these algorithms in some sort of generality. So this is a kind of a general framework that we can accelerate but then an interesting question is what specific problems can we target using this kind of approach. And in some joint work together with a student we are able to show that the famous travelling salesman problem a certain algorithm for this can be accelerated using a quantum algorithm. So I think this is a very interesting direction for future work because there's a whole world of these algorithms out there based around similar paradigms and it's possible we might be able to find some interesting quantum speed ups there and these could have a number of different applications to constraint satisfaction problems but also optimisation problems more generally. In the near term this sort of quantum computers that we have are not going to be perfect they're going to be kind of noisy, they're going to have errors, faults, things like this as well as being relatively small compared with what we hope we can build in the long term. What problems can we solve with these kind of noisy near term devices especially problems that we really care about solving? What interesting challenges can we address with the sort of machines we're going to have in the coming five years rather than the coming 20 years?