About cmsWxCalcIII

This Version

See the Help file for more information on how the program works and what was done in each update.


The beginning

In the mid-1970s, I derived (somehow) the wind chill equation from some equation fragments in the book, The Weather Almanac, by Gale Research. That equation was then used to create a programmable calculator algorithm, then, in the 1980s, the algorithm was rewritten in BASIC and named "Chill." It was later rewritten again in C in the mid-1990s.

The other beginning

Sometime in the 1980s, I also took equations I found in Techniques of Observing the Weather and any other source I could find - and created "Psychro." That program's entire purpose in life was to convert dry- and wet-bulb readings from a psychrometer into dew point and relative humidity.


In 1995, I decided to try C++ programming. As a demonstration project, I merged "Chill" and "Psychro" into a command-line-based C++ program. Unit conversions were added at this point.


Once WxCalc was working, I began working on a graphical user interface (GUI) for the program with the help of Microsoft's Visual C++. WxCalc2 was a multiple-document version, which quickly proved to be unacceptable for this program.


WxCalc2a replaced the ill-fated WxCalc2. This C++ for Windows program was last updated in 1997 when I abandoned C++ programming. Partly because of less-than-optimal design, WxCalc2a was very difficult to maintain or enhance. A better understanding of object-oriented programming back in 1995 probably would have helped a lot.

WxCalc2a differs from cmsWxCalcIII in that it requested input via a dialog box and displayed its output on the main window. The output was in one set of units at a time, which could be changed by clicking the appropriate button. WxCalc2a output could not be copied to the Windows clipboard. There was also no quick-set for the units selections. Otherwise the two programs are rather similar. In fact, many of the functions in cmsWxCalcIII (other than units conversions) were taken directly from the C++ code in WxCalc2a and modified slightly to be compatible with JavaScript. cmsWxCalcIII introduced psi (pounds per square inch) in the pressure units.


This program was created primarily with the goal of placing it on the World-Wide Web. It is written in JavaScript (1.2+) and its source code is considered public domain (although technically, I believe it's the property of the U.S. Government, since it incorporates pieces of WxCalc2a which I wrote on government time).

The "cms" was prepended to the program name when I discovered that someone else already had a "WxCalc" on-line. Mostly to avoid any confusion, I put my initials in the title of this program.

cmsWxCalcIII is my first significant JavaScript application. I was quite pleased with the speed at which I was able to proceed. This program was started on December 12, 2000 and version 1.0 was completed just 13 days later! I didn't work on it every night, either.


The next in the WxCalc series is cmsWxCalc4, and, like most of its predecessors, is in yet another programming language! Tcl/Tk was selected this time, due to the relative ease with which the user-interface could be designed. The GUI for version 4 is significantly more compact than its ancestors, and somewhat more efficient. Cross-platform compatibility between Unix/Linux/Windows (others?) is possible due to the script nature of this program, and the presence of Tcl interpreters on several different platforms.

The program was near completion when Tcl fell out of favor with me. cmsWxCalciv is usable, except for the Web-update feature that was never added. No further work is planned on this version, which was essentially abandoned in 2001.


With the demise of Tcl came the rise of Java 2. Unfortunately for version 5, my affection for Java was even more short-lived than Tcl, due mostly to the sudden popularity of yet another programming language: Python. So, version 5 managed some minimal functionality, but not enough to qualify as anywhere near finished. One feature that was to be part of version 5 is also a major part of version 6: the "engine" that drives the calculations is a separate "object" from the user interface. Work on cmsWxCalc5 was suspended in early 2002.


Sixth time's a charm? Apparently so. Python/Tk is the basis for the #6 entry in the wxCalc series. Version 1.0 was released October 27, 2003. This version has several unprecedented features....

cmsWxCalc6 features that are beyond the functionality of cmsWxCalc4:

Cheryl M. Sharpe, October 20, 2004

Back to cmsWxCalcIII

Valid XHTML 1.1!