Most professional programmers regard programming not only as a way of
living but as a hobby too. Writing software is such a tremendous experience
that programmers continue doing it in their spare time. The only difference is
that when they are free of other people's deadlines they work on their "pet" applications. Ordinary people keep cats, dogs, or
fish as pets. Programmers keep pet applications. The pet application may be useless
to others; we write it just for the pleasure of creation. If we have to learn
a new programming language, we often rewrite the pet application first.
Just as ordinary people keep different kinds of pets, programmers have different
kinds of pet applications,
often more than one at any time. Programmers' pets can be graphics apps,
communications utilities, database programs, or operating systems. Usually
these pet applications are known only by the friends and the colleagues of the programmer,
but sometimes they grow and become something unusual.
One example is the "Hello world!" program. Its origin is unknown, but somehow it became
the pet of almost all authors of books on programming languages.
Probably the most successful of all pet applications is Linux by Linus Torvald.
My favorite pet
application is called WStar. I wrote the earliest version in Basic while I was in high
school. Then I adapted it to almost all computers I encountered and rewrote
it in all the programming languages I learned. I wrote it in Basic, Pascal,
C, PL1, Algol, Fortran, assembler. and several scripting languages. It worked
on ZX Spectrum, Commodore 64, some ancient Atari computer whose name I do not
remember, and of course on PCs. Naturally, when I started learning how to write
programs under Windows I wrote a Windows version too. Later I changed it to
use object-oriented language features and added new abilities. When I rewrote it as
a Delphi component it was the first time I really felt that my pet was a living
thing that belonged to me. Placing several WStar components on a new form and
changing their parameters was a surprisingly rewarding experience.
Sometimes we treat pet applications badly. We abandon
them for years, half-finish some versions, and almost never document
and debug them they way we should. Once we have played with our pets to learn the basics of a new programming
language we forget them and begin work on boring (but profitable) applications.
I wrote this article to offer some recognition to my pet application.
I commented the code carefully and published it
here as freeware. I do not really care if you like it or not. If you like
it, send me e-mail -- if not, just delete it. But stop and think a moment for
your pet. You do have a pet, don't you?
Pintir Gabor
Szikesfehirvar, Krivanyi u. 15.
H-8000, HUNGARY
Tel: +36 30 9972445, Fax: +36 22 304326
Email: propix@mail.datatrans.hu, Pinter.Gabor@freemail.hu
Web: www.propix.hu, www.datatrans.hu/propix