Zipdy: Free Zip Code Distance Calculator: FAQ


[About] [CGI Demos] [Download] [FAQ] [Feedback]

Zipdy FAQ

Is Windows officially supported?

Not at this time. Although, I will accept code to allow support for windows. Theoretically, zipdy will run on windows as it is written now. But please don't ask me for windows support, as I haven't used windows in about 6 years and therefor do not have the knowledge to assist you.

The answers to the following questions will assume that you're running the GNU/Linux OS.

Why isn't MySQL supported by zipdy?

MySQL can only support the basic distance calculations of zipdy. It cannot support the "all database records with in x miles" functionality. This is because the record proximity calculations are done with the use of a subquery, or a database query which selects records based on the result set of a second query. MySQL does not yet support this. The MySQL team is currently working toward providing this functionality. Once it is available, I will write code to support proximity queries with MySQL.

Will more databases that support subqueries be supported by zipdy soon?

Yes. I'll begin adding database support rapidly soon. Oracle support will be available soon, followed by IBM DB2 support. Code submissions to support other databases and welcome.

How do I compile the test program?

With the command: gcc -lgdbm zipdy_test.c -o zipdy_test

How do I do calculate different proximity distances?

You can do this by modifying the zipdy_force.c source file which is located in the src/optional directory. Simply change the file name and the comparison in the code.

How do I do arbitrary distance proximity searches?

There are two ways that you can do arbitrary distance proximity searches. First, you can use the zipdy great circle code to calculate the distances in real time. This will likely be too slow to be very practical. Second, you can acquire enough disk space to store the distance between each set of zip codes with in a certain boundary distance. If you choose the second method, you can modify the zipdy_force.c source code file in the src/optional directory to write this data into a database table rather than writing it summarized into a text data file.

I think one of the data files might be corrupt.

Please check the MD5 checksum of the file against the MD5 checksums posted on the Zipdy page both before and after decompressing. If the MD5 checksums are the same and you still believe the file to be corrupt, please let me know. Please include a description of the corruption if possible or at least an explanation of how you discovered it.

On some Linux distributions, Netscape is configured to uncompress gzip'd files on the fly before saving them to disk. Netscape often corrupts data when doing this. You should save the files to disk and decompress them by hand if you are experiencing corruption (MD5 checksums which do not march). I'd strongly suggest using a web browser other than Netscape, such as Mozilla, lynx or konqueror. A web client such as wget would also work very well.

How do I calculate an MD5 Checksum?

Your Linux distribution should have included a program called md5sum. To calculate a MD5 checksum, run the md5sum program with the filename you want to calculate the sum on as an argument.

The software tools and datafiles to develop functionality like zipdy on windows cost more than $1000. Would you accept less than $1000 to develop windows support for zipdy?

Yes.

I'd like to use the zipdy code on my web site. If I use the zipdy code and/or include it with scripts on my site does that mean I need to GPL the source code to my entire web site?

No. You'll only need to GPL the source code which to directly derive, modify or port from zipdy. If you link the zipdy source code into an executable binary program, you'll need to GPL the source code of that binary. If this is a problem for you, ask me for an exception to the GPL.

I'd like to use the zipdy code in X situation, but it's GPL'd.

Send me an email. I hold the copyright to all the zipdy code and therefor can grant license exceptions. I wanted Zipdy under the GPL so that other GPL'd programmers could use the zipdy code in GPL'd projects. I'll probably grant you a license exception as long as you're not developing a commercial product for resale.


Last Updated: 2001.08.06