Introduction - 1

Background - 2

Deployment - 3

Starkits - 4

Tclkit - 5

Advanced topics - 6

Repositories - 7

Server apps - 8

Who uses this - 9

Examples - 10

Conclusion - 11




2 - Background

Binary versus source, RPM vs apt, tar vs cpio. It wasn't always like this in the Unix world. Consider shar - the shell archiver - which became ubiquitous in the early days of the Usenet. A shar archive is a single file shell script containing a compressed binary archive (usually uuencoded). This revolutionised the distribution of Unix software - a single file download which, when run, could build and install an application. But shar files weren't suited to more complex applications. Packages like RPM or Apt help - but they are very much geared to solving a system level problem not (potentially) cross-platform application deployment. And there is still the source/binary dichotomy.

Things are not quite so bad in the Windows and Mac worlds. Being single platform helps, since the user base is far less interested in source. Of course, these platforms have their own idiosyncrasies (even when dealing with binary distributions) - hence the development of products like Vise and InstallShield. But there is still the potential effect on system stability when application installers manipulate the Windows registry.

Scripting is freeing people to choose the best platform for their application. Developing in a scripted language can be very productive - providing high levels of functionality covering all aspects of business logic, graphical user interfaces, databases, networking and interfacing with existing technology. And, with a little care, languages like Tcl/Tk allow you to build applications that run well on Windows, all common Unix variants and the Macintosh.

Scripting delivers on the promise of making programmers more productive - and so deployment is becoming more of an issue, for both open and closed source applications.

see also

Starkit Home Page

Tclkit Home Page

Metakit Home Page

SDX Utility

Wikit Home Page

Tclers' Wiki

Author's Website

Updated paper, by Steve Landers, as presented at Tcl/Tk 2002 conference - see also original PDF.

Papers & Presentations