Complexity leads to errors. The more complex a system is, the more likely it is to have errors. This is the root of the problem with computer security. The more functionality our systems have, the more difficult it is to defend them.
We now see the affects of complexity in systems with underlying (embedded) computers. An example of this is the Toyota Prius, which is having brake issues due to software related issues. A few years ago it would have been difficult to imagine a software issue affecting the brake system of a car. Now it is a reality, and the future is not looking much better. As more and more complexity is introduced into our devices, errors are more likely to occur.