I had a lot of fun selling my own software for a while. I encountered some interesting folks along the way. People A person from France registered MailSend by sending me a $10 bill in the mail … from France to the United States. It made it to me! He said that was the most convenient way for him to pay me in U.S. funds. For a while, I kept all of the envelopes from customers who sent registrations via postal mail.
I had been supporting MailSend for about fourteen years. I had regularly fixed bugs and added a feature here or there. It was showing its age regarding modern mail agents that could leverage secure SSL connections to SMTP servers. I had written up a document on using the open source program STunnel as an intermediary between MailSend and SMTP/SSL servers, but that just seemed to be very kludgy. It was kludgy and I was taking money for a program and telling people how to use a free program to get more out of it.
The next product that I wrote was a simple command-line screen capture utility called ScreenKap. It was written in C. It used the same graphics library that I had purchased for WallShow and WallMake. ScreenKap existed in two forms; a console mode application and a Windows UI application. The UI application didn’t really have a user interface … it just didn’t bring up a dark console window while trying to capture the screen contents.
For some personal needs, I built a C program that would act as kind of an installer tool. I embedded some files to the executable. When run, the executable would extract the files and it would invoke a specific one as a batch file. I formalized the code a bit yielding a new utility: CMD2EXE. CMD2EXE was based on a simple C runtime stub. When executed, the stub would check for files that had been appended to it.
I had been spending some time in the Usenet groups comp.os.msdos.batch and comp.os.msdos.batch.nt. Those were fun groups. Participants in those groups were usually talking about writing batch files to perform various kinds of tasks. The people that frequented these groups were usually MS-DOS/Windows systems administrators. They were a target audience for the tools I had built so far. I had noticed how complex some of the tasks some of them needed to write and maintain were.
A number of people were asking if I had a counterpart for MailSend that would allow them to read mail via a command-line. I had thought about such a utility, but the practice of reading email differs from that of sending mail. It’s easy to envision text and or files that are produced by some sort of process that can be then send out via SMTP, but what would the automation of processing inbound email look like?
My MailSend customers would often ask me about programs that could supplement MailSend. Some asked for schedulers, some asked about controlling dialup networking back when many ISP’s charged by the minute for time on the Internet. I sat down one morning and wrote two utilities: HangUp and TSched. HangUp HangUp was just a program that would hang up the first dialup connection using the RAS ( Remote Access Services ) API.
I was quite energetic about writing and selling my own software in the mid-90’s. Perhaps not as energetic as people who made lots of money, but I put a fair amount of time into the study of people who made money selling products on their own. In 1997, I happened to be writing a review of the Thompson Automation AWK compiler for an article I had pitched to Dr. Dobbs Journal called Examining the TAWK Compiler.
I had been programming computers since about 1980. Like many, I started coding in BASIC followed by Z-80 assembly language. After that, my adventures spanned a number of languages and computer systems. In the early 1990’s, I had decided to release a utility using the “shareware” marketing method. This entailed providing a trial copy of the particular unit of software that the prospective customer could try before licensing. This model is so common in modern times that the word “shareware” has all but disappeared.
Hey there! I used to sell a command-line email utility that I had written for 32-bit implementations of Microsoft Windows. The utility was named MailSend ( not to be confused with the three or four other command-line mailers which share the name. ) MailSend was the first of my independent application to achieve widespread use. Although it’s no longer something that I sell, I wanted to document the experience of developing and selling MailSend and other applications from my point of view for historical purposes.