(Note: The material below may be excessively "science/computer nerdy", depending on your POV -- The target audience is computer-savvy science instructors and students who'd like some more ammo to fire back at global-warming deniers with.)
I've put together a package that I decided to call WattsBuster(tm), in honor of climate disinformer Anthony Watts.
When WattsBuster(tm) is set up and running, students will be able to "roll their own" global-average temperature estimates by pointing/clicking on temperature stations on a global map. As each new temperature station is selected, WattsBuster(tm) updates and displays global-average temperature estimates with that station's data, on the fly.
Temperature estimates are computed from both raw and adjusted/homogenized data, and are plotted along with the official NASA/GISS "meteorological stations" results for comparison purposes. As students click on more stations, they can watch the WattsBuster(tm) raw and adjusted/homogenized data results converge to the official NASA/GISS results surprisingly quickly.
Experimentation with WattsBuster(tm) will reveal that the NASA/GISS global-warming results can be confirmed with raw or adjusted/homogenized data from as few as 30 or so globally-scattered temperature stations, rural or urban.
Disclaimer: WattsBuster(tm) is not anywhere near a "consumer-grade" polished end product. It should be considered a "proof of concept" prototype that takes a bit of work to get up and running. (Most of the work involved is "system prepping" -- getting the prerequisite software installed on your system. Setting up the actual WattsBuster(tm) package is actually pretty simple.)
The WattsBuster(tm) package can be installed/configured to run on Linux, BSD/OS-X, and Windows systems. Installation/configuration is easiest on Linux platforms that use the Debian-based package-management system (i.e. Debian, Ubuntu, Mint...). OS-X and Windows platforms require additional prep work -- details at the bottom of this post.
WattsBuster(tm) installation/configuration is recommended for folks who are comfortable working in an "old-school" Unix/Linux command-line environment (or for those who are willing to learn how to work in a Unix/Linux command-line environment). There's not all that much you have to do at the command-line, but for folks who haven't worked in an "old school" command-line environment, it could be a bit off-putting.
WattsBuster(tm) borrows heavily from several open-source software projects: Quantum GIS, gnuplot, and a neat C++ TCP socket class that I found on-line.
More details after the jump, including a couple of images that show WattsBuster(tm) in action.
Below are two images that illustrate WattsBuster(tm) operation.
The first image shows the WattsBuster(tm) "front-end" (QGIS with a customized plugin), where stations are selected via mouse-clicks (selected stations are shown in yellow). Stations are sorted into separate "station layers" that can be switched on and off (easy to figure out with a bit of experimentation).
The "station layers" are: (1) "rural from 1885" (all rural stations with data going back to 1885 or earlier), (2) "all from 1885" (rural and urban stations going back to 1885 or earlier), (3) "rural to 2010" (rural stations with data from 2010 or later), (4) "all to 2010" (rural+urban stations with data from 2010 or later), (5) "rural" (all rural stations, regardless of data record length), and (6) "all" (all stations).
The station layers in the above QGIS display were generated from Google-Earth-compatible KML files. (The QGIS developers were nice enough to include KML-file reading/parsing capability in QGIS). There are several KML files in the WattsBuster(tm) package -- you can look at them with both QGIS and Google Earth.
The second image shows the WattsBuster(tm) "back-end", where global-average results computed from the selected stations are displayed:
The images have been scaled down to conserve bandwidth, so the resolution isn't the greatest. Hopefully, enough detail is shown to illustrate how WattsBuster(tm) works.
In the "back-end" display shown above, two plots are shown.
The upper plot shows results for 50 randomly-selected "long-record" (i.e. with pre-1885 data and/or post-2010 data) temperature stations. Results are shown for raw (red) and homogenized (green) data. The corresponding NASA/GISS results are shown in dark blue. As you can see, the long-term global-temperature trends produced from the raw and homogenized data (50 stations) match the official NASA/GISS long-term temperature trend (produced from thousands of stations) quite well.
The lower plot shows how many of the selected stations actually reported data for any given year. (NOTE: a station that reported data for 6 months in a given year is counted as "half a station" for that year). As you can see, 40-45 stations reported data for most years from 1960 to 1980, while 20 or fewer of the selected stations reported data prior to 1900.
Experimentation with WattsBuster(tm) will reveal that for time-periods where you have at least 30 or so globally-scattered stations reporting data, the WattsBuster(tm) global-warming trend will match the official NASA/GISS warming trend very nicely (with raw or homogenized data from rural or urban stations).
With WattsBuster(tm), you can confirm for yourselves the following:
1) Rural and urban stations produce very similar results (thereby debunking Anthony Watts' claims about UHI).
2) Raw and homogenized data produce similar warming trends, thereby debunking Watts' claims that much/most of the warming is due to "homogenization". (Yes, homogenized data will often produce a slightly larger warming trend than will raw data, but the differences between the raw and homogenized data results will be small).
3) The NASA/GISS results can be reproduced very closely from raw data. In fact, the NASA/GISS results will generally match the WattsBuster(tm) raw data results a bit more closely than the WattsBuster(tm) homogenized data results. This debunks the Watts' claims about the NASA/GISS results relying on data "homogenization". WattsBuster(tm) computes global-average results via a straightforward averaging procedure that does not incorporate any data homogenization/adjustment steps -- that can be verified by inspecting the WattsBuster(tm) source-code.
4) WattsBuster(tm) can be used to debunk Watts' "station dropout" claim. Watts has claimed that because the number of temperature stations used by NASA has "dropped" from about 6000 in the 1970's to about 1500 now, the temperature results have somehow been "skewed". But with WattsBuster(tm), you can reproduce the NASA/GISS global-warming results very nicely from just a few dozen stations (none of which has been "dropped"), thereby completely debunking Watts' "dropped stations" claim.
This package should be considered to be sort of a "developers' release". In its current state, it is not very "user friendly" (by today's standards, at least).
But if you are comfortable in a Unix command-line environment (i.e. comfortable installing/using compilers such as g++, editors such as vi/gedit/emacs, etc.), you shouldn't have too much trouble getting WattsBuster(tm) up and running on your laptop.
OS-X users will need to install X11 and XCode (available for free from Apple) and then compile gnuplot from source (source-code available at gnuplot.info). They will also need to edit a C++ header file slightly prior to compilation (details available in the WattsBuster(tm) README files).
Windows users will need to install Cygwin/X (available at x.cygwin.com) -- g++ and gnuplot must be included in the Cygwin installation.
An alternative is to use VirtualBox (virtualbox.org) to install/run Linux in a virtual machine on your OS-X or Windows system. WattsBuster(tm) can then be installed on the Linux virtual machine. There are the usual O/S installation/configuration issues with this approach, however -- if you don't have prior experience installing/configuring VirtualBox and Linux, this is not recommended.
If you are a bit handy with network configuration (i.e. know how to determine IP addresses, configure firewalls to open ports, etc.), you can run the QGIS "front end" and global-temperature computation "back end" modules on different computers on a network -- the "front end" and "back end" communicate via a TCP connection.
The whole package (including all code and temperature data) can be downloaded from http://tinyurl.com/...
Additional details (including an attempted "plain English" description of how to compute global-average temperature estimates) can be found here: http://rabett.blogspot.com/...
Final system-prep summary:
1) Linux
Check your distribution's package manager to make sure that g++ and gnuplot are installed. Your distribution package-manager may or may not offer QGIS. If it does, install it. If not, go to www.qgis.org and follow the instructions for your Linux distribution.
NOTE: On a Linux system test-install, the QGIS installation package set the owner of the QGIS plugin directory to root (superuser). The ownership of that directory (~/.qgis) had to be reassigned to the current user via "sudo chown" to allow QGIS plugins to be installed (just a quick heads-up for Linux users out there).
2) Windows
Go to www.qgis.org and install the QGIS software for your system.
Go to x.cygwin.org and install Cygwin/X with the Cygwin installation tool. You will need to ensure that gcc/g++ and gnuplot are included in the installation (the installation tool has a search feature to help you locate the gcc/g++ and gnuplot packages).
3) OS-X
A bit more work.
You will need to track down g++ and X11 for the Mac -- they can be obtained for free from Apple (you might have to register for a free developer account) or downloaded from other sources (Google will help).
Go to www.gnuplot.info and download the source code. Unpack the code and compile per the instructions (not difficult -- will be something like "./configure; make; sudo make install".
Launch gnuplot to be sure it works -- at the gnuplot command prompt, type something like "plot sin(x)'". If you see a sine-wave plot, then you are good to go with the rest of the WattsBuster installation.
Note: On OS-X systems, you will have to edit a C++ header file slightly to get the WattsBuster(tm) "back end" to compile (it's just a one-line quickie). Details are in the README-WATTSBUSTER.txt file -- see Step 6 in the "more details" section.
4) All Systems
Once you have your system prepped per above, getting WattsBuster(tm) up and running should not be difficult -- follow the quickstart instructions in the supplied README-WATTSBUSTER.txt file. There are lots of additional details in that README file, but if all goes well, you shouldn't have to spend much time wading through them.
Once again, this is not the easiest package to set up -- but for computer-savvy instructors/students who'd like some additional ammo to push-back at deniers with, it could well be worth the effort to give it a try.
.