Despite this glowing review, TkDesk is not without its flaws. The most obvious complaint is its speed. One frequently notices operations that slow down because of the large amount of Tcl being interpreted behind the scenes. I usually choose not to display the icons in the file browser—updating the icons in a large file list often takes too long. However, this is likely to change very soon. Tcl 7.6 and earlier versions were internally based on no more than substituting strings over and over again. While this allows for the design of a very simple interpreter, it does cause a performance hit in frequently executed code. Tcl 8.0 has an internal byte-code interpreter and provides speed comparable to Perl. Unfortunately, the object-oriented extension to Tcl, [incr tcl], that TkDesk is written in, is not yet ported to Tcl 8.0. The work to port [incr tcl] to Tcl 8.0 is ongoing and may be finished by the times this article goes to press. Once [incr tcl] works with Tcl 8.0 we can expect a big speed increase in TkDesk.
I hope that TkDesk is not the last word in GUI desktop managers for Unix and, in particular, Linux. Several other projects, like the K Desktop Environment and GNUStep show much promise. Just as TkDesk currently demonstrates, I think the future of GUI design lies in tying the widgets that these projects provide to a flexible scripting language like Tcl, GUILE or other scheme variants, Python or some yet-to-be-invented scripting language. The success of the GIMP project is another testimony to the success of this type of design. For now, though, TkDesk is the ruler of my desktop.
- Geek Guide: The DevOps Toolbox
- Nmap—Not Just for Evil!
- Download "The DevOps Toolbox: Tools and Technologies for Scale and Reliability"
- High-Availability Storage with HA-LVM
- Resurrecting the Armadillo
- DNSMasq, the Pint-Sized Super Dæmon!
- Real-Time Rogue Wireless Access Point Detection with the Raspberry Pi
- Localhost DNS Cache
- March 2015 Issue of Linux Journal: System Administration
- Days Between Dates: the Counting