View Full Version : Flying Fish: Mileage calculator tool available for download


rmyadsk
Nov 11, 03, 5:11 pm
1. Downloads

Latest Program Version: 1.39 (November 12, 2004) - Direct Program Link (http://flyingfish.oscarfish.com/download/flyingfish-139-setup.exe) (244KB)

Latest Data File: February 1, 2006 - now available

Right-click here (http://flyingfish.oscarfish.com/download/ARPT.dat) and "Save Target As..." or "Save Link As...". Save the file (ARPT.dat) to your existing Flying Fish program directory (usually C:\Program Files\Flying Fish\). You may overwrite the existing ARPT.dat.

2. Program Updates

It occurred to me today, while sitting next to a couple FT'ers on the way out to Honolulu, that you folks may have thought I dropped off the face of the Earth, as this thread has not been updated in some time. Without further ado...

While I was working on a new version of the program, the fine folks at the National Geospatial-Intelligence Agency (http://www.nga.mil/portal/site/nga01/) have decided to restrict (i.e. cease) distribution of DAFIF, the Digital Aeronautical Flight Information File, which is the data file that provides all the airport data Flying Fish uses. Naturally, this impedes development of the program, as updated airport data will be unavailable. It's also possible that the last available version now has invalid data. I'll continue to look for alternative data sources but this is a pretty crushing blow. Thanks NGA!

3. Stay Tuned

In the meantime, I'd recommend using the current version and finding out if it works for you - i.e. if the mileages still match your frequent flyer statements (they probably will). I'll continue to look for another source of current, reliable data for a new version. I'll also be testing the current version on Windows Vista to see that it works. Thanks for using Flying Fish!

4. Feedback

Feedback is always appreciated and desired, positive or negative, here or privately via Email. Thanks for your support!


Ryan M. Yadsko
flyingfish@oscarfish.com (mailto:flyingfish@oscarfish.com)

mymiles2go
Nov 11, 03, 6:27 pm
Very cool.

Neat little utility. Out of curiosity, where are you pulling the mileages from? The only reason I ask, is that when I'm trying miles in relation to UA flights, they are off by a few (usually less than 10 miles), wasn't sure which source you were using for the segments.

Anyways, very cool little utility. Thanks! I look forward to the updates.

vasantn
Nov 11, 03, 6:46 pm
Really neat -- thank you! http://www.flyertalk.com/forum/thumbsup.gif http://www.flyertalk.com/forum/thumbsup.gif

------------------
Vasant

sonofapilot
Nov 11, 03, 6:50 pm
Great tool. Many thanks!

rmyadsk
Nov 11, 03, 7:47 pm
<font face="Verdana, Arial, Helvetica, sans-serif" size="2">Originally posted by mymiles2go:
Out of curiosity, where are you pulling the mileages from? The only reason I ask, is that when I'm trying miles in relation to UA flights, they are off by a few (usually less than 10 miles), wasn't sure which source you were using for the segments.</font>

The mileages are calculated on the fly with latitudes and longitudes from the airport codes the user enters. There are simply too many point-to-point distances to put into a database, so the geodesic ("great circle") distance is calculated. This allows for an infinite number of itineraries and various segments, and as long as lat/long information exists for both airports, a distance will be calculated. The lat/long information comes from DAFIF, the Digital Aeronautical Flight Information File. I'm not sure what the airlines use to generate their distances, and there is no "master list" of latitudes and longitudes for this purpose (I spent many hours looking) - DAFIF is the closest match.

One of the interesting things about developing the program is that I got a crash course in trigonometry while programming it. One widely accepted formula for calculating a geodesic distance is as follows:

Origin: lat1, lon1
Destination: lat2, lon2

theta = lon2 - lon1
dist = ((acos(sin(lat1) × sin(lat2) + cos(lat1) × cos(lat2) × cos(theta)))+pi) × 6371.2

The result is in kilometers, which is converted to statute miles. The value of PI is as accurate the the visual basic dbl (double) value allows; it is calculated when the application is loaded by 4# × Atn(1#).

I am very open to suggestions about formulae / calculations which will bring the totals in line with the airlines', as this is a primary goal of the program.

Another thing I would like suggestions on especially is the display of the itinerary summary at the bottom of the screen. I was thinking of a red/yellow/green scheme, like a traffic light, based on the cost per elite-qualifying mile. What would be a good way to display this (i.e. catch the user's attention but not be obnoxious or annoying)?

Coming soon: program-specific presets - i.e. select "Northwest Platinum Elite - first class" from a dropdown menu and class bonus becomes a 50% elite-qualifying bonus, status bonus becomes a 125% non-EQM bonus, etc.

------------------
Flying Fish (http://flyingfish.oscarfish.com/): the ultimate Mileage Run tool?

EnhancedByCO
Nov 11, 03, 10:16 pm
There's a small section about calculating great circle distances in the FAQ (http://gc.kls2.com/faq.html) of the Great Circle Mapper web site.

The main issue with using the formula you give above is, as the FAQ points out, the formula assumes the Earth is a perfect sphere, which is not quite the case. Thus the small error in calculating distances.

stevelb
Nov 11, 03, 10:17 pm
Program will not run for me. I am getting the following error message:
Run-time error "3706":
ADO could not find the specified provider.

MartinElk
Nov 11, 03, 11:06 pm
Great, easy-to-use program!

I found a bug in the distance calculations:

It's showing 5714 miles from SLC-PSP, and 5999 miles from PSP-SMF. (PSP=Palm Springs, CA)

Thanks for this new tool!

MartinElk
Nov 11, 03, 11:16 pm
One more quick one:

It did not recognize LHR as a valid airport, but LON did work.

rmyadsk
Nov 12, 03, 1:36 am
<font face="Verdana, Arial, Helvetica, sans-serif" size="2">Originally posted by MartinElk:
Great, easy-to-use program!

I found a bug in the distance calculations:

It's showing 5714 miles from SLC-PSP, and 5999 miles from PSP-SMF. (PSP=Palm Springs, CA)

Thanks for this new tool!</font>

PSP must be used for a different airport. I will correct it.

Also I did not have time to put in LHR and several others I wanted to, IATA codes not included in the database I adapted those codes from. The "datamaker" script which I use to generate the master database is at home - while I am in Hawaii on business for a while.

Thanks,

Ryan

------------------
Flying Fish (http://flyingfish.oscarfish.com/): the ultimate Mileage Run tool?

rmyadsk
Nov 12, 03, 1:39 am
<font face="Verdana, Arial, Helvetica, sans-serif" size="2">Originally posted by stevelb:
Program will not run for me. I am getting the following error message:
Run-time error "3706":
ADO could not find the specified provider.</font>

ADO is the method by which the program calls the database (via SQL queries). I would reocmmend downloading the Visual Basic 6 runtimes and reinstalling to ensure all files are up-to-date.

Try this link:

Visual Basic 6 runtimes from Microsoft (http://download.microsoft.com/download/vb60pro/install/6/Win98Me/EN-US/VBRun60.exe)

------------------
Flying Fish (http://flyingfish.oscarfish.com/): the ultimate Mileage Run tool?

mymiles2go
Nov 12, 03, 2:17 am
Going back to the mileage thing... I believe the vast majority of the airlines base thier mileages off of the IATA distances - I wonder if there is a downloadable distance database of city pairs. Might be a good way to minimize the differences.

davistev
Nov 12, 03, 4:51 am
Great job on the beta.

Brian-AAFlyer
Nov 12, 03, 5:51 am
Useful tool, its given me an interesting twist on a MR.. its also making it clear that my preferred MRs are less 'effort' but cost more than 2c a M

MGL
Nov 12, 03, 7:35 am
Most excellent!

PrivatePilot
Nov 12, 03, 10:57 am
This is real nice... by dream however, is to have a tool that once you put in your date of travel and origin, it tells you the best route which offers the most miles per dollar spent.... Dreammaps is nice but not date specific...

Randy Petersen
Nov 13, 03, 11:27 am
Just saw this thread and we all love tools that can help us plan travel and value. I realize that some don't like Web-based tools, but wondering if any of you had not used MileMarker over on webflyer.com? We've had it up for a few years now and it allows i think most of what is mentioned here. If you haven't, would appreciate any feedback as well. It does include a ticket price and cents per mile return as an option. It's here:
http://webflyer.com/travel/milemarker/


I happen to really like the text and research and work that is going in to this, especially the Che graphic. Congrats and rmyadsk, perhpas there ways we/FlyerTalk can help you in further development. Let me know.

Kiwi Flyer
Nov 13, 03, 11:47 am
The times I've used MileMarker I've found it easy to use and reasonably close to the miles posted.

rmyadsk
Nov 13, 03, 12:09 pm
<font face="Verdana, Arial, Helvetica, sans-serif" size="2">Originally posted by mymiles2go:
Going back to the mileage thing... I believe the vast majority of the airlines base thier mileages off of the IATA distances - I wonder if there is a downloadable distance database of city pairs. Might be a good way to minimize the differences.</font>

IATA doesn't make their data public - they don't even provide a master list of IATA codes for free (they charge a large, recurring fee for those). I was able to find a website which had posted the IATA codes and corresponding ICAO codes and I adapted those into a database. If someo ne has a lead on how IATA distances can be obtained that would be appreciated...

------------------
Flying Fish (http://flyingfish.oscarfish.com/): the ultimate Mileage Run tool?

Live2Fly
Nov 15, 03, 3:44 pm
Would love to use this tool, but get Run-time error '13': Type mismatch. This pops up on entering the last letter of the second airport code - i.e. on 'P' in D T W M S P.

I've downloaded the latest VB6 following the link above.

Any ideas please?

Simon

rmyadsk
Nov 15, 03, 11:09 pm
<font face="Verdana, Arial, Helvetica, sans-serif" size="2">Originally posted by Live2Fly:
Would love to use this tool, but get Run-time error '13': Type mismatch. This pops up on entering the last letter of the second airport code - i.e. on 'P' in D T W M S P.

I've downloaded the latest VB6 following the link above.

Any ideas please?

Simon</font>

In testing I got this error when the flyingfish.ini (Initialization) file was missing or incomplete. This file resides in the program directory (C:\Program Files\Flying Fish\). Try uninstalling then reinstalling the program - this should overwrite that file.

If this doesn't work, there could be a problem accessing the database. Did you encounter any problems or errors during installation?

------------------
Flying Fish (http://flyingfish.oscarfish.com/): the ultimate Mileage Run tool?

rmyadsk
Nov 16, 03, 12:17 am
All,

Version 0.8.5 has been released. This is the first "public" release and is under a full beta marker. Some of the code has been updated from 0.8.2 but functionality is virtually identical. Follow this link to download:

flyingfish-beta-085-setup.exe (http://flyingfish.oscarfish.com/download/flyingfish-beta-085-setup.exe) (version 0.8.5, 540KB)

Also the website has been updated to reflect the beginning of the public beta program.

------------------
Flying Fish (http://flyingfish.oscarfish.com/): the ultimate Mileage Run tool?

kawoh
Nov 16, 03, 3:21 am
PER and ADL do not show up as destinations, looks like a smart product though.

I have a small res screen (small sony vaio) and can't seem to see the part with wording down the bottom sadly, would be nice if there was a scrolling function to see the bottom of the window).

LUVSWA
Nov 16, 03, 8:23 am
I like this tool!

I've used MileageMarker, but this is an offline alternative that works well.

It might be good if a variable EQM on base miles was allowed (to cover the cheap fare codes on DL/CO).

I'd also like the ability to save a trip.

Thanks for your hard work!

------------------
Randy
-------------------------
HH Gold; WN CP; NW Gold Elite

Jills
Nov 17, 03, 4:37 pm
This is real nice... by dream however, is to have a tool that once you put in your date of travel and origin, it tells you the best route which offers the most miles per dollar spent.... Dreammaps is nice but not date specific...
________________________

sorry, I don't know how to use quotes! But, I completely agree. If anyone could come up with a tool that could go out and look up prices for different routes, in order to calculate the biggest bang (miles) for your buck, that would be heaven for Mileage Runners!

------------------
AA EXP, 1MM, Hyatt Diamond, Marriott Platinum, Hilton Diamond, Starwood Platinum

a1bengal
Nov 18, 03, 4:30 pm
get a dll run error on the new version sadly so not running

------------------
UA PremEx AA Plat *wood Plat

rmyadsk
Nov 18, 03, 5:00 pm
<font face="Verdana, Arial, Helvetica, sans-serif" size="2">Originally posted by a1bengal:
get a dll run error on the new version sadly so not running

</font>

Could you describe what the text of the error is? Two system files, one a DLL, is installed with the program at installation. If the error includes a filename.dll, that would be very helpful.

------------------
Flying Fish (http://flyingfish.oscarfish.com/): the ultimate Mileage Run tool?

MartinElk
Feb 4, 04, 6:31 pm
BUMP

rmyadsk,

Are you still planning on coming out with an official release version(Non-Beta)? Your web site shows a 1/15/04 release date for version 1.0, and a 1/31/04 release date for pre-beta version 2.0

Thanks

rmyadsk
Feb 4, 04, 9:03 pm
"What had been a fool's errand from the beginning was already an exercise in futility"

On of the major goals of the program was to accurately calculate mileage, distances, and the like; or as accurately as the airlines do. Unfortunately the tools used to calculate this data are not made public and it's unreasonable to believe the IATA has any plans to do so. What I really want is how these distances are calculated: for example precise locations and formulae, as individual distances are impractical to use).

From the feedback I've gotten many people only want the exact mileage they can actually expect to earn, and others see no advantage from using a desktop-based tool vice a web-based one. So the target audience for this program seems to gradually be getting smaller.

I've been developing internal releases but have made no serious changes. I wasn't sure there was reason enough to continue development without completely revolutionizing the program (which I'm not sure I can do); but I suppose putting out 1.0 can't hurt. I'll have it posted by February 15. The website will be updated, too.

CALfly5
Feb 4, 04, 11:27 pm
<font face="Verdana, Arial, Helvetica, sans-serif" size="2">Originally posted by rmyadsk:
From the feedback I've gotten many people only want the exact mileage they can actually expect to earn, and others see no advantage from using a desktop-based tool vice a web-based one. So the target audience for this program seems to gradually be getting smaller.
</font>
Actually, I see great value in this tool: its an OFFLINE tool (i.e. could be used while in the air, or whenever not connected to the web).

Don't know if we have any Palm OS experts out there, but this would be a great tool to load on your handheld device (sorry, didn't mean to slight any other handhelds... I'm a Palm owner, so that was the first thing that came to my mind).

And for me, 10 to 20 miles difference is no big deal. Heck, Expedia and Travelocity will give you slightly different mileage from what you actually earn. I guess this is really a good time to say: YMMV!

Thanks for the tool!

Val
Feb 5, 04, 10:42 pm
I use your tool ALL the time. It is faster than the online options, and I can do it from a plane when plotting MRs.

I used it constantly while trying to fit in the AA FLY04 promo in the month of January.

Dont let a few naysayers discourage you.

hauteboy
Feb 6, 04, 7:50 am
<font face="Verdana, Arial, Helvetica, sans-serif" size="2">Originally posted by CALfly5:
Originally posted by rmyadsk:
From the feedback I've gotten many people only want the exact mileage they can actually expect to earn, and others see no advantage from using a desktop-based tool vice a web-based one. So the target audience for this program seems to gradually be getting smaller.
</font>
Actually, I see great value in this tool: its an OFFLINE tool (i.e. could be used while in the air, or whenever not connected to the web).

Don't know if we have any Palm OS experts out there, but this would be a great tool to load on your handheld device (sorry, didn't mean to slight any other handhelds... I'm a Palm owner, so that was the first thing that came to my mind).

And for me, 10 to 20 miles difference is no big deal. Heck, Expedia and Travelocity will give you slightly different mileage from what you actually earn. I guess this is really a good time to say: YMMV!

Thanks for the tool!



I might be willing to develop such an app for the Palm.. just got one and am starting to play around with development. I have my own tool I've written for mileage planning which calculates distances. The problem with calculating actual miles earned is different airlines post mileage differently for the same route.. sometimes even the same airline posts different mileage depending which way you fly!

MartinElk
Feb 6, 04, 7:01 pm
<font face="Verdana, Arial, Helvetica, sans-serif" size="2">Originally posted by rmyadsk:
From the feedback I've gotten many people only want the exact mileage they can actually expect to earn, and others see no advantage from using a desktop-based tool vice a web-based one. So the target audience for this program seems to gradually be getting smaller.</font>


I use your tool all the time too! It would be great if it was exactly the same as the airlines, but they don't all award the same mileage for like routes, so it's doubtful you would ever get it exactly right for every airline.

Please don't be discouraged by any of the naysayers!

Thanks again for a great tool (especially the ability to do it offline)!

vasantn
Feb 6, 04, 8:37 pm
I think this is a great tool and truly appreciate your making it available.

------------------
Vasant

[Edited to fix dumb mistake]

[This message has been edited by vasantn (edited Feb 06, 2004).]

mot29
Feb 6, 04, 10:35 pm
rmyadsk-
Please do keep up the development work on flyingfish. I've used it quite a bit in trip planning; your mileage numbers are certainly close enough.
But, one correction - ff comes up with 4211 miles for PRG to AMS. NW only gave me credit for 500, and the trip was awfully fast for 4200 miles. I expect it is more like 421?
tom

rmyadsk
Feb 7, 04, 9:52 am
Many thanks for the encouragement; I am working on the 1.0 now. Expect a .9'er release just for FTers by Monday night.

I think what is happening with the weird mileages between city pairs is the program is picking up codes that correspond to wrong cities. These will be dealt with on a case-by-case basis; I will develop a small form-based reporting tool on the website so you may submit massively incorrect mileages between given pairs, and I will manually update the database. Until 1.0 is out I'll stick with the generated DAFIF value, though.

------------------

rmyadsk
Feb 10, 04, 8:56 pm
Mm'kay, I didn't quite hit the Monday night goal. But here is an updated version note yet available on the website. And for making you wait, it is a release candidate rather than a late beta. I've rewritten some of the behind-the-scenes functions so it behaves a little more nicely on less current machines.

Download Flying Fish RC1 (version 0.9.3, 543KB) (http://flyingfish.oscarfish.com/download/flyingfish-RC1-093-setup.exe)

Immediately after putting out 1.0 (my goal - and I'll hit this one, I swear - is to release it sometime on February 16) I'll start adding features. One of the first will be a lookup function where you can find airport codes (and insert them into the routing box) by entering all or part of an aiport's name. Next will be correcting the off-mileage reads by reconciling codes and locations.

Please report any minor or catastrophic prrogram errors you encounter so I have a shot at correcting them before 1.0 is released. Thanks!

keithguy
Feb 11, 04, 1:49 am
A suggestion, if I may: allow for open-jaws at the destination end. I tried the program out for a bit, and I don't think there's a way to input for example: SEA-ATL-BOS, LGA-ATL-SEA.

Although I suppose one could simply re-enter it as LGA-ATL-SEA-ATL-BOS instead, but then that still doesn't solve the problem of double open-jaws/multiple one-way tickets.

rmyadsk
Feb 11, 04, 10:45 am
<font face="Verdana, Arial, Helvetica, sans-serif" size="2">Originally posted by keithguy:
A suggestion, if I may: allow for open-jaws at the destination end. I tried the program out for a bit, and I don't think there's a way to input for example: SEA-ATL-BOS, LGA-ATL-SEA.

Although I suppose one could simply re-enter it as LGA-ATL-SEA-ATL-BOS instead, but then that still doesn't solve the problem of double open-jaws/multiple one-way tickets.</font>

Very good suggestion; I will keep this in mind for future features.

Bump for all versions now available and some more information (see the first message of this thread).

ohcanada
Feb 11, 04, 11:42 am
I have a bug to report.

I am flying YYZ-ODR-LAX-SYD-SFO-ORD-YYZ on UA with the triple miles promotion. The basic mileage is 19502, but if I try to enter the 39004 bonus in "Other bonus miles" (I know, I know, everyone is arguing that it should be an additional 58506 bonus miles, but work with me here) I get an error message saying "Run time error "6" - Overflow" and the program terminates. This happened in the last beta version and in the most recent release version that I downloaded using the link above.

What gives?

------------------
Oh Canada!
Standing on guard for thee...

mvejnar
Feb 11, 04, 2:03 pm
Wow, this tool is really cool. Thanks

rmyadsk
Feb 11, 04, 8:01 pm
<font face="Verdana, Arial, Helvetica, sans-serif" size="2">Originally posted by ohcanada:
I have a bug to report.

I am flying YYZ-ODR-LAX-SYD-SFO-ORD-YYZ on UA with the triple miles promotion. The basic mileage is 19502, but if I try to enter the 39004 bonus in "Other bonus miles" (I know, I know, everyone is arguing that it should be an additional 58506 bonus miles, but work with me here) I get an error message saying "Run time error "6" - Overflow" and the program terminates. This happened in the last beta version and in the most recent release version that I downloaded using the link above.

What gives?

</font>

Thank you! What is happening is the overflow is caused by the data type (integer). Integers are whole numbers between -32,768 and 32,767; anything else causes VB to take a dump. I'm rekeying critical integers into longs, which may be from -2,147,483,648 to 2,147,483,647.

I'll have a fixed version out tonight, with a bit of luck.

rmyadsk
Feb 11, 04, 8:35 pm
All integers which could possibly become large enough to be a problem have been converted to longs. The program now uses a flavorful assortment of integers, longs, singles, and doubles; and these are just for numbers.

Previously, in fact, route totals were already longs; but converting the others allow for more of the high-mileage segment and aggregate bonus offers we are seeing.

Please, folks, try as hard as you can to cause overflows; it's good they can be worked out sooner rather than later. I've executed combinations like IAD-SIN with massive bonuses and have encountered no problems yet.

Fixed version released, still under the RC1 header. Thanks!

Download Flying Fish 0.9.4 (RC1) (http://flyingfish.oscarfish.com/download/flyingfish-RC1-094-setup.exe) - 2/11/2004, 544KB

vasantn
Feb 11, 04, 9:10 pm
Thanks again for all your work, rmyadsk http://www.flyertalk.com/forum/thumbsup.gif.

------------------
Vasant

rmyadsk
Feb 18, 04, 3:58 pm
1.0 comes out tonight, finally. Life got in the way of development for a bit. I'm working on documentation now. Will post an update when it's released...

rmyadsk
Feb 18, 04, 10:23 pm
Version 1.0 is now available here:

flyingfish-100-setup.exe (http://flyingfish.oscarfish.com/download/flyingfish-100-setup.exe), 544KB

The website will be updated Thursday evening. So I suppose for the time being it's an FT exclusive. Heh.

Arcolaio99
Feb 20, 04, 9:18 am
<font face="Verdana, Arial, Helvetica, sans-serif" size="2">Originally posted by rmyadsk:
Version 1.0 is now available here:

flyingfish-100-setup.exe (http://flyingfish.oscarfish.com/download/flyingfish-100-setup.exe), 544KB

The website will be updated Thursday evening. So I suppose for the time being it's an FT exclusive. Heh.</font>

Thank you for this program. I noticed that FLR came back as airport not found. This rocks!!

Val
Feb 21, 04, 8:27 pm
Missing EZE (Buenos Aires, Argentina)

I-flybynight
Feb 21, 04, 9:29 pm
doesn't pick up ICN which is Seoul. No code found.
Regards,
Robert

rmyadsk
Feb 22, 04, 7:02 pm
I cleaned up the database and added all missing codes listed so far in this thread. I've also added a code lookup which allows you to enter a partial or full name of an airport and lookup (and optionally insert) the pertinent code. What I'm doing now is making the database get along easier with partial matches.

1.01 will incorporate all of these changes and will be out sometime this week.

Arcolaio99
Feb 22, 04, 8:13 pm
<font face="Verdana, Arial, Helvetica, sans-serif" size="2">Originally posted by rmyadsk:
I cleaned up the database and added all missing codes listed so far in this thread. I've also added a code lookup which allows you to enter a partial or full name of an airport and lookup (and optionally insert) the pertinent code. What I'm doing now is making the database get along easier with partial matches.

1.01 will incorporate all of these changes and will be out sometime this week.</font>

Thanks! You rock. If I meet you sometime, I owe you a few beers.

onedog
Feb 22, 04, 11:47 pm
Great! http://www.flyertalk.com/forum/thumbsup.gif

rmyadsk
Feb 24, 04, 12:41 am
Also I'm removing the masked edit box in favor of a plain old textbox. What this means is you will be able to enter multiple trips and/or open jaws. For example:

BWI-DTW-LAS,LAX-MSP-BWI

The downside is you'll have to enter dashes between city codes and commas between progressive flights, but I think this will add much flexibility to the program. I'll make it as user-friendly as possible.

rmyadsk
Feb 24, 04, 11:30 am
Please see the first message in this thread; version 1.0.1 has been released. Some notes:

All missing codes / incorrect mileages reported in this thread thus far have been corrected, with the exception of PRG (Prague). This is a strange case and the coordinates are correct, yet the mileages are incorrect. I'm working on it.

No open jaw support yet, so don't go flying off the handle with those commas rather than spaces, but this is something I'm working on.

I am proud of the code lookup and insertion tool, appropriately named the Code-O-Matic™. Check it out.

rmyadsk
Feb 25, 04, 12:18 pm
1.0.2 is in the works and will be out in a couple days. There are some significant behind-the-scenes code reductions. Also it has come to my attention that some people need explicit instructions on flight routings, so I'll look to add some unobtrusive ones.

------------------
***

Flying Fish (http://www.flyertalk.com/forum/Forum124/HTML/006448.html): FT'er developed mileage calculator tool

rmyadsk
Feb 27, 04, 9:03 am
Greetings. Several changes were made to the program in the latest version, 1.0.2, including:

*Completely modular code design
*A smaller, tighter user interface
*Menu options (ie. File, Options, Help)
*An "Always On Top" checkbox function - useful for browsing and comparing fares and routings
*A rewritten great circle calculator

1.0.2 is an internal release and won't be made available - as I am already working on 1.0.3. That version will be available by the end of Saturday this weekend.

------------------
***

Flying Fish (http://www.flyertalk.com/forum/Forum124/HTML/006448.html): FT'er developed mileage calculator tool

rmyadsk
Mar 1, 04, 9:04 pm
1.0.4 will be out tonight. This one actually has a real help file. Some other new features:

* Updated airport codes so now those pesky PRG and PSP codes work. Please keep the bug reports on codes coming in.

* Me Love You Long Time toggle mode (i.e. "Always On Top" window position): this will operate the program in front of all other windows. Easy toggle on/off.

* Expanded Menu Bar for easy navigation.

I'm working on the help file now. "Tonight" means before I go to bed, rather than 11:59 p.m. EST, so take that into account. I'll post as soon as 1.0.4 is out - you really want this one!

------------------
***

Flying Fish (http://www.flyertalk.com/forum/Forum124/HTML/006448.html): FT'er developed mileage calculator tool

rmyadsk
Mar 2, 04, 12:25 am
1.0.4 is out; enjoy and please let me know of any problems you encounter.

mailto:flyingfish@oscarfish.comflyingfish@oscarfis h.com</A>

------------------
***

Flying Fish (http://www.flyertalk.com/forum/Forum124/HTML/006448.html): FT'er developed mileage calculator tool

YYCOllie
Mar 2, 04, 11:46 pm
http://gc.kls2.com

vasantn
Mar 3, 04, 7:44 am
<font face="Verdana, Arial, Helvetica, sans-serif" size="2">Originally posted by YYCOllie:
http://gc.kls2.com</font>

???

rmyadsk
Mar 3, 04, 10:18 pm
<font face="Verdana, Arial, Helvetica, sans-serif" size="2">Originally posted by YYCOllie:
http://gc.kls2.com</font>

I really like the Great Circle Mapper, in fact I used it and a spreadsheet for my calculations before Flying Fish came into being, but I never made this program to compete with it. If you are more visually oriented then hands-down the mapper is the better tool for you. Though it can only do distances...

I designed Flying Fish to take into account commonly used figures for frequent fliers (i.e. class bonuses, status bonuses, and the like) and have the ultimate output of the program be costs per mile/EQM/etc. as well as aggregate mileage totals (EQM and total miles besides actual distances). Those costs and totals - everything except distance - are the most important statistics to mileage runners, and they happen to be the exact pieces of information I needed those spreadsheets for.

------------------
***

Flying Fish (http://www.flyertalk.com/forum/Forum124/HTML/006448.html): FT'er developed mileage calculator tool

tfong007
Mar 8, 04, 1:18 am
I have a quick question. When I use the lookup for an American city. Say Denver, I get a code E57 and insert and I insert say YYZ nothing happens? But when I manually type in DEN and YYZ I get the mileage amount?

rmyadsk
Mar 20, 04, 9:02 am
Version 1.0.8 has been released. This version incorporates an enhanced lookup tool, whereby you may now lookup airports by name and /or code, and have information such as elevation, latitude, and longitude displayed. The help file has also been updated. Several smaller interface improvements are also included.

There is a bug on the route dstination field which I am working on. This is due to the way the flight routing box is handled. A need some opinions before finalizing the solution: would you like the program to automatically insert dashes after an airport code? i.e. you enter LAX for Los Angeles and the program will automatically enter a dash after the X, so you may enter the next airport code. Or do you prefer manually entering a routing with the dashes yourself?

Please, leave a response with your thoughts.

-Ryan

------------------
***

Flying Fish (http://www.flyertalk.com/forum/Forum124/HTML/006448.html): FT'er developed mileage calculator tool

rmyadsk
Mar 20, 04, 9:05 am
<font face="Verdana, Arial, Helvetica, sans-serif" size="2">Originally posted by tfong007:
I have a quick question. When I use the lookup for an American city. Say Denver, I get a code E57 and insert and I insert say YYZ nothing happens? But when I manually type in DEN and YYZ I get the mileage amount?</font>

This bug is actually an issue with the data set. Names and information are looked up using DAFIF, the Digital Aeronautical FLight Information File, which is the de facto standard for aviation navigation and planning. Names are found only as they exist in DAFIF, i.e. the airport with code E57 is found in DDAFIF first before Denver International Airport is.

In fact, I have adjusted the program so only alphabetic codes are queried in the flight routing box. Codes with numbers are general-aviation and other airports not used for commercial flights.

------------------
***

Flying Fish (http://www.flyertalk.com/forum/Forum124/HTML/006448.html): FT'er developed mileage calculator tool

cbellero
Mar 21, 04, 4:59 am
It works great. It would be nice to have paid class bonus of 200%, otherwise some programs, such as LH cannot automatically be calculated for first class.

Also it doesn't seem that the Other Bonus Miles are added into the total equation.

A long term suggestion would be to add the possibility of setting the boni on a segment by segment basis. This would allow the possibility to do computations, like "I am booked on a two-class aircraft on a RTW C ticket and need this segment to be credited as Y or F (US).

Thanks for the great software!

rmyadsk
Mar 21, 04, 7:37 am
<font face="Verdana, Arial, Helvetica, sans-serif" size="2">Originally posted by cbellero:
It works great. It would be nice to have paid class bonus of 200%, otherwise some programs, such as LH cannot automatically be calculated for first class.

Also it doesn't seem that the Other Bonus Miles are added into the total equation.

A long term suggestion would be to add the possibility of setting the boni on a segment by segment basis. This would allow the possibility to do computations, like "I am booked on a two-class aircraft on a RTW C ticket and need this segment to be credited as Y or F (US).

Thanks for the great software!</font>

You can currently type in any number (followed by a percentage symbol) into the box to set your desired bonus, for example 200%, though I am adding that number now. Very soon those levels and elite-qualifying markers will be customizable from an options screen.

"Other Bonus Miles" works once again. I was declaring it in two modules and it was resetting to zero.

The issues above will be addressed in 1.0.9 due out very soon.

Bonus by segment is very interesting and I may want to implement it sometime.

THanks for the suggestions!

------------------
***

Flying Fish (http://www.flyertalk.com/forum/Forum124/HTML/006448.html): FT'er developed mileage calculator tool

[This message has been edited by rmyadsk (edited Mar 21, 2004).]

rmyadsk
Mar 24, 04, 10:52 pm
Since I didn't get any responses about the auto-insert feature I'm going to make it an option. On a side note, more and more of the program will become customizable.

Other upcoming features include a tighter interface, a fully fixed route destination field, and a better flight routing input box. This is in progress and I expect 1.1 to be out by the end of this weekend.

------------------
***

Flying Fish (http://www.flyertalk.com/forum/Forum124/HTML/006448.html): FT'er developed mileage calculator tool

rmyadsk
Apr 3, 04, 10:11 pm
Version 1.1.0 is now available for download. This version is a major update which fixes many interface quirks and bugs.

Many options are now controlled via the "Options" toolbar, including auto-roundtrip routing and auto-dash-insert (the latter function is still in an early stage and is imperfect but for the most part will save you from pressing the "-" button between city pairs).

You may also lookup codes/information by name or code now, and the search mechanisn has been enhanced. Also the help file has been made a bit more user-friendly.

Please, offer your comments and suggestions. Remember that the auto-insert feature is still quite early and in heavy development.

davidMEL
Apr 7, 04, 3:53 am
this is completely fabulous. thank-you so much.

if i could add anything it would be status credits earned for puposes of attaining higher levels in various frequent flyer programs (i understand there is a basic system for one world and star alliance, although i could be wrong). and some airlines provide bonuses in points for higher levels as well as class of travel. no doubt these are both complex and vary for almost each program. besides, these things can be calculated fairly easily by hand once the base mileage is known.

well done. a great help.

I-flybynight
Apr 7, 04, 6:10 pm
Thanks I'll download it again.

kelly786
Apr 7, 04, 6:47 pm
Hi

Thanks so much for the fabulous tool. I use it all the time.

Would like to download the newest version, but the link below doesn't work. Could u put the web address.
kelly786

rmyadsk
Apr 7, 04, 7:04 pm
Version 1.1.1 has been released. This version fixes some minor interface problems and some internal code reductions. You'll find the program here:

Download Flying Fish 1.1.1 (http://flyingfish.oscarfish.com/download/flyingfish-111-setup.exe), 544KB, 4/7/2004

rmyadsk
Apr 7, 04, 7:35 pm
this is completely fabulous. thank-you so much.

if i could add anything it would be status credits earned for puposes of attaining higher levels in various frequent flyer programs (i understand there is a basic system for one world and star alliance, although i could be wrong). and some airlines provide bonuses in points for higher levels as well as class of travel. no doubt these are both complex and vary for almost each program. besides, these things can be calculated fairly easily by hand once the base mileage is known.

well done. a great help.

I'm not familiar with status credit programs but it would not be hard to implement another such marker into the program. Perhaps you are referring to programs like Northwest's Platinum Points?

As for the second question, in terms of miles, I think what you are talking about is what the class bonus and status bonus dropdown boxes are provided for (percentage-wise). You may select which of these bonuses, if any, are elite-qualifying, and which, if any, are status-only. They work as a percentage of the base routing of each segment and are added into the itinerary totals. You may select a percentage from the dropdown list or enter your own followed by a percentage symbol.

Again, only for miles, there is also a "other bonus miles" field where you may enter an actual number of miles you will earn, for example 1000. This is particularly useful for online check-in bonuses, periodic new route bonus offers, and the like. Also these may be elite-qualifying or status-only. These are also added into the totals.

Thank you for your feedback, it is appreciated. Tell your frequent-flying friends about the program if you think they will find it useful. There is no greater praise...

Quick primer: negative values

If you are unfortunate enough to fly on a carrier which provides less than 100% EQM for flights on discount fares, you may calculate how many EQMs you will earn by compensating for that in the class bonus field. For example, if you earn 50% EQM on cheap fares, enter a class bonus of -50% and make it status-only. That 50% will be subtracted from your elite miles. If you earn 75% EQM, enter a class bonus -25%, etc.

You may also enter negative values into the "other bonus miles" box. For example, if you are not comfortable taking a long mileage run in Y, you might want to burn some miles for an upgrade to a higher class of service (some might argue doing this defeats the purpose of a mileage run and rather is a "status run" only, but I digress...). Simply enter a minus in the "other bonus miles" box followed by the number of miles you spent on the upgrade. This will be taken into account when totals are calculated. This is useful for calculating accurate costs per mile, etc.

rmyadsk
Apr 10, 04, 3:07 pm
The next version, 1.1.5, will be a major update. There are two major added features:

*Improved help screens including an "About" screen with feedback and website links, and a version check feature which will seek the latest version number from the website and tell you if an update is available.

*A cost rating system. In addition to the cents per mile cost, there is a color-coded symbology/rating tied to these values. The system provides a visual, instantly recognizable picture of an itinerary's value to the user. The lower the cost, the better the rating. There are five grades, internally coded A, B, C, D, and F as in school. An A rating has a green color; a B rating, a yellow-green color; a C rating, a yellow color; a D rating, a yellow-red (orange) color; and an F rating, a red color. The color updates automatically with costs. They are different ratings for distance flown, elite miles, and total miles. The thresholds for each grade are 100% configurable by the user (i.e. you may decide only itineraries with costs less than .5 cents per EQM get an A rating, and so forth) for each category and threshold.

The cost rating system is the catalyst for making the program altogether more configurable. The interface will be made more and more configurable with each progressive version.

Obviously there's some documentation I need to get working on.

There are also some smaller improvements including an overall hardened code structure, some minor interface improvements, a configurable per-segment minimum mileage (aside from the default 500 if you wish), and other bugfixes.

You can expect 1.1.5 to be out on Thursday, but maybe it will be leaked here a bit early.

rmyadsk
Apr 13, 04, 3:19 pm
Major Development: April 13, 2004

This weekend I completely rewrote the module which calculates distances. This uses an Ellipsoidal model of the Earth (compensating for the flattening/fattening of the Earth around the equator) rather than a spherical model. This greatly enhances the accuracy of mileages between airports with respect to what is reported by the airlines. In fact, for every flight I have taken and is reported on my FF statements, the mileage reported by Flying Fish has been exactly the same as on the statements (from both Northwest and United). I think that if you were waiting for a reason to begin using this program, this is it!

Processing/calculation times are similiar to what the old formula used (i.e. very fast).

A quirk of one of the equations that is used (which is so long and complicated it makes my head hurt thinking of it) is that for very large distances over 5000 miles or so, the mileage can become wildly inaccurate. I am exploring and researching this issue now but have implemented a failsafe: by default the program calculates mileages by the new (very accurate) method but for very long segments the program calculates mileages by the old (99% or so accurate) method.

I can virtually guarantee that every domestic U.S. segment (even ones including long flights such as Continental's EWR-HNL) will be accurate, as it will be calculated by the new method.

I will have the first version to use this technology released for you Wednesday night. This is a very major upgrade and will thus carry a version marker of 1.2. This version also incorporates an online version check where you may check to see if you have the most recent version installed, as well as the aforementioned rating/grading display system.

rmyadsk
Apr 14, 04, 5:55 pm
Version 1.2 is out now and available, but I have excluded the version checker module from this version (still trying to make it a bit quicker). You can expect to see it in the coming versions, though. The new calculation method as well as the rating system is included. Please compare mileages with what your airline reports and post here on how close they were...

Download Flying Fish 1.2 (http://flyingfish.oscarfish.com/download/flyingfish-120-setup.exe), 4/14/2004, 556KB

rmyadsk
Apr 18, 04, 10:20 pm
Has *anyone* tried the latest version and compared it against what your airline awards you? I'd like to get an idea of how accurate it is in as many situations as possible.

Meanwhile, I am progressing with development. This is a summary of issues which have been fixed in my latest internal version, and which should be out in an official release sometime this week:

1. Version check feature is now functioning.
2. Updated route from/to caption handling and display method.
3. Significant caching of flight routing: only current segment is looked up against database.
4. Refinements to distance calculation code.
5. Updated flight routing textbox interface, i.e. how input is handled.
6. Shortcut keys (CTRL + *) for commonly used routines.
7. Input filter to restrict consecutive letters to three maximum (i.e. single airport code).
8. Spacebar may be used to synthesize dash.

alamedaguy
Apr 21, 04, 3:52 pm
First, thanks for all of your work on this! I love it!

I tried a few comparisons per your request above, and here is what I found.
If there is nothing under credited mileage, it was the same.

Route "Tool Mileage" "Credited Mileage"
AA
sfo-dfw-atl 2195
sfo-jfk 2586
sfo-bos 2704
sfo-dfw-bdl 2935
nrt-lax 5446 5451

Continental (flying Virgin codeshare)
sfo-lhr 5360 5368

DL
atl-sfo 2139
atl-oak 2130

Alaska (flying Northwest)
sfo-msp 1589
msp-cle 622
cle-dtw 95
dtw-ind 231 230

Alaska
sfo-sea 696 679
pdx-oak 569 543

I hope this helps. Thanks again for your wonderful work on this.

MCOisHOME2ME
Apr 21, 04, 6:47 pm
Great tool. Thanks a million.

Had a strange bug today though. All of the mileage was calculating fine, but when I put the fare price in the field, the mileage totals started changing. And the more I typed, the more it changed. As I typed 123473749874572147238, the mileage total just kept going up and up and up and up and up - to over 1,000,000 miles!

I'll let you know if it continues to happen.

MartinElk
Apr 22, 04, 7:44 pm
Hope this is what you are looking for:

From To Airline Airline-Miles Flying-Fish-Miles

SMF SLC DL 533 532
SMF PHX HP 647 647
SLC PSP DL 541 541
PHX DEN HP 602 602
PHX AUS HP 868 872
PHX STL HP 1262 1262
SMF DEN HP 899 909
PHX FLL HP 1972 1972
SMF HNL HA 2462 2463
SFO NRT NW 5124 5118
NRT SIN NW 3328 3324
PHX ORD HP 1440 1440
LAS DEN HP 616 628
PHX SLC HP 507 507
SMF PSP AS 440 439
SAN CDG AA 5698 5691
SAN DFW AA 1171 1171
DFW CDG AA 4948 4948
SMF SEA AS 605 605
LHR LAX AA 5456 5449
BOS LHR AA 3265 3265
SFO LHR BA 5368 5360
PDX SMF AS 479 479
DEN SEA AS 1024 1024
SEA GEG AS 223 224

Thanks again for all your efforts!! ^ ^

rmyadsk
Apr 23, 04, 2:43 am
Thanks for the mileage feedback. It seems DEN is a bit of a problem (I think I remember hearing about a change in reported mileage in the UA forum a while back) and some particular routes aren't totally behaving, but on the whole things look good. Please keep these coming, they are very helpful.

That's a weird issue with the total being affected by price. I haven't been able to recreate it but let me know if it happens again.

You can expect the latest version (with the changes listed above) some time early next week. For the moment I am on the road and away from the computer and software which packages the program and creates the helpfile, though I continue developing the application itself.

All, thanks for your help.

ntamayo
Apr 27, 04, 7:19 pm
rmyadsk...
First of all, this is an excellent utility; thanks for putting this together.

Secondly, I have a bug to report:
I noticed that when I delete the default itinerary cost under Preferences, I'll get the "Run-time error 13 - type mismatch" message box, and I can't restart the app.

I recall your mentioning earlier that an incomplete configuration file will cause this error. Looks like it deleted the ItineraryCost=0 line in the flyingfish.ini file.

I used your workaround in reinstalling the program to restore the .ini file. I've also made a backup copy of the file just in case I come across a similar error.

rmyadsk
Apr 27, 04, 8:34 pm
I noticed that when I delete the default itinerary cost under Preferences, I'll get the "Run-time error 13 - type mismatch" message box, and I can't restart the app.


Thanks for the excellent bug report. I can recreate and confirm this bug. I'm writing conditions into the statement that writes values to the preferences file: if null (blank) values are entered, the default ("factory") value will be entered and the file entry preserved. This keeps the program from taking a dump as you witnessed. This also makes a pretty straightforward method for restoring all default values ("reset to defaults"), which I'll write into the program soon.

These changes will be realized in version 1.2.5, which will be released no later than Friday. 1.2.3 and 1.2.4 were internal development releases. 1.2.5 will also rollup all the features/changes listed previously plus reduced system memory usage due to the mileage calculation algorithm being rewritten, and the improved clearing/nulling of individual segments. I've managed to pare down the variables into one major array with all calculations working off of that (i.e. when the program is done wtih a variable it won't use again until the next change it will destroy it to converse memory).

Thanks for your support! ^

ntamayo
Apr 27, 04, 9:00 pm
Glad to oblige; part of my day job involves reporting bugs for our product's SW, so I'm used to documenting when something goes awry ;) .

It was also mentioned before that EZE isn't recognized, but would be in 1.2. Could you please include it in the next build, since it's a popular AA destination, esp. for those of us in the N-Hemi. Thanks again!

rmyadsk
Apr 29, 04, 6:11 am
EZE has been added to the database, and it will be included in the next release this week.

All, a question about the flight routing: is it desirable to have a saved flight routing in the program, one which loads at startup? Does anyone use a regular itinerary in this matter? I'm beginning to wonder if there is a useful side to it because the user would likely already know the mileage of a frequent itinerary.

rmyadsk
Apr 30, 04, 9:35 pm
Version 1.2.5 has been released. In addition to the changes listed above, the help file has been improved and brought (mostly) up-to-date.

Please let me know of any questions/problems.

Download Flying Fish 1.2.5 (http://flyingfish.oscarfish.com/download/flyingfish-125-setup.exe), 4/30/2004, 560KB

rmyadsk
May 6, 04, 9:43 pm
Bump for anyone who missed the new version.

Suggestions for future options/functionality are also appreciated!

rmyadsk
May 19, 04, 1:15 am
Bump for a new feature added today. I had plenty of time, flying East Coast US to Hawaii again on business, to implement this. You may now passively validate airport codes as they are entered - the program looks up airport names in addition to geodesic positions related to the codes you enter. The airport names are then displayed in the "Tool Tip" (black on yellow popup rectangles) space above the flight routing box. This is a work in progress and I need to work on the visibility/position of some popups.

For example, if you enter BWI-DTW-NRT-BKK in the flight routing box, the tool tip section shows:

Baltimore/Washington Intl -> Detroit Metro Wayne Co -> Narita Intl -> Bangkok Intl

This is done while the mileage calculation, etc. proceeds as normal.
There are also tool tip features for individual codes in the matrix display which shows the details of each segment (also for the route routing near the bottom of the program window). The tool tip text shows a handy reference for whatever code is present, for example if SIN is in the "from" box of segment 1, the tool tip text of that box is:

SIN: Singapore Changi

I'm probably going to make an option whereby you may actively validate/check each code as you enter it, via a msgbox window, so you may then decide if you entered the right one or not. A lot of the code was laid down today over the Pacific Ocean so it won't be too complicated to build on top of that.

The first version to contain these features will be 1.2.8, due out within two weeks from today. I say that because that is the latest I will be returning to home where all the check-in/compiling/packaging/validation components are. Thanks for your patience.

On an unrelated note: Would you be interested in seeing Linux and/or Mac OS X versions of this program developed? Additionally, would you actually use them?

rmyadsk
May 24, 04, 2:30 am
I think I conquered the bug that was causing long-distance calculations to fail. Now one set of formulae is used to calculate distances, and so far things look to be 100% accurate. Can a few people volunteer some city pairs and the distances their airlines report for long-haul flights, for example the US East Cost to Asia, and the West Coast to Europe?

If all continues to go well, this new calculation method will be incorporated into the upcoming version 1.2.8.

anonplz
May 24, 04, 9:22 pm
Not working for me at all.

Run-time error '13':
Type mismatch

Trying LGA-ATL - error
ORD-LGA - error
JFK-LGA - error

[Insert wisecrack about LaGuardia here]

flyme2
May 24, 04, 9:39 pm
Thanks for all you hard work. My comparisons, all with NW.

CITY PAIRS/NW/FF

BTV-DTW/536/537
DTW-MSP/528/528
MSP-HNL/3,972/3,973
HNL-NRT/3,818/3,817
NRT-BKK/2,887/2,887
NRT-SFO/5,124/5,118
SFO-DTW/2,079/2,079
NRT-TPE/1,356/1,356
NRT-SEA/4,769/4,763
NRT-JFK/6,745/6,738
NRT-LAS/5,512/5,507
NRT-EWR/6,732/6,725
NRT-DTW/6,397/6,390

rmyadsk
May 24, 04, 10:17 pm
Thanks for all you hard work. My comparisons, all with NW.

CITY PAIRS/NW/FF

BTV-DTW/536/537
DTW-MSP/528/528
MSP-HNL/3,972/3,973
HNL-NRT/3,818/3,817
NRT-BKK/2,887/2,887
NRT-SFO/5,124/5,118
SFO-DTW/2,079/2,079
NRT-TPE/1,356/1,356
NRT-SEA/4,769/4,763
NRT-JFK/6,745/6,738
NRT-LAS/5,512/5,507
NRT-EWR/6,732/6,725
NRT-DTW/6,397/6,390

Here is what FF reports with the new calculation method.

Route / NW / FF 1.28
BTV-DTW/536/537
DTW-MSP/528/528
MSP-HNL/3,972/3,972
HNL-NRT/3,818/3,818
NRT-BKK/2,887/2,887
NRT-SFO/5,124/5,124
SFO-DTW/2,079/2,079
NRT-TPE/1,356/1,356
NRT-SEA/4,769/4,769
NRT-JFK/6,745/6,745
NRT-LAS/5,512/5,512
NRT-EWR/6,732/6,732
NRT-DTW/6,397/6,397

:D I just calculated these using the new engine in 1.28. Looking very good, it seems the the new method corrected all but one (that one is only off by one mile). The formulae used are derived from T. Vincenty's Direct and Inverse Solutions on the Ellipsoid with Application of Nested Equations (http://www.ngs.noaa.gov/PUBS_LIB/inverse.pdf) and claim to give "complete accuracy from [distances between] a few centimetres [sic] to nearly 20,000 km" (which is much longer than half the circumference of the Earth) - i.e. that upcoming SIN-JFK (9537 statue miles) should be accurate so long as SIA uses the same coordinate points that I do (NIMA DAFIF).

As promised, 1.28 will be out no later than June 2. You can expect it to be posted the night of May 30.

Also I've made the decision that it's time to get serious about which language to write in. I think all versions beginning with 1.5 (i.e. no more than two major program changes and about a dozen smaller ones) will be coded entirely in C++. Now, all I have to do is learn that language...

rmyadsk
May 24, 04, 10:25 pm
Not working for me at all.



Trying LGA-ATL - error
ORD-LGA - error
JFK-LGA - error

[Insert wisecrack about LaGuardia here]

The type mismatch error is a known bug when the flyingfish.ini file, which stores your user preferences and settings, becomes corrupted or goes missing (for any number of reasons). Please, reinstall the program. A new flyingfish.ini will be stored and the program should work. Please let me know if the problem continues.

In future versions I'd like to do away with the .ini file and rather store preferences, etc. via registry keys. I'm still debating that.

mot29
May 25, 04, 1:40 pm
FF reports 862, NW credits 849. With NW's current triple EQM promotion, the difference piles up -- 112 miles difference rt for a plat with the triple promo.
tom

rmyadsk
May 25, 04, 3:32 pm
FF reports 862, NW credits 849. With NW's current triple EQM promotion, the difference piles up -- 112 miles difference rt for a plat with the triple promo.
tom

862 is still the distance reported by Flying Fish, even with the new calculation method. Denver has been known to "move", i.e. flyers have reported changes in mileages to/from DEN. See this thread (http://www.flyertalk.com/forum/showthread.php?t=108489&highlight=DEN-LAX) for details. I quote from post #3:

"The one that springs to mind is DEN-LAX, which went from 849 to 862."

So NW may still be reporting the old mileage...

jcooke
May 25, 04, 3:37 pm
FF reports 862, NW credits 849. With NW's current triple EQM promotion, the difference piles up -- 112 miles difference rt for a plat with the triple promo.
tom

So figure it in by hand. Getting FF to match up with every carrier's route mileages is impossible unless they use some type of centralized mileage system - ain't gunna happen.

The variance for LAX-PIT are 6 miles off between US and FF.

Perhaps there will be a feature sometime to specify your mileage between two points so they can be 100% accurate.

I love Flying Fish - great tool. ^

rmyadsk
May 25, 04, 6:52 pm
...

The variance for LAX-PIT are 6 miles off between US and FF.

...

I love Flying Fish - great tool. ^

Appreciated, thanks for the note. Version 1.28 (with all-new calculation algorithms) reports 2136 miles between LAX and PIT. I'm curious what does US Air report?

The idea to specify individual mileages between manually definted city pairs is very interesting. I will keep this in mind!

rmyadsk
May 25, 04, 6:59 pm
If you find yourself with a discrepancy between what your airline and what FF reports, an easy way to compensate is to use the "Other Bonus Miles" field. Like the percentage-based fields, you may enter a positive or negative number here. For example, if you're flying a route where FF reports 13 more miles than your airline does, you may enter "-13" into the Bonus Miles field and this will be calculated in total mileage. If you're concerned about EQM, you may select to make the Other Bonus Miles box elite-qualifying.

Of course you'll want to compensate for your elite bonuses, etc. by also factoring that into the box. I know it's not a perfect solution but it will help you figure prices more accurately.

All, would another field be helpful, specifically for discrepancies between the program's reported mileage and what you know your airline will give you?

rmyadsk
May 26, 04, 2:45 am
At the suggestion of an intrepid Flying Fish user, open jaws have been implemented into the program. An open jaw exists when you "leave out" a segment of a roundtrip itinerary. For example, you fly SFO -> JFK, drive from JFK to BWI, and fly from BWI -> SFO.

Whenver you have an open jaw in your travel plans, in the program's flight routing box simply press the comma key to separate the disconnected cities. In the example above, the flight routing would look like this:

SFO-JFK,BWI-SFO

The program will parse all associated cities and blank out the "missing" JFK-BWI segment. There will be a blank line in the matrix display below the flight routing box to signify the open jaw.

This functionality will be present in the version released on May 30 (I will avoid calling it 1.28 from this point on because if I add another feature or two it may creep to 1.3 - we'll see).

Thanks for the excellent suggestion.

rmyadsk
May 29, 04, 3:03 pm
1.30 will be the next version and will be available late Sunday night. I've updated the first post of this thread with details of the release.

rmyadsk
May 31, 04, 1:07 am
1.30 is available and is indexed in the first post of this thread as well as the program website. Enjoy...

Some database features didn't make it in this release. I fought with SQL for a few hours but things weren't clicking. Anybody out there a SQL syntax expert?

rmyadsk
Jun 2, 04, 3:41 am
In the works for the next version (1.35) are a couple of new features. Maybe we'll see a preview version or two before then.

The first feature is a major change in the data source: airport information will be stored internally in a class file within program itself. That means I'll no longer have to package the database with the program, and processing/lookup times should be substantially shorter. Tonight I wrote a script which adapts the data from the database to a class file, and I megrged the class into the program code, and tomorrow I'll change the program (some of it, at least) to read from the class. This is a desirable and important feature because it moves the program into the right direction for porting to other platforms, and ultimately being developed in another language, by removing the tedious ADO database calls. A compiled version of the program with the class file is around 628kb, which is smaller than the current version plus the database (which will no longer be needed) - but as you can imagine it takes quite a bit longer for me to compile it now!

The second feature, a user-inspired idea, is an option for a mandatory confirmation of airport codes by name as they are entered into the flight routing box. Perhaps you want to be sure of what airports you are entering as yout ype in the codes: the program will popup a message box with the current code and name of the airport, plus options to proceed with the routing or to strike the most recent entry. This will be completely optional.

The third feature, one I'm not entirely sure of, is to do away with the flyingfish.ini file and to instead store user preferences in the Windows registry. I'm still debating this one.

Thanks to all who have offered their support, especially bnarayan1511 who helped me get the balling rolling on the class file issue by lending his knowledge of SQL syntax.

miler
Jun 2, 04, 9:30 am
www.johnnyjet.com is also a nice website for the same and many more utilities.

miler
Jun 2, 04, 9:34 am
Doesn't work. Getting RUN TIME ERROR

chessmaster
Jun 2, 04, 7:59 pm
First, great tool! Thanks.

Some bugs I caught/suggestions:
* It doesn't seem to recognize airport code ICN.
* (Very minor) In the Routing field, if I enter a route in and then want to change it, when I highlight the whole thing I first have to hit DEL before typing in a new letter ... whereas typically if you highlight all the text in a field and type in a new letter, it should overwrite
* Changing the total airfare field seems to screw up the Iterinary Totals & Statistics calculations. I think it stores the old numbers and adds the new numbers whenever you enter a new airfare (instead of overwriting), but I could be wrong.

Thanks again for the tool!

rmyadsk
Jun 11, 04, 12:03 pm
Time for a bump. Has anyone found the Easter Egg yet? There's one built into the program beginning in version 1.30. It has to do with the flight routing box.

Brendan
Jun 11, 04, 3:41 pm
Oh-so-thank-U! ^

rmyadsk
Jun 13, 04, 12:03 am
I replaced the database lookup functions with some class information, as I was working on above. Now there is only one initial, light load from a .dat file at program startup, and from there everything is buffered in memory. That means the program won't continually hit the database (which now no longer exists) each time you do a lookup.

Incredulously, this method has reduced the amount of memory used by the program by 60-70%, typically 4 MB at twelve segments load versus 10 MB with the database version. Lookups are fast and easy.

The code lookup feature has laso been converted. The lookup by name is deprecated right now because it's going to be tricky to implement searching of text names.

New file sizes: EXE 268KB, DAT 126KB

Of course, removing all the MS-specific database lookups opens up a world of possibilities. Down the road, versions for Mac and Linux are possible. I really want to create a Pocket PC Version.

I'll put out a middling version this week which includes the new routines. Also it will have the option for mandatory validations of airport codes as they are entered.

rmyadsk
Jun 15, 04, 10:31 pm
All,

I'm going to go ahead and release 1.3.3 tonight. Let's call this a semi-preview version as 1.3.5 will incorporate everything stated above. This version includes the new lookup methods (i.e. no database) and also adds a working name lookup feature, one which I am very pleased to get working. Please note that name lookups won't happen until you type in five characters into the search box. If you see an airport come up that isn't the one you wanted, keep typing - the code will be found with specific enough name information.

I'll probably rework the lookup routines and interface (I especially like the idea of a dropdown box with the matching airports for a generic query), but this is a very good start considering there is no longer a database to search!

I've started working on the code validation popup window but am stilling wrestling over the interface so I haven't checked that part in yet. I'm headed to Honolulu Wednesday morning, so it's a good bet we won't see another public release until I return on July 2. Keep the bug reports, suggestions, and feedback coming, though, as I'll be working on the code while I'm away (I just won't have the mechanisms to check it in, package it, and release it).

If you're installing this version on top of an old version, you may delete the ARPT.mdb file in the program directory - it is no longer used. If you're curious to see the raw data, you may open the ARPT.dat file in a text editor - it's a comma-separated-values list. Just don't delete that file, as the program taps it at startup and loads everything into memory.

The new download size is 237KB, as compared to 610KB for 1.30. Also the program once installed takes less space then before.

Enjoy.

Download Flying Fish 1.33 - direct program link (http://flyingfish.oscarfish.com/download/flyingfish-133-setup.exe)

cvg-aa
Jun 27, 04, 5:42 pm
I received a virus alert when I downloaded Flying Fish 1.33 and then hit the update button. Whether this is an actual virus alert or the steps necessary to update the database, I dont know. This is the message I received from Norton Internet security, as it recorded "multipe attacks" against my PC.

Date: 6/27/2004 Time: 17:38:50
Rule "Default Block Sokets de Trois v1. Trojan horse" blocked (xxx.xxx.x.xxx,xxxx). Details:
Inbound TCP connection
Remote address,service is (flyingfish.oscarfish.com(216.120.231.253),ftp-data(20))
Process name is "N/A"

rmyadsk: any ideas on what is going on?

rmyadsk
Jun 28, 04, 12:38 am
I received a virus alert when I downloaded Flying Fish 1.33 and then hit the update button. Whether this is an actual virus alert or the steps necessary to update the database, I dont know. This is the message I received from Norton Internet security, as it recorded "multipe attacks" against my PC.

Date: 6/27/2004 Time: 17:38:50
Rule "Default Block Sokets de Trois v1. Trojan horse" blocked (xxx.xxx.x.xxx,xxxx). Details:
Inbound TCP connection
Remote address,service is (flyingfish.oscarfish.com(216.120.231.253),ftp-data(20))
Process name is "N/A"

rmyadsk: any ideas on what is going on?

The "Check for Upgrades" button doesn't update any of the software. It opens an FTP socket and checks the current version against a text file on the web server. I can only think that my web host's server is infected.

rmyadsk
Jul 2, 04, 9:11 pm
I have identified and corrected the error where adjusting the itinerary price caused the total itinerary mileage to increase. What was happening was the total was being calculated each time the price changed (as it should) by summing elite, non-elite, and bonus miles (as it shouldn't). The total was snowballing because the bonus miles were being added each time, instead of being added only the first time (or more precisely, the last time they were changed).

I've redone the entire mileage/total/cost calculation methods and it functions properly now. Also there is support for itineraries with no actual flight miles (i.e. bonus miles only). This is a quick and easy way for you to identify a cost per mile for bonus offers only or for third-party sources (i.e. credit cards, car rentals, hotel stays, etc.) - and this option also works for bonuses where the bonus miles are elite-qualifying or status-only.

Also in the new version is an auto-validation option where you may confirm each airport name after entering its code.

You'll see these changes implemented in the next released version, 1.35, due out the evening July 4 (soon after I return from Honolulu).

rmyadsk
Jul 4, 04, 12:18 pm
Version 1.35 is now available. Also in this version I have decided to bring back checkboxes for several interface options: roundtrip routing, auto-insert of dashes, auto-validation (obviously this one is new), and always on top. The "options" menu still exists and you may control these via that method if you prefer. Clicking the checkbox or corresponding menu will have the same effect.

One quick note: if you're installing over an old version, the flyingfish.ini file will no longer work. For the options mentioned above a different method is used to store your preferences, so make sure that your flyingfish.ini is a new one (i.e. recreate and save how you want the program to behave over the new file, rather than copying in an old flyingfish.ini).

Version 1.35 Direct Program Link (http://flyingfish.oscarfish.com/download/flyingfish-135-setup.exe) (240KB)

Viajero
Jul 5, 04, 4:46 am
When upgrading from 1.3 to 1.35, with any two airport code combination:

Run-time error '6':
Overflow

and then the program crashes.

Edited to add:

I think I know why: the program is probably not taking into consideration the Regional Configuration settings (Windows Control Panel), in particular the decimal separator, when reading the floating point values from the ascii (.dat) file.

rmyadsk
Jul 5, 04, 5:42 pm
When upgrading from 1.3 to 1.35, with any two airport code combination:

Run-time error '6':
Overflow

and then the program crashes.

Edited to add:

I think I know why: the program is probably not taking into consideration the Regional Configuration settings (Windows Control Panel), in particular the decimal separator, when reading the floating point values from the ascii (.dat) file.

Good troubleshooting, thanks for the extra info. I'll look for a workaround for that tonight but I would guess it won't be easy to synthesize the decimal points. Previous versions (prior to 1.33) use the old database access method so you likely won't have a problem with that one.

Looking into it now, thanks.

KVS
Jul 5, 04, 6:06 pm
I would guess it won't be easy to synthesize the decimal points. Previous versions (prior to 1.33) use the old database access method so you likely won't have a problem with that one.Just keep in mind that most conversion functions (i.e. Format(), CLng(), etc.) all perform conversion/formatting based on the system settings). Only Str() & Val() will always follow the American number format, which can be useful if you wanna store internal numeric data in a text file.

Viajero
Jul 6, 04, 4:40 am
Good troubleshooting, thanks for the extra info. I'll look for a workaround for that tonight but I would guess it won't be easy to synthesize the decimal points.
Looking into it now, thanks.

Your are welcome. Even if you don't fix it, however, one change you could easily make is to use a semi-colon (";") as field separator in the text file, that way all I have to do is to search-replace the decimal point (".") for a comma (",").

bobbysfca
Jul 14, 04, 5:21 pm
Another BUMP

This is a good tool for all MR'ers, it needs to be in plain sight.

^

rmyadsk
Jul 17, 04, 7:24 pm
Your are welcome. Even if you don't fix it, however, one change you could easily make is to use a semi-colon (";") as field separator in the text file, that way all I have to do is to search-replace the decimal point (".") for a comma (",").

Tonight I'll be releasing 1.36, which contains a slightly tighter database (with less private-use airports which will never be used in this program). It also implements the excellent suggestion above (semicolons for commas in the data file).

I'm updating the database now and will do a bit with the help file. Expect to see 1.36 available within a couple hours.

rmyadsk
Jul 17, 04, 10:09 pm
1.36 is available and includes the fixes mentioned above. Enjoy, and please provide feedback on any airports which may be missing from this version.

Download Flying Fish 1.36 (http://flyingfish.oscarfish.com/download/flyingfish-136-setup.exe) (232KB)

MartinElk
Jul 18, 04, 2:02 pm
I think you accidently deleted MCO from your database while cleaning out the private airports.

rmyadsk
Jul 18, 04, 11:15 pm
I think you accidently deleted MCO from your database while cleaning out the private airports.

Thanks for the tip. I discoverd a SQL anamoly where a number of airports were being striked from the database. I was also able to streamline the code in the program which handles these codes. Thanks for the tip.

All, if you had downloaded version 1.36 prior to July 19, please download it again to solve these errors. You can identify which version you have by looking in the Help...About box. If that version is dated July 17, it should be updated. If it is dated July 18, it is current.

Download Flying Fish 1.36 (http://flyingfish.oscarfish.com/download/flyingfish-136-setup.exe) (236KB)

pi4er
Jul 21, 04, 10:35 pm
I did not read the previous replies, but I could find neither Inchon (Icn) not the old Gimpo (Gmp) airport, or do Seoul search either.
I loaded the software less than a moth ago.
I guess the data is deleted.
The other queries have been fine by today.

pi4er
Jul 21, 04, 10:40 pm
And this repeats after I downloaded the July 22 version.

rmyadsk
Jul 29, 04, 7:52 am
I've added an option where bonus miles can now be a flat bonus (i.e. 1000 miles for booking online) or a percentage (i.e. a double status-miles promo).

The program still uses one box for bonus miles, but it can tell whether or not there is a % (percent) symbol at the end of then number in the box. If there is, the program figures a bonus based on the entered number and the route distance. If there isn't, it figures a flat bonus. All elite-qualifying and status-only options work as before.

Spent_All_My_Miles
Jul 30, 04, 12:44 am
I began making a list of the airports I had been to that aren't in flying fish, but found something much better ...

The website http://www.airgorilla.com/help/countriescodes.html
has many codes.

They have a list of major airports, and a search engine, but most usefully, 8 html files that list airport code, city code, and airport/city name. After dumping them into excel it seems they have

I took 8 html files on the site, which list airport code, city code, and city, dumped them into excel, and there are about 7,640 airport codes.

Viajero
Jul 30, 04, 6:52 am
Missing airport code: Perth, W.A. (PER)

P.S. one suggestion: the program installs to "Program Files\..." by default, with the string hard coded as such. Not all Win32 program directories follow that convention, in particular all non-english OSs, so if you were to use system functions to get the Windows directory name, which localize the string automatically for you, the installation process would be more user friendly.

pi4er
Aug 4, 04, 3:23 pm
For some reason Perth is Jad - as given by the search tool. Mileage turns right overall, so I guess it's right.

Viajero
Aug 5, 04, 4:42 am
For some reason Perth is Jad - as given by the search tool. Mileage turns right overall, so I guess it's right.

It's fine as a workaround, until PER is added to the list, but JAD is a small, light aircraft airport called Jandakot, not Perth International Airport.

rmyadsk
Aug 5, 04, 7:39 am
I'll add PER and ICN tonight and they will show up in the next release.

rmyadsk
Aug 5, 04, 8:52 pm
ICN, PER, and also BDA (thanks Dave) have been added. These airports will be included in the next version, which I will release this coming Sunday evening.

Please keep missing codes coming so that I may research and add them.

rmyadsk
Aug 8, 04, 6:26 pm
Version 1.37 has been released and is available through the download area (http://flyingfish.oscarfish.com/?zone=download) on the program website.

Here (http://flyingfish.oscarfish.com/download/flyingfish-137-setup.exe) is a direct program link.

VPescado
Aug 8, 04, 8:57 pm
Please keep missing codes coming so that I may research and add them.

PVG - Pudong International Airport - Shanghai, CN

Keep up the good work!

rmyadsk
Aug 12, 04, 7:51 pm
PVG - Pudong International Airport - Shanghai, CN

Keep up the good work!

Thank you. Added PVG and PEK.

gretchendz
Aug 13, 04, 6:43 am
This is an awesome utlility--thank you
^ ^ ^

rmyadsk
Aug 22, 04, 12:32 pm
Added CNX (Chiang Mai, Thailand) at the request of a user.

Keep 'em coming!

alamedaguy
Aug 25, 04, 5:05 pm
In honor of keithguy and http://www.flyertalk.com/forum/showthread.php?t=349358, I think we could use SAL. GUA is already, and seems a reasonable substitute from MIA. Thanks!

rmyadsk
Aug 25, 04, 11:00 pm
In honor of keithguy and http://www.flyertalk.com/forum/showthread.php?t=349358, I think we could use SAL. GUA is already, and seems a reasonable substitute from MIA. Thanks!

Added SAL, thanks. Checked both GUA amd MIA as valid.

West End Flyer
Aug 26, 04, 4:06 pm
Thank you--this is a great tool.

rmyadsk
Aug 26, 04, 5:09 pm
Added CLD (Carlsbad, CA).

1.38, with all fixes listed above, will become available sometime next week. Keep those missing codes coming.

retrav1K
Sep 3, 04, 1:07 pm
Can we add IGU (Iguazu Falls, Brasil) ??

Thanx

rmyadsk
Sep 3, 04, 8:38 pm
Can we add IGU (Iguazu Falls, Brasil) ??

Thanx

Unfortunately I don't see an entry for this airport in DAFIF. Pretty weird as it appears to be a legitimate commercial airport.

rmyadsk
Sep 3, 04, 8:40 pm
Version 1.38 is now available and includes all airport updates listed thus far. Have fun.

Download Flying Fish 1.38 (http://flyingfish.oscarfish.com/download/flyingfish-138-setup.exe)

mshaikun
Sep 4, 04, 8:45 am
Just downloaded it. It is fun to use. Well worth the download.

We at FT are use to getting whatever we can free. Where this program is free, the web site has a place for donations. Suggest that all of us consider donating something. I am sure the creator would appreciate small contributions in the $1 to $10 range. After trying the program, I went back and gave a few dollars as a way to say thanks and encourage more creativity.

gleff
Sep 5, 04, 11:13 am
Just looked at this for the first time, outstanding!

Suggest PPT (interesting that there's BOB but not PPT!), VIS, PSC.

rmyadsk
Sep 6, 04, 2:09 pm
Just looked at this for the first time, outstanding!

Suggest PPT (interesting that there's BOB but not PPT!), VIS, PSC.

Added these three and they'll show up in the next release (which happens to be the last VB release before going to VC++).

rmyadsk
Sep 7, 04, 3:45 pm
I'm on a layover at the LAX WorldClub slinging around some VC++ code with variable degrees of success. I should have taken some classes. Any general pointers you experienced C++ gurus may have - if other frequent flyer programmers do exist - would be appreciated. They would help me construct a better overall program.

It would be cool if a few people shell out some donations, as I'm not sitting on an inheritance. Remember, there's no longer just one version of Flying Fish in development; it's entered a period of polymorphism.

Please keep the suggestions and statements coming. I'm always open to dialog.

jjpb3
Sep 7, 04, 6:07 pm
Feedback is always appreciated and desired, positive or negative, here or privately via Email.

Thanks for your support.


Ryan M. Yadskoflyingfish@oscarfish.com (mailto:flyingfish@oscarfish.com)


It doesn't allow Manila (MNL) to be inputted as an airport. :confused:

rmyadsk
Sep 20, 04, 12:56 am
MNL and OSL have been added. Also I solved the problem CLD had been experiencing.

I've redone the datamaker script which compiles the DAFIF data into a format Flying Fish can better understand. I've also redone the class which holds the information inside the program and made the Flying Fish executable about 100KB smaller (1.39 will come in at around 176KB for the program and 106KB for the data file).

I also have some C++ code written for the serializables and have a working test application which can browse records, search them, and calculate the distance between two of them. So the very basic core functionality of the program is already somewhat there.

Kaeokai
Sep 20, 04, 1:37 am
I think every mile-hound (myself included) should consider donating a little to help keep this great tool....

K

scirel
Sep 20, 04, 2:37 pm
I think every mile-hound (myself included) should consider donating a little to help keep this great tool....
I agree completely (and I donated a while ago)...

Noticed that COD (Cody/Yellowstone, WY) is missing.

rmyadsk
Sep 20, 04, 11:26 pm
I agree completely (and I donated a while ago)...

Noticed that COD (Cody/Yellowstone, WY) is missing.

Fixed COD and also updated post #1 in this thread.

rmyadsk
Sep 21, 04, 12:42 am
Added XNA at the request of a user and updated f1rst p0st with screenshots.

rmyadsk
Sep 22, 04, 10:42 pm
I did some major updating to the storage and filing format (as well as to my datamaker script which generates the data file) and was able to trim out some unused airports (think: private airstrips). The size of the data file has been reduced to around 83KB (!) with about 2100 pertinent airports. All codes listed in this thread have been updated and verified. Also, I implemented some debug tools into datamaker. Finally, missing codes are no longer a mystery and I know exactly why they don't showing up.

I'm setting the release date for 1.39, the final VB maintenance release, for the evening of Octber 3 (Sunday). Please, keep your code requests coming until then.

Next stop after 1.39: pure VC++ 2.x (early!) prereleases, beginning with 1.50.

retrav1K
Sep 25, 04, 7:24 am
TAB ... Tinidad and Tobago missing ??

rmyadsk
Oct 1, 04, 3:05 pm
1.39 is still on track to be released this coming Sunday evening.

Also, a thank you to a user for a donation received this afternoon.

rmyadsk
Oct 1, 04, 8:43 pm
TAB has been added and I've enhanced the airport codes manager again - a happy medium of 3909 airports. Hopefully, it's a happy medium. You'll see these updates in Sunday night's release.

Also check the first post in this thread to download the Visual C++ proof of concept, which will take your input in the form of an airport code, extract information specific to that file (basic serialization), and display it on the screen, as well as calculate the distance between two such airports. Very basically, it is what Flying Fish does and I just need to build the interface around it - as well as making it true object-oriented.

rmyadsk
Oct 1, 04, 9:08 pm
If anyone is interested, this is the Visual C++ code which calculates ellipsoidal distance between two points on the Earth. Accuracy looks very good and will probably be what I use for the new version.


int CRecordsDlg::ApproxDistance(double m_dblPositOneLat,
double m_dblPositOneLon, double m_dblPositTwoLat, double m_dblPositTwoLon)
{
// This function calculates the ellipsoidal distance between
// two points, given the latitude and longitude of each point
//

// Adjust source latitudes and longitudes for conversion
// from degrees to radians
//
m_dblPositOneLat = 0.01745329252 * m_dblPositOneLat;
m_dblPositOneLon = -0.01745329252 * m_dblPositOneLon;
m_dblPositTwoLat = 0.01745329252 * m_dblPositTwoLat;
m_dblPositTwoLon = -0.01745329252 * m_dblPositTwoLon;

// Trigonometry
//
double F = (m_dblPositOneLat + m_dblPositTwoLat) / 2.0;
double G = (m_dblPositOneLat - m_dblPositTwoLat) / 2.0;
double L = (m_dblPositOneLon - m_dblPositTwoLon) / 2.0;

// Sines and cosines as defined in "math.h"
//
double sing = sin(G);
double cosl = cos(L);
double cosf = cos(F);
double sinl = sin(L);
double sinf = sin(F);
double cosg = cos(G);

// More trigonometry
//
double S = sing * sing * cosl * cosl + cosf * cosf * sinl * sinl;
double C = cosg * cosg * cosl * cosl + sinf * sinf * sinl * sinl;
double W = atan2(sqrt(S),sqrt(C));
double R = sqrt((S * C))/W;
double H1 = (3 * R - 1.0) / (2.0 * C);
double H2 = (3 * R + 1.0) / (2.0 * S);

// Account for mean radius of Earth, in kilometers,
// and perform downconversion to statue miles
//
double D = 2 * W * (6378.135 * 0.621371192);

// Flattening and correction. Though the result is actually a double,
// return an integer as airlines report in frequent flyer statements
//
return int (D * (1 + (1.0 / 298.257223563) * H1 * sinf * sinf * cosg
* cosg - (1.0 / 298.257223563) * H2 * cosf * cosf * sing * sing));
}

rmyadsk
Oct 3, 04, 7:55 pm
As promised, 1.39 is now available on the program website.

And a special thanks to the generous user who made a donation tonight!

Pointeater
Oct 18, 04, 8:15 pm
ATH missing

TravelWeary
Oct 18, 04, 9:53 pm
Just started using this tool, and I love it! Please add my kudos to the many others for such great work. Thank you, thank you, thank you.

scirel
Oct 19, 04, 11:53 am
By the way -- for those of you who don't already know, there's a revolutionary easter egg in the program! (Hope I didn't give away too much...)

retrav1K
Oct 31, 04, 5:45 pm
Cannot get MEX to work .....

still a great tool

mot29
Oct 31, 04, 5:55 pm
By the way -- for those of you who don't already know, there's a revolutionary easter egg in the program! (Hope I didn't give away too much...)

is anyone going to offer a tip to finding it?

robmach
Oct 31, 04, 8:14 pm
Edmonton is missing (YEG)

rmyadsk
Oct 31, 04, 10:43 pm
is anyone going to offer a tip to finding it?

scirel did just that. You'll have to go WAY back with the program to know what (s)he means, though. Or perhaps there's another clue earlier in this thread...

I'll be picking up again this week with development of the C++ version. The last two weeks have been very, very hectic and work has broken into my development efforts, how dare it (!). But I'm getting back on track and will hope to have some functional binaries for you folks to play with by the end of November.

anandrag
Nov 8, 04, 8:46 am
Can't make any of the Canadian airports to LHR to work

rmyadsk
Nov 8, 04, 11:26 am
As you may have guessed, Canada is one of the regions I haven't recently updated. Several codes are missing. I will add a bunch tonight and make available an updated database sometime this week.

anandrag
Nov 8, 04, 11:28 am
As you may have guessed, Canada is one of the regions I haven't recently updated. Several codes are missing. I will add a bunch tonight and make available an updated database sometime this week.

Cool! Thanks for the VERY prompt response! How do I make donation again?

rmyadsk
Nov 8, 04, 11:35 am
Cool! Thanks for the VERY prompt response! How do I make donation again?

Just click this link (http://flyingfish.oscarfish.com/?zone=donations) to be taken to the donations page, and click the button at the bottom. I'm set up to take donations through PayPal. I appreciate the contributions.

Though they need not always be money. If anyone happens to be in the MD/DC/VA area I'd be very receptive to being bought a beer or three. You might also get some inside info on the latest development plans (Hint: it will stay free and available to everyone without ever having to register or provide an Email address)

rmyadsk
Nov 12, 04, 8:39 pm
All right, a MAJOR overhaul of the database for the benefit of Canadian airports is complete. This is good because it increases the number of airports in the database, in a good way. This is bad because it required new data definitions inside the program. So I had to update the program in addition to the database.

I really, really hate releasing a new version on top of an existing version number, without incrementing it...but I've already begun work on the VC++ 1.4~ versions and those numbers are taken!

Please click the link below to download 1.39...again...with the updated Canada airports. You may see in "Help | About" a datestamp of November 12 - this is how to tell if you have the updated version. This was just released now so you probably don't have it yet.

Sorry for the confusion and please provide feedback on the Canadian airport collection.

Flying Fish 1.39, the new one (http://flyingfish.oscarfish.com/download/flyingfish-139-setup.exe) - also available at the website (http://flyingfish.oscarfish.com/)

f4free
Nov 13, 04, 1:30 pm
Excellent! Thank you!!!

rmyadsk
Apr 6, 05, 6:19 am
This thread, along with the program, has been resurrected form the grave.

For several months I was afraid I wouldn't ever get to creating the new version. Work occupied all my free time and unfortunately the donations aren't good enough to make Flying Fish my primary occupation ;)

However, thanks to work, I'm at sea for three weeks and I've committed myself to going ahead with the program you all deserve. I now have a basic but working knowledge of C++, and I'm learning more every day.

I just finished prototyping the flight routing box functionality (and I'm pleased to say it's rock-solid, no strange errors when doing unpredictable things like cutting and pasting). As demonstrated in the proof-of-concept available on page 1, the mileage calculation is functional. The next step will be to put the two of these together in another proof-of-concept which I hope to release here within the next couple weeks.

I'm toying with a couple more interesting ideas: adding NMEA GPS receiver functionality; allowing custom mileage between specific airports (just in case your favorite airline - or, heaven forbid, Flying Fish - reports it incorrectly); and wrapping the guts of the program up in a DLL file which can be redistributed and used by anyone wanting to write a mileage calculator. The Flying Fish SDK maybe?

The first release of the actual program is still a few weeks off. I'd rather not hurry up to write steaming mounds of useless code. For now it's about mapping out the data structures within the program: creating classes to store the data and finding the most efficient and secure way to manipulate it. This program will be a whole new animal on the inside but will continue to be free to anyone and everyone who wants it.

Thanks for your continued support and patience.

kobolcs
Apr 6, 05, 7:58 am
I just downloaded your program. Run it and I got error window "Run-time error 13. Type mismatch" ( filling Flight routing LAX-JFK). What is the problem ?

jcooke
Apr 6, 05, 8:12 am
Ryan, ever run this under a Wine environment? For some reason the first city pair lookup after starting the program takes an extremely long time to return the mileage - talking 15 seconds compared to the normal split-second lookups.

Any ideas?

-JC

last2board
Apr 7, 05, 1:41 am
[QUOTE=rmyadsk]This thread, along with the program, has been resurrected form the grave.

l'm glad this came back, because I have used your program a lot and never said thank-you. I appreciate your work.

rmyadsk
Apr 9, 05, 7:26 am
I just downloaded your program. Run it and I got error window "Run-time error 13. Type mismatch" ( filling Flight routing LAX-JFK). What is the problem ?

In testing I got this error when the flyingfish.ini (Initialization) file was missing, incomplete, or corrupt. This file resides in the program directory (default C:\Program Files\Flying Fish\). Try uninstalling then reinstalling the program - this should overwrite that file.

rmyadsk
Apr 9, 05, 7:58 am
Ryan, ever run this under a Wine environment? For some reason the first city pair lookup after starting the program takes an extremely long time to return the mileage - talking 15 seconds compared to the normal split-second lookups.

Any ideas?

-JC

I haven't run under anything under than pure Win32 but I can guess VB is having a problem reading the airport data file (which is kicked off the first time a lookup is performed). There are ~4000 airports with names, codes, coordinates, etc. and I can imagine an extra "layer" of difficulty for Wine storing it all. After the first lookup, everything is stored into memory and lookups would probably proceed as normal.

Not sure if there's a way around this but I'll look for one for the new version.

rmyadsk
May 14, 05, 9:28 pm
You all must have thought I died or something, huh?

The next step will be to put the two of these together in another proof-of-concept which I hope to release here within the next couple weeks.
Just replace "the next couple" in the statement above with "several excrutiating" and we're right on-target. Anyway, I finally have the core functionality of the program - parsing a routing and calculating distances - rewritten and in a proof of concept for you. It's not beautiful, it's not a complete program, it's not yet object-oriented enough for me, BUT it does demonstrate what we will be doing.

Flying Fish Proof Of Concept - Visual C++ 6.0 (http://flyingfish.oscarfish.com/download/vcpp-concept.zip)

Unzip to a directory of your choice, keeping the folder structure intact (ARPT.dat must exist in a subfolder called data, as it does in the ZIP). Play around with the edit box and see if you can "break" the routing. It should tolerate all sorts of things the VB version balked at.

For example, try cutting and pasting routings (like bwi-msp-lax-hnl-msp-bwi) directly into the box. It actually seems to work, too.

Thanks for your continued patience while development progresses at a rate comparable to molasses.

-Ryan

Zaad
May 16, 05, 1:28 pm