Whenever we need to access some hardware (printers, smart cards, cameras, automate file updloads and downloads) we have to rely on a Java applet or Flash. The user must agree to the Java security warning before. Until browsers don't give us a better multi-browser and multi-plataform solution, we still need to use Java. Some of the html5 specs are to solve these issues.