Deployment: A Neglected Topic
Even a language such as Java, which has been expressly designed for the Internet age, does not have convenient mechanisms for deployment. The deployment issue has historically been a neglected one. In the past, a floppy disk sufficed. Then, as the hardware grew, so did the software, and a couple of floppies (followed by a CD-ROM) did the trick.
Now we are in the Internet age, and an average connection can support much more than a stack of CDs. Simply because it is interactive, it can enable more sophisticated deploymentfeatures that were not even thinkable before the Internet advent. In addition, consider the fact that we are still in the infancy of this phenomenon.
All this power is still poorly used as well as poorly understood. The Internet is a relatively new medium. We constantly hear about all its wonders, but its real potential is still far from being fully grasped by us.
Sophisticated Deployment Is a Luxury
The problem is that all this complexity is rarely really needed. Cool deployment technology has always been perceived as an extra, with a very low priority level. There was the user, after all, who could always stand some additional dialog boxes for choosing proxy settings, current OS builds, version numbers, and the like. Historically, deployment has been linked with Graphical User Interface (GUI) usability. GUIs came into play with special installation software intended for the average customer. But the Internet may soon change this as well. Now, competitors are just a mouse click away, and a complex installation procedure or a clumsy Internet upgrade could be fatal for a software product.
Another kind of cost is related to the installation of a specialized deployment helper on client platforms. Placing it on all the client platforms, even the more diverse, could be expensive. Given the platform-neutral nature of languages such as Java, this becomes even more difficultif not impossible. Other technologies that take advantage of preinstalled software don't have this obstacle, however.