David McClamrock

NOTE: David's web page at pa-mcclamrock.com disappeared off the internet in 2013. Fortunately the Wayback Machine preserved it, including .pet (renamed .tgz) archives of the following applications.

See https://web.archive.org/web/20140109123601/http://pa-mcclamrock.com/﷐

I guess I qualify as a "Tcl'er," having unleashed ten Tcl applications and two megawidgets upon the world:

WISH Music Time, a simple countdown timer and music player (front end to mplayer audio and, optionally, TiMidity++);

WISH Checkbook, a simple home finance manager;

WISH Superscriptorium, a comparatively simple computer-aided Latin-English translation program;

WISH File Rusher, a simple twin-column file manager;

WISH Supernotepad, a fairly simple, fairly powerful text and HTML editor;

WISH Binary Viewer, a super-simple binary file viewer and (if you insist) editor;

WISH Command Center, a simple program launcher;

WISH Disc-Writer, a simple front end to "mkisofs" and "cdrecord" for writing and rewriting CDs and DVDs;

WISH Mini-Console, a simple Unix-type command console optimized for Tcl/Tk;

WISH List, a fairly simple database/list manager;

WISH Color Picker Plus, a fairly versatile megawidget for applying user-selected color schemes to Tk applications;

WISH User Help, the world's simplest hypertext help megawidget (as far as I know, anyway).

All but WISH List (which I've been thoroughly rewriting to take advantage of Tk 8.5 improvements, but I'm not done yet) are available for free download from my web page: http://www.pa-mcclamrock.com/papenguinspacks.html

All my programs and megawidgets are distributed under the Maximum Use License for Everyone (MULE, for those who favor silly-sounding, animalistic acronyms)--a little lightweight license I wrote myself to introduce a bit of barely perceptible levity into the lugubrious lore of licensing, while retaining the rudiments of a real open-source software license.

I'm not a professional programmer, just a home computer user and hobbyist. I never heard of Tcl until at least the spring of 1999, when I installed Linux on my home computer. (I did that because Windows 3.1 wasn't Y2K compliant and I wasn't interested in "upgrading" to a later version of Windows.) After a fairly slow start, I actually managed to use Linux with some success on my old 486/66 machine with the help of some programs I found on the TUCOWS Linux 4-CD set that came out in midsummer 1999. Three of the most useful ones were written, in whole or in large part, in Tcl/Tk: Henrik Harmsen's FileRunner (far superior to the slow, clunky "xfm" file manager that came with Red Hat Linux 5.2); Curtis L. Olson's CBB (Check Book Balancer), quicker than Quicken for simple home finances; and Joseph Acosta's TkNotePad, the least geeky, most familiar-looking and -acting text editor I could find in the bizarre new world of emacs, vi, pico, and their ilk. By the end of 1999, with the help of programs such as these, I had achieved my goal of Windows-less Y2K compliance: I bought a new computer, installed Linux (Mandrake 6.1) as the only operating system, and didn't look back (I'm now running Puppy Linux 4.1.1).

Somehow I picked up the idea that Tcl was a lot simpler than the average programming language, and I began to wonder if even I might be able to write programs in it. I saw Tcl/Tk for Real Programmers by Clif Flynt on the library shelf, checked it out, and read it. I don't think I derived a lot of benefit from it (probably because I wasn't a real programmer), but it did get me pretty interested in learning how to make widgets do things on a computer, and it convinced me that Tcl/Tk was my best bet for success. (Tcl/Tk appeared to be the simplest and most comprehensible language available for writing GUI-based programs, plus it didn't require the programmer to do any time-consuming, loathsome compiling!)

What really got me going was Graphical Applications in Tcl & Tk (2nd edition) by Eric Foster-Johnson. Here was a book (and a CD-ROM) that contained lots of fairly simple scripts that would do things I wanted done, and that explained how and why this and that specific bit of code would do this and that specific thing. Emboldened by this book and by the Tcl/Tk Programmer's Reference by Christopher Nelson, I started to modify the TkNotePad code to get it to do more things, such as to display a "Save Changes?" indicator on the title bar when there was unsaved text in the text widget.

After a few failed efforts I succeeded, but I couldn't stop there. I kept thinking of more things I wanted my text editor to do, and trying to find ways to do them: to insert special characters with a single click; to insert whole files into the middle of my text; to display colors and insert hexadecimal codes for them; to insert HTML codes rapidly; to write new Tcl scripts and instantly test-run them. Starting with the code from TkNotePad and from Eric Foster-Johnson's "textedit.tcl," and with valuable help from several other Tcl'ers, eventually I developed WISH Supernotepad, which can do all these things and more--and I was, within reason, hooked on Tcl/Tk programming as a harmless and even beneficial hobby.

David McClamrock

   Email: mailto:[email protected]
   Homepage: http://www.pa-mcclamrock.com/icebox.html

Fort Wayne, Indiana, USA


An anonymous questioner asks: Any of your apps run on Windows?

Answer: WISH Supernotepad and WISH List have been reported to work on Windows (except a couple of features of WISH Supernotepad won't). WISH Superscriptorium, WISH Binary Viewer, WISH Checkbook, and the two megawidgets should work on Windows without modification, although I haven't tried them. At least one person has modified WISH Command Center to work on Windows, but it took some doing. The present versions of the other programs will work only on Unix-type systems, so far as I know. I guess it probably wouldn't be too hard to modify them for Windows (at least for someone who knows and cares a bit more about Windows than I do).


Now let's see if I remember how to start a new page on this Wiki, so I can try to solve a problem with a clock quirk.


OK, that worked pretty well; let's try a question about software keypress emulation.


Some people actually prefer the GTK2 look to anything available with Tk--or anything I think is available. Let's see: is there any sign of a GTK Stardust-like theme for Ttk widgets?